.mistake-review-overlay .review-context-column .review-answer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;justify-content:stretch!important;width:100%!important;max-width:100%!important;gap:10px!important}.mistake-review-overlay .review-context-column .review-answer-grid .mistake-answer-card{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:2px!important;min-height:46px!important;padding:8px 16px!important;border-radius:15px!important}.mistake-review-overlay .review-context-column .review-answer-grid .mistake-answer-card small{color:rgba(34,40,35,.62)!important;font-size:13px!important;line-height:1.25!important;white-space:nowrap!important}.mistake-review-overlay .review-context-column .review-answer-grid .mistake-answer-card small:after{content:"："!important}.mistake-review-overlay .review-context-column .review-answer-grid .mistake-answer-card strong{font-size:16px!important;line-height:1.25!important}.mistake-compose-modal .ai-action-progress,.mistake-review-overlay .ai-action-progress,.mistakes-page-view .ai-action-progress{gap:8px!important;padding:13px 15px!important}.mistake-compose-modal .ai-action-progress i,.mistake-review-overlay .ai-action-progress i,.mistakes-page-view .ai-action-progress i{position:relative!important;display:block!important;height:8px!important;overflow:hidden!important;border-radius:999px!important;background:rgba(47,91,75,.11)!important}.mistake-compose-modal .ai-action-progress i:before,.mistake-review-overlay .ai-action-progress i:before,.mistakes-page-view .ai-action-progress i:before{display:none!important;animation:none!important;content:none!important}.mistake-compose-modal .ai-action-progress i>b,.mistake-review-overlay .ai-action-progress i>b,.mistakes-page-view .ai-action-progress i>b{display:block!important;width:8%;height:100%!important;border-radius:inherit!important;background:linear-gradient(90deg,rgba(47,91,75,.95),rgba(197,142,61,.9))!important;box-shadow:0 0 18px rgba(197,142,61,.22)!important;transition:width .36s ease!important}.mistake-compose-modal .ai-action-progress em,.mistake-review-overlay .ai-action-progress em,.mistakes-page-view .ai-action-progress em{color:rgba(69,86,75,.72)!important;font-size:12px!important;font-style:normal!important;font-weight:800!important;line-height:1.4!important}.mistake-review-overlay .ai-stream-preview{display:block!important;min-height:0!important;margin-top:10px!important;padding:14px 16px!important;overflow:visible!important;border:1px solid rgba(47,91,75,.09)!important;border-radius:18px!important;background:rgba(255,253,248,.72)!important}.mistake-review-overlay .ai-existing-lecture-note{width:fit-content!important;max-width:100%!important;margin:0 0 12px!important;padding:8px 12px!important;border:1px solid rgba(47,91,75,.12)!important;border-radius:12px!important;color:rgba(38,79,66,.86)!important;background:rgba(232,242,235,.72)!important;font-size:12px!important;font-weight:850!important;line-height:1.6!important}.mistake-review-overlay .review-teacher-section>.ai-stream-preview .markdown-copy{font-size:15.5px!important;line-height:1.78!important}.mistake-image-zoom-modal{position:fixed!important;inset:0!important;z-index:1200!important;display:grid!important;place-items:center!important;padding:28px!important;background:rgba(21,34,28,.68)!important;backdrop-filter:blur(14px)!important}.mistake-image-zoom-surface{display:grid!important;gap:12px!important;width:min(1180px,96vw)!important;max-height:92vh!important;padding:14px!important;overflow:auto!important;border:1px solid rgba(255,255,255,.26)!important;border-radius:24px!important;background:rgba(255,253,248,.96)!important;box-shadow:0 30px 90px rgba(10,18,14,.38)!important}.mistake-image-zoom-surface>button{justify-self:end!important}.mistake-image-zoom-surface img{width:100%!important;max-height:78vh!important;object-fit:contain!important;border-radius:16px!important;background:#fff!important}.mistakes-page-view .card-inline-progress{display:block!important;width:100%!important}.redeem-card{position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(255,250,238,.96),rgba(232,244,235,.94)),var(--card-bg,#fffaf0)}.redeem-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,#3d8063,#c8913f);border-radius:inherit}.redeem-status-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.redeem-status-row p{margin:8px 0 0;color:var(--muted,#6f786f);line-height:1.65}.redeem-feedback{display:flex;align-items:center;min-height:42px;margin:0;border:1px solid rgba(61,128,99,.16);border-radius:14px;padding:10px 13px;color:#2e5d48;background:rgba(255,255,255,.72);box-shadow:0 10px 22px rgba(61,128,99,.07);font-size:.9rem;font-weight:780;line-height:1.55;white-space:pre-wrap}.redeem-feedback.info{border-color:rgba(55,105,158,.18);color:#315f84;background:rgba(239,247,255,.78)}.redeem-feedback.success{border-color:rgba(61,128,99,.22);color:#27664b;background:rgba(235,248,239,.86)}.redeem-feedback.error{border-color:rgba(191,91,71,.22);color:#9a4632;background:rgba(255,241,235,.88)}.pro-purchase-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;border:1px solid rgba(197,142,61,.2);border-radius:18px;padding:14px 15px;background:linear-gradient(135deg,rgba(255,248,226,.9),rgba(237,249,240,.78));box-shadow:inset 0 1px 0 rgba(255,255,255,.76),0 14px 28px rgba(90,112,78,.08)}.pro-purchase-panel span{display:inline-flex;align-items:center;gap:8px;color:#2f634b;font-size:.92rem;font-weight:900}.pro-purchase-panel p{margin:7px 0 0;color:rgba(68,80,70,.72);font-size:.84rem;font-weight:700;line-height:1.62}.pro-shop-button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(47,91,75,.14);border-radius:14px;padding:9px 13px;color:#fff;background:linear-gradient(135deg,#234e3d,#347258);box-shadow:0 12px 24px rgba(47,91,75,.16);font-size:.86rem;font-weight:900;text-decoration:none;white-space:nowrap;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.pro-shop-button:hover{box-shadow:0 16px 30px rgba(47,91,75,.2);filter:saturate(1.04);transform:translateY(-1px)}@media (max-width:720px){.pro-purchase-panel{grid-template-columns:1fr}.pro-shop-button{width:100%}}.pro-benefit-list{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 2px}.pro-benefit-list span{display:inline-flex;align-items:center;min-height:30px;border:1px solid rgba(61,128,99,.16);border-radius:999px;padding:6px 10px;color:#315f49;background:rgba(255,255,255,.66);font-size:.8rem;font-weight:820}.pro-group-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;border:1px solid rgba(61,128,99,.16);border-radius:18px;padding:12px 14px;background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(236,246,239,.76));box-shadow:0 14px 30px rgba(61,128,99,.08)}.pro-group-card span{display:inline-flex;align-items:center;gap:8px;color:#315f49;font-size:.88rem;font-weight:880}.pro-group-card strong{color:#1f4737;font-family:var(--font-number,inherit);font-size:1.05rem;letter-spacing:.04em}.pro-group-card .secondary-button{min-height:36px;padding:7px 11px;border-radius:13px;white-space:nowrap}.stats-ai-summary-card{display:grid;gap:16px;margin:18px 0 22px;padding:22px;border-color:rgba(61,128,99,.13);background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(239,247,240,.72)),var(--card-bg,#fffaf0)}.stats-review-boundary{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:18px 0;padding:18px 22px;border-color:rgba(61,128,99,.15);background:rgba(239,247,240,.58)}.stats-review-boundary h3{margin:4px 0 5px;color:#233b2f;font-size:1rem}.stats-review-boundary small{display:block;max-width:670px;color:var(--muted,#6f786f);line-height:1.65}.stats-review-boundary .secondary-button{flex:0 0 auto;white-space:nowrap}.stats-ai-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.stats-ai-summary-head h3{margin:4px 0 6px;color:#233b2f;font-size:1.28rem}.stats-ai-summary-empty,.stats-ai-summary-head small{color:var(--muted,#6f786f);line-height:1.65}.stats-summary-actions{display:grid;justify-items:end;gap:10px;min-width:260px}.stats-summary-tabs{width:100%}.stats-summary-actions .primary-button{min-height:42px;border-radius:15px}.stats-ai-summary-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.stats-ai-summary-metrics span{display:grid;gap:4px;border:1px solid rgba(61,128,99,.1);border-radius:16px;padding:12px 14px;background:rgba(255,255,255,.66)}.stats-ai-summary-metrics strong{color:#244c3b;font-size:1.3rem;line-height:1}.stats-ai-summary-metrics small{color:var(--muted,#6f786f);font-size:.78rem}.stats-ai-summary-output{border:1px solid rgba(61,128,99,.12);border-radius:18px;padding:16px 18px;color:#304138;background:rgba(255,255,255,.72);font-size:.95rem;line-height:1.78}.stats-summary-markdown{display:grid;gap:10px}.stats-summary-markdown h4{margin:8px 0 0;color:#244c3b;font-size:.98rem;font-weight:900}.stats-summary-markdown h4:first-child{margin-top:0}.stats-summary-markdown p{margin:0}.stats-summary-markdown ol,.stats-summary-markdown ul{display:grid;gap:8px;margin:0;padding-left:1.2rem}.stats-summary-markdown li{padding-left:2px}.stats-summary-markdown strong{color:#1f5b43;font-weight:900}@media (max-width:760px){.stats-ai-summary-head,.stats-summary-actions{display:grid;justify-items:stretch;min-width:0}.stats-ai-summary-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-review-boundary{align-items:flex-start;flex-direction:column}}.avatar{overflow:hidden}.avatar img{display:block;width:100%;height:100%;object-fit:cover}.membership-badge{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;border:1px solid rgba(61,128,99,.18);border-radius:999px;padding:8px 12px;color:#6f786f;background:rgba(255,255,255,.72);font-size:.84rem;font-weight:850;white-space:nowrap}.membership-badge.active{color:#25543f;border-color:rgba(61,128,99,.34);background:rgba(221,236,226,.92)}@media (max-width:720px){.redeem-status-row{flex-direction:column}.membership-badge{white-space:normal}.pro-group-card{grid-template-columns:1fr;justify-items:start}}.stats-page-view .legacy-stats-grid>.chart-wide:first-child{grid-column:1/-1!important;min-height:340px!important}.stats-page-view .legacy-stats-grid{grid-template-columns:minmax(0,1.42fr) minmax(340px,.76fr)!important;align-items:stretch!important;gap:20px!important}.stats-page-view .legacy-stats-grid>.chart-card{grid-column:auto!important}.stats-page-view .legacy-stats-grid>.chart-wide{grid-column:1!important;min-height:356px!important}.stats-page-view .todo-focus-chart{min-height:356px!important}.stats-page-view .stats-side-column{display:grid!important;grid-column:1/-1!important;grid-row:auto!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:none!important;align-self:stretch!important;gap:20px!important;height:auto!important}.stats-page-view .stats-side-column .stats-mini-panel{display:grid!important;min-height:0!important;align-content:start!important}.stats-page-view .stats-side-column .stats-mini-panel:last-child{align-content:center!important}.stats-page-view .accuracy-card,.stats-page-view .legacy-stats-grid>.accuracy-card{grid-column:1!important;min-height:312px!important}.stats-page-view .heatmap-card,.stats-page-view .legacy-stats-grid>.heatmap-card{grid-column:2!important;min-height:312px!important}.stats-page-view .accuracy-card .bar-chart{align-content:center!important;min-height:178px!important}.stats-page-view .accuracy-card .bar-chart div:not(.empty-card){grid-template-columns:minmax(118px,.62fr) minmax(180px,1.42fr) 48px!important;gap:16px!important}.stats-page-view .heatmap-card .heatmap{grid-auto-columns:16px!important;width:fit-content!important;min-height:140px!important;margin-top:16px!important;padding:0!important;overflow:visible!important}.stats-page-view .heatmap-card .heatmap-week{grid-template-rows:repeat(7,16px)!important;width:16px!important;gap:5px!important}.stats-page-view .heatmap-card .heatmap-day{width:16px!important;height:16px!important;min-height:16px!important;border-radius:5px!important}.stats-page-view .inspiration-preference-card{overflow:hidden!important;padding:clamp(28px,2.4vw,36px)!important;background:radial-gradient(circle at 7% 24%,rgba(61,128,99,.11),transparent 24%),linear-gradient(135deg,rgba(255,253,248,.98),rgba(247,244,236,.92))!important}.stats-page-view .inspiration-preference-card,.stats-page-view .legacy-stats-grid>.inspiration-preference-card{grid-column:1/-1!important;min-height:328px!important}.stats-page-view .inspiration-preference-card .chart-title{align-items:flex-start!important}.stats-page-view .inspiration-preference-card .chart-title h3{font-size:clamp(28px,2.6vw,40px)!important}.stats-page-view .insight-preference-layout{display:grid;grid-template-columns:minmax(220px,.44fr) minmax(0,1fr);align-items:stretch;gap:clamp(22px,3vw,44px);margin-top:10px}.stats-page-view .insight-preference-total{position:relative;display:grid;align-content:center;gap:12px;min-height:168px;padding-left:22px}.stats-page-view .insight-preference-total:before{position:absolute;inset:12px auto 12px 0;width:6px;border-radius:999px;background:linear-gradient(180deg,#2f6f55,#d19a3e,#607e9c);content:""}.stats-page-view .insight-preference-total small{color:var(--muted);font-size:13px;font-weight:850}.stats-page-view .insight-preference-total strong{color:#21352c;font-family:var(--serif);font-size:clamp(30px,3vw,48px);line-height:1.1}.stats-page-view .insight-preference-total span{max-width:280px;color:#6f786f;font-size:14px;font-weight:720;line-height:1.7}.stats-page-view .insight-preference-bars{display:grid;align-content:center;gap:18px;min-width:0}.stats-page-view .insight-preference-row{display:grid;grid-template-columns:minmax(120px,.24fr) minmax(0,1fr);align-items:center;gap:18px}.stats-page-view .insight-preference-row span{display:grid;gap:4px;min-width:0}.stats-page-view .insight-preference-row b{overflow:hidden;color:#33443b;font-size:15px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.stats-page-view .insight-preference-row em{color:#7b847d;font-size:12px;font-style:normal;font-weight:760}.stats-page-view .insight-preference-row>i{display:block;height:10px;overflow:hidden;border-radius:999px;background:rgba(34,40,35,.07)}.stats-page-view .insight-preference-row>i b{display:block;height:100%;min-width:8px;border-radius:inherit;background:linear-gradient(90deg,#2f6f55,#3f8a68);transition:width .62s cubic-bezier(.16,1,.3,1)}.stats-page-view .insight-preference-row:nth-child(2)>i b{background:linear-gradient(90deg,#d19a3e,#d8ad58)}.stats-page-view .insight-preference-row:nth-child(3)>i b{background:linear-gradient(90deg,#607e9c,#7394ad)}.stats-page-view .insight-preference-row:nth-child(n+4)>i b{background:linear-gradient(90deg,#7b8b6f,#9eaa88)}.stats-page-view .insight-preference-bars p{margin:0;color:var(--muted);font-weight:760;line-height:1.8}@media (max-width:1180px){.stats-page-view .legacy-stats-grid{grid-template-columns:1fr!important}.stats-page-view .accuracy-card,.stats-page-view .heatmap-card,.stats-page-view .inspiration-preference-card,.stats-page-view .legacy-stats-grid>.chart-wide,.stats-page-view .stats-side-column{grid-column:1!important}.stats-page-view .stats-side-column{grid-row:auto!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:none!important}}@media (max-width:760px){.stats-page-view .accuracy-card,.stats-page-view .heatmap-card,.stats-page-view .inspiration-preference-card,.stats-page-view .legacy-stats-grid>.chart-wide,.stats-page-view .todo-focus-chart{min-height:auto!important}.stats-page-view .insight-preference-layout,.stats-page-view .insight-preference-row,.stats-page-view .stats-side-column{grid-template-columns:1fr!important}.stats-page-view .heatmap-card .heatmap{overflow-x:auto!important;width:min(100%,252px)!important}.stats-page-view .inspiration-preference-card .chart-title h3{font-size:27px!important}}.brand-mark.brand-logo{padding:0!important;overflow:hidden!important;color:transparent!important;background:#fff6df!important}.brand-mark.brand-logo img{display:block;width:100%;height:100%;object-fit:cover}.password-setup-overlay{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 38%,rgba(255,255,255,.38),transparent 34%),rgba(28,32,27,.28);backdrop-filter:blur(16px) saturate(1.04);animation:passwordSetupFadeIn .18s ease-out}.password-setup-dialog{position:relative;width:min(100%,480px);padding:30px;border:1px solid rgba(255,255,255,.78);border-radius:28px;background:linear-gradient(145deg,rgba(255,253,248,.98),rgba(245,240,228,.96)),#fffdf8;box-shadow:0 28px 90px rgba(45,48,38,.24);animation:passwordSetupRise .24s cubic-bezier(.2,.82,.18,1)}.password-setup-close{position:absolute;top:18px;right:18px;display:inline-grid;width:36px;height:36px;place-items:center;border:1px solid rgba(64,81,66,.12);border-radius:999px;color:#65736a;background:rgba(255,255,255,.64)}.password-setup-icon{display:inline-grid;width:52px;height:52px;margin-bottom:14px;place-items:center;border-radius:18px;color:#fffdf8;background:linear-gradient(135deg,#245b49,#7b9a6f);box-shadow:0 14px 32px rgba(36,91,73,.22)}.password-setup-dialog h2{margin:0;color:#22271f;font-size:28px;line-height:1.18}.password-setup-copy{margin:10px 0 22px;color:#697066;font-weight:650;line-height:1.75}.password-setup-dialog .field-label{margin-top:14px}.password-setup-actions{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:12px;margin-top:20px}.password-setup-actions .primary-button,.password-setup-actions .secondary-button{min-height:48px}@keyframes passwordSetupFadeIn{0%{opacity:0}}@keyframes passwordSetupRise{0%{opacity:0;transform:translateY(12px) scale(.985)}}@media (max-width:560px){.password-setup-overlay{align-items:end;padding:14px}.password-setup-dialog{padding:24px 20px 20px;border-radius:24px}.password-setup-dialog h2{font-size:24px}.password-setup-actions{grid-template-columns:1fr}}.admin-page-view{display:grid;gap:18px}.admin-auth-card,.admin-empty-card,.admin-hero{position:relative;overflow:hidden;border:1px solid rgba(42,64,52,.1);border-radius:8px;background:rgba(255,253,248,.9);box-shadow:0 10px 28px rgba(38,47,39,.06)}.admin-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:26px}.admin-hero:after{content:none}.admin-kicker{display:inline-flex;align-items:center;gap:6px;color:#6d7a70;font-size:12px;font-weight:860;letter-spacing:.12em;text-transform:uppercase}:root{--motion-press:120ms;--motion-control:180ms;--motion-page:220ms;--motion-dialog:220ms;--motion-ease:cubic-bezier(0.2,0.8,0.2,1)}.app-view-frame{min-width:0}@media (prefers-reduced-motion:no-preference){.app-view-frame{animation:app-shell-view-enter var(--motion-page) var(--motion-ease) both}.app-view-frame>.dashboard,.app-view-frame>.page-view,.app-view-frame>.view.active{animation:none}.app-shell :is(.install-guide-card,.pro-bonus-dialog,.password-setup-dialog,.entry-modal-card,.mistake-compose-side){animation:app-shell-dialog-enter var(--motion-dialog) var(--motion-ease) both}}@keyframes app-shell-view-enter{0%{opacity:.86;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes app-shell-dialog-enter{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.app-shell :is(.primary-button,.secondary-button,.ghost-button,.danger-button,.icon-button,.round-add,.reward-open-button){transition-duration:var(--motion-control);transition-timing-function:var(--motion-ease)}.app-shell :is(.primary-button,.secondary-button,.ghost-button,.danger-button,.icon-button,.round-add,.reward-open-button):active:not(:disabled){transition-duration:var(--motion-press)}@media (hover:hover) and (pointer:fine){.app-shell :is(.primary-button,.secondary-button,.ghost-button,.danger-button,.icon-button,.round-add,.reward-open-button):hover:not(:disabled){transform:translateY(-1px)}}.app-shell :is(button,a,input,select,textarea):focus-visible{outline:3px solid color-mix(in srgb,var(--green) 30%,transparent);outline-offset:3px}@media (prefers-reduced-motion:reduce){.app-shell :is(.install-guide-card,.pro-bonus-dialog,.password-setup-dialog,.entry-modal-card,.mistake-compose-side),.app-view-frame{animation:none!important}}.admin-auth-card h2,.admin-empty-card h2,.admin-hero h2{margin:8px 0;color:#202820;font-family:var(--serif);font-size:30px;line-height:1.12}.admin-auth-card p,.admin-empty-card p,.admin-hero p{max-width:760px;margin:0;color:#68746b;font-weight:680;line-height:1.75}.admin-hero .secondary-button{position:relative;z-index:1;min-width:132px;justify-content:center;white-space:nowrap}.spinning{animation:adminSpin .9s linear infinite}@keyframes adminSpin{to{transform:rotate(1turn)}}.admin-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.admin-summary-card{display:grid;gap:8px;min-height:108px;padding:16px;border:1px solid rgba(42,64,52,.09);border-radius:8px;background:rgba(255,253,248,.82);box-shadow:0 14px 30px rgba(38,47,39,.055)}.admin-summary-card svg{color:#2f5b4b}.admin-summary-card span{color:#788178;font-size:13px;font-weight:780}.admin-summary-card strong{color:#202820;font-size:32px;line-height:1}.admin-operations-panel{margin:18px 0 22px}.admin-operations-panel .admin-mini-pill.is-ready{color:#2f6c4c;background:rgba(47,108,76,.11)}.admin-operations-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0 18px}.admin-operations-metrics>div{display:grid;gap:3px;min-width:0;padding:13px 14px;border:1px solid rgba(47,91,75,.1);border-radius:12px;background:rgba(247,245,237,.72)}.admin-operations-columns strong,.admin-operations-metrics span{color:rgba(48,68,56,.72);font-size:11px;font-weight:700}.admin-operations-metrics strong{color:var(--ink,#222823);font-size:20px;line-height:1.1}.admin-operations-metrics small{color:rgba(74,87,77,.7);font-size:11px}.admin-operations-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.admin-operations-columns>div{min-width:0}.admin-operations-columns p{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:9px 0 0;color:rgba(48,68,56,.84);font-size:12px}.admin-operations-columns p span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-operations-columns p em{flex:0 0 auto;color:rgba(74,87,77,.68);font-size:11px;font-style:normal}html[data-app-theme=dark] .admin-operations-metrics>div{border-color:rgba(176,207,184,.16);background:rgba(31,42,34,.7)}html[data-app-theme=dark] .admin-operations-columns p,html[data-app-theme=dark] .admin-operations-metrics strong{color:#f1eee5}html[data-app-theme=dark] .admin-operations-columns p em,html[data-app-theme=dark] .admin-operations-columns strong,html[data-app-theme=dark] .admin-operations-metrics small,html[data-app-theme=dark] .admin-operations-metrics span{color:rgba(226,220,206,.7)}@media (max-width:820px){.admin-operations-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-operations-columns{grid-template-columns:1fr;gap:14px}}.admin-workbench{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}.admin-panel{padding:20px;border-color:rgba(42,64,52,.09);border-radius:8px;background:rgba(255,253,248,.9);box-shadow:0 10px 28px rgba(39,49,42,.055)}.admin-panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.admin-panel-head h3{margin:4px 0 0;color:#202820;font-size:22px;line-height:1.18}.admin-search{display:flex;align-items:center;width:min(100%,300px);min-height:42px;gap:8px;padding:0 12px;border:1px solid rgba(42,64,52,.11);border-radius:999px;color:#718074;background:rgba(255,255,255,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}.admin-search input{width:100%;min-width:0;border:0;outline:0;color:#253129;background:transparent;font:inherit;font-size:14px;font-weight:720}.admin-user-list{display:grid;gap:12px}.admin-user-row{display:grid;grid-template-columns:minmax(210px,1.1fr) minmax(120px,.55fr) minmax(220px,.85fr);align-items:center;gap:14px;min-height:84px;padding:14px;border:1px solid rgba(42,64,52,.08);border-radius:8px;background:rgba(255,255,255,.58);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}.admin-user-row:hover{border-color:rgba(47,91,75,.2);background:rgba(255,255,255,.82);box-shadow:0 16px 36px rgba(39,49,42,.08);transform:translateY(-2px)}.admin-user-main{display:flex;align-items:center;min-width:0;gap:12px}.admin-user-avatar{display:grid;flex:0 0 auto;width:46px;height:46px;place-items:center;overflow:hidden;border-radius:16px;color:#fffaf0;background:linear-gradient(135deg,#2f5b4b,#879d77);font-family:var(--serif);font-size:20px;font-weight:900}.admin-user-avatar img{display:block;width:100%;height:100%;object-fit:cover}.admin-user-main span:last-child,.admin-user-status{display:grid;min-width:0;gap:5px}.admin-user-main strong{overflow:hidden;color:#222923;font-size:15px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.admin-code-row small,.admin-generated-codes p,.admin-muted,.admin-user-main small,.admin-user-status small{color:#778279;font-size:12px;font-weight:700;line-height:1.55}.admin-invite-chip{display:inline-flex;width:fit-content;min-height:28px;align-items:center;padding:0 10px;border-radius:999px;color:#7d7460;background:rgba(198,185,150,.18);font-size:12px;font-weight:900}.admin-invite-chip.active{color:#f9f5e9;background:linear-gradient(135deg,#294e42,#d0a24f);box-shadow:0 8px 18px rgba(47,91,75,.18)}.admin-user-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.admin-user-metrics span{display:flex;min-height:30px;align-items:center;justify-content:space-between;gap:8px;padding:0 10px;border-radius:10px;color:#69756d;background:rgba(242,239,228,.72);font-size:12px;font-weight:760}.admin-user-metrics b{color:#233128;font-size:13px}.admin-user-actions{display:grid;grid-template-columns:repeat(4,minmax(58px,1fr));gap:8px}.admin-user-actions .primary-button,.admin-user-actions .secondary-button{min-height:34px;padding:0 10px;justify-content:center;border-radius:6px;font-size:12px;white-space:nowrap}.admin-side-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-history-panel,.admin-tools-panel{display:grid;gap:14px}.admin-history-panel .admin-panel-head,.admin-tools-panel .admin-panel-head{margin-bottom:0}.admin-tool-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:5px;border:1px solid rgba(42,64,52,.09);border-radius:8px;background:rgba(241,238,228,.62)}.admin-tool-tabs button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:8px;border:0;border-radius:7px;color:#66736a;background:transparent;font-size:13px;font-weight:900;cursor:pointer;transition:color .16s ease,background .16s ease,box-shadow .16s ease}.admin-tool-tabs button.active{color:#233128;background:rgba(255,255,255,.92);box-shadow:0 8px 18px rgba(39,49,42,.08)}.admin-tool-form{display:grid;gap:13px}.admin-tool-form .field-label{margin:0}.admin-tool-grid{display:grid;grid-template-columns:minmax(0,.54fr) minmax(0,1fr);gap:10px}.admin-code-form{display:grid;gap:13px}.admin-code-form .admin-panel-head{margin-bottom:0}.admin-code-form .field-label{margin:0}.admin-code-form .primary-button{min-height:46px;justify-content:center}.admin-announcement-form{display:grid;gap:13px}.admin-announcement-form .admin-panel-head{margin-bottom:0}.admin-announcement-form .field-label{margin:0}.admin-announcement-form textarea{min-height:126px;resize:vertical}.admin-announcement-form .primary-button{min-height:46px;justify-content:center}.admin-announcement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:end}.admin-checkbox-line{display:flex;min-height:48px;align-items:center;gap:10px;padding:0 12px;border:1px solid rgba(42,64,52,.1);border-radius:14px;color:#445046;background:rgba(255,255,255,.62);font-size:13px;font-weight:820}.admin-checkbox-line input{width:17px;height:17px;accent-color:#2f5b4b}.admin-announcements-list{display:grid;gap:12px}.admin-announcement-list{display:grid;gap:10px}.admin-announcement-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 12px;border:1px solid rgba(42,64,52,.07);border-radius:14px;background:rgba(255,255,255,.6)}.admin-announcement-tone{display:inline-flex;min-width:42px;min-height:28px;align-items:center;justify-content:center;border-radius:999px;color:#2f5b4b;background:rgba(47,91,75,.1);font-size:12px;font-weight:900}.admin-announcement-tone.tone-success{color:#24523f;background:rgba(47,128,87,.12)}.admin-announcement-tone.tone-warning{color:#8b5f19;background:rgba(213,151,45,.14)}.admin-announcement-tone.tone-error{color:#9a4036;background:rgba(199,80,65,.12)}.admin-announcement-copy{display:grid;min-width:0;gap:3px}.admin-announcement-copy strong{overflow:hidden;color:#28332c;font-size:13px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.admin-announcement-copy small{color:#778279;font-size:12px;font-weight:700}.admin-announcement-row .secondary-button{min-height:32px;padding:0 11px;border-radius:999px;font-size:12px}.admin-announcement-row .secondary-button.active{color:#8a463d;border-color:rgba(199,80,65,.18);background:rgba(199,80,65,.08)}.admin-history-grid,.admin-history-section{display:grid;gap:12px}.admin-history-title{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-height:32px;color:#2f5b4b}.admin-history-title strong{color:#263129;font-size:13px;font-weight:900}.admin-history-title span{display:inline-flex;min-width:26px;min-height:26px;align-items:center;justify-content:center;border-radius:999px;color:#6f7b72;background:rgba(47,91,75,.08);font-size:12px;font-weight:900}.admin-generated-codes{display:grid;gap:12px}.admin-generated-codes textarea{width:100%;min-height:168px;resize:vertical;border:1px solid rgba(42,64,52,.12);border-radius:16px;padding:14px;color:#243128;background:rgba(255,255,255,.78);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.75}.admin-mini-pill{display:inline-flex;min-width:30px;min-height:30px;align-items:center;justify-content:center;border-radius:999px;color:#2f5b4b;background:rgba(47,91,75,.1);font-size:12px;font-weight:900}.admin-code-list{display:grid;gap:10px}.admin-code-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:14px;background:rgba(255,255,255,.58)}.admin-code-row span{display:grid;min-width:0;gap:3px}.admin-code-row strong{color:#28332c;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.admin-code-row em{display:inline-flex;min-width:42px;min-height:28px;align-items:center;justify-content:center;border-radius:999px;color:#8b6b48;background:rgba(197,142,61,.15);font-size:12px;font-style:normal;font-weight:900}.admin-code-row em.active{color:#24523f;background:rgba(47,91,75,.13)}.admin-auth-card{display:grid;grid-template-columns:minmax(0,.8fr) minmax(320px,.65fr);gap:24px;align-items:start;padding:28px}.admin-empty-card{display:grid;place-items:center;min-height:320px;padding:34px;text-align:center}.admin-empty-card svg{color:#2f5b4b}.admin-empty-list{display:grid;min-height:160px;place-items:center;border:1px dashed rgba(47,91,75,.16);border-radius:8px;color:#758078;background:rgba(255,255,255,.42);font-weight:750}@media (max-width:1280px){.admin-workbench{grid-template-columns:1fr}.admin-side-column{grid-template-columns:minmax(0,.92fr) minmax(320px,.76fr)}.admin-generated-codes{grid-column:1/-1}}@media (max-width:1060px){.admin-user-row{grid-template-columns:minmax(0,1fr);align-items:stretch}.admin-user-actions,.admin-user-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:760px){.admin-page-view{gap:14px}.admin-auth-card,.admin-hero{grid-template-columns:1fr;flex-direction:column;align-items:stretch;padding:20px;border-radius:8px}.admin-hero{display:grid}.admin-summary-grid,.admin-user-actions,.admin-user-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-side-column,.admin-tool-grid{grid-template-columns:1fr}.admin-panel{padding:16px;border-radius:8px}.admin-panel-head{display:grid}.admin-search{width:100%}.admin-announcement-grid,.admin-announcement-row{grid-template-columns:1fr}.admin-announcement-row .secondary-button{width:100%;justify-content:center}.admin-user-actions .primary-button{grid-column:span 2}}@media (max-width:460px){.admin-summary-grid,.admin-user-actions,.admin-user-metrics{grid-template-columns:1fr}.admin-user-actions .primary-button{grid-column:auto}}.timer-page-view .journey-hud{left:clamp(14px,1.7vw,20px);top:clamp(14px,1.7vw,20px);min-width:0;width:min(25vw,240px);max-width:calc(100% - 40px);padding:clamp(12px,1.25vw,15px) clamp(14px,1.55vw,18px);border-radius:clamp(18px,1.8vw,22px)}.timer-page-view .journey-hud strong{font-size:clamp(38px,3.45vw,50px);line-height:.98}.timer-page-view .journey-hud small,.timer-page-view .journey-hud span{font-size:clamp(12px,1vw,14px)}@media (min-width:861px) and (max-width:1280px){.timer-page-view .journey-hud{width:220px;max-width:30%;padding:12px 15px}.timer-page-view .journey-hud strong{font-size:42px}}@media (max-width:760px){.timer-page-view .journey-hud{width:min(220px,calc(100% - 32px));max-width:calc(100% - 32px);padding:12px 14px}.timer-page-view .journey-hud strong{font-size:clamp(38px,11vw,48px)}}.sailing-css-fallback{z-index:0;opacity:1;transition:opacity .48s cubic-bezier(.2,0,0,1)}.sailing-css-fallback,.sailing-scene-3d{position:absolute;inset:0;overflow:hidden}.sailing-scene-3d{z-index:1;opacity:0;pointer-events:none;transition:opacity .56s cubic-bezier(.2,0,0,1)}.sailing-scene-3d.is-ready{opacity:1}.sailing-scene-3d.is-ready+.sailing-css-fallback{opacity:0}.sailing-scene-3d canvas{display:block;width:100%!important;height:100%!important}.miniature-sailing-scene{background:#72bdcf}.timer-page-view .timer-theme-sailing .focus-journey{background:#79bdca}.timer-page-view .timer-theme-sailing .focus-journey.status-paused .sailing-css-fallback .journey-boat,.timer-page-view .timer-theme-sailing .focus-journey.status-paused .sailing-css-fallback .sea-layer{animation-play-state:paused}.sailing-css-fallback.sailing-fallback-stage-raft .boat-flag,.sailing-css-fallback.sailing-fallback-stage-raft .boat-mast,.sailing-css-fallback.sailing-fallback-stage-raft .boat-sail,.sailing-css-fallback.sailing-fallback-stage-reinforced-raft .boat-flag,.sailing-css-fallback.sailing-fallback-stage-reinforced-raft .boat-mast,.sailing-css-fallback.sailing-fallback-stage-reinforced-raft .boat-sail{display:none}.sailing-css-fallback.sailing-fallback-stage-raft .journey-boat,.sailing-css-fallback.sailing-fallback-stage-reinforced-raft .journey-boat{bottom:106px;width:102px;height:48px}.sailing-css-fallback.sailing-fallback-stage-raft .boat-hull,.sailing-css-fallback.sailing-fallback-stage-reinforced-raft .boat-hull{left:15px;bottom:4px;width:76px;height:24px;border-radius:6px;background:repeating-linear-gradient(90deg,#8d5937 0 17px,#be7c47 17px 24px),#8d5937;box-shadow:0 7px 0 -4px #6f432c,0 -7px 0 -4px #a86b3e}.sailing-css-fallback.sailing-fallback-stage-reinforced-raft .boat-hull{box-shadow:0 7px 0 -4px #6f432c,0 -7px 0 -4px #a86b3e,16px -16px 0 -8px #d2ad6d}.sailing-css-fallback.sailing-fallback-stage-skiff .boat-sail{display:none}.timer-page-view .timer-theme-sailing .journey-next-gift{top:22px;right:24px;bottom:auto;width:auto;max-width:min(300px,calc(100% - 300px))}.sailing-voyage-panel{position:absolute;right:24px;bottom:22px;z-index:6;display:grid;width:min(230px,calc(100% - 48px));gap:10px;padding:12px 14px;border:1px solid rgba(245,235,210,.34);border-radius:17px;color:#fff9e9;background:rgba(15,45,57,.62);box-shadow:0 15px 36px rgba(11,36,47,.22);backdrop-filter:blur(12px)}.sailing-voyage-panel>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.sailing-voyage-panel>div>span{color:rgba(234,246,241,.72);font-size:10px;font-weight:800}.sailing-voyage-panel strong{color:#fff5d7;font-size:13px;line-height:1.25}.sailing-voyage-panel ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none}.sailing-voyage-panel li{display:grid;grid-template-columns:7px minmax(0,1fr);align-items:center;gap:5px;min-width:0;color:rgba(232,245,239,.6);font-size:10px;font-weight:750;white-space:nowrap}.sailing-voyage-panel li i{display:block;width:6px;height:6px;border:1px solid rgba(241,231,197,.56);border-radius:50%;background:rgba(15,45,57,.48)}.sailing-voyage-panel li.collected{color:#fff1c5}.sailing-voyage-panel li.collected i{border-color:#f5c96c;background:#f5c96c;box-shadow:0 0 10px rgba(245,201,108,.8);animation:sailing-node-pop .42s cubic-bezier(.16,1,.3,1) both}.sailing-salvage-toast{position:absolute;left:24px;bottom:22px;z-index:9;display:grid;grid-template-columns:auto minmax(0,1fr);width:min(302px,calc(100% - 48px));gap:10px;padding:12px 14px;border:1px solid rgba(255,236,176,.58);border-radius:17px;color:#fff8e3;background:rgba(36,59,61,.78);box-shadow:0 18px 45px rgba(10,34,41,.34);backdrop-filter:blur(14px);animation:sailing-salvage-in .52s cubic-bezier(.05,.7,.1,1) both}.sailing-salvage-toast>span{display:grid;width:34px;height:34px;place-items:center;border-radius:12px;color:#6b4920;background:#f0bf62;font-size:14px;font-weight:900;animation:sailing-salvage-icon .52s cubic-bezier(.16,1,.3,1) both}.sailing-salvage-toast p,.sailing-salvage-toast small,.sailing-salvage-toast strong{display:block}.sailing-salvage-toast small{color:rgba(255,239,191,.72);font-size:10px;font-weight:800}.sailing-salvage-toast strong{margin-top:1px;font-size:14px}.sailing-salvage-toast p{margin:3px 0 0;color:rgba(246,250,240,.82);font-size:11px;line-height:1.45}@keyframes sailing-node-pop{0%{transform:scale(.4);opacity:0}72%{transform:scale(1.1);opacity:1}to{transform:scale(1);opacity:1}}@keyframes sailing-salvage-in{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes sailing-salvage-icon{0%{transform:rotate(-18deg) scale(.56)}to{transform:rotate(0) scale(1)}}@media (prefers-reduced-motion:reduce){.sailing-css-fallback,.sailing-salvage-toast,.sailing-salvage-toast>span,.sailing-scene-3d,.sailing-voyage-panel li.collected i{transition:none;animation:none}}@media (max-width:760px){.timer-page-view .side-theme-picker>div{grid-template-columns:1fr}.timer-page-view .side-theme-picker button{min-height:62px;grid-template-columns:34px minmax(0,1fr)}.timer-page-view .side-theme-picker button small{grid-column:2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sailing-voyage-panel{right:14px;bottom:14px;width:min(206px,calc(100% - 28px));padding:10px 11px}.sailing-voyage-panel ol{gap:4px}.sailing-voyage-panel li{gap:4px;font-size:9px}.sailing-salvage-toast{left:14px;bottom:14px;width:min(278px,calc(100% - 28px))}.timer-page-view .timer-theme-sailing .journey-next-gift{top:auto;right:14px;bottom:94px;max-width:min(260px,calc(100% - 28px));padding:9px 12px;font-size:12px;line-height:1.45;white-space:normal}}.recurring-todos-card{display:grid;gap:16px;padding:22px;border:1px solid rgba(255,253,248,.76);background:radial-gradient(circle at 88% 8%,rgba(218,234,225,.5),transparent 28%),rgba(255,253,248,.94)}.recurring-template-list{display:grid;gap:10px}.recurring-template-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 16px;border:1px solid rgba(47,91,75,.1);border-radius:18px;background:rgba(255,255,255,.56);box-shadow:0 12px 24px rgba(40,45,38,.04)}.recurring-template-row.muted{opacity:.58}.recurring-template-row strong{display:block;color:var(--ink);font-size:15px}.recurring-template-row small{display:block;margin-top:4px;color:var(--muted);font-weight:700}.recurring-switch-field{align-content:end}.toggle-button{min-height:48px;border:1px solid rgba(47,91,75,.14);border-radius:16px;color:var(--muted);background:rgba(255,255,255,.62);font-weight:850;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease}.toggle-button:hover{transform:translateY(-1px);border-color:rgba(47,91,75,.28)}.toggle-button.active{color:#f8fff8;border-color:rgba(47,91,75,.34);background:linear-gradient(135deg,#2f5b4b,#4f866f);box-shadow:0 12px 22px rgba(47,91,75,.16)}.weekday-picker{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;padding:10px;border:1px solid rgba(47,91,75,.1);border-radius:18px;background:rgba(255,255,255,.5)}.weekday-picker button{width:38px;height:38px;border:1px solid rgba(47,91,75,.12);border-radius:13px;color:var(--muted);background:rgba(255,253,248,.86);font-weight:900;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease}.weekday-picker button:hover{transform:translateY(-1px);border-color:rgba(47,91,75,.28)}.weekday-picker button.active{color:var(--green-deep);border-color:rgba(47,91,75,.26);background:rgba(220,235,226,.9)}@media (max-width:760px){.recurring-template-row{grid-template-columns:1fr;align-items:stretch}.recurring-template-row .row-actions{justify-content:flex-start}}.voice-text-control{display:inline-grid;gap:6px;min-width:0}.voice-text-control>small{max-width:min(360px,70vw);overflow:hidden;color:color-mix(in srgb,var(--green-deep) 62%,var(--muted));font-size:12px;font-weight:800;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.voice-text-button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:7px;padding:0 15px;border:1px solid rgba(47,91,75,.14);border-radius:15px;color:var(--green-deep);background:linear-gradient(180deg,rgba(255,253,248,.94),rgba(246,250,244,.84));font-weight:850;cursor:pointer;box-shadow:0 10px 20px rgba(40,45,38,.045);transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.voice-text-button:hover:not(:disabled){transform:translateY(-1px);border-color:rgba(47,91,75,.28);box-shadow:0 14px 26px rgba(40,45,38,.07)}.voice-text-button.active{color:#fffaf0;border-color:rgba(194,88,64,.28);background:linear-gradient(135deg,#b65f4d,#d29160)}.voice-text-button:disabled{cursor:not-allowed;opacity:.62}.voice-textarea-field{display:grid;gap:8px;min-width:0}.voice-textarea-field textarea{width:100%;min-width:0}.voice-textarea-field .compact-voice-button{justify-self:start;min-height:38px;padding-inline:12px;border-radius:13px;font-size:13px}@media (max-width:760px){.voice-text-control{width:100%}.voice-text-control>small{max-width:100%}.ai-composer-footer .voice-text-button{width:100%}}.topbar-actions{align-items:center}.topbar-actions>a,.topbar-actions>button{box-sizing:border-box;flex:0 0 auto}.topbar-actions .icon-button,.topbar-actions .pwa-install-button,.topbar-actions .sound-button,.topbar-actions .theme-toggle-button{display:inline-flex!important;width:46px!important;min-width:46px!important;max-width:46px!important;height:46px!important;min-height:46px!important;max-height:46px!important;align-items:center!important;justify-content:center!important;padding:0!important;border-radius:16px!important;line-height:1!important}.topbar-actions .pwa-install-button svg,.topbar-actions .sound-button svg,.topbar-actions .theme-toggle-button svg{display:block;flex:0 0 18px;width:18px;height:18px}.topbar-actions .sound-button:after{right:8px;bottom:8px;width:6px;height:6px}.topbar-actions .primary-button,.topbar-actions .topbar-sync-button{display:inline-flex!important;min-height:46px!important;height:46px!important;align-items:center!important;justify-content:center!important;border-radius:18px!important;line-height:1!important}.topbar-notice.action-toast{position:fixed!important;top:24px!important;right:clamp(18px,5vw,72px)!important;z-index:96!important;width:fit-content!important;max-width:min(360px,calc(100vw - 32px));min-height:44px;margin:0!important;padding:0 18px;border-radius:22px!important;box-shadow:0 18px 44px rgba(31,70,57,.16),inset 0 1px 0 rgba(255,255,255,.65)!important;pointer-events:none}.app-notification-viewport{position:fixed;top:88px;right:clamp(16px,3vw,48px);z-index:120;display:flex;width:min(380px,calc(100vw - 32px));flex-direction:column;gap:10px;pointer-events:none}.app-notification{display:grid;grid-template-columns:34px minmax(0,1fr) 28px;gap:10px;align-items:flex-start;min-height:72px;padding:13px 10px 13px 12px;border:1px solid rgba(39,49,42,.12);border-left:4px solid var(--green);border-radius:8px;color:var(--ink);background:rgba(251,250,246,.95);box-shadow:0 20px 58px rgba(25,44,35,.15),inset 0 1px 0 rgba(255,255,255,.72);backdrop-filter:blur(18px);pointer-events:auto;transform-origin:right center;animation:appNotificationIn .38s cubic-bezier(.16,1,.3,1) both}.app-notification.closing{animation:appNotificationOut .24s ease both}.app-notification.tone-success{border-left-color:var(--green)}.app-notification.tone-info{border-left-color:var(--blue)}.app-notification.tone-warning{border-left-color:var(--amber)}.app-notification.tone-error{border-left-color:var(--coral)}.app-notification-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:8px;color:var(--green-deep);background:var(--green-soft)}.app-notification.tone-info .app-notification-icon{color:var(--blue);background:var(--blue-soft)}.app-notification.tone-warning .app-notification-icon{color:#8d5f16;background:var(--amber-soft)}.app-notification.tone-error .app-notification-icon{color:#9a3f35;background:var(--coral-soft)}.app-notification-copy{display:flex;min-width:0;flex-direction:column;gap:3px;line-height:1.45}.app-notification-copy strong{font-size:13px;font-weight:700}.app-notification-copy span{color:var(--muted);font-size:12px;overflow-wrap:anywhere}.app-notification-action{display:inline-flex;width:fit-content;min-height:30px;align-items:center;justify-content:center;margin-top:7px;border:1px solid rgba(45,97,75,.14);border-radius:8px;padding:6px 10px;color:#fff;background:linear-gradient(135deg,#24533f,#347258);box-shadow:0 10px 20px rgba(35,78,61,.14);font-size:12px;font-weight:800;line-height:1;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.app-notification-action:hover{box-shadow:0 14px 24px rgba(35,78,61,.18);filter:saturate(1.04);transform:translateY(-1px)}.app-notification-close{display:grid;width:28px;height:28px;place-items:center;border:0;border-radius:8px;color:var(--muted);background:transparent;cursor:pointer;transition:.18s ease}.app-notification-close:hover{color:var(--ink);background:rgba(39,49,42,.08)}.site-announcement-overlay{position:fixed;inset:0;z-index:88;display:grid;place-items:center;overflow-y:auto;padding:22px;background:rgba(22,32,28,.3);backdrop-filter:blur(16px) saturate(1.05);animation:siteAnnouncementFadeIn .18s ease-out both;overscroll-behavior:contain}.site-announcement-dialog{position:relative;display:grid;width:min(520px,100%);max-height:min(760px,calc(100dvh - 44px));overflow-y:auto;gap:16px;padding:26px;border:1px solid rgba(255,253,248,.82);border-top:5px solid var(--green);border-radius:8px;color:var(--ink);background:linear-gradient(180deg,rgba(255,253,248,.98),rgba(249,246,238,.96)),var(--paper);box-shadow:0 32px 92px rgba(22,32,28,.24),inset 0 1px 0 rgba(255,255,255,.86);animation:siteAnnouncementRise .18s cubic-bezier(.16,1,.3,1) both;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.site-announcement-dialog.tone-info{border-top-color:var(--blue)}.site-announcement-dialog.tone-success{border-top-color:var(--green)}.site-announcement-dialog.tone-warning{border-top-color:var(--amber)}.site-announcement-dialog.tone-error{border-top-color:var(--coral)}.site-announcement-icon{display:grid;width:52px;height:52px;place-items:center;border-radius:8px;color:#fffdf8;background:linear-gradient(135deg,#245b49,#7b9a6f);box-shadow:0 14px 32px rgba(36,91,73,.22)}.site-announcement-dialog.tone-info .site-announcement-icon{background:linear-gradient(135deg,#376d8f,#7da2b6)}.site-announcement-dialog.tone-warning .site-announcement-icon{background:linear-gradient(135deg,#a66a18,#d4a54f)}.site-announcement-dialog.tone-error .site-announcement-icon{background:linear-gradient(135deg,#923e36,#d07669)}.site-announcement-heading{display:grid;gap:7px}.site-announcement-heading p{margin:0;color:var(--muted);font-size:12px;font-weight:850}.site-announcement-heading h2{margin:0;color:var(--ink);font-family:var(--serif);font-size:clamp(25px,4vw,34px);line-height:1.18}.site-announcement-body{margin:0;color:color-mix(in srgb,var(--ink) 70%,var(--muted));font-size:15px;font-weight:680;line-height:1.78;overflow-wrap:anywhere;white-space:pre-wrap}.site-announcement-actions{position:sticky;bottom:-12px;display:flex;justify-content:flex-end;gap:10px;margin-top:4px;padding-top:8px;padding-bottom:2px;background:linear-gradient(180deg,rgba(249,246,238,0),rgba(249,246,238,.98) 38%)}.site-announcement-actions .primary-button,.site-announcement-actions .secondary-button{min-height:44px;border-radius:8px}.site-announcement-actions .primary-button{text-decoration:none}.pro-bonus-overlay{position:fixed;inset:0;z-index:126;display:grid;place-items:center;padding:22px;background:rgba(22,32,28,.34);backdrop-filter:blur(18px) saturate(1.05);animation:siteAnnouncementFadeIn .18s ease-out both}.pro-bonus-dialog,.pro-bonus-overlay{overflow-y:auto;overscroll-behavior:contain}.pro-bonus-dialog{display:grid;width:min(440px,100%);max-height:min(620px,calc(100dvh - 44px));gap:16px;padding:26px;border:1px solid rgba(255,253,248,.84);border-top:5px solid var(--green);border-radius:8px;color:var(--ink);background:linear-gradient(180deg,rgba(255,253,248,.98),rgba(241,247,239,.96)),var(--paper);box-shadow:0 32px 92px rgba(22,32,28,.24),inset 0 1px 0 rgba(255,255,255,.86);animation:siteAnnouncementRise .18s cubic-bezier(.16,1,.3,1) both;-webkit-overflow-scrolling:touch}.pro-bonus-icon{display:grid;width:56px;height:56px;place-items:center;border-radius:8px;color:#fffdf8;background:linear-gradient(135deg,#245b49,#c9953b);box-shadow:0 16px 34px rgba(36,91,73,.2)}.pro-bonus-copy{display:grid;gap:8px}.pro-bonus-copy p{margin:0;color:var(--muted);font-size:12px;font-weight:850}.pro-bonus-copy h2{margin:0;color:var(--ink);font-family:var(--serif);font-size:clamp(26px,4vw,36px);line-height:1.16}.pro-bonus-copy span{color:color-mix(in srgb,var(--ink) 70%,var(--muted));font-size:15px;font-weight:720;line-height:1.72}.pro-bonus-actions{position:sticky;bottom:-12px;display:flex;justify-content:flex-end;padding-top:8px;padding-bottom:2px;background:linear-gradient(180deg,rgba(241,247,239,0),rgba(241,247,239,.98) 38%)}.pro-bonus-actions .primary-button{min-height:44px;border-radius:8px}@keyframes siteAnnouncementFadeIn{0%{opacity:0}}@keyframes siteAnnouncementRise{0%{opacity:0;transform:translate3d(0,12px,0) scale(.985)}to{opacity:1;transform:translateZ(0) scale(1)}}@keyframes appNotificationIn{0%{opacity:0;transform:translate3d(28px,0,0) scale(.98)}to{opacity:1;transform:translateZ(0) scale(1)}}@keyframes appNotificationOut{0%{opacity:1;transform:translateZ(0) scale(1)}to{opacity:0;transform:translate3d(22px,0,0) scale(.98)}}@media (max-width:760px){.topbar-actions .icon-button,.topbar-actions .pwa-install-button,.topbar-actions .sound-button,.topbar-actions .theme-toggle-button,.topbar-actions .topbar-sync-button{width:46px!important;min-width:46px!important;max-width:46px!important;height:46px!important;min-height:46px!important;max-height:46px!important;border-radius:15px!important}.app-notification-viewport{top:76px;right:12px;left:12px;width:auto}.site-announcement-overlay{align-items:end;padding:14px}.site-announcement-dialog{max-height:calc(100dvh - 28px);padding:22px 18px 18px}.site-announcement-actions{display:grid;grid-template-columns:1fr}.pro-bonus-overlay{align-items:end;padding:14px}.pro-bonus-dialog{max-height:calc(100dvh - 28px);padding:22px 18px 18px}.pro-bonus-actions{display:grid;grid-template-columns:1fr}.topbar-actions .primary-button{min-height:46px!important;height:46px!important;border-radius:15px!important}.topbar-actions .sound-button:after{right:8px;bottom:8px;width:6px;height:6px}}@media (max-width:420px){.topbar-actions .icon-button,.topbar-actions .pwa-install-button,.topbar-actions .sound-button,.topbar-actions .theme-toggle-button,.topbar-actions .topbar-sync-button{width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;max-height:42px!important;border-radius:14px!important}.topbar-actions .primary-button{min-height:42px!important;height:42px!important;border-radius:14px!important}}.brand-mark.brand-logo{display:grid!important;flex:0 0 44px!important;width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;min-height:44px!important;max-height:44px!important;aspect-ratio:1/1!important;place-items:center!important}.auth-gate-brand .brand-mark.brand-logo{flex-basis:52px!important;width:52px!important;min-width:52px!important;max-width:52px!important;height:52px!important;min-height:52px!important;max-height:52px!important;border-radius:18px 18px 18px 6px!important}.brand-mark.brand-logo img{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;height:100%!important;max-height:100%!important;object-fit:cover!important}.install-guide-backdrop{position:fixed;inset:0;z-index:98;display:grid;place-items:center;padding:22px;background:rgba(22,32,28,.28);backdrop-filter:blur(16px) saturate(1.04)}.install-guide-card{display:grid;width:min(520px,100%);gap:18px;padding:24px;border:1px solid rgba(255,253,248,.78);border-radius:24px;background:radial-gradient(circle at 88% 0,rgba(223,236,228,.55),transparent 34%),linear-gradient(180deg,rgba(255,253,248,.98),rgba(250,247,239,.94));box-shadow:0 28px 82px rgba(22,32,28,.22),inset 0 1px 0 rgba(255,255,255,.86);animation:installGuideIn .22s cubic-bezier(.16,1,.3,1) both}.install-guide-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px}.install-guide-head small{color:var(--muted);font-size:12px;font-weight:850}.install-guide-head h3{margin:3px 0 0;color:var(--ink);font-family:var(--serif);font-size:24px;line-height:1.2}.install-guide-steps{display:grid;gap:10px}.install-guide-steps>div{padding:14px 15px;border:1px solid rgba(47,91,75,.08);border-radius:17px;background:rgba(255,255,255,.54)}.install-guide-steps strong{display:block;color:var(--green-deep);font-size:14px}.install-guide-steps p{margin:6px 0 0;color:color-mix(in srgb,var(--ink) 62%,var(--muted));font-size:13px;font-weight:700;line-height:1.62}.install-guide-actions{display:flex;justify-content:flex-end}.install-guide-actions .primary-button{min-height:42px;border-radius:15px}@keyframes installGuideIn{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:560px){.install-guide-backdrop{align-items:end;padding:14px}.install-guide-card{padding:20px;border-radius:22px}}@media (prefers-reduced-motion:reduce){.install-guide-card{animation:none}}.mistake-print-modal{position:fixed;inset:0;z-index:86;display:grid;place-items:center;padding:22px;background:rgba(22,32,28,.32);backdrop-filter:blur(16px) saturate(1.05)}.mistake-print-card{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);width:min(1180px,100%);max-height:calc(100svh - 44px);overflow:hidden;border:1px solid rgba(34,40,35,.1);border-radius:24px;background:var(--paper);box-shadow:0 30px 90px rgba(22,32,28,.22)}.mistake-print-controls{display:grid;align-content:start;gap:18px;padding:22px;border-right:1px solid rgba(34,40,35,.08);background:rgba(246,243,234,.88)}.mistake-print-controls .modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.mistake-print-controls h2{margin:4px 0 0;color:var(--ink);font-size:24px}.mistake-print-options{display:grid;gap:10px}.mistake-print-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mistake-print-mode button{display:grid;gap:4px;min-height:72px;padding:12px;border:1px solid rgba(34,40,35,.1);border-radius:12px;color:var(--ink);text-align:left;background:rgba(255,253,248,.78);cursor:pointer;transition:border-color .16s ease,background-color .16s ease,transform .16s ease}.mistake-print-mode button:hover{border-color:rgba(47,91,75,.34);transform:translateY(-1px)}.mistake-print-mode button.active{border-color:rgba(47,91,75,.58);background:rgba(226,238,230,.88)}.mistake-print-mode strong{font-size:13px}.mistake-print-mode small{color:var(--muted);font-size:10px;line-height:1.45}.mistake-print-options label{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 12px;border:1px solid rgba(34,40,35,.08);border-radius:14px;color:var(--ink);font-weight:850;background:rgba(255,253,248,.78)}.mistake-print-options input{width:18px;height:18px;accent-color:var(--green)}.mistake-print-options label.is-disabled{color:var(--muted);opacity:.58}.mistake-print-sheet{max-height:calc(100svh - 44px);overflow:auto;padding:30px;color:#17201c;background:#f5f2ea}.mistake-print-title{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:24px;align-items:start;margin-bottom:22px;padding:26px 28px;border:1px solid #ded8cc;border-radius:16px;background:#fffefa}.mistake-print-item small,.mistake-print-title span{color:#5f6861;font-weight:850}.mistake-print-title h1{margin:6px 0 0;color:#17201c;font-size:32px;letter-spacing:0}.mistake-print-title dl{display:grid;gap:10px;margin:0}.mistake-print-title dl div{display:grid;grid-template-columns:74px minmax(0,1fr);gap:10px}.mistake-print-title dt{color:#6f766f;font-weight:850}.mistake-print-title dd{margin:0;color:#17201c;font-weight:900}.mistake-print-list{display:grid;gap:18px}.mistake-print-item{display:grid;gap:14px;padding:24px 26px;border:1px solid #ded8cc;border-radius:16px;background:#fffefa;break-inside:avoid;page-break-inside:avoid}.mistake-print-item.page-break{break-after:page;page-break-after:always}.mistake-print-item-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:10px;padding-bottom:12px;border-bottom:1px solid #e6dfd4}.mistake-print-item-head strong{color:#17201c;font-size:20px}.mistake-print-item-head span{color:#5f6861;font-weight:800}.mistake-print-item section{display:grid;gap:8px}.mistake-print-item img{max-width:100%;max-height:360px;object-fit:contain;border:1px solid #e1dacd;border-radius:10px;background:white}.mistake-print-item .markdown-copy{color:#17201c;font-size:15px;font-weight:650;line-height:1.75}.mistake-print-item .markdown-copy p,.mistake-print-item p{margin:0}.mistake-print-answer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mistake-print-answer-grid section{padding:14px;border:1px solid #e1dacd;border-radius:12px;background:#f8f5ee}.mistake-print-retry-space>div{display:grid;gap:14px;padding-top:2px}.mistake-print-retry-space span{display:block;height:18px;border-bottom:1px solid #ded8cc}.mistake-print-empty{display:grid;place-items:center;min-height:260px;border:1px solid #ded8cc;border-radius:16px;color:#5f6861;background:#fffefa}@media (max-width:820px){.mistake-print-modal{align-items:end;padding:12px}.mistake-print-card{grid-template-columns:1fr;max-height:calc(100svh - 24px)}.mistake-print-controls{border-right:0;border-bottom:1px solid rgba(34,40,35,.08)}.mistake-print-sheet{max-height:62svh;padding:18px}.mistake-print-answer-grid,.mistake-print-title{grid-template-columns:1fr}}@media print{@page{margin:14mm;size:A4}.mistake-print-modal{position:static!important;display:block!important;inset:auto!important;padding:0!important;background:white!important;backdrop-filter:none!important}.mistake-print-card{display:block!important;width:auto!important;border:0!important;border-radius:0!important;box-shadow:none!important}.mistake-print-card,.mistake-print-sheet{max-height:none!important;overflow:visible!important;background:white!important}.mistake-print-sheet{padding:0!important}.mistake-print-item,.mistake-print-title{border-color:#d9d2c7!important;background:white!important}.mistake-print-title{grid-template-columns:1fr 1fr!important;padding:0 0 10mm!important;border-width:0 0 1px!important;border-radius:0!important}.mistake-print-title h1{font-size:24pt!important}.mistake-print-item{padding:7mm 0!important;border-width:0 0 1px!important;border-radius:0!important}.mistake-print-item img{max-height:90mm!important}.mistake-print-answer-grid{grid-template-columns:1fr 1fr!important}}