:root{--bg-cream:#f2f2f7;--surface-white:#fff;--text-main:#1c1c1e;--text-muted:#6c6c70;--accent-coral:#636366;--accent-deco:#8e8e93;--accent-shadow:#8e8e934d;--accent-tint:#ebebec;--accent-wash:color-mix(in srgb, var(--accent-coral) 7%, var(--surface-white));--border-soft:#e5e5ea;--grid-line:#ebebf0;--sunday-red:#c8553d;--saturday-blue:#4a7fc1;--ok-bg:#e4f2e8;--ok-text:#2e6b45;--ng-bg:#f6e0dc;--ng-text:#8a2f20;--unanswered-bg:#ece8e1;--unanswered-text:#6b6258;--surface-sunken:#efeff4;--danger-text:#c0392b;--danger-bg:#fef2f2;--danger-border:#fca5a5;--bg-opt-cream:#fbf6ec;--bg-opt-white:#fff;--bg-opt-mint:#eaf5ee;--bg-opt-sky:#eaf1fa;--bg-opt-pink:#fbeaf0;--bg-opt-lavender:#f1eef8;--font-family:"Noto Sans JP", sans-serif;--weight-normal:400;--weight-bold:700;--font-size-title:20px;--font-size-heading:16px;--font-size-body:14px;--font-size-caption:12px;--radius-sheet:24px 24px 0 0;--radius-control:14px;--radius-full:9999px;--radius-chip:6px;--button-height:52px;--min-touch-size:44px;--pc-wrapper-bg:var(--bg-cream);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--bottom-nav-height:62px;--tab-bottom-space:calc(var(--bottom-nav-height) + 24px + var(--safe-bottom))}.with-bottom-nav [data-scrollable=true],.with-bottom-nav .scrollable-content,.with-bottom-nav div[style*="overflow-y: auto" i],.with-bottom-nav div[style*="overflowY: auto" i]{padding-bottom:var(--tab-bottom-space)!important}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body{width:100%;height:100%;font-family:var(--font-family);font-weight:var(--weight-normal);font-size:var(--font-size-body);color:var(--text-main);background-color:var(--pc-wrapper-bg);-webkit-font-smoothing:antialiased;overscroll-behavior:none;overflow-wrap:anywhere;line-height:1.5}#root{background-color:var(--pc-wrapper-bg);justify-content:center;align-items:flex-start;width:100%;height:100dvh;display:flex;overflow:hidden}.app-container{background-color:var(--bg-cream);width:100%;max-width:100%;height:100%;min-height:0;max-height:100dvh;padding-top:var(--safe-top);flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden;box-shadow:0 0 24px #3a332b14}.safe-bleed-top{margin-top:calc(-1 * var(--safe-top));padding-top:var(--safe-top)}@media (width>=600px){:root{--pc-wrapper-bg:#ede7dd}.app-container{max-width:390px}.dev-picker-bar{max-width:390px!important}}h1,h2,h3,.text-bold{font-weight:var(--weight-bold);color:var(--text-main)}.text-title{font-size:var(--font-size-title);font-weight:var(--weight-bold);line-height:1.3}.text-heading{font-size:var(--font-size-heading);font-weight:var(--weight-bold);line-height:1.4}.text-body{font-size:var(--font-size-body);font-weight:var(--weight-normal);color:var(--text-main)}.text-caption{font-size:var(--font-size-caption);font-weight:var(--weight-normal);color:var(--text-muted)}button,input,textarea,select{font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:none;outline:none}button{cursor:pointer;-webkit-user-select:none;user-select:none}.clickable-target{min-width:var(--min-touch-size);min-height:var(--min-touch-size);justify-content:center;align-items:center;display:inline-flex}.scrollable-content{-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow-y:auto}.scrollable-content>*{flex-shrink:0}.grecaptcha-badge{visibility:hidden}.input-soft::placeholder{color:var(--text-muted);opacity:.65;font-weight:var(--weight-normal)}.hide-scrollbar{scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}.mailbox-sway{animation:2.4s ease-in-out infinite mailbox-sway}@keyframes mailbox-sway{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}.hint-bob-down{animation:1.2s ease-in-out infinite hint-bob-down}.hint-bob-up{animation:1.2s ease-in-out infinite hint-bob-up}@keyframes hint-bob-down{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}@keyframes hint-bob-up{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.hint-bob-down,.hint-bob-up{animation:none}}.ck-please-body{transform-origin:51% 68%;animation:7s ease-in-out infinite ck-bow}.ck-please-legs{transform-origin:50% 100%;animation:7s ease-in-out infinite ck-dip}.ck-paused .ck-please-body,.ck-paused .ck-please-legs{animation-play-state:paused}@keyframes ck-bow{0%,8%{transform:perspective(var(--ck-p)) rotateX(0)}22%,34%{transform:perspective(var(--ck-p)) rotateX(-42deg) translateY(9%)}48%,to{transform:perspective(var(--ck-p)) rotateX(0)}}@keyframes ck-dip{0%,8%{transform:scaleY(1)}22%,34%{transform:scaleY(.9)}48%,to{transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){.ck-please-body,.ck-please-legs{animation:none}}.cala-flip-in{transform-origin:50%;animation:.7s both cala-flip}@keyframes cala-flip{0%{opacity:.3;transform:perspective(600px)rotateY(90deg)}to{opacity:1;transform:perspective(600px)rotateY(0)}}@media (prefers-reduced-motion:reduce){.cala-flip-in{animation:none}}.cb-float{opacity:0;will-change:transform, opacity;animation:7s ease-in-out infinite cb-float}@keyframes cb-float{0%{opacity:0;transform:translateY(0)scale(.7)}15%{opacity:1}80%{opacity:.8}to{transform:translateY(var(--cb-rise,-120px)) scale(1.1);opacity:0}}.cb-thread{animation:4s linear infinite cb-thread}@keyframes cb-thread{to{stroke-dashoffset:-14px}}.cb-beat{transform-box:fill-box;transform-origin:50%;animation:5.5s ease-in-out infinite cb-beat}@keyframes cb-beat{0%,28.6%,to{transform:scale(1)}9.5%{transform:scale(1.25)}19.1%{transform:scale(1)}23.9%{transform:scale(1.18)}}.cb-glow{animation:2.8s ease-in-out infinite cb-glow}@keyframes cb-glow{0%,to{opacity:.25}50%{opacity:.9}}.cb-burst{animation:.8s ease-out forwards cb-burst}@keyframes cb-burst{0%{opacity:1;transform:translate(0)scale(.4)}to{transform:translate(var(--cb-dx), var(--cb-dy)) scale(1.1);opacity:0}}.cb-rain{opacity:0;animation:2.6s ease-in 3 cb-rain}@keyframes cb-rain{0%{opacity:0;transform:translateY(0)rotate(-10deg)}10%{opacity:1}to{transform:translateY(var(--cb-fall,290px)) rotate(15deg);opacity:0}}.cb-party{animation:1.8s ease-in-out infinite cb-party}.cb-spin{animation:6.25s linear infinite cb-spin}@keyframes cb-spin{0%{transform:rotate(0)}52%{transform:rotate(360deg)}to{transform:rotate(360deg)}}.cb-twinkle{opacity:0;animation:6.25s linear infinite cb-twinkle}@keyframes cb-twinkle{0%,50%{opacity:0;transform:scale(.3)rotate(0)}54%{opacity:1;transform:scale(1.3)rotate(45deg)}59%{opacity:.85;transform:scale(.9)rotate(70deg)}66%,to{opacity:0;transform:scale(.3)rotate(90deg)}}@keyframes cb-party{0%,to{transform:rotate(-2deg)}50%{transform:rotate(2deg)scale(1.04)}}@media (prefers-reduced-motion:reduce){.cb-float,.cb-thread,.cb-beat,.cb-glow,.cb-burst,.cb-rain,.cb-party,.cb-spin,.cb-twinkle{animation:none}.cb-float{opacity:.6}.cb-burst,.cb-rain,.cb-twinkle{opacity:0}}
