.camera-page{min-height:100svh;padding:max(12px,env(safe-area-inset-top)) var(--app-side-padding) max(16px,env(safe-area-inset-bottom))}.camera-page__shell{display:grid;gap:12px}.camera-page__capture-screen{position:relative;min-height:calc(100svh - 32px - env(safe-area-inset-top));border-radius:36px;overflow:hidden;background:radial-gradient(circle at 8% 96%,rgba(117,173,255,.26),transparent 18%),radial-gradient(circle at top right,rgba(255,255,255,.92),transparent 30%),linear-gradient(180deg,#fffffff5,#eff5ffe0);border:1px solid rgba(255,255,255,.88);box-shadow:0 30px 60px -38px #456b9a4d,inset 0 1px #ffffffdb}.camera-page__statusbar{position:absolute;top:16px;left:22px;right:22px;z-index:4;display:flex;justify-content:space-between;align-items:center;color:#17284c;font-size:14px;font-weight:700}.camera-page__statusbar-right{display:inline-flex;align-items:center;gap:8px}.camera-page__dynamic-island{width:98px;height:24px;border-radius:999px;background:#0d1118}.camera-page__top-glass-bar{position:absolute;top:58px;left:18px;right:18px;z-index:4;min-height:66px;padding:10px 14px;border-radius:28px;border:1px solid rgba(255,255,255,.88);background:#ffffff7a;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);box-shadow:0 18px 32px -28px #4a70a247,inset 0 1px #ffffffd6;display:flex;justify-content:space-between;align-items:center}.camera-page__round-button,.camera-page__album-pill,.camera-page__thumbnail-box,.camera-page__flash-button{border:1px solid rgba(255,255,255,.88);background:#ffffffd1;box-shadow:0 18px 30px -24px #4a70a23d}.camera-page__round-button{width:44px;height:44px;border-radius:50%;color:#1f2d47;font-size:32px;line-height:1;display:grid;place-items:center}.camera-page__album-pill{min-height:42px;padding:0 16px;border-radius:999px;color:#495a78;display:inline-flex;align-items:center;justify-content:center;font-size:15px;font-weight:700}.camera-page__preview-window{position:absolute;inset:144px 22px 176px;border-radius:34px;overflow:hidden;background:#ece3d8;box-shadow:inset 0 0 0 1px #ffffff94,0 18px 34px -28px #4a70a22e}.camera-page__preview-video{width:100%;height:100%;object-fit:cover;background:#eaf1fb}.camera-page__frame-corner{position:absolute;width:42px;height:42px;border-color:#fffffffa;border-style:solid;border-width:0;z-index:2}.camera-page__frame-corner--lt{top:16px;left:16px;border-top-width:5px;border-left-width:5px;border-top-left-radius:16px}.camera-page__frame-corner--rt{top:16px;right:16px;border-top-width:5px;border-right-width:5px;border-top-right-radius:16px}.camera-page__frame-corner--lb{left:16px;bottom:16px;border-bottom-width:5px;border-left-width:5px;border-bottom-left-radius:16px}.camera-page__frame-corner--rb{right:16px;bottom:16px;border-right-width:5px;border-bottom-width:5px;border-bottom-right-radius:16px}.camera-page__placeholder-scene{position:relative;width:100%;height:100%;background:linear-gradient(180deg,#f2ece2,#ece5db)}.camera-page__scene-keyboard{position:absolute;top:0;right:0;width:138px;height:52px;border-bottom-left-radius:18px;background:linear-gradient(180deg,#dde4ee,#c7d0de),repeating-linear-gradient(90deg,#ffffff6b 0 12px,#bec9d980 12px 14px);opacity:.92}.camera-page__scene-paper{position:absolute;inset:44px 62px 92px 54px;border-radius:6px;background:linear-gradient(180deg,#fff,#fbfbfa);box-shadow:0 18px 38px -22px #6f748157,0 6px 16px -12px #6f74812e;display:grid;align-content:start;gap:10px;padding:22px 20px}.camera-page__scene-line{height:7px;border-radius:999px;background:#3c4a6742}.camera-page__scene-line--title{width:42%;margin-bottom:10px}.camera-page__scene-line--wide{width:68%}.camera-page__scene-line--short{width:32%}.camera-page__scene-line--left{width:46%}.camera-page__scene-line--right{width:38%;justify-self:end}.camera-page__scene-line--right-short{width:28%;justify-self:end}.camera-page__scene-pen{position:absolute;right:78px;bottom:112px;width:12px;height:162px;border-radius:999px;background:linear-gradient(180deg,#fff,#e8edf5);box-shadow:inset 0 0 0 1px #ced6e3e0,0 8px 16px -14px #495c7e57;transform:rotate(8deg)}.camera-page__scene-cup{position:absolute;left:-18px;bottom:-18px;width:98px;height:98px;border-radius:50%;background:radial-gradient(circle at 38% 36%,#b4deffeb,#7bbaff9e 58%,#65a7f74d),linear-gradient(180deg,#e5f5ffbd,#83bdff66);box-shadow:0 18px 26px -20px #4d73aa5c}.camera-page__guide-pill{position:absolute;left:50%;bottom:118px;transform:translate(-50%);z-index:4;min-height:52px;padding:0 22px;border-radius:999px;border:1px solid rgba(255,255,255,.86);background:#ffffffe0;color:#4b5877;display:inline-flex;align-items:center;gap:8px;box-shadow:0 14px 30px -22px #4c70a347;-webkit-backdrop-filter:blur(14px) saturate(155%);backdrop-filter:blur(14px) saturate(155%);font-size:14px;font-weight:600;white-space:nowrap}.camera-page__bottom-controls{position:absolute;left:22px;right:22px;bottom:28px;z-index:4;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px}.camera-page__thumbnail-button{justify-self:start;padding:0;border:0;background:transparent}.camera-page__thumbnail-box{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;color:#2f6fff}.camera-page__shutter-button{width:90px;height:90px;justify-self:center;padding:0;border:0;background:transparent;display:grid;place-items:center}.camera-page__shutter-button:disabled{opacity:.42}.camera-page__shutter-ring{width:90px;height:90px;border-radius:50%;border:2px solid rgba(75,133,255,.64);display:grid;place-items:center;background:#ffffff29;box-shadow:0 0 0 6px #ffffff7a,0 18px 36px -24px #4a70a242}.camera-page__shutter-core{width:68px;height:68px;border-radius:50%;background:radial-gradient(circle at 30% 28%,#fffffffa,#eff5ffeb 64%,#dce7faeb),linear-gradient(180deg,#fffffffa,#e9f1ffe6)}.camera-page__flash-button{justify-self:end;width:56px;height:56px;border-radius:50%;color:#233250;display:grid;place-items:center}.camera-page__confirm-view{display:grid;gap:16px}.camera-page__confirm-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.camera-page__confirm-header h1{margin:0;font-family:var(--font-family-display);color:#152246;font-size:22px;line-height:1.08}.camera-page__confirm-card{padding:14px;border-radius:30px;border:1px solid rgba(255,255,255,.86);background:linear-gradient(180deg,#ffffffeb,#f3f8ffdb),radial-gradient(circle at center,rgba(165,196,244,.18),transparent 58%);box-shadow:0 26px 56px -36px #486e9f57,inset 0 1px #ffffffe0}.camera-page__confirm-image{width:100%;aspect-ratio:.74;object-fit:contain;border-radius:24px;background:#f8fbff;border:1px solid rgba(224,234,248,.9)}.camera-page__confirm-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.camera-page__action-chip{min-height:46px;border-radius:999px;border:1px solid rgba(225,233,246,.9);background:#ffffffd1;color:#1f2d47;font-size:14px;font-weight:600}.camera-page__submit-button{min-height:58px;border-radius:24px;border:0;background:linear-gradient(180deg,#ffffff47,#fff0 26%),linear-gradient(180deg,#6aa7ff,#3f71ff 58%,#2f5dff);color:#fff;font-size:18px;font-weight:700;box-shadow:inset 0 1px #ffffff80,0 12px 22px #456ee83d,0 0 0 1px #3b6cff8c}.camera-page__spinner{animation:camera-spin 1s linear infinite}@keyframes camera-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.camera-page__file-input,.camera-page__canvas{display:none}.camera-page__error{margin:0;color:var(--color-danger);text-align:center;font-size:14px}@media(max-width:390px){.camera-page__capture-screen{min-height:calc(100svh - 28px - env(safe-area-inset-top))}.camera-page__top-glass-bar{left:14px;right:14px}.camera-page__preview-window{inset:138px 16px 168px}.camera-page__guide-pill{bottom:112px;font-size:13px}.camera-page__bottom-controls{left:16px;right:16px;bottom:22px}}.primary-button{min-height:64px;width:100%;border:0;border-radius:24px;background:linear-gradient(180deg,#ffffff47,#fff0 26%),linear-gradient(180deg,#6aa7ff,#3f71ff 58%,#2f5dff);color:#fff;font-size:18px;font-weight:700;letter-spacing:-.01em;box-shadow:inset 0 1px #ffffff80,0 12px 22px #456ee83d,0 0 0 1px #3b6cff8c;transition:transform .1s ease,opacity .18s ease,box-shadow .18s ease}.primary-button:hover{opacity:.96}.primary-button:active{transform:scale(.98)}.primary-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.page-back-button{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.72);background:#ffffffc2;color:var(--color-text-primary);-webkit-backdrop-filter:var(--backdrop-soft);backdrop-filter:var(--backdrop-soft);box-shadow:var(--shadow-soft)}.correction-page{min-height:100svh;padding:max(20px,env(safe-area-inset-top)) 16px max(28px,env(safe-area-inset-bottom))}.correction-page__shell{width:min(100%,720px);margin:0 auto;display:grid;gap:var(--space-5)}.correction-page__header{display:flex;align-items:flex-start;gap:var(--space-4)}.correction-page__header-text{display:grid;gap:6px}.correction-page__header-text p{margin:0;color:var(--color-primary-deep);font-size:13px;font-weight:600}.correction-page__header-text h1{margin:0;font-family:var(--font-family-display);font-size:clamp(32px,7vw,42px);line-height:1.08}.correction-page__loading,.correction-page__hero,.correction-page__card,.correction-page__tips,.correction-page__footer{border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.76);background:#ffffffd6;box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--backdrop-strong);backdrop-filter:var(--backdrop-strong)}.correction-page__loading,.correction-page__card,.correction-page__tips,.correction-page__footer{padding:var(--space-5)}.correction-page__loading{display:flex;align-items:center;gap:var(--space-4)}.correction-page__spinner{color:var(--color-primary);animation:correction-spin 1s linear infinite}@keyframes correction-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.correction-page__error,.correction-page__loading p,.correction-page__upload-copy p,.correction-page__summary-wrap span,.correction-page__footer p,.correction-page__tips li{margin:0;color:var(--color-text-secondary)}.correction-page__hero{padding:var(--space-5);display:grid;gap:var(--space-4)}.correction-page__hero-top,.correction-page__section-head,.correction-page__tips-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3)}.correction-page__status-chip,.correction-page__status-meta,.correction-page__section-head span{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 12px;border-radius:var(--radius-pill);font-size:13px}.correction-page__status-chip{background:#0a84ff1a;color:var(--color-primary);font-weight:600}.correction-page__status-meta,.correction-page__section-head span{background:#f5f8fcf2;color:var(--color-text-tertiary)}.correction-page__hero-grid{display:grid;grid-template-columns:minmax(0,192px) minmax(0,1fr);gap:var(--space-4)}.correction-page__preview{overflow:hidden;border-radius:26px;aspect-ratio:4 / 5;background:#eef5ffcc}.correction-page__preview img{width:100%;height:100%;object-fit:cover}.correction-page__hero-body{display:grid;align-content:center;gap:var(--space-3)}.correction-page__hero-body h2,.correction-page__section-head h2,.correction-page__tips-head h2{margin:0}.correction-page__hero-body h2{font-size:clamp(21px,5vw,28px);line-height:1.32}.correction-page__reason{border-radius:var(--radius-md);background:#ffffffe0;border:1px solid rgba(216,227,242,.82)}.correction-page__card{display:grid;gap:var(--space-4)}.correction-page__reasons{display:flex;flex-wrap:wrap;gap:var(--space-3)}.correction-page__reason{min-height:42px;padding:0 14px;color:var(--color-text-secondary)}.correction-page__reason.is-selected{border-color:#0a84ff4d;background:#0a84ff1a;color:var(--color-primary)}.correction-page__upload-featured{position:relative;border-radius:var(--radius-md);border:1px solid rgba(216,227,242,.82);background:#ffffffe6;padding:20px;display:grid;justify-items:center;text-align:center;gap:14px}.correction-page__upload-ready{border-radius:var(--radius-md);border:1px solid rgba(216,227,242,.82);background:#ffffffe6;padding:16px;display:grid;grid-template-columns:112px minmax(0,1fr);gap:14px}.correction-page__upload-ready-preview{overflow:hidden;border-radius:18px;background:#eef5ffcc;aspect-ratio:1 / 1.2}.correction-page__upload-ready-preview img{width:100%;height:100%;object-fit:cover}.correction-page__upload-ready-body{display:grid;align-content:center;gap:10px}.correction-page__upload-ready-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.correction-page__upload-ready-chip{min-height:28px;padding:0 10px;border-radius:var(--radius-pill);background:#34c7591f;color:#1f9a44;font-size:12px;font-weight:600;display:inline-flex;align-items:center}.correction-page__upload-ready-body p{margin:0;color:var(--color-text-secondary)}.correction-page__upload-inline{width:fit-content;min-height:38px;padding:0 14px;border-radius:var(--radius-pill);border:1px solid rgba(216,227,242,.9);background:#ffffffeb;color:var(--color-primary);font-weight:600}.correction-page__upload-badge{position:absolute;top:14px;right:14px;min-height:28px;padding:0 10px;border-radius:var(--radius-pill);background:#0a84ff1a;color:var(--color-primary);font-size:12px;font-weight:600;display:inline-flex;align-items:center}.correction-page__upload-icon{width:48px;height:48px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;background:#0a84ff1a;color:var(--color-primary)}.correction-page__upload-icon--featured{width:60px;height:60px;border-radius:20px}.correction-page__upload-copy{display:grid;gap:4px;justify-items:center}.correction-page__upload-copy strong{font-size:16px}.correction-page__upload-action{min-width:136px;min-height:42px;padding:0 18px;border:0;border-radius:var(--radius-pill);background:#0a84ff1a;color:var(--color-primary);font-weight:600}.correction-page__summary-wrap{display:grid;gap:10px}.correction-page__summary-wrap textarea{width:100%;border:1px solid rgba(216,227,242,.9);border-radius:22px;padding:14px 16px;resize:none;min-height:76px;background:#fffffff0;color:var(--color-text-primary)}.correction-page__summary-wrap textarea::placeholder{color:var(--color-text-tertiary)}.correction-page__tips ul{margin:0;padding-left:18px;display:grid;gap:10px}.correction-page__footer{position:sticky;bottom:12px;display:grid;gap:12px}@media(max-width:720px){.correction-page__hero-grid,.correction-page__upload-ready{grid-template-columns:1fr}}.correction-reviewing-page{min-height:100svh;padding:max(20px,env(safe-area-inset-top)) 16px max(24px,env(safe-area-inset-bottom))}.correction-reviewing-page__shell{width:min(100%,560px);margin:0 auto;display:grid;gap:var(--space-5)}.correction-reviewing-page__header{display:flex;align-items:flex-start;gap:var(--space-4)}.correction-reviewing-page__header-text{display:grid;gap:6px}.correction-reviewing-page__header-text p{margin:0;color:var(--color-primary-deep);font-size:13px;font-weight:600}.correction-reviewing-page__header-text h1{margin:0;font-family:var(--font-family-display);font-size:clamp(32px,7vw,42px);line-height:1.08}.correction-reviewing-page__status-card,.correction-reviewing-page__timeline{border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.76);background:#ffffffd6;box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--backdrop-strong);backdrop-filter:var(--backdrop-strong)}.correction-reviewing-page__status-card{padding:var(--space-5);display:grid;gap:var(--space-4)}.correction-reviewing-page__badge,.correction-reviewing-page__reason-chip{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 12px;border-radius:var(--radius-pill);font-size:13px}.correction-reviewing-page__badge{background:#0a84ff1a;color:var(--color-primary);font-weight:600}.correction-reviewing-page__status-body{display:grid;gap:var(--space-4)}.correction-reviewing-page__preview{overflow:hidden;border-radius:24px;aspect-ratio:4 / 3;background:#eef5ffcc}.correction-reviewing-page__preview img{width:100%;height:100%;object-fit:cover}.correction-reviewing-page__meta{display:grid;gap:12px}.correction-reviewing-page__reason-chip{width:fit-content;background:#f5f8fcf2;color:var(--color-text-tertiary)}.correction-reviewing-page__meta p,.correction-reviewing-page__step p{margin:0;color:var(--color-text-secondary)}.correction-reviewing-page__timeline{padding:var(--space-5);display:grid;gap:14px}.correction-reviewing-page__step{display:flex;align-items:center;gap:12px}.correction-reviewing-page__dot{width:12px;height:12px;border-radius:50%;background:#0a84ff29}.correction-reviewing-page__dot.is-running{background:#0a84ff;box-shadow:0 0 0 8px #0a84ff1f}.correction-reviewing-page__actions{display:grid;gap:var(--space-3)}.correction-reviewing-page__primary,.correction-reviewing-page__secondary{min-height:50px;border-radius:var(--radius-pill);font-weight:600}.correction-reviewing-page__primary{border:0;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-deep));color:#fff}.correction-reviewing-page__secondary{border:1px solid rgba(255,255,255,.72);background:#ffffffd1;color:var(--color-text-primary)}.question-detail-page{min-height:100svh;padding:max(14px,env(safe-area-inset-top)) var(--app-side-padding) var(--app-bottom-safe-space)}.question-detail-page__shell{display:grid;gap:14px}.question-detail-page__header{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;align-items:start;gap:12px}.question-detail-page__header-text{display:grid;gap:4px;padding-top:2px}.question-detail-page__header-text p{margin:0;color:#6780a7;font-size:12px;font-weight:700;letter-spacing:.01em}.question-detail-page__header-text h1{margin:0;font-family:var(--font-family-display);font-size:clamp(28px,8vw,40px);line-height:1.04;letter-spacing:-.04em;color:#10204a}.question-detail-page__more-button{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.72);background:#ffffffc2;color:var(--color-text-primary);-webkit-backdrop-filter:var(--backdrop-soft);backdrop-filter:var(--backdrop-soft);box-shadow:var(--shadow-soft)}.question-detail-page__loading,.question-detail-page__hero,.question-detail-page__snapshot-card,.question-detail-page__analysis-card,.question-detail-page__meta-card,.question-detail-page__correction-card,.question-detail-page__dock-card{border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.76);background:#ffffffd6;box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--backdrop-strong);backdrop-filter:var(--backdrop-strong)}.question-detail-page__loading,.question-detail-page__snapshot-card,.question-detail-page__analysis-card,.question-detail-page__meta-card,.question-detail-page__correction-card{padding:16px}.question-detail-page__loading{display:flex;align-items:center;gap:var(--space-4)}.question-detail-page__spinner{color:var(--color-primary);animation:detail-spin 1s linear infinite}@keyframes detail-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.question-detail-page__loading strong,.question-detail-page__section-head h2,.question-detail-page__info-block strong{display:block}.question-detail-page__loading p,.question-detail-page__info-block p,.question-detail-page__info-block li,.question-detail-page__textarea-wrap span,.question-detail-page__error{margin:0;color:var(--color-text-secondary)}.question-detail-page__hero{padding:16px;display:grid;gap:14px;border-radius:32px}.question-detail-page__hero-top,.question-detail-page__section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap}.question-detail-page__status-chip,.question-detail-page__status-meta,.question-detail-page__section-head span{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 12px;border-radius:var(--radius-pill);font-size:13px}.question-detail-page__status-chip{background:#0a84ff1a;color:var(--color-primary);font-weight:600}.question-detail-page__status-meta,.question-detail-page__section-head span{background:#f5f8fcf2;color:var(--color-text-tertiary)}.question-detail-page__hero-grid{display:contents}.question-detail-page__preview{display:grid;gap:10px}.question-detail-page__preview-chip{min-height:30px;padding:0 12px;justify-self:start;border-radius:999px;background:#f5f8fcf2;color:var(--color-text-tertiary);display:inline-flex;align-items:center;font-size:12px}.question-detail-page__preview-frame{overflow:hidden;border-radius:26px;aspect-ratio:4 / 3;background:#eef5ffcc;border:1px solid rgba(224,233,247,.9)}.question-detail-page__preview-frame img{width:100%;height:100%;object-fit:contain;background:#f8fbff}.question-detail-page__hero-body{display:grid;gap:10px}.question-detail-page__hero-body h2{margin:0;font-size:clamp(20px,5.6vw,28px);line-height:1.32;color:#16233f}.question-detail-page__hero-body p{margin:0;color:var(--color-text-secondary)}.question-detail-page__hero-tags{display:flex;gap:8px;flex-wrap:wrap}.question-detail-page__hero-tags span{min-height:34px;padding:0 12px;border-radius:999px;background:#0a84ff1a;color:var(--color-primary);display:inline-flex;align-items:center;font-size:13px;font-weight:600}.question-detail-page__analysis-stack{display:grid;gap:12px}.question-detail-page__info-block,.question-detail-page__meta-chip{border-radius:var(--radius-md);background:#ffffffe0;border:1px solid rgba(216,227,242,.82)}.question-detail-page__info-block{padding:16px;display:grid;gap:10px;border-radius:24px}.question-detail-page__info-block ul{margin:0;padding-left:18px;display:grid;gap:8px}.question-detail-page__meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.question-detail-page__meta-chip{padding:14px 16px;display:grid;gap:6px;min-height:86px}.question-detail-page__meta-chip small{color:var(--color-text-tertiary)}.question-detail-page__meta-chip span{font-weight:600;line-height:1.35;word-break:break-word}.question-detail-page__correction-card{display:grid;gap:14px}.question-detail-page__correction-copy{border-radius:var(--radius-md);background:#ffffffe0;border:1px solid rgba(216,227,242,.82);padding:16px;display:grid;gap:10px}.question-detail-page__correction-copy p,.question-detail-page__correction-copy li{margin:0;color:var(--color-text-secondary)}.question-detail-page__correction-copy ul{margin:0;padding-left:18px;display:grid;gap:8px}.question-detail-page__result-card,.question-detail-page__ghost-action{border-radius:var(--radius-md);background:#ffffffe0;border:1px solid rgba(216,227,242,.82)}.question-detail-page__result-card{padding:16px;display:grid;gap:8px}.question-detail-page__result-card p,.question-detail-page__result-card span{margin:0}.question-detail-page__result-card p{color:#1f9a44;font-weight:600}.question-detail-page__result-card span{color:var(--color-text-secondary)}.question-detail-page__result-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.question-detail-page__ghost-action{min-height:52px;padding:0 14px;color:var(--color-text-primary);font-weight:600}.question-detail-page__action-dock{position:fixed;left:50%;bottom:0;width:100%;transform:translate(-50%);padding:0 var(--app-side-padding) calc(env(safe-area-inset-bottom) + 10px);z-index:35;pointer-events:none}.question-detail-page__action-dock-inner{margin:0 auto}.question-detail-page__dock-card{padding:12px;display:grid;grid-template-columns:128px minmax(0,1fr);gap:10px;pointer-events:auto;background:#ffffffeb;box-shadow:0 28px 48px -28px #3b5a8547,inset 0 1px #ffffffd6;-webkit-backdrop-filter:blur(28px) saturate(180%);backdrop-filter:blur(28px) saturate(180%)}.question-detail-page__dock-secondary{min-height:56px;border-radius:20px;border:1px solid rgba(220,229,241,.96);background:#ffffffe6;color:#314463;font-size:16px;font-weight:600}.question-detail-page__dock-secondary:disabled{opacity:.42}.question-detail-page__dock-primary{min-height:56px}.question-detail-page--ready{padding-bottom:calc(120px + env(safe-area-inset-bottom))}@media(max-width:720px){.question-detail-page__meta-grid{grid-template-columns:1fr 1fr}}@media(max-width:390px){.question-detail-page__header{grid-template-columns:42px minmax(0,1fr) 42px}.question-detail-page__meta-grid,.question-detail-page__result-actions,.question-detail-page__dock-card{grid-template-columns:1fr}}.bottom-tab-bar{position:fixed;left:50%;bottom:max(10px,env(safe-area-inset-bottom));transform:translate(-50%);width:min(calc(100% - 16px),calc(var(--app-max-width) - 8px));display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:8px 8px 10px;border-radius:30px;background:#ffffffeb;border:1px solid rgba(255,255,255,.88);box-shadow:0 22px 40px -28px #3b5a853d,inset 0 1px #ffffffe6;-webkit-backdrop-filter:blur(28px) saturate(180%);backdrop-filter:blur(28px) saturate(180%);z-index:30}.bottom-tab-bar__item{border:0;min-height:50px;padding:7px 4px;border-radius:18px;display:grid;justify-items:center;align-content:center;gap:5px;color:var(--color-text-tertiary);font-size:12px;font-weight:600;background:transparent;transition:transform .12s ease,background .18s ease,color .18s ease}.bottom-tab-bar__item:active{transform:scale(.98)}.bottom-tab-bar__icon{display:inline-flex;align-items:center;justify-content:center}.bottom-tab-bar__item--prominent{margin-top:-14px;min-height:58px;border-radius:22px;background:linear-gradient(180deg,#4da7ff 0%,var(--color-primary) 60%,#006de1 100%);color:#fff;box-shadow:var(--shadow-button)}.bottom-tab-bar__item.is-active{background:#0a84ff1a;color:var(--color-primary)}.bottom-tab-bar__item--prominent.is-active{background:linear-gradient(180deg,#58b2ff 0%,var(--color-primary) 58%,#0075ef 100%);color:#fff}.home-page{min-height:100svh;padding:max(14px,env(safe-area-inset-top)) var(--app-side-padding) var(--app-bottom-safe-space)}.home-page__shell{display:grid;gap:14px}.home-page__header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding-top:4px}.home-page__title-group h1{margin:0;font-family:var(--font-family-display);font-size:clamp(34px,9.4vw,52px);line-height:1;letter-spacing:-.055em;color:#17305f}.home-page__title-group p{margin:8px 0 0;color:#7a8aa6;font-size:14px;line-height:1.3}.home-page__avatar-pill{min-height:52px;padding:8px 14px 8px 8px;border-radius:999px;border:1px solid rgba(255,255,255,.88);background:#ffffffc2;box-shadow:0 18px 34px -24px #5e7dad3d;-webkit-backdrop-filter:blur(22px) saturate(180%);backdrop-filter:blur(22px) saturate(180%);display:inline-flex;align-items:center;gap:10px;color:#52637f;font-size:13px;font-weight:600}.home-page__avatar-dot{width:36px;height:36px;border-radius:50%;background:linear-gradient(180deg,#eef4ff,#dce8ff);color:#2962ea;display:inline-flex;align-items:center;justify-content:center;font-size:16px;font-weight:700}.home-page__empty-hero,.home-page__task-card,.home-page__stat-card,.home-page__weak-card,.home-page__recent-row{border-radius:30px;border:1px solid rgba(255,255,255,.88);background:#ffffffd1;box-shadow:0 24px 48px -28px #5474a038,inset 0 1px #ffffffc2;-webkit-backdrop-filter:blur(24px) saturate(180%);backdrop-filter:blur(24px) saturate(180%)}.home-page__empty-hero{padding:20px 18px 18px;display:grid;justify-items:center;gap:14px;text-align:center}.home-page__empty-hero-badge{width:64px;height:64px;border-radius:22px;background:linear-gradient(180deg,#79b6ff,#3873ff);color:#fff;display:grid;place-items:center;box-shadow:0 16px 26px -18px #3970ff9e}.home-page__empty-hero h2{margin:0;font-size:24px;line-height:1.15;color:#15284b}.home-page__empty-hero p{margin:0;color:#7d8ea8;font-size:14px}.home-page__task-card{padding:16px 16px 18px}.home-page__section{display:grid;gap:10px}.home-page__section-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.home-page__section-title{display:inline-flex;align-items:center;gap:8px;color:#1e2d4c}.home-page__section-title h2{margin:0;font-size:18px;font-weight:700;letter-spacing:-.02em}.home-page__link{border:0;background:transparent;padding:0;display:inline-flex;align-items:center;gap:2px;color:#8b9cb6;font-size:13px}.home-page__task-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px;border-radius:26px;overflow:hidden;border:1px solid rgba(228,236,248,.92);background:#ffffffc7}.home-page__metric{position:relative;padding:18px 10px 16px;text-align:center}.home-page__metric:not(:last-child):after{content:"";position:absolute;top:22px;right:0;width:1px;height:calc(100% - 44px);background:#e5edf9f5}.home-page__metric p,.home-page__metric small{margin:0;color:#95a5bf}.home-page__metric p{font-size:13px}.home-page__metric strong{display:block;margin:10px 0 8px;font-size:clamp(38px,9vw,50px);line-height:1;font-weight:700}.home-page__metric small{font-size:12px}.home-page__metric--blue strong{color:#2f6fff}.home-page__metric--orange strong{color:#ff7a18}.home-page__capture-cta{min-height:60px;border-radius:24px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:18px}.home-page__stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.home-page__stat-card{padding:18px 14px;display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px;align-items:start;min-height:116px}.home-page__stat-icon{width:52px;height:52px;border-radius:18px;background:#f0f6fffa;display:grid;place-items:center;color:#8ea0bb}.home-page__stat-card--blue .home-page__stat-icon{color:#3a6fff}.home-page__stat-card--green .home-page__stat-icon{color:#34c759}.home-page__stat-card--teal .home-page__stat-icon{color:#23b9c5}.home-page__stat-card--orange .home-page__stat-icon{color:#ff7a18}.home-page__stat-copy{display:grid;gap:6px}.home-page__stat-card p,.home-page__stat-card small{margin:0;color:#8b9cb6}.home-page__stat-card p{font-size:13px;font-weight:600;color:#7c8ca7}.home-page__stat-value-row{display:inline-flex;align-items:baseline;gap:5px}.home-page__stat-value-row strong{font-size:clamp(18px,5vw,26px);line-height:1;letter-spacing:-.04em;color:#17264b}.home-page__stat-value-row span{color:#8798b2;font-size:14px;font-weight:600}.home-page__stat-card small{font-size:12px;display:inline-flex;align-items:center;gap:5px;color:#99a8bf}.home-page__weak-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.home-page__weak-card{min-height:112px;padding:18px 16px;text-align:left;display:grid;align-content:space-between;gap:8px}.home-page__weak-card strong{font-size:16px;line-height:1.25;color:#2e6dff}.home-page__weak-card span{color:#8b9cb6;font-size:13px}.home-page__recent-list{display:grid;gap:10px}.home-page__recent-row{width:100%;min-height:82px;padding:14px 14px 14px 12px;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;text-align:left}.home-page__recent-row-icon{width:44px;height:44px;border-radius:15px;background:#f0f6fff5;color:#2e6dff;display:grid;place-items:center}.home-page__recent-row-body{display:grid;gap:4px;min-width:0}.home-page__recent-row-body strong{font-size:16px;line-height:1.3;color:#18274a}.home-page__recent-row-body span{color:#8b9cb6;font-size:13px}.home-page__recent-row-meta{display:grid;justify-items:end;gap:4px;color:#98a8bf}.home-page__recent-row-status{min-height:28px;padding:0 10px;border-radius:999px;display:inline-flex;align-items:center;background:#0a84ff1a;color:#2e6dff;font-size:12px;font-weight:700}.home-page__recent-row-meta small{font-size:12px}@media(max-width:390px){.home-page__header{align-items:flex-start;flex-direction:column}.home-page__task-grid,.home-page__stats-grid,.home-page__weak-grid,.home-page__recent-row{grid-template-columns:1fr}.home-page__recent-row,.home-page__recent-row-meta{justify-items:start}.home-page__metric:not(:last-child):after{display:none}}.login-input{display:flex;align-items:center;height:51px;margin-top:16px;padding:0 15px;border-radius:14px;background:#ffffffb8;border:1px solid rgba(180,192,211,.58);box-shadow:inset 0 2px 7px #647b9e0f}.login-input__icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;color:#8290a4}.login-input__icon svg{width:20px;height:20px}.login-input__icon--leading{margin-right:15px}.login-input__icon--trailing{margin-left:9px}.login-input__field{min-width:0;flex:1;height:100%;padding:0;border:0;outline:0;background:transparent;color:#34445d;font:700 15px/1 var(--font-family-base)}.login-input__field::placeholder{color:#929dad;opacity:1}.login-card{position:relative;z-index:3;width:calc(100% - 64px);margin:-55px auto 0;padding:26px 21px;border-radius:34px;background:linear-gradient(120deg,#ffffffc2,#fbfeff5c),radial-gradient(circle at 96% 14%,rgba(160,255,222,.26),transparent 36%);border:1px solid rgba(255,255,255,.9);box-shadow:0 1px #fffffff5 inset,0 18px 38px #5687c829;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.login-card__header{display:grid}.login-card__kicker,.login-card__header h2{display:none}.login-card__role{display:grid;grid-template-columns:1fr 32px 1fr;align-items:center;width:min(242px,82%);height:42px;margin:20px auto 22px;border-radius:999px;color:#6f7f92;font-size:15px;font-weight:800;background:#f4faff85;border:1px solid rgba(255,255,255,.88);box-shadow:0 8px 17px #5782bd2e,inset 0 0 12px #6da3e21f}.login-card__role-option{height:100%;padding:0;border:0;background:transparent;color:inherit;font-size:inherit;font-weight:inherit;text-align:center}.login-card__role-option.is-active{color:var(--login-blue)}.login-card__role-divider{color:var(--login-blue);font-size:15px;font-weight:700;text-align:center}.login-card__form{display:grid}.login-card__mode-hint{margin:10px 6px 0;color:#64769aeb;font-size:13px;line-height:1.5}.login-card__meta{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:15px 6px 22px;font-size:13px;line-height:1.1;font-weight:500}.login-card__text-button{padding:0;border:0;background:transparent;color:var(--login-blue);font-size:inherit;font-weight:inherit}.login-card__text-button:disabled{color:#788cb0b8}.login-card__disabled-hint{color:#98a1ad}.login-card__error{margin:0 6px 12px;color:var(--color-danger);font-size:13px}.login-card__submit.primary-button{position:relative;display:block;width:100%;height:53px;min-height:53px;border:1px solid #2462ff;border-radius:15px;overflow:hidden;color:#fff;font-size:20px;font-weight:900;letter-spacing:2px;background:radial-gradient(circle at 5% 8%,rgba(255,255,255,.75) 0 4%,rgba(255,255,255,.18) 12%,transparent 28%),linear-gradient(154deg,#7af,#2e6cff 48%,#1d5eff);box-shadow:inset 0 0 0 1px #ffffff6b,inset 0 -4px 13px #1643d533,0 8px 20px #2f68ff33}@media(max-width:374px){.login-card{width:calc(100% - 36px);margin-top:-60px;padding-left:18px;padding-right:18px}}@media(max-height:860px)and (max-width:430px){.login-card{margin-top:-58px}}.bottom-hints{position:relative;z-index:3;padding:21px 24px calc(31px + env(safe-area-inset-bottom));text-align:center;color:#637393}.bottom-hints__item{display:flex;align-items:center;justify-content:center}.bottom-hints__item:first-child{gap:10px;font-size:14px;font-weight:500;letter-spacing:1px}.bottom-hints__item p{margin:0}.bottom-hints__item--secondary{gap:16px;margin-top:48px;font-size:13px;font-weight:500;letter-spacing:1px;color:#768499a3}.bottom-hints__icon{display:inline-grid;place-items:center;width:21px;height:21px;border-radius:50%;background:linear-gradient(135deg,#b5d6ff,#76a6ff);box-shadow:0 5px 13px #5689e338;color:#fff}.bottom-hints__icon svg{width:14px;height:14px}.bottom-hints__icon--plain{width:22px;height:22px;border-radius:0;background:transparent;box-shadow:none;color:#768499a3}.bottom-hints__icon--plain svg{width:22px;height:22px}@media(max-width:374px){.bottom-hints__item:first-child,.bottom-hints__item--secondary{font-size:12px;letter-spacing:0}}@media(max-height:860px)and (max-width:430px){.bottom-hints__item--secondary{margin-top:35px}}.feature-row{position:relative;z-index:2;display:flex;justify-content:center;gap:11px;margin-top:29px;white-space:nowrap}.feature-pill{display:inline-flex;align-items:center;justify-content:center;height:28px;min-width:86px;padding:0 12px;border-radius:999px;color:var(--login-blue);font-size:12px;font-weight:700;background:#e3eefceb;box-shadow:inset 0 1px #ffffffbd}.feature-pill svg{width:15px;height:15px;margin-right:6px}.feature-pill__ai{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;margin-right:6px;border:1.7px solid currentColor;border-radius:4px;font-size:8px;line-height:1}@media(max-width:374px){.feature-row{gap:7px}.feature-pill{min-width:78px;padding:0 8px;font-size:11px}}@media(max-height:860px)and (max-width:430px){.feature-row{margin-top:23px}}.status-bar{position:relative;z-index:4;display:flex;align-items:center;justify-content:space-between;height:48px;padding:max(14px,env(safe-area-inset-top)) 30px 0;font-weight:800;color:#02060b}.time{font-size:16px;line-height:1;letter-spacing:0}.system-icons{display:flex;align-items:center;gap:7px;height:16px}.cellular{display:flex;align-items:end;gap:2px;height:14px}.cellular i{display:block;width:3px;border-radius:3px;background:#02060b}.cellular i:nth-child(1){height:5px}.cellular i:nth-child(2){height:8px}.cellular i:nth-child(3){height:11px}.cellular i:nth-child(4){height:14px}.wifi{position:relative;width:17px;height:13px;overflow:hidden}.wifi:before,.wifi:after{content:"";position:absolute;left:50%;border:3px solid #02060b;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent;border-radius:50%;transform:translate(-50%)}.wifi:before{width:22px;height:22px;top:-4px}.wifi:after{width:12px;height:12px;top:4px}.battery{position:relative;width:25px;height:13px;border:1.7px solid #02060b;border-radius:3px;box-shadow:inset 0 0 0 1px #02060b2e}.battery:after{content:"";position:absolute;right:-3.6px;top:3.2px;width:2px;height:5px;border-radius:0 2px 2px 0;background:#02060b8c}.battery i{position:absolute;inset:2px;border-radius:1.5px;background:#02060b}.hero{position:relative;z-index:2;padding:89px 20px 0;text-align:center}.hero h1{margin:0;font-size:43px;line-height:1.05;font-weight:900;letter-spacing:0;color:var(--login-deep-blue);text-shadow:0 3px 0 rgba(255,255,255,.38),0 13px 24px rgba(56,107,220,.18)}.hero p{margin:18px 0 0;font-size:17px;line-height:1.2;font-weight:500;letter-spacing:2px;color:#17325f}.float-cube{position:absolute;border-radius:8px;background:linear-gradient(145deg,#ffffffd1,#9ac8ff4d);border:2px solid rgba(165,205,252,.36);box-shadow:0 9px 22px #4d8fe22e;transform:rotate(31deg) skew(-4deg);opacity:.72}.float-cube:after{content:"";position:absolute;inset:7px;border-radius:5px;border:1px solid rgba(114,177,248,.22)}.float-cube-right{width:44px;height:44px;right:-7px;top:144px}.float-cube-left{width:45px;height:45px;left:-20px;top:498px;transform:rotate(45deg) skew(-3deg);opacity:.42}@media(max-width:374px){.status-bar{padding-left:24px;padding-right:24px}.hero{padding-top:106px}.hero h1{font-size:38px}.hero p{font-size:15px;letter-spacing:1px}}@media(max-height:860px)and (max-width:430px){.hero{padding-top:70px}.hero p{margin-top:14px}}.study-art{position:relative;z-index:1;height:190px;margin-top:10px;pointer-events:none}.math-card{position:absolute;left:21px;top:10px;width:142px;height:154px;border-radius:22px;background:#f8fcff52;border:1px solid rgba(160,200,252,.33);box-shadow:0 24px 42px #6096e21f;transform:rotate(-12deg)}.triangle{position:absolute;left:39px;top:37px;width:58px;height:40px;color:#5283e057;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:skewY(22deg)}.triangle:after{content:"";position:absolute;left:-1px;top:0;width:65px;height:2px;background:currentColor;transform-origin:left center;transform:rotate(24deg)}.triangle span{position:absolute;font-size:13px;font-weight:700;transform:skewY(-22deg)}.triangle span:nth-child(1){left:-13px;top:-20px}.triangle span:nth-child(2){left:0;bottom:-25px}.triangle span:nth-child(3){right:-19px;bottom:-7px}.formula{position:absolute;left:45px;bottom:39px;font-size:16px;font-weight:700;color:#5283e04d}.book-stack{position:absolute;right:-3px;top:35px;width:235px;height:139px;border-radius:20px;background:linear-gradient(103deg,#ffffff8c,#d5e6ff33),linear-gradient(180deg,#fcfeff94,#cee5ff80);border:1px solid rgba(191,220,254,.45);box-shadow:8px 10px #c2dbff54,0 26px 45px #407bdb2e;transform:rotate(4deg)}.book-stack:before{content:"";position:absolute;left:24px;top:22px;width:95px;height:95px;border-radius:17px;background:#67a9f72e}.paper-lines{position:absolute;right:28px;top:30px;display:grid;gap:12px;width:111px}.paper-lines span{display:block;height:3px;border-radius:999px;background:#80b0ea2e}.paper-lines span:nth-child(2){width:78%}.paper-lines span:nth-child(3){width:88%}.paper-lines span:nth-child(4){width:52%}.check-badge{position:absolute;right:35px;top:32px;width:51px;height:51px;border-radius:50%;background:radial-gradient(circle at 29% 23%,rgba(255,255,255,.72),transparent 28%),linear-gradient(135deg,#b3fbdf,#68d6ce);box-shadow:0 10px 22px #2cb6b82e}.check-badge:after{content:"";position:absolute;left:15px;top:17px;width:22px;height:10px;border-left:5px solid #fff;border-bottom:5px solid #fff;border-radius:3px;transform:rotate(-45deg)}.chart-bars{position:absolute;right:36px;bottom:16px;display:flex;align-items:end;gap:8px}.chart-bars i{display:block;width:13px;border-radius:7px;background:linear-gradient(180deg,#6698f6a1,#6698f638)}.chart-bars i:nth-child(1){height:24px;background:linear-gradient(180deg,#7ce0ccbf,#7ce0cc3b)}.chart-bars i:nth-child(2){height:50px}.chart-bars i:nth-child(3){height:34px}.magnifier{position:absolute;left:231px;top:8px;width:118px;height:118px;transform:rotate(31deg);filter:drop-shadow(0 15px 18px rgba(75,134,222,.18))}.lens{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 34% 24%,rgba(255,255,255,.72),transparent 19%),linear-gradient(135deg,#ffffff40,#6db7ff2e);border:8px solid rgba(143,190,249,.45);box-shadow:inset 0 0 0 2px #ffffff8a}.lens:after{content:"";position:absolute;left:25px;top:52px;width:62px;height:16px;border-radius:50%;background:#7fd1eb29}.handle{position:absolute;width:63px;height:21px;left:97px;top:80px;border-radius:999px;background:linear-gradient(90deg,#7db2f58c,#9bc8ff59);border:4px solid rgba(136,186,246,.42)}@media(max-width:374px){.study-art{transform:scale(.92);transform-origin:top center;margin-top:5px}}@media(max-height:860px)and (max-width:430px){.study-art{height:178px;margin-top:4px}}.login-page{--login-blue: #2f68ff;--login-deep-blue: #244fc7;--login-ink: #14315b;--login-muted: #8d9caf;--login-panel: rgba(255, 255, 255, .55);position:relative;width:min(100vw,430px);min-height:100dvh;margin:0 auto;overflow:hidden;isolation:isolate;color:var(--login-ink);background:radial-gradient(circle at 2% 3%,rgba(79,153,255,.74) 0 7%,rgba(79,153,255,.22) 23%,transparent 47%),radial-gradient(circle at 95% 5%,rgba(255,255,255,.95) 0 15%,rgba(234,244,255,.84) 36%,transparent 55%),radial-gradient(circle at 2% 86%,rgba(161,245,217,.78) 0 15%,rgba(205,255,241,.55) 28%,transparent 50%),linear-gradient(168deg,#eef7ff,#f8fbff 34%,#e7f4ff 57%,#eff9ff)}.login-page:before,.login-page:after{content:"";position:absolute;pointer-events:none;z-index:-1}.login-page:before{inset:0;background:linear-gradient(118deg,rgba(255,255,255,.62),transparent 36%) 0 0 / 100% 48% no-repeat,radial-gradient(ellipse at 56% 44%,rgba(83,135,255,.18),transparent 24%),radial-gradient(ellipse at 50% 72%,rgba(255,255,255,.92),transparent 46%)}.login-page:after{width:132%;height:42%;left:-15%;top:37%;border-radius:50% 50% 0 0;background:linear-gradient(180deg,#d5eaffbf,#f5fbff29);transform:rotate(-5deg);filter:blur(1px)}.login-page__layout{position:relative;z-index:1;width:100%;min-height:100dvh}.home-indicator{position:absolute;z-index:5;left:50%;bottom:max(6px,env(safe-area-inset-bottom));width:150px;height:5px;border-radius:999px;background:#050505;transform:translate(-50%)}@media(min-width:431px){.login-page{min-height:min(100dvh,932px);box-shadow:0 0 0 1px #29538214,0 22px 70px #29538233}}.notebook-page{min-height:100svh;padding:max(14px,env(safe-area-inset-top)) var(--app-side-padding) var(--app-bottom-safe-space)}.notebook-page__shell{display:grid;gap:14px}.notebook-page__header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4)}.notebook-page__eyebrow{margin:0 0 6px;color:#6780a7;font-size:12px;font-weight:700;letter-spacing:.01em}.notebook-page__header h1{margin:0 0 6px;font-family:var(--font-family-display);font-size:clamp(28px,8.4vw,40px);line-height:1.04;letter-spacing:-.04em;color:#10204a}.notebook-page__profile,.notebook-page__state,.notebook-page__empty-card p,.notebook-page__card h3,.notebook-page__sheet-head p{margin:0}.notebook-page__profile,.notebook-page__state,.notebook-page__empty-card p,.notebook-page__card small,.notebook-page__card-footer span{color:var(--color-text-secondary)}.notebook-page__actions{display:flex;gap:10px}.notebook-page__icon-button,.notebook-page__search-card,.notebook-page__hero,.notebook-page__card,.notebook-page__empty-card,.notebook-page__sheet{border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.76);background:#ffffffd6;box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--backdrop-strong);backdrop-filter:var(--backdrop-strong)}.notebook-page__icon-button{width:46px;height:46px;border-radius:17px;border-color:#eaf1fceb;color:#52647f}.notebook-page__icon-button.is-active{background:#0a84ff1a;color:var(--color-primary)}.notebook-page__search-card{padding:13px 16px;display:flex;align-items:center;gap:10px}.notebook-page__search-card input{width:100%;border:0;background:transparent;color:var(--color-text-primary);font-size:16px;outline:none}.notebook-page__hero{padding:18px 16px;display:flex;justify-content:space-between;gap:12px;align-items:flex-end;border-radius:32px;background:linear-gradient(180deg,#ffffffeb,#ffffffc7),radial-gradient(circle at top right,rgba(117,179,255,.18),transparent 42%)}.notebook-page__hero p{margin:0 0 6px;color:#71819b;font-size:13px}.notebook-page__hero strong{display:block;max-width:210px;font-size:clamp(20px,5.8vw,28px);line-height:1.18;color:#14223d}.notebook-page__hero span{min-height:34px;padding:0 12px;border-radius:var(--radius-pill);background:#f5f8fcf2;color:var(--color-text-tertiary);font-size:13px;display:inline-flex;align-items:center}.notebook-page__filters{display:flex;gap:10px;overflow-x:auto;padding:2px 0 4px;scroll-snap-type:x proximity}.notebook-page__filters::-webkit-scrollbar{display:none}.notebook-page__filter-chip,.notebook-page__sheet-chip,.notebook-page__sheet-option{border-radius:var(--radius-pill);border:1px solid rgba(216,227,242,.9);background:#ffffffe0;color:var(--color-text-secondary)}.notebook-page__filter-chip{min-height:40px;padding:0 14px;display:inline-flex;gap:8px;align-items:center;white-space:nowrap;scroll-snap-align:start;flex:0 0 auto}.notebook-page__filter-chip small{color:var(--color-text-tertiary)}.notebook-page__filter-chip.is-active{border-color:#0a84ff4d;background:#0a84ff1a;color:var(--color-primary)}.notebook-page__list{display:grid;gap:12px}.notebook-page__card{padding:14px;display:grid;grid-template-columns:94px minmax(0,1fr);gap:14px;text-align:left;border-radius:28px}.notebook-page__card-thumb{overflow:hidden;border-radius:20px;aspect-ratio:3 / 4;background:#ecf4ffe6;display:grid;place-items:center;color:var(--color-text-tertiary)}.notebook-page__card-thumb img{width:100%;height:100%;object-fit:cover}.notebook-page__card-body{display:grid;gap:10px;min-width:0}.notebook-page__card-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.notebook-page__card h3{font-size:16px;line-height:1.35;color:var(--color-text-primary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notebook-page__status{min-height:30px;padding:0 9px;border-radius:var(--radius-pill);font-size:11px;font-weight:600;display:inline-flex;align-items:center;white-space:nowrap;flex:0 0 auto}.notebook-page__status--pending_correction,.notebook-page__status--pending_review{background:#0a84ff1a;color:var(--color-primary)}.notebook-page__status--corrected,.notebook-page__status--mastered{background:#34c7591f;color:var(--color-success)}.notebook-page__status--needs_redo{background:#ff7a1824;color:#ff7a18}.notebook-page__meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.notebook-page__meta-grid small{min-height:32px;padding:7px 10px;border-radius:13px;background:#f7faffeb;display:inline-flex;align-items:center;font-size:12px}.notebook-page__card-footer{display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap}.notebook-page__card-footer span{font-size:12px}.notebook-page__review-time{display:inline-flex;align-items:center;gap:6px}.notebook-page__state{padding:18px;text-align:center}.notebook-page__state.is-error{color:var(--color-danger)}.notebook-page__empty-card{padding:var(--space-6);display:grid;gap:8px}.notebook-page__empty-card strong{font-size:18px}.notebook-page__sheet-backdrop{position:fixed;inset:0;background:#0f172a2e;display:grid;align-items:end;padding:10px;z-index:40}.notebook-page__sheet{width:min(100%,var(--app-max-width));margin:0 auto;padding:16px 16px calc(16px + env(safe-area-inset-bottom));display:grid;gap:16px;border-radius:30px 30px 24px 24px}.notebook-page__sheet-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4)}.notebook-page__sheet-head p{color:var(--color-primary-deep);font-size:13px;font-weight:600}.notebook-page__sheet-head h2,.notebook-page__sheet-section h3{margin:0}.notebook-page__sheet-head button{min-height:38px;padding:0 14px;border-radius:var(--radius-pill);border:0;background:#0a84ff1f;color:var(--color-primary);font-weight:600}.notebook-page__sheet-section{display:grid;gap:10px}.notebook-page__sheet-row{display:flex;flex-wrap:wrap;gap:10px}.notebook-page__sheet-chip,.notebook-page__sheet-option{min-height:40px;padding:0 14px}.notebook-page__sheet-chip.is-active,.notebook-page__sheet-option.is-selected{border-color:#0a84ff4d;background:#0a84ff1a;color:var(--color-primary)}@media(max-width:720px){.notebook-page__hero{align-items:flex-start}}@media(max-width:390px){.notebook-page__card{grid-template-columns:86px minmax(0,1fr)}.notebook-page__hero{flex-direction:column}.notebook-page__hero strong{max-width:none}.notebook-page__meta-grid{grid-template-columns:1fr}}.mobile-preview-page{min-height:100svh;padding:max(14px,env(safe-area-inset-top)) var(--app-side-padding) max(20px,env(safe-area-inset-bottom))}.mobile-preview-page__shell{display:grid;gap:14px}.mobile-preview-page__hero,.mobile-preview-page__tip-card,.mobile-preview-page__item{border-radius:28px;border:1px solid rgba(255,255,255,.86);background:#ffffffd1;box-shadow:0 24px 48px -28px #5474a038,inset 0 1px #ffffffc2;-webkit-backdrop-filter:blur(24px) saturate(180%);backdrop-filter:blur(24px) saturate(180%)}.mobile-preview-page__hero{padding:18px 16px;display:flex;align-items:center;gap:12px}.mobile-preview-page__hero-icon{width:48px;height:48px;border-radius:16px;background:linear-gradient(180deg,#7ab6ff,#3e74ff);color:#fff;display:grid;place-items:center;box-shadow:0 16px 26px -18px #3970ff85}.mobile-preview-page__hero p{margin:0 0 4px;color:#7487a7;font-size:12px;font-weight:700}.mobile-preview-page__hero h1{margin:0;font-family:var(--font-family-display);font-size:clamp(28px,8vw,38px);line-height:1.04;letter-spacing:-.04em;color:#152246}.mobile-preview-page__tip-card{padding:16px;display:flex;align-items:flex-start;gap:10px;color:#52637f}.mobile-preview-page__tip-card p{margin:0;font-size:14px;line-height:1.5}.mobile-preview-page__list{display:grid;gap:10px}.mobile-preview-page__item{padding:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#1d2d4b}.mobile-preview-page__item strong{display:block;font-size:16px;line-height:1.3}.mobile-preview-page__item span{display:block;margin-top:4px;color:#8798b2;font-size:13px}.profile-page{min-height:100svh;padding:max(20px,env(safe-area-inset-top)) 16px max(24px,env(safe-area-inset-bottom))}.profile-page__shell{width:min(100%,720px);margin:0 auto;display:grid;gap:var(--space-5)}.profile-page__hero,.profile-page__stat,.profile-page__menu-item{border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.76);background:#ffffffd6;box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--backdrop-strong);backdrop-filter:var(--backdrop-strong)}.profile-page__hero{padding:var(--space-6);display:flex;gap:var(--space-4);align-items:center}.profile-page__avatar{width:72px;height:72px;border-radius:24px;background:#0a84ff1a;color:var(--color-primary);display:grid;place-items:center}.profile-page__eyebrow{margin:0 0 6px;color:var(--color-primary-deep);font-size:13px;font-weight:600}.profile-page__hero h1,.profile-page__stat p,.profile-page__stat strong,.profile-page__menu-item p{margin:0}.profile-page__hero h1{font-family:var(--font-family-display);font-size:clamp(32px,7vw,40px);line-height:1.08}.profile-page__meta,.profile-page__stat p,.profile-page__menu-item p{color:var(--color-text-secondary)}.profile-page__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.profile-page__stat{padding:16px;display:grid;gap:6px}.profile-page__stat strong{font-size:26px;line-height:1}.profile-page__menu{display:grid;gap:var(--space-3)}.profile-page__menu-item{width:100%;padding:18px;display:flex;justify-content:space-between;gap:var(--space-4);align-items:center;text-align:left}.profile-page__menu-item strong{display:block;margin-bottom:6px;font-size:17px}.profile-page__menu-item span{color:var(--color-text-tertiary);display:inline-flex;align-items:center}.text-field{display:grid;gap:10px}.text-field__label{font-size:16px;color:#7585a3eb;font-weight:600}.text-field__input{width:100%;min-height:72px;padding:0 22px;border:1px solid rgba(255,255,255,.76);border-radius:24px;background:#ffffffc7;color:var(--color-text-primary);font-size:18px;box-shadow:inset 0 1px #fffffff5,0 14px 28px #7aa6f50f;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.text-field__input::placeholder{color:#a3b2cc}.text-field__input:focus{outline:none;border-color:#457fff80;box-shadow:0 0 0 4px #588fff1f,inset 0 1px #fffffff5,0 18px 34px #6797f01a}.option-grid{display:grid;gap:14px}.option-grid__head{display:grid}.option-grid__head h3{margin:0;font-size:17px;line-height:1.2;font-weight:700}.option-grid__helper{margin:0;display:inline-flex;align-items:center;gap:8px;color:#70819c;font-size:13px}.option-grid__items{display:grid;gap:12px}.option-grid__items--cols-1{grid-template-columns:1fr}.option-grid__items--cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.option-grid__items--cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.option-grid__item{min-height:72px;padding:0 18px;border-radius:22px;border:1px solid rgba(210,220,235,.88);background:#ffffffad;color:#15213a;text-align:left;display:flex;align-items:center;justify-content:space-between;box-shadow:inset 0 1px #ffffffb8,0 14px 30px -22px #6788b838;transition:transform .16s ease,border-color .16s ease,background .16s ease,opacity .16s ease,box-shadow .16s ease}.option-grid__label{font-size:16px;font-weight:600}.option-grid__meta{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#919fb6e6}.option-grid__item:active{transform:scale(.98)}.option-grid__item.is-selected{border-color:#3a74ffd1;background:#ffffffeb;box-shadow:inset 0 1px #ffffffeb,0 20px 36px -28px #356dff8a}.option-grid__item.is-selected .option-grid__label,.option-grid__item.is-selected .option-grid__meta{color:#2f6fff}.option-grid__item.is-disabled{background:#fff6;color:#7e8ca4b8;cursor:not-allowed;box-shadow:inset 0 1px #ffffff80}.option-grid__item.is-disabled .option-grid__label,.option-grid__item.is-disabled .option-grid__meta{color:#acb5c6e0}.option-grid__items--stacked .option-grid__item{min-height:78px}@media(max-width:390px){.option-grid__items--cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}.profile-header{display:grid;gap:12px}.profile-header__step{justify-self:end;min-height:48px;padding:0 18px;border-radius:999px;display:inline-flex;align-items:center;color:#5e6f8a;font-size:16px;font-weight:600;border:1px solid rgba(255,255,255,.82);background:#ffffff94;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:var(--backdrop-soft);backdrop-filter:var(--backdrop-soft)}.profile-header h1{margin:0;font-family:var(--font-family-display);font-size:clamp(34px,9vw,52px);line-height:1.06;letter-spacing:-.04em;color:#0a1a4b}.profile-header__description{margin:0;color:#61708c;font-size:16px;line-height:1.6}.profile-summary{display:flex;flex-wrap:wrap;gap:8px}.profile-summary span{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:var(--radius-pill);background:#ffffff70;border:1px solid rgba(255,255,255,.62);color:#70819c;font-size:12px}.school-search-field{display:grid;gap:14px}.school-search-field__head{display:grid;gap:6px}.school-search-field__head h3,.school-search-field__head p{margin:0}.school-search-field__head h3{font-size:18px;color:#10224f}.school-search-field__head p{color:#6e7f9b;font-size:14px;line-height:1.6}.school-search-field__input{width:100%;min-height:64px;padding:0 22px;border:1px solid rgba(255,255,255,.76);border-radius:24px;background:#ffffffc7;color:var(--color-text-primary);font-size:17px;box-shadow:inset 0 1px #fffffff5,0 14px 28px #7aa6f50f}.school-search-field__input:focus{outline:none;border-color:#457fff80;box-shadow:0 0 0 4px #588fff1f,inset 0 1px #fffffff5,0 18px 34px #6797f01a}.school-search-field__selected,.school-search-field__option{display:grid;gap:4px;width:100%;text-align:left;padding:14px 16px;border-radius:20px;border:1px solid rgba(207,219,243,.72);background:#fafcfff0}.school-search-field__selected{background:linear-gradient(180deg,#e8f1ffeb,#f5f9ffeb)}.school-search-field__selected strong,.school-search-field__option strong{color:#10224f;font-size:15px}.school-search-field__selected span,.school-search-field__option span,.school-search-field__status{color:#74849d;font-size:13px;line-height:1.5}.school-search-field__results{display:grid;gap:10px}.school-search-field__option{cursor:pointer}.school-search-field__option.is-selected{border-color:#487cf580;box-shadow:0 10px 22px #5b89ec1f}.school-search-field__status{margin:0;padding:4px 2px 0}.profile-setup-card{display:grid;gap:24px;padding:22px 22px 20px;border-radius:34px;background:linear-gradient(180deg,#ffffffd6,#ffffffb8);border:1px solid rgba(255,255,255,.82);box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--backdrop-strong);backdrop-filter:var(--backdrop-strong)}.profile-setup-card__sections{display:grid;gap:28px;padding-top:2px}.profile-setup-card__footer{display:grid;gap:12px;padding-top:2px}.profile-setup-card__footer p,.profile-setup-card__error{margin:0;text-align:center;color:#74849d;font-size:14px;line-height:1.6}.profile-setup-card__error{color:var(--color-danger)}.profile-page{min-height:100svh;padding:max(18px,env(safe-area-inset-top)) var(--app-side-padding) max(20px,env(safe-area-inset-bottom))}.profile-page__layout{position:relative;display:grid;gap:22px}.profile-page__back{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.76);background:#ffffffad;color:#102048;-webkit-backdrop-filter:var(--backdrop-soft);backdrop-filter:var(--backdrop-soft);box-shadow:var(--shadow-soft)}.profile-page__panel{width:100%}.review-page{min-height:100svh;padding:max(14px,env(safe-area-inset-top)) var(--app-side-padding) var(--app-bottom-safe-space)}.review-page__shell{display:grid;gap:14px}.review-page__header{display:flex;align-items:flex-start;gap:12px}.review-page__header--overview{justify-content:space-between}.review-page__eyebrow{margin:0 0 6px;color:#6780a7;font-size:12px;font-weight:700;letter-spacing:.01em}.review-page__header h1,.review-page__section-head h2,.review-page__question-head h2{margin:0}.review-page__header h1{font-family:var(--font-family-display);font-size:clamp(28px,8.4vw,40px);line-height:1.04;letter-spacing:-.04em;color:#10204a}.review-page__profile,.review-page__section-head p,.review-page__state,.review-page__empty-card p,.review-page__result-card p{margin:0;color:var(--color-text-secondary)}.review-page__back,.review-page__date-chip,.review-page__progress-card,.review-page__summary-card,.review-page__task-card,.review-page__question-card,.review-page__mode-card,.review-page__result-card,.review-page__empty-card{border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.76);background:#ffffffd6;box-shadow:var(--shadow-card);-webkit-backdrop-filter:var(--backdrop-strong);backdrop-filter:var(--backdrop-strong)}.review-page__back{width:44px;height:44px;border-radius:17px;color:var(--color-text-primary)}.review-page__date-chip,.review-page__progress-card span,.review-page__question-head p,.review-page__question-head span,.review-page__task-badge{min-height:32px;padding:0 12px;border-radius:var(--radius-pill);display:inline-flex;align-items:center;gap:6px;font-size:13px}.review-page__date-chip,.review-page__progress-card span,.review-page__question-head span,.review-page__task-badge{background:#f5f8fcf2;color:var(--color-text-tertiary)}.review-page__summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.review-page__summary-card{padding:15px 14px;display:grid;gap:5px}.review-page__summary-card p,.review-page__task-meta small,.review-page__question-meta small{margin:0;color:var(--color-text-secondary)}.review-page__summary-card strong{font-size:clamp(24px,6vw,28px);line-height:1}.review-page__summary-card--warning strong{color:#ff7a18}.review-page__summary-card--success strong{color:var(--color-success)}.review-page__section{display:grid;gap:10px}.review-page__section-head{display:flex;justify-content:space-between;align-items:flex-start}.review-page__task-list{display:grid;gap:12px}.review-page__task-card{padding:15px;text-align:left;display:grid;gap:10px;border-radius:28px}.review-page__task-top{display:flex;justify-content:space-between;gap:var(--space-3);align-items:flex-start}.review-page__task-top strong,.review-page__empty-card strong,.review-page__question-meta strong{font-size:16px;line-height:1.35}.review-page__task-badge--warning{background:#ff7a1824;color:#ff7a18}.review-page__task-meta{display:flex;flex-wrap:wrap;gap:var(--space-3)}.review-page__task-meta small,.review-page__question-meta small{min-height:34px;padding:8px 10px;border-radius:14px;background:#f7faffeb;display:inline-flex;align-items:center;gap:6px}.review-page__empty-card{padding:var(--space-6);display:grid;gap:8px}.review-page__state{padding:18px;text-align:center}.review-page__state.is-error{color:var(--color-danger)}.review-page__progress-card,.review-page__mode-card,.review-page__result-card{padding:16px}.review-page__progress-card{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4)}.review-page__progress-card strong{font-size:18px}.review-page__question-card{padding:16px;display:grid;gap:14px;border-radius:30px}.review-page__question-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.review-page__question-head p{margin:0 0 8px;background:#0a84ff1a;color:var(--color-primary)}.review-page__question-body{display:grid;grid-template-columns:1fr;gap:14px}.review-page__question-preview{overflow:hidden;width:100%;border-radius:24px;aspect-ratio:4 / 3;background:#ecf4ffe6;display:grid;place-items:center;color:var(--color-text-tertiary)}.review-page__question-preview img{width:100%;height:100%;object-fit:cover}.review-page__question-meta{display:grid;gap:10px}.review-page__segment{padding:6px;border-radius:20px;background:#f4f8ffeb;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.review-page__segment-item{min-height:44px;border-radius:16px;border:0;background:transparent;color:var(--color-text-secondary);font-weight:600}.review-page__segment-item.is-active{background:#0a84ff1f;color:var(--color-primary)}.review-page__segment-item:disabled{opacity:.45;cursor:not-allowed}.review-page__mode-hint{margin:12px 0 0;color:var(--color-text-tertiary);font-size:13px}.review-page__detail-list{display:flex;flex-wrap:wrap;gap:10px}.review-page__detail-list span{min-height:34px;padding:8px 10px;border-radius:14px;background:#f7faffeb;color:var(--color-text-secondary);display:inline-flex;align-items:center}.review-page__detail-stack{display:grid;gap:10px}.review-page__detail-stack strong{font-size:15px}.review-page__detail-stack ul{margin:0;padding-left:18px;display:grid;gap:8px;color:var(--color-text-secondary)}.review-page__result-card{display:grid;gap:12px;border-radius:30px}.review-page__result-button{min-height:54px;border-radius:18px;border:1px solid rgba(216,227,242,.9);background:#ffffffeb;color:var(--color-text-primary);display:flex;justify-content:center;align-items:center;gap:8px;font-size:16px;font-weight:600}.review-page__result-button--success{background:#34c7591f;color:var(--color-success)}.review-page__result-button--danger{background:#ff3b301a;color:var(--color-danger)}.review-page__action-dock{position:fixed;left:50%;bottom:0;width:100%;transform:translate(-50%);padding:0 var(--app-side-padding) calc(env(safe-area-inset-bottom) + 10px);pointer-events:none;z-index:35}.review-page__action-dock-inner{margin:0 auto}.review-page--active{padding-bottom:calc(280px + env(safe-area-inset-bottom))}.review-page--active .review-page__result-card{pointer-events:auto;background:#ffffffeb;box-shadow:0 28px 48px -28px #3b5a8547,inset 0 1px #ffffffd6;-webkit-backdrop-filter:blur(28px) saturate(180%);backdrop-filter:blur(28px) saturate(180%)}@media(max-width:720px){.review-page__summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:390px){.review-page__summary-grid{grid-template-columns:1fr}.review-page__task-top,.review-page__question-head,.review-page__progress-card{flex-direction:column;align-items:flex-start}.review-page--active{padding-bottom:calc(304px + env(safe-area-inset-bottom))}}:root{color-scheme:light;--font-family-base: "SF Pro Text", "SF Pro SC", "PingFang SC", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-family-display: "SF Pro Display", "SF Pro SC", "PingFang SC", "Helvetica Neue", Helvetica, Arial, sans-serif;--color-bg: #eef5ff;--color-bg-elevated: rgba(255, 255, 255, .78);--color-bg-strong: rgba(255, 255, 255, .96);--color-surface-soft: rgba(255, 255, 255, .42);--color-text-primary: #0f172a;--color-text-secondary: #516075;--color-text-tertiary: #7b8aa2;--color-primary: #0a84ff;--color-primary-deep: #0066cc;--color-primary-soft: rgba(10, 132, 255, .12);--color-success: #34c759;--color-border: rgba(120, 146, 179, .24);--color-border-strong: rgba(90, 120, 156, .34);--color-shadow: rgba(15, 23, 42, .12);--color-shadow-strong: rgba(73, 109, 155, .18);--color-danger: #ff3b30;--radius-2xs: 12px;--radius-xs: 16px;--radius-sm: 20px;--radius-md: 24px;--radius-lg: 30px;--radius-xl: 36px;--radius-pill: 999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--shadow-card: 0 24px 48px -24px var(--color-shadow-strong), 0 14px 28px -20px rgba(255, 255, 255, .7) inset;--shadow-button: 0 18px 32px -20px rgba(10, 132, 255, .55), 0 1px 0 rgba(255, 255, 255, .42) inset;--shadow-soft: 0 20px 40px -24px rgba(69, 107, 154, .14), 0 10px 20px -16px rgba(69, 107, 154, .16);--backdrop-strong: blur(24px) saturate(180%);--backdrop-soft: blur(12px) saturate(150%);--app-max-width: 430px;--app-side-padding: clamp(14px, 4vw, 18px);--app-bottom-nav-height: 88px;--app-bottom-safe-space: calc(var(--app-bottom-nav-height) + env(safe-area-inset-bottom) + 18px);font-family:var(--font-family-base);line-height:1.5;font-weight:400;color:var(--color-text-primary);background:radial-gradient(circle at top,rgba(123,201,255,.4),transparent 34%),radial-gradient(circle at 85% 18%,rgba(89,217,183,.2),transparent 22%),linear-gradient(180deg,#f6fbff,#eef5ff 54%,#eaf2fb);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}html{min-height:100%;background:var(--color-bg);-webkit-text-size-adjust:100%}body{margin:0;min-width:320px;min-height:100svh;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(180deg,#ffffff8f,#ffffff14),radial-gradient(circle at 10% 20%,rgba(255,255,255,.75),transparent 28%)}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}#root{min-height:100svh}.app-shell{position:relative;min-height:100svh}.mobile-page-shell{width:min(100%,var(--app-max-width));margin:0 auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media(display-mode:standalone){body{overscroll-behavior:none}}
