:root{color-scheme:light;--bg: #f7fcff;--bg-accent: #bce6ff;--panel: rgba(255, 255, 255, .96);--panel-soft: #f3fafe;--panel-strong: #e4f4fd;--border: #d8ebf8;--border-strong: #b8daf0;--text: #224458;--muted: #6d8ca0;--brand: #88cdf6;--brand-dark: #5baedd;--brand-soft: rgba(136, 205, 246, .2);--violet: #7367f0;--violet-soft: rgba(115, 103, 240, .12);--success: #1f9d74;--success-soft: rgba(31, 157, 116, .12);--warning: #d88a16;--warning-soft: rgba(216, 138, 22, .14);--danger: #d05f72;--danger-soft: rgba(208, 95, 114, .12);--neutral-soft: #edf4f8;--shadow: 0 12px 28px rgba(19, 56, 76, .08);--radius-card: 18px;--radius-control: 14px}*{box-sizing:border-box}html,body,#app{min-height:100%}body{margin:0;font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-size:16px;line-height:1.55;color:var(--text);background:radial-gradient(circle at top left,rgba(188,230,255,.85),transparent 30%),linear-gradient(180deg,#ffffff 0%,var(--bg) 58%,#eef8ff 100%)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,label,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}input::placeholder{color:#95adbb}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible,label:has(input:focus-visible){outline:2px solid rgba(22,148,187,.28);outline-offset:2px}.app-shell{min-height:100dvh}.app-icon{width:14px;height:14px;flex:0 0 auto}.nav-link-content,.button-content,.choice-chip__title,.field-note,.progress-inline,.answer-box__title,.stat-card__label{display:inline-flex;align-items:center;gap:6px}.choice-chip__content{display:grid;gap:4px;font-size:13px}.topbar{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:8px 10px;background:#f5fbfff0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(200,222,236,.94)}.topbar__brand{font-size:16px;font-weight:700;letter-spacing:.02em;white-space:nowrap}.topbar__nav{display:flex;gap:6px;overflow-x:auto;min-width:0;padding-bottom:1px;scrollbar-width:none}.topbar__nav::-webkit-scrollbar{display:none}.topbar__nav a,.topbar__logout{min-height:36px;display:inline-flex;align-items:center;justify-content:center;padding:6px 9px;border-radius:999px;white-space:nowrap;font-size:12px;font-weight:600;flex:0 0 auto}.topbar__nav a{color:var(--muted);background:#ffffffb8;border:1px solid rgba(200,222,236,.88)}.topbar__nav a.router-link-active{color:var(--brand-dark);background:#1694bb1f;border-color:#1694bb2e}.topbar__logout{justify-self:end}.page-shell{max-width:780px;margin:0 auto;padding:12px 12px calc(18px + env(safe-area-inset-bottom))}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow);padding:13px}.page-header{position:sticky;top:6px;z-index:25;display:grid;grid-template-columns:88px minmax(0,1fr) 88px;align-items:center;min-height:44px;width:calc(100% + 6px);margin:0 -3px 6px;padding:8px 10px;border:1px solid rgba(216,235,248,.72);border-radius:18px;background:#f7fcffb8;backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);box-shadow:0 10px 24px #13384c0f}.page-header__back{min-height:36px;display:inline-flex;align-items:center;gap:5px;padding:0;border:none;background:transparent;color:var(--muted);font-size:13px;font-weight:600;justify-self:start;align-self:center;white-space:nowrap}.page-header__back-icon{font-size:18px;line-height:1}.page-header__content{display:grid;width:100%;gap:4px;text-align:center;min-width:0}.page-header__title{margin:0;font-size:20px;line-height:1.2}.page-header__description{margin:0;color:var(--muted);font-size:13px}.page-header__spacer{width:88px;min-height:1px}.page-header__action{min-height:36px;justify-self:end;padding:0;border:none;background:transparent;color:var(--brand-dark);font-size:14px;font-weight:700;white-space:nowrap}.page-header__action:hover{color:#3b96c9}.page-header__action:disabled{opacity:.56;cursor:not-allowed}.compact-card{gap:10px}.page-panel{padding:0;border:none;border-radius:0;background:transparent;box-shadow:none}.stack{display:grid;gap:12px;align-content:start}.soft-page{min-height:calc(100dvh - 24px);padding:0 10px 10px}.section-heading{gap:6px}.title{margin:0;font-size:20px;line-height:1.2}.muted{color:var(--muted);font-size:13px}.field-group{display:grid;gap:7px}.field-label{font-size:12px;font-weight:700;color:var(--muted)}.field-note{color:var(--muted);font-size:12px}.input,.number-input{width:100%;min-height:42px;border:1px solid var(--border);border-radius:var(--radius-control);padding:9px 12px;background:#fff;color:var(--text)}.checkbox-grid,.radio-grid,.options-list{display:grid;gap:7px}.choice-chip{display:flex;gap:10px;align-items:flex-start;padding:10px 11px;border:1px solid var(--border);border-radius:16px;background:#fbfdff;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease}.choice-chip input{width:16px;height:16px;margin-top:3px;accent-color:var(--brand)}.choice-chip:has(input:checked){border-color:#88cdf6ad;background:#eef8fe;box-shadow:0 6px 14px #88cdf61a}.mode-card:has(input:checked){border-color:#7367f04d;background:#f4f2ff}.choice-chip:hover{border-color:var(--border-strong);background:#f7fbfe}.primary-button,.secondary-button,.ghost-button,.danger-button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;padding:6px 10px;border:1px solid transparent;font-size:13px;font-weight:600;transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}.primary-button{color:#1f4f67;background:#dff0fb;border-color:#c2deef;box-shadow:0 4px 10px #88cdf61f}.secondary-button{color:#547ca1;background:#f4f9fc;border-color:var(--border)}.ghost-button{color:var(--muted);background:#fffffff5;border-color:var(--border)}.ghost-button--active,.danger-button{color:var(--danger);background:#fff6f8;border-color:#d05f7238}.primary-button:hover,.secondary-button:hover,.ghost-button:hover,.danger-button:hover{transform:translateY(-1px)}.primary-button:hover{background:#d3ebfa;border-color:#afd4e9}.secondary-button:hover{background:#edf6fb;border-color:var(--border-strong)}.ghost-button:hover{background:#fbfdff;border-color:var(--border-strong)}.danger-button:hover,.ghost-button--active:hover{background:#fff0f4;border-color:#d05f7247}.primary-button:disabled,.secondary-button:disabled,.ghost-button:disabled,.danger-button:disabled{opacity:.56;cursor:not-allowed;box-shadow:none}.button-row{display:flex;gap:6px;flex-wrap:wrap}.card-action-row{justify-content:flex-end}.button-row--column{display:grid}.button-row--column>*{width:100%}.pill{display:inline-flex;align-items:center;gap:5px;min-height:24px;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:600}.pill--info{color:var(--brand-dark);background:var(--brand-soft)}.pill--neutral{color:#5b7280;background:var(--neutral-soft)}.pill--success{color:var(--success);background:var(--success-soft)}.pill--warning{color:var(--warning);background:var(--warning-soft)}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:20px;background:#1a303e5c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dialog-card{width:min(100%,360px);display:grid;gap:16px;padding:18px;border-color:#b8daf0eb;box-shadow:0 18px 40px #13384c2e}.dialog-card--danger{background:linear-gradient(180deg,#fffffffa,#fff6f8fa)}.dialog-card--default{background:linear-gradient(180deg,#fffffffa,#f3fafefa)}.dialog-card__content{display:grid;gap:8px}.dialog-card__title{margin:0;font-size:18px;line-height:1.3}.dialog-card__message{margin:0;color:var(--muted);font-size:13px;line-height:1.7}.dialog-card__actions{justify-content:flex-end;flex-wrap:nowrap}.dialog-card__actions>*{flex:1 1 0}.pill--violet{color:var(--violet);background:var(--violet-soft)}.pill--danger{color:var(--danger);background:var(--danger-soft)}.question-card{display:grid;gap:10px}.question-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.question-favorite-button{margin-left:auto}.question-stem{font-size:14px;line-height:1.55}.option-card{display:flex;gap:10px;align-items:flex-start;padding:9px 10px;border-radius:14px;border:1px solid var(--border);background:#fff;font-size:13px}.option-card input{width:16px;height:16px;margin-top:2px;accent-color:var(--brand)}.option-card--selected{border-color:#1694bb57;background:#1694bb14}.option-card--correct{border-color:#1f9d7457;background:#1f9d741a}.option-card--wrong{border-color:#d05f7257;background:#d05f7214}.answer-box{border-radius:16px;padding:10px;border:1px solid rgba(22,148,187,.15);background:#1694bb0f;font-size:13px}.answer-box__title{margin-bottom:6px}.answer-box--correct{background:#1f9d7414;border-color:#1f9d7433}.answer-box--wrong{background:#d05f7214;border-color:#d05f7238}.meta-list{display:grid;gap:5px;margin-top:8px;color:var(--muted);font-size:12px}.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stat-card{padding:10px;border-radius:14px;border:1px solid transparent;background:#fff}.stat-card__label{margin-bottom:4px;font-size:12px;font-weight:600}.stat-card--info{color:var(--brand-dark);background:#1694bb14;border-color:#1694bb24}.stat-card--success{color:var(--success);background:#1f9d7414;border-color:#1f9d7424}.stat-card--violet{color:var(--violet);background:#7367f014;border-color:#7367f024}.stat-card--warning{color:var(--warning);background:#d88a1617;border-color:#d88a1624}.list-card{display:grid;gap:8px}.tag-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;align-items:start}.tag-tab{min-height:40px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);background:#ffffffeb;border-radius:12px;padding:0 12px;font-size:13px;line-height:1;font-weight:600;color:var(--muted);white-space:nowrap;align-self:start}.tag-tab .button-content{justify-content:center;width:100%;white-space:nowrap}.tag-tab--active{color:var(--brand-dark);background:#eaf6fd;border-color:#1694bb3d}.progress-inline{color:var(--brand-dark);font-size:13px;font-weight:600}.empty-state{padding:24px 16px;text-align:center;color:var(--muted);border-radius:16px;background:#ffffffb8;border:1px dashed var(--border-strong)}.form-error{color:var(--danger);font-size:14px}.auth-page{min-height:calc(100dvh - 18px);display:grid;align-items:center}.auth-card{max-width:460px;width:100%;margin:0 auto}.auth-card__header{gap:6px}.auth-card__hint{margin:0}.dashboard-page{gap:14px}.dashboard-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;padding:18px;background:linear-gradient(135deg,#bce6fff2,#fffffffa 60%,#88cdf62e)}.dashboard-hero__text{display:grid;gap:8px}.dashboard-hero__eyebrow{margin:0;font-size:12px;font-weight:700;color:var(--brand-dark);letter-spacing:.08em;text-transform:uppercase}.dashboard-hero__title{margin:0;font-size:26px;line-height:1.2}.dashboard-hero__message{margin:0;max-width:34ch;min-height:44px;color:var(--muted);font-size:14px;line-height:1.7}.dashboard-logout{width:fit-content;justify-self:end;align-self:end}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-entry{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;text-align:left;padding:16px;cursor:pointer;background:var(--panel)}.dashboard-entry--primary{grid-column:1 / -1}.dashboard-entry--congrats{grid-column:1 / -1;background:linear-gradient(135deg,#7367f01a,#bce6ff8f 52%,#1f9d7414);border-color:#7367f029}.dashboard-entry__icon{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;color:var(--brand-dark);background:#88cdf63d}.dashboard-entry__icon .app-icon{width:18px;height:18px}.dashboard-entry__icon--violet{color:var(--violet);background:#7367f01f}.dashboard-entry__icon--warning{color:var(--warning);background:#d88a161f}.dashboard-entry__icon--danger{color:var(--danger);background:#d05f721f}.dashboard-entry__icon--success{color:var(--success);background:var(--success-soft)}.dashboard-entry__body{display:grid;gap:5px}.dashboard-entry__body strong{font-size:15px}.dashboard-entry__body span{color:var(--muted);font-size:13px;line-height:1.5}.dashboard-entry:hover{border-color:var(--border-strong);box-shadow:0 12px 24px #88cdf624}.dashboard-entry:focus-visible{outline:2px solid rgba(136,205,246,.34);outline-offset:2px}.history-attempt-card{gap:10px}.history-attempt-info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.history-attempt-info__item{display:grid;gap:4px;padding:10px 12px;border-radius:14px;background:linear-gradient(180deg,#fbfdff,#f3fafe);border:1px solid rgba(184,218,240,.76)}.history-attempt-info__label,.history-attempt-time__label{color:var(--muted);font-size:11px;font-weight:600}.history-attempt-info__value{font-size:14px;line-height:1.45;color:var(--text);word-break:break-word}.history-attempt-time{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.history-attempt-time__value{color:var(--text)}.library-source-entry{width:100%}.library-page{padding-bottom:calc(112px + env(safe-area-inset-bottom))}.library-filter-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.library-filter-tabs::-webkit-scrollbar{display:none}.library-filter-tab{min-height:34px;padding:0 12px;border:1px solid var(--border);border-radius:999px;background:#fffffff0;color:var(--muted);font-size:12px;font-weight:600;white-space:nowrap;flex:0 0 auto}.library-filter-tab--active{color:var(--brand-dark);background:#eaf6fd;border-color:#1694bb3d}.library-pagination-summary{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:12px}.library-question-card{width:100%;text-align:left;border:1px solid var(--border)}.library-question-card__options{display:grid;gap:6px;padding-top:2px}.library-question-card__option{cursor:inherit;display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:start;font-size:13px;line-height:1.55}.library-question-card__option strong{color:var(--muted)}.library-pagination{position:fixed;left:50%;bottom:calc(10px + env(safe-area-inset-bottom));transform:translate(-50%);width:min(calc(100vw - 24px),756px);z-index:15;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:8px 10px;background:#fffffff0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-color:#9fc9dfeb;box-shadow:0 18px 36px #13384c1f}.library-pagination__button{min-height:34px;padding:4px 9px;font-size:12px}.library-pagination__info{text-align:center;color:var(--muted);font-size:12px;font-weight:600}.question-detail-dialog{position:relative;width:min(100%,760px);max-height:min(86dvh,860px);display:grid;gap:16px;padding:18px;overflow:auto}.question-detail-dialog__header{display:flex;align-items:flex-start;gap:12px;padding-right:52px}.question-detail-dialog__heading{display:grid;gap:4px}.question-detail-dialog__title{margin:0;font-size:20px;line-height:1.2}.question-detail-dialog__subtitle{margin:0;color:var(--muted);font-size:12px}.question-detail-dialog__close{position:absolute;top:14px;right:14px;min-height:34px;min-width:34px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:999px}.question-detail-dialog__content{display:grid;gap:14px}.question-detail-dialog__section{display:grid;gap:8px}.question-detail-dialog__section-title{font-size:12px;font-weight:700;color:var(--muted)}.home-page{align-content:start}.quiz-page{padding-bottom:calc(132px + env(safe-area-inset-bottom))}.quiz-status-card{gap:8px}.quiz-actions{position:fixed;left:50%;bottom:calc(10px + env(safe-area-inset-bottom));transform:translate(-50%);width:min(calc(100vw - 20px),756px);z-index:15;gap:8px;padding:10px;background:#fffffff0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-color:#9fc9dfeb;box-shadow:0 18px 36px #13384c1f}.quiz-actions__row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.quiz-actions__row>*{width:100%;min-width:0}.review-favorite-time{width:fit-content}.result-mood-card{display:grid;gap:14px;color:#13384b;overflow:hidden}.result-mood-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.result-mood-card__score-block{display:grid;gap:6px}.result-mood-card__eyebrow{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.82}.result-mood-card__hero{display:flex;align-items:center;gap:12px}.result-mood-card__emoji{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:16px;font-size:28px;background:#ffffff8c;box-shadow:inset 0 1px #ffffff59}.result-mood-card__score{margin:0;font-size:40px;line-height:.95}.result-mood-card__score small{margin-left:4px;font-size:16px;font-weight:700}.result-mood-card__score-caption{margin-top:4px;color:#13384cb8;font-size:13px;font-weight:600}.result-mood-card__badge{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:700;background:#ffffff80}.result-mood-card__stats{display:flex;flex-wrap:wrap;gap:8px}.result-mood-card__stat{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:8px 12px;border-radius:999px;background:#ffffff8f;border:1px solid rgba(255,255,255,.48);font-size:12px}.result-mood-card__stat-icon{font-size:15px;line-height:1}.result-mood-card__stat strong{font-size:16px;margin-left:2px}.result-mood-card__message-box{display:grid;gap:8px;padding:14px 16px;border-radius:18px;background:#ffffff94;border:1px solid rgba(255,255,255,.48);box-shadow:inset 0 1px #ffffff57}.result-mood-card__message-label{font-size:12px;font-weight:700;color:#13384ca8;letter-spacing:.06em}.result-mood-card__message{margin:0;font-size:16px;font-weight:700;line-height:1.7}.result-mood-card--excellent{background:linear-gradient(135deg,#7367f029,#1694bb24 55%,#1f9d7424);border-color:#7367f02e}.result-mood-card--great{background:linear-gradient(135deg,#88cdf63d,#7367f01a);border-color:#88cdf63d}.result-mood-card--good{background:linear-gradient(135deg,#bce6ffbd,#d88a161a);border-color:#88cdf633}.result-mood-card--pass{background:linear-gradient(135deg,#d88a161f,#bce6ffb3);border-color:#d88a162e}.result-mood-card--retry{background:linear-gradient(135deg,#d05f7224,#bce6ffa6);border-color:#d05f722e}.congrats-page{display:grid;gap:12px;align-content:start;min-height:calc(100dvh - 24px)}.congrats-progress{display:flex;justify-content:center;gap:7px;padding:2px 0}.congrats-progress__dot{width:7px;height:7px;border-radius:999px;background:#6d8ca047;transition:background-color .22s ease,transform .22s ease}.congrats-progress__dot--active{width:22px;background:var(--brand-dark)}.congrats-progress__dot--done{background:#1f9d74b8}.congrats-story{position:relative;min-height:min(530px,calc(100dvh - 210px));display:grid;overflow:hidden;padding:clamp(20px,5vw,32px)}.congrats-story:before{content:"";position:absolute;width:250px;height:250px;right:-130px;top:-125px;border-radius:50%;background:#ffffff59;pointer-events:none}.congrats-story--intro{background:linear-gradient(145deg,#7367f02b,#bce6ffc2 53%,#ffffffeb)}.congrats-story--journey{background:linear-gradient(145deg,#bce6ffd6,#fffffff5 53%,#1f9d741a)}.congrats-story--practice{background:linear-gradient(145deg,#d88a161a,#fffffff7 48%,#88cdf685)}.congrats-story--focus{background:linear-gradient(145deg,#d88a1626,#fffffff5 50%,#7367f01c)}.congrats-story--mock{background:linear-gradient(145deg,#1f9d7424,#fffffff5 48%,#7367f024)}.congrats-story--highlight{background:linear-gradient(145deg,#ffe08561,#fffffff5 48%,#bce6ff9e)}.congrats-story--final{background:linear-gradient(145deg,#7367f030,#1f9d7426 52%,#bce6ffb8)}.congrats-story--gift{background:linear-gradient(145deg,#7367f02e,#fffffff5 46%,#d88a1629)}.congrats-story__content{position:relative;z-index:1;display:grid;align-content:space-between;gap:22px;width:100%}.congrats-story__content h1{max-width:13ch;margin:0;font-size:clamp(27px,7vw,42px);line-height:1.17;letter-spacing:0}.congrats-story__eyebrow{margin:0 0 -14px;color:var(--brand-dark);font-size:12px;font-weight:800;letter-spacing:.1em}.congrats-story__lead,.congrats-story__note{max-width:34ch;margin:-12px 0 0;color:#224458c2;font-size:15px;line-height:1.75}.congrats-story__note{font-size:13px}.congrats-story__hero-icon,.congrats-empty__icon{width:54px;height:54px;display:inline-flex;align-items:center;justify-content:center;border-radius:18px;color:var(--violet);background:#fff9;box-shadow:inset 0 1px #ffffffb3}.congrats-story__hero-icon .app-icon,.congrats-empty__icon .app-icon{width:25px;height:25px}.congrats-highlight{display:grid;gap:2px;width:fit-content;padding:14px 17px;border:1px solid rgba(255,255,255,.58);border-radius:18px;background:#ffffff8a}.congrats-highlight strong{font-size:34px;line-height:1}.congrats-highlight span{color:var(--muted);font-size:13px}.congrats-highlight--compact{grid-template-columns:auto 1fr;align-items:center;gap:9px}.congrats-highlight--compact strong{color:var(--success);font-size:28px}.congrats-stat-grid,.congrats-mini-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.congrats-stat,.congrats-mini-stats>div{display:grid;gap:5px;min-width:0;padding:12px 10px;border:1px solid rgba(255,255,255,.56);border-radius:16px;background:#ffffff8c}.congrats-stat strong,.congrats-mini-stats strong{font-size:clamp(20px,6vw,30px);line-height:1.06;overflow-wrap:anywhere}.congrats-stat span,.congrats-mini-stats span{color:var(--muted);font-size:11px;line-height:1.35}.congrats-comparison{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px}.congrats-comparison__side{display:grid;gap:7px;padding:16px 12px;border-radius:18px;background:#ffffff85;border:1px solid rgba(255,255,255,.62)}.congrats-comparison__side span{color:var(--muted);font-size:12px}.congrats-comparison__side strong{font-size:clamp(22px,7vw,35px);line-height:1}.congrats-comparison__side--latest{color:var(--success)}.congrats-comparison__arrow{color:var(--brand-dark)}.congrats-comparison__arrow .app-icon{width:22px;height:22px}.congrats-focus-date{width:fit-content;padding:7px 10px;border-radius:999px;color:var(--warning);background:#ffffff94;border:1px solid rgba(255,255,255,.68);font-size:13px;font-weight:700}.congrats-mock-score{display:grid;gap:5px;padding:17px;border:1px solid rgba(255,255,255,.62);border-radius:20px;background:#ffffff91}.congrats-mock-score span,.congrats-mock-score small{color:var(--muted);font-size:12px}.congrats-mock-score strong{color:var(--success);font-size:clamp(42px,12vw,62px);line-height:1}.congrats-final-score{display:flex;align-items:baseline;flex-wrap:wrap;gap:7px 10px}.congrats-final-score span,.congrats-final-score small{color:var(--muted);font-size:13px}.congrats-final-score strong{font-size:34px;line-height:1}.congrats-final-score small{color:var(--success);font-weight:800}.congrats-dialogue{display:grid;gap:8px;padding:15px 16px;border:1px solid rgba(255,255,255,.58);border-radius:18px;background:#ffffff91;box-shadow:inset 0 1px #ffffff7a}.congrats-dialogue__label{color:#2244589e;font-size:12px;font-weight:800;letter-spacing:.06em}.congrats-dialogue p{margin:0;font-size:15px;font-weight:700;line-height:1.75}.congrats-actions{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px}.congrats-actions>*{min-height:38px}.congrats-actions__next{gap:7px}.congrats-actions__next .app-icon{width:17px;height:17px}.congrats-actions--final{grid-template-columns:1fr 1fr}.congrats-actions__home{grid-column:1 / -1}.congrats-empty{display:grid;justify-items:start;gap:13px;padding:22px;background:linear-gradient(145deg,#bce6ffbd,#fffffffa)}.congrats-empty h1,.congrats-empty p{margin:0}.congrats-empty h1{font-size:24px}.congrats-empty p{color:var(--muted);line-height:1.7}.gift-box{position:relative;justify-self:center;width:178px;height:160px;margin:-4px 0;padding:0;border:0;background:transparent;cursor:pointer}.gift-box__body,.gift-box__lid{position:absolute;left:12px;width:154px;display:block;border:1px solid rgba(76,139,184,.22);box-shadow:0 14px 22px #3c6d9121}.gift-box__body{bottom:8px;height:104px;overflow:hidden;border-radius:10px 10px 17px 17px;background:linear-gradient(135deg,#88cdf6,#65b7e4 58%,#56a9d9)}.gift-box__lid{top:34px;z-index:3;height:38px;border-radius:10px;background:linear-gradient(135deg,#b8e8ff,#91d3f4);transform-origin:18px 100%;transition:transform .62s cubic-bezier(.22,.82,.25,1)}.gift-box__ribbon{position:absolute;top:0;bottom:0;left:64px;width:25px;background:#fff0a0f0}.gift-box__bow{position:absolute;left:53px;top:-20px;width:48px;height:30px}.gift-box__bow:before,.gift-box__bow:after{content:"";position:absolute;top:3px;width:28px;height:19px;border:7px solid #ffdf74;border-radius:15px 15px 6px;background:#fff8cd80}.gift-box__bow:before{left:-2px;transform:rotate(-24deg)}.gift-box__bow:after{right:-2px;border-radius:15px 15px 15px 6px;transform:rotate(24deg) scaleX(-1)}.gift-box__bricks{position:absolute;z-index:2;left:34px;bottom:67px;width:108px;height:62px;display:flex;align-items:end;justify-content:center;gap:3px;opacity:0;transform:translateY(25px) scale(.8);transition:opacity .28s ease .22s,transform .62s cubic-bezier(.2,.9,.25,1) .18s}.gift-box__bricks i{width:20px;height:28px;display:block;border-radius:4px;border:2px solid rgba(44,91,124,.2);background:#7bd4bd;box-shadow:inset 0 6px #ffffff47}.gift-box__bricks i:nth-child(2){height:42px;background:#f7c969}.gift-box__bricks i:nth-child(3){height:55px;background:#8277ed}.gift-box__bricks i:nth-child(4){height:38px;background:#f28d9a}.gift-box__bricks i:nth-child(5){height:24px;background:#6cc5ef}.gift-box--opened .gift-box__lid{transform:translate(-7px,-56px) rotate(-12deg)}.gift-box--opened .gift-box__bricks{opacity:1;transform:translateY(0) scale(1)}.gift-open-button{justify-self:center;min-width:150px}.gift-reveal{display:grid;gap:5px;padding:14px 16px;border:1px solid rgba(255,255,255,.64);border-radius:18px;background:#ffffff9e;animation:congrats-gift-reveal .4s ease both}.gift-reveal span{color:var(--violet);font-size:12px;font-weight:800;letter-spacing:.06em}.gift-reveal strong{font-size:17px;line-height:1.45}.gift-reveal p{margin:0;color:var(--muted);font-size:13px;line-height:1.65}@keyframes congrats-gift-reveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.congrats-slide-enter-active,.congrats-slide-leave-active{transition:opacity .22s ease,transform .22s ease}.congrats-slide-enter-from{opacity:0;transform:translate(14px)}.congrats-slide-leave-to{opacity:0;transform:translate(-14px)}@media(min-width:640px){.page-shell{padding:18px 18px calc(24px + env(safe-area-inset-bottom))}.card{padding:16px}.title,.page-header__title{font-size:22px}.page-header{width:calc(100% + 10px);margin-left:-5px;margin-right:-5px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:430px){.page-shell{padding-left:8px;padding-right:8px}.card{padding:10px}.page-header{width:calc(100% + 4px);margin-left:-2px;margin-right:-2px}.question-favorite-button{width:100%;margin-left:0}.question-meta{align-items:stretch}.dashboard-grid,.dashboard-hero{grid-template-columns:1fr}.dashboard-entry{padding:14px}.history-attempt-info{grid-template-columns:1fr}.library-pagination-summary{display:grid;gap:4px}.library-pagination{width:min(calc(100vw - 16px),756px);grid-template-columns:auto minmax(0,1fr) auto;gap:6px;padding:8px}.library-pagination__button{min-height:32px;padding:4px 8px;font-size:11px}.library-pagination__info{font-size:11px}.question-detail-dialog{padding:14px}.question-detail-dialog__header{padding-right:44px}.dashboard-hero__title{font-size:23px}.dashboard-hero__message{min-height:auto;font-size:13px}.question-stem{font-size:13px;line-height:1.5}.quiz-actions{width:min(calc(100vw - 16px),756px);padding:8px}.quiz-actions__row{gap:6px}.result-mood-card__top{align-items:stretch;flex-direction:column;gap:8px}.result-mood-card__hero{align-items:flex-start}.result-mood-card__emoji{width:46px;height:46px;font-size:24px}.result-mood-card__score{font-size:32px}.result-mood-card__stats{gap:6px}.result-mood-card__stat{width:calc(50% - 3px);justify-content:flex-start;padding:8px 10px}.result-mood-card__message{font-size:14px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
