:root{--color-text-primary: #18324a;--color-text-secondary: #3c5468;--color-text-muted: #4a6275;--color-text-faint: #5b7386;--color-surface-paper: #fffdf7;--color-surface-card: #f3f7fa;--color-surface-white: #ffffff;--color-border: #c9d6df;--color-border-soft: #e2eaf0;--color-action-primary: #2e6fbe;--color-action-primary-hover: #1f4f8b;--color-action-primary-active: #194272;--color-action-selected-bg: #e4edf9;--color-feedback-success: #267e78;--color-feedback-success-bg: #dcefec;--color-feedback-success-border: #9ccec9;--color-feedback-success-text: #1e6660;--color-feedback-warning: #f2c14e;--color-feedback-warning-bg: #fff6e0;--color-feedback-warning-border: #e8c97a;--color-feedback-warning-text: #8a5a12;--color-feedback-error: #c95650;--color-feedback-error-bg: #f9e9e8;--color-feedback-error-border: #e3b3b0;--color-feedback-error-text: #a8443f;--color-line-english: #6e63b6;--color-line-english-bg: #eae7f7;--color-line-english-text: #514894;--color-mode-olympiad: #18324a;--color-disabled-bg: #e2eaf0;--color-disabled-fg: #7c93a5;--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px;--space-5: 48px;--radius-card: 20px;--radius-control: 12px;--radius-chip: 999px;--font-size-display: 32px;--font-size-question: 22px;--font-size-task: 19px;--font-size-body: 16px;--font-size-caption: 13.5px;--line-height-task: 1.58;--duration-state: .15s;--duration-screen: .25s;--ease: cubic-bezier(.2, .7, .3, 1);--font-main: "Golos Text", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, monospace;--shadow-float: 0 8px 24px -16px rgba(24, 50, 74, .2);--color-subject-mental: var(--color-feedback-warning);--color-subject-mental-bg: #fff0dc;--color-subject-mental-text: var(--color-feedback-warning-text);--color-subject-math: var(--color-action-primary);--color-subject-math-bg: var(--color-action-selected-bg);--color-subject-math-text: var(--color-action-primary-hover);--color-subject-english: var(--color-line-english);--color-subject-english-bg: var(--color-line-english-bg);--color-subject-english-text: var(--color-line-english-text);--color-subject-olympiad: var(--color-mode-olympiad);--color-subject-olympiad-gold: #b5892e;--dock-clearance: 132px}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:var(--color-surface-paper);color:var(--color-text-primary);font-family:var(--font-main);font-size:var(--font-size-body);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}a{color:var(--color-action-primary);text-decoration:none}a:hover{color:var(--color-action-primary-hover);text-decoration:underline}button,a,input,select,textarea{touch-action:manipulation}button{font-family:inherit;font-size:inherit;cursor:pointer}:focus-visible{outline:none;box-shadow:0 0 0 3px var(--color-surface-paper),0 0 0 6px var(--color-action-primary);border-radius:var(--radius-control)}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 20px;border-radius:13px;border:none;font-size:16px;font-weight:600;background:var(--color-action-primary);color:var(--color-surface-paper);transition:background var(--duration-state) var(--ease)}.btn:hover{background:var(--color-action-primary-hover)}.btn:active{background:var(--color-action-primary-active)}.btn:disabled{background:var(--color-disabled-bg);color:var(--color-disabled-fg);cursor:default}.btn--big{min-height:52px;padding:0 26px;font-size:17px}.btn--secondary{background:var(--color-surface-white);color:var(--color-text-secondary);border:1px solid var(--color-border);font-weight:400}.btn--secondary:hover{background:var(--color-surface-card)}.btn--secondary:active{background:var(--color-border-soft)}.btn--ghost{background:transparent;color:var(--color-action-primary);font-weight:400}.btn--ghost:hover,.btn--ghost:active{background:var(--color-surface-card)}.btn--ink{background:var(--color-mode-olympiad)}.btn--ink:hover{background:#22405c}.btn--danger{background:transparent;border:1.5px solid var(--color-feedback-error);color:var(--color-feedback-error-text);font-weight:400}.btn--danger:hover{background:var(--color-feedback-error-bg)}.btn--sun{background:var(--color-feedback-warning);color:var(--color-text-primary)}.btn--sun:hover{background:#e6b53f}.card{background:var(--color-surface-white);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:22px}.card--flat{background:var(--color-surface-card)}.mono{font-family:var(--font-mono)}.eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-faint)}.caption{font-size:var(--font-size-caption);color:var(--color-text-muted)}.task-text{font-size:var(--font-size-task);line-height:var(--line-height-task);color:#20394f;max-width:64ch;text-wrap:pretty;white-space:pre-line}.question-text{font-size:var(--font-size-question);font-weight:600;line-height:1.35;color:var(--color-text-primary)}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:var(--font-size-caption);color:var(--color-text-muted)}.field input,.field textarea,.field select{border:1px solid var(--color-border);border-radius:var(--radius-control);padding:14px;font-size:17px;font-family:inherit;color:var(--color-text-primary);background:var(--color-surface-white)}.field input:focus,.field textarea:focus,.field select:focus{outline:none;border:1.5px solid var(--color-action-primary);box-shadow:0 0 0 3px #2e6fbe33}.feedback{display:flex;gap:14px;border-radius:18px;padding:18px;border:1px solid var(--color-border);min-height:88px}.feedback--success{background:var(--color-feedback-success-bg);border-color:var(--color-feedback-success-border)}.feedback--error{background:var(--color-feedback-error-bg);border-color:var(--color-feedback-error-border)}.feedback--warning{background:var(--color-feedback-warning-bg);border-color:var(--color-feedback-warning-border)}.feedback--info{background:var(--color-surface-card)}.feedback__icon{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;color:#fff}.option{display:flex;align-items:center;gap:13px;width:100%;min-height:52px;text-align:left;border:1px solid var(--color-border);background:var(--color-surface-white);border-radius:16px;padding:14px 16px;font-size:17px;color:#20394f;transition:background var(--duration-state) var(--ease),border-color var(--duration-state) var(--ease)}.option:hover{background:var(--color-surface-card)}.option--selected{border:1.5px solid var(--color-action-primary);background:var(--color-action-selected-bg)}.option--correct{border:1.5px solid var(--color-feedback-success);background:var(--color-feedback-success-bg)}.option--incorrect{border:1.5px solid var(--color-feedback-error);background:var(--color-feedback-error-bg)}.option__badge{width:30px;height:30px;border-radius:9px;background:var(--color-surface-card);color:var(--color-text-muted);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:13px;flex-shrink:0}.option--selected .option__badge{background:var(--color-action-primary);color:#fff}.option--correct .option__badge{background:var(--color-feedback-success);color:#fff}.option--incorrect .option__badge{background:var(--color-feedback-error);color:#fff}.chip{display:inline-flex;align-items:center;padding:4px 9px;border-radius:var(--radius-chip);font-size:12.5px;font-weight:600}.skill-state{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600}table.data{border-collapse:collapse;width:100%}table.data th{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);text-align:left;padding:11px 12px;background:var(--color-surface-card)}table.data td{padding:12px;border-top:1px solid var(--color-border-soft);font-size:14.5px;color:#20394f;vertical-align:top}.table-scroll{overflow-x:auto}@media(max-width:640px){.card{padding:16px}:root{--dock-clearance: 232px}}.route{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.route__station{display:flex;gap:14px;align-items:flex-start;position:relative;padding:0 0 18px}.route__station:last-child{padding-bottom:0}.route__station:before{content:"";position:absolute;left:13px;top:28px;bottom:2px;width:2px;background:var(--color-border-soft)}.route__station:last-child:before{display:none}.route__dot{width:28px;height:28px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:13px;border:2px solid var(--color-border);background:var(--color-surface-white);color:var(--color-text-muted);position:relative;z-index:1}.route__dot--mental{border-color:var(--color-subject-mental);background:var(--color-subject-mental-bg);color:var(--color-subject-mental-text)}.route__dot--math{border-color:var(--color-subject-math);background:var(--color-subject-math-bg);color:var(--color-subject-math-text)}.route__dot--english{border-color:var(--color-subject-english);background:var(--color-subject-english-bg);color:var(--color-subject-english-text)}.route__dot--done{border-color:var(--color-feedback-success);background:var(--color-feedback-success);color:#fff}.route__title{font-size:15.5px;font-weight:600;line-height:1.3}.route__note{font-size:13px;color:var(--color-text-muted);margin-top:2px;line-height:1.4}.route__badge{display:inline-flex;align-items:center;gap:6px;margin-top:6px;padding:3px 9px;border-radius:var(--radius-chip);font-size:12px;font-weight:600;background:var(--color-subject-olympiad);color:#f5e2b3}.segmented{display:inline-flex;gap:0;border:1px solid var(--color-border);border-radius:var(--radius-control);overflow:hidden;background:var(--color-surface-white)}.segmented__btn{min-height:44px;min-width:44px;padding:0 18px;border:none;background:transparent;font-size:15px;color:var(--color-text-secondary)}.segmented__btn[aria-pressed=true]{background:var(--color-action-selected-bg);color:var(--color-action-primary-hover);font-weight:600}.segmented__btn+.segmented__btn{border-left:1px solid var(--color-border)}.coach{border-radius:18px;border:1px solid var(--color-border);background:var(--color-surface-card);padding:18px;scroll-margin-bottom:var(--dock-clearance);scroll-margin-top:12px}button,summary,input,textarea,.option{scroll-margin-bottom:var(--dock-clearance)}.coach:focus{outline:none}.coach--success{background:var(--color-feedback-success-bg);border-color:var(--color-feedback-success-border)}.coach--amber,.coach--hint{background:var(--color-feedback-warning-bg);border-color:var(--color-feedback-warning-border)}.coach--reveal{background:var(--color-surface-card);border-color:var(--color-border)}.coach--quiet{background:transparent;border-color:transparent;padding:6px 2px}.coach__head{display:flex;align-items:center;gap:11px}.coach__icon{width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0}.coach__title{font-size:16.5px;font-weight:600;margin:0}.coach__body{font-size:15.5px;line-height:1.55;color:#20394f;margin-top:8px;max-width:62ch}.coach details{margin-top:10px}.coach summary{cursor:pointer;font-size:14.5px;color:var(--color-action-primary);min-height:44px;display:flex;align-items:center;border-radius:var(--radius-control)}@media(prefers-reduced-motion:no-preference){.coach{animation:coach-in var(--duration-state) var(--ease)}}@keyframes coach-in{0%{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:none}}.dock{position:fixed;bottom:0;left:0;right:0;z-index:20;background:var(--color-surface-paper);border-top:1px solid var(--color-border);box-shadow:0 -8px 24px -20px #18324a54;padding:12px 20px calc(14px + env(safe-area-inset-bottom))}.dock__inner{max-width:860px;margin:0 auto;display:flex;gap:12px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.mission-progress{height:8px;border-radius:4px;background:var(--color-border-soft);overflow:hidden;margin-top:10px}.mission-progress__fill{height:100%;background:var(--color-feedback-success);transition:width var(--duration-screen) var(--ease)}.profile-btn{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--color-border);background:var(--color-surface-white);font-weight:700;font-size:16px;color:var(--color-text-secondary);flex-shrink:0}.profile-pop{position:absolute;right:0;top:calc(100% + 8px);min-width:190px;background:var(--color-surface-white);border:1px solid var(--color-border);border-radius:14px;box-shadow:var(--shadow-float);padding:10px;z-index:30}.station-stamp{width:64px;height:64px;border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:28px;background:var(--color-feedback-success-bg);color:var(--color-feedback-success-text)}@media(prefers-reduced-motion:no-preference){.station-stamp{animation:stamp-in var(--duration-screen) var(--ease)}}@keyframes stamp-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:none}}.order-card--picked{border:1.5px solid var(--color-action-primary);background:var(--color-action-selected-bg)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
