:root{--bg-top:#0b1f2a;--bg-mid:#123a47;--bg-bot:#0e2630;--line-body:#b4e6f08c;--sheet-bg:#f7f9fa;--ink-900:#0f1b22;--ink-600:#0f1b229e;--ink-400:#0f1b226b;--ink-100:#0f1b2214;--ink-050:#0f1b220d;--accent:#4ecdc4;--accent-deep:#0e7c72;--accent-glow:#4ecdc4a6;--pain-hl:#ffc23d;--pain-hl-deep:#a86f00;--move-mark:#fff;--move-mark-glow:#ffffff80;--move-mark-edge:#0c0820d9;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--r-chip:999px;--r-sheet:32px;--r-card:20px;--ease:cubic-bezier(.22, .61, .36, 1);--dur:.18s;--bg-gradient:linear-gradient(180deg, var(--bg-top) 0%, var(--bg-mid) 52%, var(--bg-bot) 100%);--bg-glow:radial-gradient(60% 36% at 50% 30%, #4ecdc424 0%, transparent 70%);--accent-rgb:78, 205, 196;--accent-soft:rgba(var(--accent-rgb), .18);--accent-ring:rgba(var(--accent-rgb), .22);--on-accent:var(--bg-top);--on-ink:#fff;--on-ink-muted:#ffffff59;--glow:drop-shadow(0 0 12px rgba(var(--accent-rgb), .6));--text-strong:#fff;--text-body:#ffffffc7;--text-muted:#ffffff73;--glass-bg:#ffffff14;--glass-bg-strong:#ffffff1f;--glass-blur:blur(20px);--glass-border:1px solid #ffffff24;--sheet-peek:36%;--sheet-half:57.14%;--sheet-full:76%;--sheet-max:var(--sheet-full);--modal-h:85vh;--scrim:#050c1280;--sheet-arc:16px;--sheet-shadow:0 -8px 32px #00000059;--tap-lg:52px;--tap-md:48px;--tap-sm:36px;--chip-h:30px;--option-h:40px;--choice-h:56px;--icon:20px;--font:"Pretendard", "Pretendard Variable", system-ui, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", "Hiragino Sans", "Yu Gothic UI", sans-serif;--font-ja:"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Meiryo", "Noto Sans JP", var(--font);--fs-11:11px;--fs-12:12px;--fs-13:13px;--fs-15:15px;--fs-17:17px;--fs-20:20px;--fs-24:24px;--fs-56:56px;--type-question:700 var(--fs-24)/1.3 var(--font);--type-result:600 var(--fs-20)/1.35 var(--font);--type-hint:400 var(--fs-13)/1.45 var(--font);--type-body:400 16px/1.45 var(--font);--tracking-question:-.02em;--sheet-pad-x:var(--sp-5);--head-inset:5px;--panel-w:max(340px, 36%);--sheet-max-w:600px;--content-max:560px;--content-max-wide:1040px;--content-max-panel:720px;--fs-card-lg:26px;--pm-default:2s;--pm-sharp:1.4s;--pm-dull:3s;--pm-burning:1.8s;--pm-cramping:1.5s;--pm-throbbing:.9s;--pm-pressing:2.4s;--pain-dot:24px;--intake-label-w:96px;--intake-row-gap:14px;--fs-16:16px;--fs-22:22px;--dur-chip:.14s;--dur-pop:.12s;--dur-glow:.2s;--dur-sheet:.24s;--step-slide:8px}@media (prefers-reduced-motion:reduce){:root{--dur:0s;--dur-chip:0s;--dur-pop:0s;--dur-glow:0s;--dur-sheet:0s;--step-slide:0px}}@property --pm-scale{syntax:"<number>";inherits:false;initial-value:1}@property --pm-scale-y{syntax:"<number>";inherits:false;initial-value:1}@property --pm-opacity{syntax:"<number>";inherits:false;initial-value:1}@property --pm-edge{syntax:"<number>";inherits:false;initial-value:0}@property --pm-edge-on{syntax:"<number>";inherits:false;initial-value:0}.pain-motion{animation-duration:var(--pm-default);animation-timing-function:ease-in-out;animation-iteration-count:infinite}.pain-motion--sharp{animation-name:pm-sharp;animation-duration:var(--pm-sharp)}.pain-motion--dull{animation-name:pm-dull;animation-duration:var(--pm-dull)}.pain-motion--burning{animation-name:pm-burning;animation-duration:var(--pm-burning)}.pain-motion--cramping{animation-name:pm-cramping;animation-duration:var(--pm-cramping)}.pain-motion--throbbing{animation-name:pm-throbbing;animation-duration:var(--pm-throbbing)}.pain-motion--pressing{animation-name:pm-pressing;animation-duration:var(--pm-pressing)}@keyframes pm-sharp{0%,12%,to{--pm-opacity:1}6%{--pm-opacity:.35}}@keyframes pm-dull{0%,to{--pm-scale:1;--pm-opacity:.85}50%{--pm-scale:1.015;--pm-opacity:1}}@keyframes pm-burning{0%,to{--pm-edge:0;--pm-edge-on:1}50%{--pm-edge:1;--pm-edge-on:1}}@keyframes pm-cramping{0%{--pm-scale:1;animation-timing-function:cubic-bezier(.2,.7,.3,1)}20%{--pm-scale:.93;animation-timing-function:cubic-bezier(.45,0,.55,1)}to{--pm-scale:1}}@keyframes pm-throbbing{0%{--pm-scale:1}14%{--pm-scale:1.06}28%{--pm-scale:1}42%{--pm-scale:1.02}56%,to{--pm-scale:1}}@keyframes pm-pressing{0%,to{--pm-scale-y:1}50%{--pm-scale-y:.94}}.pain-dot{width:var(--pain-dot);height:var(--pain-dot);flex:none;overflow:visible}.pain-dot__shape{fill:var(--pain-hl);stroke:var(--pain-hl-deep);stroke-width:1.5px;transform-box:fill-box;transform-origin:50%;transform:scale(var(--pm-scale)) scaleY(var(--pm-scale-y));opacity:var(--pm-opacity)}.pain-dot__shape.pain-motion--pressing{transform-origin:top}.pain-dot__shape.pain-motion--burning{stroke-dasharray:3 2;stroke-dashoffset:calc(var(--pm-edge) * 10px)}.pain-motion-probe{visibility:hidden;pointer-events:none;width:0;height:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.pain-motion{animation:none}.pain-dot__shape{stroke-width:2px;stroke-linecap:round}.pain-dot__shape.pain-motion--sharp{stroke-dasharray:.1 3.5}.pain-dot__shape.pain-motion--dull{stroke-dasharray:none}.pain-dot__shape.pain-motion--burning{stroke-dasharray:3 2}.pain-dot__shape.pain-motion--cramping{stroke-dasharray:8 3}.pain-dot__shape.pain-motion--throbbing{stroke-dasharray:6 2.5 .1 2.5}.pain-dot__shape.pain-motion--pressing{stroke-dasharray:none;stroke-width:4px}}*{box-sizing:border-box}html,body{background:var(--bg-top);height:100%;margin:0;overflow-x:hidden}#root{height:100%}body{font:var(--type-body);color:var(--text-body);font-synthesis:none;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit}[lang=ja]{font-family:var(--font-ja)}.app{background:var(--bg-glow), var(--bg-gradient);width:100%;height:100dvh;margin:0 auto;position:relative;overflow:hidden}.symptom-input{height:100%;position:relative;overflow:hidden}.stage{position:absolute;inset:0 0 auto;overflow:hidden}.stage__notice,.screen__notice{text-align:center;font:var(--type-hint);color:var(--text-muted);pointer-events:none;margin:0}.stage__notice{top:var(--sp-4);z-index:2;padding:0 var(--sp-4);position:absolute;left:0;right:0}.body-map__controls{z-index:2;align-items:center;gap:var(--sp-2);flex-direction:column;display:flex;position:absolute;top:76px;right:10px}.view-toggle{margin-bottom:var(--sp-1);border:var(--glass-border);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border-radius:26px;flex-direction:column;gap:2px;padding:3px;display:flex}.glass-button{border:var(--glass-border);background:var(--glass-bg);width:44px;height:44px;-webkit-backdrop-filter:var(--glass-blur);color:var(--text-strong);font:600 var(--fs-12)/1 var(--font);cursor:pointer;border-radius:50%;box-shadow:inset 0 1px #ffffff24}.view-toggle .glass-button{box-shadow:none;color:var(--text-muted);background:0 0;border-color:#0000}.view-toggle .glass-button--on{background:var(--glass-bg-strong);border:var(--glass-border);color:var(--text-strong)}.body-map__controls>.glass-button{font-size:18px;font-weight:400}.body-map__side{z-index:2;font:500 var(--fs-12)/1.2 var(--font);color:var(--text-muted);pointer-events:none;-webkit-user-select:none;user-select:none;margin:0;position:absolute}.body-map__side--left{left:var(--sp-3)}.body-map__side--right{right:var(--sp-3);text-align:right}.stage-hint{z-index:3;padding:var(--sp-2) var(--sp-4);border-radius:var(--r-chip);background:var(--glass-bg-strong);border:var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);font:500 var(--fs-13)/1.3 var(--font);color:var(--text-strong);white-space:nowrap;pointer-events:none;transition:bottom var(--dur-sheet) var(--ease);margin:0;position:absolute;left:50%;transform:translate(-50%)}.sheet{z-index:3;max-height:var(--sheet-full);overscroll-behavior:contain;scrollbar-width:none;padding:0 var(--sheet-pad-x);background:var(--sheet-bg);color:var(--ink-900);border-radius:50% 50% 0 0 / var(--sheet-arc) var(--sheet-arc) 0 0;box-shadow:var(--sheet-shadow);transition:height var(--dur-sheet) var(--ease);flex-direction:column;display:flex;position:absolute;bottom:0;left:0;right:0;overflow-y:auto}.sheet::-webkit-scrollbar{display:none}.sheet--peek{height:var(--sheet-peek)}.sheet--half{height:var(--sheet-half)}.sheet--full{height:var(--sheet-full)}.sheet--dragging{transition:none}.sheet__handle{cursor:grab;touch-action:none;flex:none;align-self:center;place-items:center;width:96px;height:20px;display:grid}.sheet__handle:focus-visible{outline:2px solid var(--accent-deep);outline-offset:-2px;border-radius:var(--r-chip)}.sheet--dragging .sheet__handle{cursor:grabbing}.sheet__handle-bar{background:var(--ink-100);border-radius:2px;width:36px;height:4px}.sheet__body{padding-bottom:var(--sp-4);flex:1 0 auto}.sheet__body>div{display:flow-root}.sheet--peek-view .chip-bar,.sheet--peek-view .sheet-step__content>:not(.peek-line){display:none}.sheet--peek-view .sheet-step__content>.peek-line{margin-bottom:0}.sheet--peek-view .sheet-head{flex-wrap:nowrap}.sheet--peek-view .sheet__question{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sheet-step{animation:step-in var(--dur) var(--ease)}@keyframes step-in{0%{opacity:0;transform:translateY(var(--step-slide))}to{opacity:1;transform:none}}.progress{justify-content:center;align-items:center;gap:var(--sp-1);margin:0 0 var(--sp-4);display:flex}.progress__count{margin-left:var(--sp-2);font:600 var(--fs-12)/1 var(--font);color:var(--ink-600);font-variant-numeric:tabular-nums}.progress__bar{background:var(--ink-100);width:20px;height:3px;transition:width var(--dur) var(--ease), background var(--dur) var(--ease);border-radius:2px}.progress__bar--done{background:var(--accent-deep)}.progress__bar--current{background:var(--accent-deep);width:32px}.chip-bar{align-items:center;gap:var(--sp-2);margin:0 0 var(--sp-4);display:flex}.chip-row{gap:var(--sp-2);scrollbar-width:none;flex:1;min-width:0;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.chip-row::-webkit-scrollbar{display:none}.chip{height:var(--chip-h);padding:0 var(--sp-3);background:var(--ink-050);border-radius:var(--r-chip);font:500 var(--fs-13)/1 var(--font);color:var(--ink-900);white-space:nowrap;animation:chip-in var(--dur-chip) var(--ease);border:none;flex:none;align-items:center;gap:6px;display:inline-flex}@keyframes chip-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:none}}.chip__remove{cursor:pointer;font:400 14px/1 var(--font);color:var(--ink-400);background:0 0;border:none;margin:-6px -6px -6px -2px;padding:6px}.chip-bar__clear{padding:var(--sp-2) 0 var(--sp-2) var(--sp-1);cursor:pointer;font:400 var(--fs-11)/1 var(--font);color:var(--ink-400);white-space:nowrap;background:0 0;border:none;flex:none}.sheet-head{align-items:baseline;column-gap:var(--sp-3);row-gap:var(--sp-1);margin:0 0 var(--sp-4);padding:0 var(--head-inset);flex-wrap:wrap;display:flex}.sheet__question{min-width:0;font:var(--type-question);letter-spacing:var(--tracking-question);color:var(--ink-900);flex:auto;margin:0}.sheet-head__actions{align-items:baseline;gap:var(--sp-3);margin-left:auto;display:flex}.head-link{padding:var(--sp-1) 0;cursor:pointer;white-space:nowrap;background:0 0;border:none}.head-link--list{font:500 var(--fs-13)/1 var(--font);color:var(--ink-600)}.head-link--skip{font:400 var(--fs-11)/1 var(--font);color:var(--ink-400)}.head-link--skip-strong{padding:var(--sp-2) var(--sp-3);border:1px solid var(--ink-100);border-radius:var(--r-chip);font:600 var(--fs-13)/1 var(--font);color:var(--ink-600)}.sheet-result{margin:0 0 var(--sp-3);font:var(--type-result);color:var(--accent-deep)}.sheet-hint{margin:0 0 var(--sp-3);font:var(--type-hint);color:var(--ink-400)}.tile-grid{gap:var(--sp-2);grid-template-columns:1fr 1fr;display:grid}.tile{height:var(--tap-md);padding:0 var(--sp-3);border-radius:var(--r-card);background:var(--ink-050);font:500 var(--fs-15)/1.2 var(--font);color:var(--ink-900);cursor:pointer;transition:background var(--dur) var(--ease), color var(--dur) var(--ease);border:none}.tile--selected{background:var(--accent-deep);color:var(--on-ink);font-weight:600}.tile--motion{align-items:center;gap:var(--sp-2);padding-left:var(--sp-3);text-align:left;display:flex}.tile--selected .pain-dot__shape{stroke:var(--on-ink)}.choice-list{gap:var(--sp-2);margin-bottom:var(--sp-3);display:grid}.choice{height:var(--choice-h);padding:0 var(--sp-4);text-align:left;border-radius:var(--r-card);background:var(--ink-050);font:600 16px/1.2 var(--font);color:var(--ink-900);cursor:pointer;transition:border-color var(--dur) var(--ease);border:2px solid #0000}.choice--selected{border-color:var(--accent-deep)}.route{align-items:center;gap:var(--sp-2);margin:0 0 var(--sp-3);flex-wrap:wrap;display:flex}.route__from,.route__to{height:var(--tap-sm);padding:0 var(--sp-4);border-radius:var(--r-chip);font:600 var(--fs-15)/1 var(--font);white-space:nowrap;align-items:center;display:inline-flex}.route__from{background:var(--ink-050);color:var(--ink-900)}.route__arrow{font:400 16px/1 var(--font);color:var(--ink-400)}.route__to{border:1px dashed var(--ink-400);color:var(--ink-400);cursor:pointer;transition:background var(--dur) var(--ease), color var(--dur) var(--ease), border-color var(--dur) var(--ease);background:0 0;font-weight:500}.route__to--set{border:1px solid var(--accent-deep);background:var(--accent-deep);color:var(--on-ink);font-weight:600}.option-wrap{gap:var(--sp-2);flex-wrap:wrap;display:flex}.option{height:var(--option-h);padding:0 var(--sp-4);border-radius:var(--r-chip);background:var(--ink-050);font:500 var(--fs-15)/1 var(--font);color:var(--ink-900);cursor:pointer;transition:background var(--dur) var(--ease), color var(--dur) var(--ease);border:none;align-items:center;gap:6px;display:inline-flex}.option--selected{background:var(--accent-deep);color:var(--on-ink);font-weight:600}.option__check{font-size:var(--fs-13)}.severity__label{margin:0 0 var(--sp-1);font:var(--type-hint);color:var(--ink-400)}.severity__value{margin:0 0 var(--sp-4);align-items:baseline;gap:2px;display:flex}.severity__num{min-width:.6em;font:300 var(--fs-56)/1 var(--font);letter-spacing:-.02em;color:var(--ink-900);animation:pop var(--dur-pop) var(--ease);display:inline-block}@keyframes pop{0%{transform:scale(1.06)}to{transform:none}}.severity__max{font:400 var(--fs-20)/1 var(--font);color:var(--ink-400)}.severity__track{--thumb:20px;--fill:calc(var(--thumb) / 2 + (100% - var(--thumb)) * var(--pos));height:var(--thumb);margin:0 0 var(--sp-2);position:relative}.severity__ticks{pointer-events:none;position:absolute;inset:0}.severity__ticks span{width:1px;height:9px;top:50%;left:calc(var(--thumb) / 2 + (100% - var(--thumb)) * var(--i));background:var(--ink-100);position:absolute;transform:translate(-50%,-50%)}.severity__slider{z-index:1;width:100%;height:var(--thumb);appearance:none;cursor:pointer;background:0 0;margin:0;display:block;position:relative}.severity__slider:focus{outline:none}.severity__slider:focus-visible{outline:2px solid var(--accent-deep);outline-offset:var(--sp-2);border-radius:var(--r-chip)}.severity__slider::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--ink-900) 0 var(--fill), var(--ink-100) var(--fill) 100%);border-radius:2px;height:3px}.severity__slider::-webkit-slider-thumb{appearance:none;width:var(--thumb);height:var(--thumb);margin-top:calc((3px - var(--thumb)) / 2);background:var(--accent);box-shadow:0 0 0 6px var(--accent-ring), 0 0 16px var(--accent-glow);border:none;border-radius:50%}.severity__slider::-moz-range-track{background:var(--ink-100);border-radius:2px;height:3px}.severity__slider::-moz-range-progress{background:var(--ink-900);border-radius:2px;height:3px}.severity__slider::-moz-range-thumb{width:var(--thumb);height:var(--thumb);background:var(--accent);box-shadow:0 0 0 6px var(--accent-ring), 0 0 16px var(--accent-glow);border:none;border-radius:50%}.severity__sparkle{z-index:2;pointer-events:none;width:0;height:0;top:50%;left:calc(var(--thumb) + (100% - var(--thumb)) * var(--pos));position:absolute}.severity__sparkle:before,.severity__sparkle:after{content:"";background:var(--accent);border-radius:50%;width:2px;height:2px;position:absolute}.severity__sparkle:before{top:-5px;left:6px}.severity__sparkle:after{top:2px;left:11px}.severity__scale{font:400 var(--fs-11)/1.4 var(--font);color:var(--ink-400);justify-content:space-between;display:flex}.memo__input{resize:none;width:100%;min-height:128px;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-card);background:var(--ink-050);font:var(--type-body);color:var(--ink-900);border:none;display:block}.memo__input::placeholder{color:var(--ink-400)}.memo__input:focus{outline:2px solid var(--accent-deep);outline-offset:0}.memo__meta{justify-content:space-between;align-items:flex-start;gap:var(--sp-3);margin-top:var(--sp-2);display:flex}.memo__notice{font:400 var(--fs-12)/1.45 var(--font);color:var(--ink-400);margin:0}.memo__count{font:400 var(--fs-12)/1.45 var(--font);color:var(--ink-400);font-variant-numeric:tabular-nums;flex:none}.sheet__bar{margin:0 calc(-1 * var(--sheet-pad-x));padding:var(--sp-3) var(--sheet-pad-x) calc(var(--sp-2) + var(--sp-4) + env(safe-area-inset-bottom));background:var(--sheet-bg);border-top:1px solid var(--ink-100);flex:none;position:sticky;bottom:0}.bar{align-items:center;display:flex}.icon{width:var(--icon);height:var(--icon)}.bar__back,.bar__memo{width:var(--tap-lg);height:var(--tap-lg);cursor:pointer;transition:opacity var(--dur) var(--ease), border-color var(--dur) var(--ease);border-radius:50%;flex:none;place-items:center;display:grid}.bar__back{background:var(--ink-900);color:var(--on-ink);border:none}.bar__back:disabled{opacity:.3;pointer-events:none}.bar__next{height:var(--tap-lg);margin:0 var(--sp-3);justify-content:center;align-items:center;gap:var(--sp-3);border:1px solid var(--ink-900);border-radius:var(--r-chip);background:var(--ink-900);color:var(--on-ink);font:600 var(--fs-17)/1 var(--font);cursor:pointer;transition:background var(--dur) var(--ease), color var(--dur) var(--ease), border-color var(--dur) var(--ease);flex:1;display:flex}.bar__chevrons{color:var(--on-ink-muted);letter-spacing:.08em}.bar__next:disabled{border-color:var(--ink-100);color:var(--ink-400);cursor:default;background:0 0}.bar__next:disabled .bar__chevrons{color:var(--ink-100)}.bar__memo{border:1px solid var(--ink-100);color:var(--ink-600);background:0 0;position:relative}.bar__memo[aria-pressed=true]{border-color:var(--ink-900);color:var(--ink-900)}.bar__memo--has:after{content:"";background:var(--accent-deep);border-radius:50%;width:8px;height:8px;position:absolute;top:10px;right:10px}.modal{z-index:10;position:absolute;inset:0}.modal__scrim{cursor:pointer;background:var(--scrim);animation:fade-in var(--dur-sheet) var(--ease);border:none;padding:0;position:absolute;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.modal__panel{height:var(--modal-h);background:var(--sheet-bg);color:var(--ink-900);border-radius:var(--r-sheet) var(--r-sheet) 0 0;box-shadow:var(--sheet-shadow);animation:modal-up var(--dur-sheet) var(--ease);flex-direction:column;display:flex;position:absolute;bottom:0;left:0;right:0}@keyframes modal-up{0%{transform:translateY(100%)}to{transform:none}}.modal__head{padding:var(--sp-5) var(--sheet-pad-x) var(--sp-3);border-bottom:1px solid var(--ink-100);flex:none;justify-content:space-between;align-items:center;display:flex}.modal__title{font:var(--type-result);color:var(--ink-900);margin:0}.modal__close{width:var(--tap-sm);height:var(--tap-sm);background:var(--ink-050);cursor:pointer;font:400 var(--fs-20)/1 var(--font);color:var(--ink-600);border:none;border-radius:50%}.modal__body{overscroll-behavior:contain;scrollbar-width:none;min-height:0;padding:var(--sp-4) var(--sheet-pad-x) calc(var(--sp-6) + env(safe-area-inset-bottom));flex:1;overflow-y:auto}.modal__body::-webkit-scrollbar{display:none}.modal__group{margin-top:var(--sp-5)}.modal__group-label{margin:0 0 var(--sp-2);font:600 var(--fs-12)/1 var(--font);color:var(--ink-400)}.modal .tile{height:var(--tap-lg)}.tile--wide{width:100%}.glass-chip,.country,.summary-row{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:var(--glass-border)}.primary-button{min-height:54px;padding:0 var(--sp-5);border-radius:var(--r-chip);border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);font:700 var(--fs-17)/1 var(--font);letter-spacing:-.01em;filter:var(--glow);cursor:pointer;transition:background var(--dur-glow) var(--ease), color var(--dur-glow), filter var(--dur-glow), border-color var(--dur-glow)}.primary-button:disabled{color:var(--text-muted);border:var(--glass-border);filter:none;cursor:default;background:0 0}.text-button{cursor:pointer;min-height:44px;font:500 14px/1 var(--font);color:var(--text-muted);white-space:nowrap;background:0 0;border:0;padding:0 10px}.text-button:not(:disabled):hover{color:var(--text-body)}.text-button:disabled{opacity:.35;cursor:default}.glass-chip{min-height:40px;padding:0 var(--sp-4);border-radius:var(--r-chip);color:var(--text-body);font:500 14px/1 var(--font);cursor:pointer}.screen{flex-direction:column;height:100%;display:flex}.screen__notice{padding:var(--sp-4) var(--sp-5) 0}.screen__body{scrollbar-width:none;min-height:0;padding:28px var(--sp-5) var(--sp-4);animation:step-in var(--dur) var(--ease);flex:1;overflow-y:auto}.screen__body::-webkit-scrollbar{display:none}.screen__footer{padding:var(--sp-2) var(--sp-5) calc(var(--sp-4) + env(safe-area-inset-bottom));flex:none;display:grid}.screen__footer--split{align-items:center;gap:var(--sp-2);grid-template-columns:auto 1fr auto}.screen__question{margin:0 0 var(--sp-2);font:var(--type-question);letter-spacing:var(--tracking-question);color:var(--text-strong)}.screen__hint{font:var(--type-hint);color:var(--text-muted);margin:0 0 10px}.country-list,.summary-list{margin:var(--sp-4) 0 0;gap:var(--sp-2);padding:0;list-style:none;display:grid}.country{border-radius:var(--r-chip);cursor:pointer;text-align:left;width:100%;min-height:60px;transition:background var(--dur-glow) var(--ease), border-color var(--dur-glow);align-items:center;gap:14px;padding:0 18px;display:flex}.country__flag{font-size:26px;line-height:1}.country__name{font:600 18px/1.2 var(--font);color:var(--text-strong);flex:1}.country__soon{font:var(--type-hint);color:var(--text-muted)}.country:disabled{cursor:default;opacity:.5}.country--selected{background:var(--accent-soft);border-color:var(--accent)}.summary-row{cursor:pointer;text-align:left;gap:2px var(--sp-3);border-radius:18px;grid-template-columns:1fr auto;grid-template-areas:"label edit""text edit";align-items:center;width:100%;padding:10px 18px;display:grid}.summary-row__label{font:var(--type-hint);color:var(--text-muted);grid-area:label}.summary-row__text{font:600 18px/1.4 var(--font);color:var(--text-strong);overflow-wrap:anywhere;grid-area:text}.summary-row__edit{font:500 var(--fs-13)/1 var(--font);color:var(--accent);grid-area:edit}.summary-row--empty{background:0 0;border-style:dashed}.summary-row--empty .summary-row__text{color:var(--text-muted);font-weight:400}.summary .screen__footer--split{grid-template-columns:auto 1fr}.card-notice{padding:var(--sp-4) var(--sp-5) 14px;background:var(--glass-bg);border-bottom:var(--glass-border);flex:none}.card-notice p{font:600 16px/1.45 var(--font);color:var(--text-strong);margin:0}.card-notice .card-notice__sub{font:400 14px/1.4 var(--font);color:var(--text-body);margin-top:2px}.card-screen .screen__body{padding-top:var(--sp-5)}.card-main>*+*,.card-figure+.card-main{margin-top:var(--sp-4)}.intake{padding:var(--sp-5);border-radius:var(--r-card);border:1.5px solid var(--accent-deep);background:var(--sheet-bg);color:var(--ink-900)}.intake__rows{margin:0}.intake__rows+.intake__rows{margin-top:calc(var(--sp-5) / 2);padding-top:calc(var(--sp-5) / 2);border-top:1px solid var(--ink-100)}.intake__row{align-items:baseline;gap:var(--sp-4);padding:calc(var(--intake-row-gap) / 2) 0;display:flex}.intake__row+.intake__row{border-top:1px solid var(--ink-100)}.intake__row:first-child{padding-top:0}.intake__row:last-child{padding-bottom:0}.intake__label{width:var(--intake-label-w);text-align:right;font:500 var(--fs-15)/1.4 var(--font);color:var(--ink-400);flex:none}.intake__value{min-width:0;font:600 var(--fs-22)/1.4 var(--font);color:var(--ink-900);word-break:keep-all;overflow-wrap:anywhere;flex:1;margin:0}.intake__aside{word-break:normal;display:inline-block}.intake__rows--sm .intake__label{font-size:var(--fs-13)}.intake__rows--sm .intake__value{font-size:var(--fs-16)}.card-note{padding:var(--sp-4);border-left:3px solid var(--ink-400);border-radius:var(--sp-1) var(--r-card) var(--r-card) var(--sp-1);background:linear-gradient(var(--ink-050), var(--ink-050)), var(--sheet-bg);color:var(--ink-900)}.card-note__label{font:500 var(--fs-13)/1.4 var(--font);color:var(--ink-600);margin:0}.card-note__text{margin:var(--sp-2) 0 0;font:500 var(--fs-20)/1.5 var(--font);color:var(--ink-900);white-space:pre-wrap;overflow-wrap:anywhere}.card-figure{margin:0}.card-banner{padding:var(--sp-3) var(--sp-4);border-radius:var(--r-card);font:var(--type-hint);color:var(--text-body);background:#ffffff0a;border:1px dashed #ffffff4d;gap:2px;display:grid}.card-banner strong{font:600 14px/1.4 var(--font);color:var(--text-strong)}.card-awake{text-align:center;font:var(--type-hint);color:var(--text-muted);margin:0}.screen-host{height:100%}.screen-host[hidden]{display:none}.stage{transition:height var(--dur-sheet) var(--ease)}.stage__notice{top:var(--sp-3)}.stage__notice p{margin:0}.stage__notice p:first-child{font-size:var(--fs-12)}.stage__credit{font:400 10px/1.3 var(--font);color:var(--text-muted);opacity:.8;margin-top:2px}.stage__model{position:absolute;bottom:0;left:0;right:0}.body-model{touch-action:none;cursor:grab;width:100%;height:100%;position:relative}.body-model canvas{display:block}.body-status{font:var(--type-hint);color:var(--text-muted);pointer-events:none;place-items:center;margin:0;display:grid;position:absolute;inset:0}.body-map__side{bottom:var(--sp-3)}.glass-button{padding:0}.view-toggle .glass-button{letter-spacing:-.02em;font-size:11px}.tool-line{gap:var(--sp-1);display:grid}.text-link{padding:var(--sp-1) 0;cursor:pointer;font:500 var(--fs-13)/1 var(--font);color:var(--ink-600);text-decoration:underline;-webkit-text-decoration-color:var(--ink-100);text-decoration-color:var(--ink-100);text-underline-offset:3px;background:0 0;border:none;justify-self:start}.modal__foot{padding:var(--sp-3) var(--sheet-pad-x) calc(var(--sp-4) + env(safe-area-inset-bottom));border-top:1px solid var(--ink-100);flex:none;display:flex}.modal__foot .bar__next{margin:0}.card-figure{padding:var(--sp-3);border-radius:var(--r-card);border:var(--glass-border);background:var(--glass-bg)}.card-3d{border-radius:var(--r-card);height:260px;position:relative;overflow:hidden}.card-3d .body-model{position:absolute;inset:0}.card-3d__controls{top:var(--sp-2);right:var(--sp-2);z-index:2;align-items:center;gap:var(--sp-2);flex-direction:column;display:flex;position:absolute}.card-3d__controls>.glass-button{font-size:18px;font-weight:400}.card-figure__credit{margin-top:var(--sp-2);font:400 10px/1.3 var(--font);color:var(--text-muted);text-align:right}.app--tablet .sheet,.app--tablet .modal__panel{max-width:var(--sheet-max-w);margin-inline:auto;left:0;right:0}.app--tablet .sheet{border-radius:50% 50% 0 0 / calc(var(--sheet-arc) * 1.5) calc(var(--sheet-arc) * 1.5) 0 0}.app--tablet .body-map__controls{right:var(--sp-5);top:80px}.app--tablet .body-map__side--left{left:var(--sp-5)}.app--tablet .body-map__side--right{right:var(--sp-5)}.app--tablet .screen__body,.app--side .screen__body,.app--tablet .screen__footer,.app--side .screen__footer,.app--tablet .screen__notice,.app--side .screen__notice,.app--tablet .card-notice,.app--side .card-notice{padding-inline:max(var(--sp-5), calc((100% - var(--content-max)) / 2))}.app--tablet .screen__body{padding-top:var(--sp-6)}.app--tablet .intake__rows--lg .intake__value,.app--side .intake__rows--lg .intake__value{font-size:var(--fs-card-lg)}.app--tablet .intake__rows--sm .intake__value,.app--side .intake__rows--sm .intake__value{font-size:var(--fs-20)}.app--tablet .card-3d{height:360px}.symptom-input--side .stage{inset:0 var(--panel-w) 0 0;height:auto}.symptom-input--side .stage-hint{left:calc((100% - var(--panel-w)) / 2)}.app--side .sheet--side{width:var(--panel-w);height:auto;max-height:none;padding-top:var(--sp-5);border-radius:var(--r-sheet) 0 0 var(--r-sheet);inset:0 0 0 auto;box-shadow:-8px 0 32px #00000059}.app--side .sheet--side .sheet__handle{display:none}.app--side .body-map__controls{top:80px;right:var(--sp-4)}.app--side .body-map__side--left{left:var(--sp-5)}.app--side .body-map__side--right{right:var(--sp-5)}.app--side .modal__panel{max-width:var(--sheet-max-w);height:min(var(--modal-h), calc(100% - var(--sp-5)));margin-inline:auto;left:0;right:0}.app--side .country-list,.app--side .summary-list{grid-template-columns:1fr 1fr}.app--side .screen__body{--content-max:var(--content-max-wide);padding-top:var(--sp-5)}.app--side .screen__footer,.app--side .card-notice{--content-max:var(--content-max-wide)}.app--side .screen__footer:not(.screen__footer--split){justify-items:end}.app--side .screen__footer:not(.screen__footer--split) .primary-button{min-width:280px}.app--side .summary .screen__footer--split{grid-template-columns:auto minmax(280px,360px);justify-content:space-between}.app--side .card-layout{column-gap:var(--sp-5);grid-template-columns:minmax(0,16fr) minmax(0,9fr);align-items:start;display:grid}.app--side .card-main{grid-area:1/1;margin-top:0}.app--side .card-main:only-child{grid-column:1/-1}.app--side .card-figure{grid-area:1/2}.app--side .card-3d{height:calc(100dvh - 300px)}@media (height<=480px){.app--side .sheet--side{padding-top:var(--sp-3)}.app--side .body-map__controls{top:64px}.app--side .screen__body{padding-top:var(--sp-3)}}.stage-prehint{z-index:2;padding:6px var(--sp-3);border-radius:var(--r-chip);background:var(--glass-bg);border:var(--glass-border);font:500 var(--fs-12)/1.2 var(--font);color:var(--text-body);white-space:nowrap;pointer-events:none;margin:0;position:absolute;top:72px;left:50%;transform:translate(-50%)}.chip-group+.chip-group{margin-top:var(--sp-4)}.chip-group__label{margin:0 0 var(--sp-2);font:600 var(--fs-12)/1.2 var(--font);color:var(--ink-600)}.chip-group__hint{color:var(--ink-400);font-weight:400}.option--sm{padding:0 var(--sp-3);font-size:14px}.chip-divider{margin:var(--sp-4) 0;border:0;border-top:1px solid var(--ink-100)}.move-overlay{pointer-events:none;width:100%;height:100%;filter:drop-shadow(0 0 1.5px var(--move-mark-edge)) drop-shadow(0 0 6px var(--move-mark-glow));position:absolute;inset:0;overflow:visible}.move-overlay__line{fill:none;stroke:var(--move-mark);stroke-width:2.5px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0}.move-overlay--draw .move-overlay__line{animation:move-draw .4s var(--ease) both}@keyframes move-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.move-overlay__head{fill:var(--move-mark)}.move-overlay__from{fill:none;stroke:var(--move-mark);stroke-width:2.5px}.move-overlay__to{fill:var(--move-mark)}@media (prefers-reduced-motion:reduce){.move-overlay--draw .move-overlay__line{animation:none}}.intake__letter{font:600 var(--fs-11)/1 var(--font);color:var(--ink-400);margin-right:6px;display:inline-block}.clinician-entry{padding:var(--sp-3) var(--sp-5) 0;flex:none}.clinician-entry__button{border:1px solid var(--text-muted);border-radius:var(--r-card);width:100%;height:56px;color:var(--text-strong);cursor:pointer;background:0 0;place-content:center;gap:2px;display:grid}.clinician-entry__title{font:700 var(--fs-16)/1.2 var(--font-ja)}.clinician-entry__sub{font:400 var(--fs-12)/1.2 var(--font-ja);color:var(--text-body)}.clinician-entry__hint{text-align:center;font:400 var(--fs-12)/1.3 var(--font);color:var(--text-muted);margin:6px 0 0}.clinician{background:var(--sheet-bg);color:var(--ink-900)}.clinician__head{padding:var(--sp-4) var(--sp-5) 0;flex:none}.clinician__tabs{gap:var(--sp-1);padding:var(--sp-1);border-radius:var(--r-chip);background:var(--ink-050);grid-template-columns:1fr 1fr;display:grid}.clinician__tab{min-height:var(--tap-md);padding:0 var(--sp-2);border-radius:var(--r-chip);font:600 var(--fs-15)/1.2 var(--font-ja);color:var(--ink-600);cursor:pointer;background:0 0;border:0}.clinician__tab [lang=en]{font:400 var(--fs-12)/1.2 var(--font)}.clinician__tab--on{background:var(--ink-900);color:var(--on-ink)}.clinician .screen__body{padding-top:var(--sp-3)}.phrase-list{margin:0;padding:0;list-style:none}.phrase-list>li+li{border-top:1px solid var(--ink-100)}.phrase-list>li.phrase-list__sensitive{border-top-color:var(--ink-400)}.phrase{width:100%;padding:14px var(--sp-1);text-align:left;cursor:pointer;color:inherit;background:0 0;border:0;gap:2px;display:grid}.phrase__ja{font:600 var(--fs-20)/1.35 var(--font-ja);color:var(--ink-900)}.phrase__en{font:400 14px/1.3 var(--font);color:var(--ink-400)}.clinician .screen__footer{border-top:1px solid var(--ink-100)}.clinician__back,.text-button--ink{color:var(--ink-600)}.clinician__back:not(:disabled):hover,.text-button--ink:not(:disabled):hover{color:var(--ink-900)}.med-slot{gap:var(--sp-3);margin:0 0 var(--sp-3);padding:var(--sp-4);border-radius:var(--r-card);background:var(--ink-050);display:grid}.med-slot__row{align-items:center;gap:var(--sp-3);display:flex}.med-slot__unit{font:600 18px/1 var(--font-ja)}.stepper{align-items:center;gap:var(--sp-2);display:flex}.stepper__btn{width:var(--tap-md);height:var(--tap-md);border:1px solid var(--ink-100);background:var(--sheet-bg);font:600 var(--fs-20)/1 var(--font);color:var(--ink-900);cursor:pointer;border-radius:50%}.stepper__btn:disabled{opacity:.3;cursor:default}.stepper__value{text-align:center;min-width:2ch;font:700 var(--fs-24)/1 var(--font);font-variant-numeric:tabular-nums}.med-slot__timing{gap:var(--sp-2);flex-wrap:wrap;display:flex}.med-chip{height:var(--option-h);padding:0 var(--sp-4);border-radius:var(--r-chip);background:var(--sheet-bg);box-shadow:inset 0 0 0 1px var(--ink-100);font:600 var(--fs-15)/1 var(--font-ja);color:var(--ink-900);cursor:pointer;border:0}.med-chip--on{background:var(--ink-900);color:var(--on-ink);box-shadow:none}.med-slot__actions{justify-content:flex-end;align-items:center;gap:var(--sp-2);display:flex}.clinician-send{min-height:var(--tap-md);padding:0 var(--sp-5);border-radius:var(--r-chip);background:var(--ink-900);color:var(--on-ink);font:700 var(--fs-16)/1 var(--font-ja);cursor:pointer;border:0}.clinician-send:disabled{color:var(--ink-400);box-shadow:inset 0 0 0 1px var(--ink-100);cursor:default;background:0 0}.phrase{column-gap:var(--sp-3);grid-template-columns:1fr auto;align-items:center}.phrase__ja,.phrase__en{grid-column:1}.phrase__chev{font:400 var(--fs-17)/1 var(--font);color:var(--ink-400);grid-area:1/2/span 2}.phrase-drop__inner{padding-bottom:var(--sp-4)}.patient-card{padding:var(--sp-4) var(--sp-5) var(--sp-5);border-radius:var(--r-card);background:var(--ink-050);color:var(--ink-900)}.patient-card__text{font:600 var(--fs-22)/1.45 var(--font);color:var(--ink-900);word-break:keep-all;margin:0}.patient-card__num{font-variant-numeric:tabular-nums}.patient-card__answers{gap:var(--sp-2);margin-top:var(--sp-4);grid-template-columns:repeat(3,1fr);display:grid}.answer{min-height:var(--tap-md);padding:0 var(--sp-2);border-radius:var(--r-card);border:1px solid var(--ink-100);background:var(--sheet-bg);color:var(--ink-900);font:600 var(--fs-15)/1.2 var(--font);cursor:pointer;word-break:keep-all}.answer--on{border-color:var(--ink-900);background:var(--ink-900);color:var(--on-ink)}.patient-card__reply{margin:var(--sp-3) 0 0;padding:var(--sp-3);border-radius:var(--r-card);border:1px solid var(--ink-100);background:var(--sheet-bg);text-align:center;font:600 var(--fs-20)/1.3 var(--font-ja);color:var(--ink-900)}.patient-card__redo{margin-top:var(--sp-3);padding:var(--sp-2) 0;cursor:pointer;font:500 var(--fs-13)/1 var(--font);color:var(--ink-600);text-underline-offset:3px;background:0 0;border:0;text-decoration:underline}.app--tablet .clinician-entry,.app--side .clinician-entry,.app--tablet .clinician__head,.app--side .clinician__head,.app--tablet .clinician__body,.app--side .clinician__body{padding-inline:max(var(--sp-5), calc((100% - var(--content-max)) / 2))}.app--side .clinician-entry{--content-max:var(--content-max-wide)}.app--side .clinician__head,.app--side .clinician__body{--content-max:var(--content-max-panel)}.stage--compact .body-map__controls,.stage--compact .body-map__side{display:none}.intake__seg{word-break:normal;max-width:100%;display:inline-block}[lang=ko] .intake__seg{word-break:keep-all}@media (width<=400px){.intake{padding:var(--sp-4)}.intake__row{gap:var(--sp-3)}.intake__rows--lg .intake__value{font-size:var(--fs-20)}}.body-map__controls>.glass-button--flip,.card-3d__controls>.glass-button--flip{height:54px;margin-bottom:var(--sp-1);font:600 var(--fs-11)/1 var(--font);letter-spacing:-.02em;border-radius:27px;place-content:center;gap:2px;display:grid}.glass-button__icon{font-size:var(--fs-15);line-height:1}.body-map__controls>.glass-button--clear{font:600 10px/1.15 var(--font);letter-spacing:-.02em}.glass-button--clear:disabled{opacity:.35;cursor:default}.intake__seg,.intake__aside{vertical-align:top}
