/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-outline-style:solid}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.static{position:static}.start{inset-inline-start:var(--spacing)}.start-1{inset-inline-start:calc(var(--spacing) * 1)}.block{display:block}.contents{display:contents}.hidden{display:none}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}}:root{--ink:#142016;--muted:#657067;--paper:#f3f4ee;--white:#fffef9;--lime:#d9ff61;--line:#dfe3d9;--red:#dd6549}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-geist-sans), "Pretendard", sans-serif;margin:0}body:has(.modal-backdrop,.detail-backdrop,.announcement-center[open]){overflow:hidden}button,input,select,textarea{font:inherit}button{color:inherit}.button-reset{background:0 0;border:0;padding:0}.app-shell{min-height:100vh;padding:0 5vw 74px}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:82px;display:flex}.brand{color:var(--ink);letter-spacing:-.04em;cursor:pointer;align-items:center;gap:10px;font-size:20px;font-weight:780;text-decoration:none;display:inline-flex}.brand-mark,.login-brand span{background:var(--ink);width:34px;height:34px;color:var(--lime);border-radius:10px;place-items:center;font-size:21px;display:grid}.desktop-nav{background:#e8eae3;border-radius:12px;align-items:center;gap:5px;padding:4px;display:flex}.desktop-nav button{color:#657066;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:9px 14px;font-size:12px;font-weight:680}.desktop-nav button.active{background:var(--white);color:var(--ink);box-shadow:0 2px 8px #1e2d1f12}.desktop-nav b{background:var(--lime);border-radius:99px;place-items:center;min-width:18px;height:18px;margin-left:4px;font-size:9px;display:inline-grid}.account-menu{align-items:center;gap:10px;display:flex}.streak{color:#465147;background:#ffffff7a;border:1px solid #cad0c5;border-radius:999px;align-items:center;gap:8px;padding:9px 14px;font-size:12px;font-weight:650;display:flex}.streak i{color:#70aa42;font-size:9px;font-style:normal}.avatar{cursor:pointer;background:#e1e6dc;border:1px solid #c8cec4;border-radius:50%;place-items:center;width:36px;height:36px;font-weight:750;display:grid;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.announcement-bell{cursor:pointer;background:#ffffff7a;border:1px solid #c8cec4;border-radius:12px;place-items:center;width:38px;height:38px;display:grid;position:relative}.announcement-bell:hover{background:var(--white)}.announcement-bell svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.announcement-bell b{border:2px solid var(--paper);background:var(--red);color:#fff;border-radius:99px;place-items:center;min-width:19px;height:19px;padding:0 5px;font-size:9px;line-height:1;display:grid;position:absolute;top:-6px;right:-5px}.sync-strip{background:#fffef9c7;border:1px solid #cfd8c9;border-radius:15px;justify-content:space-between;align-items:center;gap:16px;max-width:1180px;margin:18px auto 0;padding:11px 12px 11px 15px;display:flex;box-shadow:0 7px 24px #2030210a}.sync-strip.partial,.sync-strip.error{background:#fff8ec;border-color:#ebc7ad}.sync-strip.syncing{background:#f5fde7;border-color:#b8d883}.sync-main{text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:11px;min-width:0;padding:0;display:flex}.sync-main>div{min-width:0}.sync-main b,.sync-main small{display:block}.sync-main b{font-size:12px}.sync-main small{color:#758077;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:10px;overflow:hidden}.sync-icon{background:var(--lime);border-radius:10px;flex:none;place-items:center;width:34px;height:34px;font-size:18px;font-weight:750;display:grid}.sync-strip.syncing .sync-icon{animation:1.1s linear infinite spin}.sync-now{cursor:pointer;background:#fff;border:1px solid #c8cfc4;border-radius:9px;flex:none;padding:9px 12px;font-size:10px;font-weight:720}.sync-now:disabled{opacity:.55;cursor:wait}.daily-focus{background:var(--ink);color:#fff;border-radius:19px;grid-template-columns:auto minmax(220px,.8fr) minmax(260px,1.2fr) auto;align-items:center;gap:20px;max-width:1180px;min-height:124px;margin:12px auto 0;padding:18px 19px;display:grid;box-shadow:0 14px 34px #1420161f}.daily-focus-mark{background:var(--lime);width:67px;height:72px;color:var(--ink);text-align:center;border-radius:16px;place-content:center;display:grid;transform:rotate(-2deg)}.daily-focus-mark span{font:760 26px/1 var(--font-geist-mono),monospace;letter-spacing:-.08em}.daily-focus-mark small{font:760 8px var(--font-geist-mono),monospace;letter-spacing:.12em;margin-top:5px}.daily-focus-copy{min-width:0}.daily-focus-copy .eyebrow{color:#a7b2a9;margin-bottom:7px;font-size:9px}.daily-focus-copy h2{letter-spacing:-.045em;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:20px;overflow:hidden}.daily-focus-copy>div{flex-wrap:wrap;gap:5px;margin-top:10px;display:flex}.daily-focus-copy>div span{color:#cad2cb;border:1px solid #ffffff29;border-radius:99px;padding:4px 7px;font-size:9px}.daily-focus-preview{gap:7px;min-width:0;display:grid}.daily-focus-preview>span{color:#c3ccc4;grid-template-columns:20px 1fr;align-items:center;gap:7px;min-width:0;display:grid}.daily-focus-preview i{width:19px;height:19px;color:var(--lime);font:normal 8px var(--font-geist-mono),monospace;background:#ffffff17;border-radius:6px;place-items:center;display:grid}.daily-focus-preview b{text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:610;overflow:hidden}.daily-focus-actions{gap:7px;min-width:166px;display:grid}.daily-focus-actions button{cursor:pointer;white-space:nowrap;border-radius:11px;min-height:40px;padding:0 13px;font-size:10px;font-weight:780}.daily-focus-actions button:disabled{opacity:.58;cursor:not-allowed}.daily-focus-start{background:var(--lime);color:var(--ink);border:0}.daily-focus-start span{margin-left:9px}.daily-focus-notify{color:#d9e0da;background:#ffffff12;border:1px solid #ffffff38}.daily-focus-notify:hover{background:#ffffff21}.daily-focus-notify.active{color:var(--lime);border-color:#d9ff6175}.hero{grid-template-columns:1.08fr .92fr;align-items:center;gap:7vw;max-width:1180px;min-height:540px;margin:0 auto;padding:70px 0 50px;display:grid}.eyebrow{color:#667267;font:750 11px/1.2 var(--font-geist-mono), monospace;letter-spacing:.13em;margin:0 0 17px}.hero h1{letter-spacing:-.075em;margin:0;font-size:clamp(48px,6vw,82px);font-weight:830;line-height:.98}.hero h1 em,.login-copy h1 em{z-index:0;font-style:normal;position:relative}.hero h1 em:after,.login-copy h1 em:after{content:"";z-index:-1;background:var(--lime);border-radius:2px;height:.36em;position:absolute;bottom:4px;left:-2px;right:-7px;transform:rotate(-1deg)}.hero-description{color:var(--muted);letter-spacing:-.015em;margin:28px 0 0;font-size:16px;line-height:1.7}.hero-actions{align-items:center;gap:14px;margin-top:25px;display:flex}.hero-actions>span{color:#849086;font-size:11px}.outline-button{cursor:pointer;background:0 0;border:1px solid #bfc7ba;border-radius:10px;padding:11px 15px;font-size:12px;font-weight:700}.outline-button:hover{background:var(--white)}.capture-card{text-align:center;background:var(--white);border:1px solid #ced5c9;border-radius:28px;flex-direction:column;justify-content:center;align-items:center;min-height:364px;padding:44px 36px;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 50px #23342414}.capture-card:before,.capture-card:after{content:"";border-color:#a7b19f;width:36px;height:36px;position:absolute}.capture-card:before{border-top:2px solid;border-left:2px solid;border-radius:8px 0 0;top:18px;left:18px}.capture-card:after{border-bottom:2px solid;border-right:2px solid;border-radius:0 0 8px;bottom:18px;right:18px}.capture-icon{background:var(--lime);border-radius:22px;place-items:center;width:74px;height:74px;display:grid;transform:rotate(-4deg)}.capture-icon span{font-size:40px;font-weight:300;transform:rotate(4deg)}.capture-card h2{letter-spacing:-.045em;margin:24px 0 8px;font-size:25px}.capture-card>p{color:var(--muted);margin:0 0 24px;font-size:14px}.primary-button{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:13px;width:min(260px,100%);padding:15px 20px;font-weight:720;transition:transform .18s,background .18s}.primary-button span{float:right;color:var(--lime)}.primary-button:hover{background:#243526;transform:translateY(-2px)}.dropzone-text-button{color:#728075;cursor:pointer;background:0 0;border:0;margin-top:11px;font-size:11px;text-decoration:underline}.capture-card .capture-hint{font:10px var(--font-geist-mono), monospace;margin:9px 0 0}.dashboard{border-top:1px solid var(--line);max-width:1180px;margin:0 auto;padding-top:34px}.section-heading{justify-content:space-between;align-items:end;margin-bottom:18px;display:flex}.section-heading .eyebrow{margin-bottom:8px}.section-heading h2{letter-spacing:-.055em;margin:0;font-size:29px}.text-button{color:#556159;cursor:pointer;background:0 0;border:0;font-size:13px}.subject-tabs{scrollbar-width:none;gap:7px;margin-bottom:20px;display:flex;overflow-x:auto}.subject-tabs button{color:#687269;cursor:pointer;background:#fff6;border:1px solid #d1d7cc;border-radius:999px;flex:none;padding:8px 13px;font-size:11px;font-weight:680}.subject-tabs button.active{border-color:var(--ink);background:var(--ink);color:#fff}.subject-tabs button.add-subject-tab{color:#445247;border-style:dashed}.mistake-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.mistake-card{border:1px solid #1420161a;border-radius:20px;flex-direction:column;min-height:252px;padding:0;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;position:relative;overflow:hidden}.mistake-card:hover{transform:translateY(-4px);box-shadow:0 13px 30px #202d2114}.mistake-card.pinned{border-color:#40521e70;box-shadow:inset 0 0 0 1px #d9ff61b8,0 9px 24px #202d210f}.mistake-card.mint{background:#e7f8e8}.mistake-card.violet{background:#eeeafc}.mistake-card.orange{background:#fff0df}.mistake-card.blue{background:#e3f4f6}.mistake-card.rose{background:#f8e8ea}.mistake-card-open{width:100%;min-height:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;padding:21px;display:flex}:is(.mistake-card-open:focus-visible,.pin-button:focus-visible){outline-offset:-4px;outline:3px solid #607b39}.card-topline,.card-footer{justify-content:space-between;align-items:center;display:flex}.card-topline{padding-right:37px}.subject-chip{background:#ffffffab;border-radius:7px;padding:6px 9px;font-size:11px;font-weight:720;display:inline-flex}.card-number{color:#1420166b;font:12px var(--font-geist-mono), monospace}.problem-sketch{place-items:center;min-height:94px;padding:9px 0 7px;display:grid;position:relative}.subject-glyph{color:#27332a;border:1px solid #14201614;border-radius:21px;place-items:center;width:66px;height:66px;display:inline-grid;box-shadow:inset 0 1px #ffffff9e}.subject-glyph svg{fill:none;stroke:currentColor;stroke-width:2.35px;stroke-linecap:round;stroke-linejoin:round;width:44px;height:44px}.subject-glyph-math{font:700 18px/1 var(--font-geist-sans), sans-serif;background:#d9ff61b8;grid-template-columns:repeat(2,1fr);padding:12px}.subject-glyph-math i{place-items:center;font-style:normal;display:grid}.subject-glyph-chemistry{background:#dbf2dccc}.subject-glyph-physics{background:#dce4ffd1}.subject-glyph-biology{background:#e5f3d7d1}.subject-glyph-language{letter-spacing:-.08em;background:#ffedd2d4;font:720 23px/1 Georgia,serif}.subject-glyph-general{background:#ffffff80}.problem-sketch b{color:#775d00;background:#fff3b7;border-radius:6px;padding:5px 7px;font-size:9px;position:absolute;top:13px;right:0}.mistake-card h3{letter-spacing:-.04em;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:46px;margin:0 0 10px;font-size:19px;line-height:1.22;display:-webkit-box;overflow:hidden}.card-keywords{flex-wrap:wrap;align-content:flex-start;gap:6px;min-height:27px;margin-bottom:17px;display:flex;overflow:hidden}.card-keywords span{color:#4b584e;text-overflow:ellipsis;white-space:nowrap;background:#ffffff7a;border:1px solid #14201614;border-radius:999px;max-width:100%;padding:5px 8px;font-size:10px;font-weight:680;line-height:1.25;overflow:hidden}.card-keywords span:last-child{color:#26352a;background:#ffffffc7}.card-footer{border-top:1px solid #1420161a;padding-top:14px;font-size:11px;font-weight:700}.due-label{align-items:center;gap:7px;display:inline-flex}.due-dot{background:#87a67e;border-radius:50%;width:7px;height:7px}.due-dot.urgent{background:#ef754c}.pin-button{z-index:2;color:#14201657;cursor:pointer;background:#ffffff9e;border:1px solid #1420161f;border-radius:10px;place-items:center;width:31px;height:31px;font-size:14px;transition:transform .15s,background .15s,color .15s;display:grid;position:absolute;top:14px;right:14px}.pin-button:hover{color:var(--ink);background:#fff;transform:rotate(-5deg)scale(1.06)}.pin-button.active{background:var(--lime);color:var(--ink);border-color:#768944;box-shadow:0 5px 13px #44572229}.pin-button:disabled{opacity:.55;cursor:wait}.empty-state{text-align:center;border:1px dashed #c8cfc3;border-radius:22px;padding:70px 20px}.empty-state>span{background:var(--lime);border-radius:15px;place-items:center;width:50px;height:50px;margin:0 auto 17px;font-size:26px;display:grid}.empty-state h3{margin:0;font-size:20px}.empty-state p{color:var(--muted);margin:7px 0 18px;font-size:13px}.empty-state button{background:var(--ink);color:#fff;border:0;border-radius:10px;padding:11px 17px;font-size:12px;font-weight:700}.mobile-nav{display:none}.app-footer{border-top:1px solid var(--line);justify-content:flex-end;gap:16px;max-width:1180px;margin:54px auto 0;padding-top:20px;display:flex}.app-footer a,.app-footer button{color:#748076;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:10px;text-decoration:none}.app-footer a:hover,.app-footer button:hover{color:var(--ink);text-decoration:underline}.app-footer .account-delete-link{color:#9a4a3c}.toast{z-index:100;color:#fff;background:#142016;border-radius:12px;max-width:min(90vw,560px);padding:12px 18px;font-size:12px;font-weight:650;animation:.25s toast-in;position:fixed;top:18px;left:50%;transform:translate(-50%);box-shadow:0 12px 30px #1420162e}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-8px)}}body:has(.subject-manager[open]){overflow:hidden}.subject-manager{width:min(620px,100vw - 32px);max-height:calc(100dvh - 40px);color:var(--ink);border:1px solid var(--line);background:var(--white);border-radius:24px;margin:auto;padding:32px;position:fixed;overflow-y:auto;box-shadow:0 24px 70px #14201638}.subject-manager::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1018117a}.subject-manager .modal-heading>p:last-child{font-size:16px;line-height:1.6}.subject-create label{margin-bottom:8px;font-size:14px;font-weight:700;display:block}.subject-create>div{gap:8px;display:flex}.subject-create input{background:#fff;border:1px solid #c8d0c3;border-radius:10px;flex:1;min-width:0;padding:12px;font-size:16px}.subject-create button,.subject-row-actions button,.subject-context button,.subject-delete-confirm button{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:10px 13px;font-size:14px;font-weight:700}.subject-manager button:disabled{opacity:.45;cursor:not-allowed}:is(.subject-manager :focus-visible,.subject-context :focus-visible){outline-offset:3px;outline:3px solid #719447}.subject-manager-list{gap:10px;margin:24px 0 16px;padding:0;list-style:none;display:grid}.subject-manager-list li{border:1px solid var(--line);background:#f5f7f0;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:16px;display:flex}.subject-manager-list b{overflow-wrap:anywhere;font-size:16px;display:block}.subject-manager-list small{color:var(--muted);margin-top:5px;font-size:14px;display:block}.subject-row-actions{flex:none;gap:8px;display:flex}.subject-row-actions .subject-delete{color:#983f30;background:#fcebe4}.subject-empty,.subject-manager-help{color:var(--muted);font-size:14px;line-height:1.65}.subject-empty{text-align:center;border:1px dashed #bbc8ae;border-radius:12px;padding:24px 12px}.subject-manager .form-error{font-size:14px!important}.subject-delete-confirm{background:#fff0e8;border-radius:12px;margin-top:16px;padding:16px}.subject-delete-confirm p{margin:0 0 12px;font-size:16px}.subject-delete-confirm button+button{background:#983f30;margin-left:8px}.subject-context{border:1px solid var(--line);background:#f4f7ed;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding:16px 18px;display:flex}.subject-context b,.subject-context span{display:block}.subject-context b{font-size:18px}.subject-context span{color:var(--muted);margin-top:5px;font-size:14px}.analysis-card.note>p:last-child{white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;line-height:1.8}@media (max-width:600px){.subject-manager{padding:28px 18px}.subject-row-actions{width:100%}.subject-row-actions button:first-child{flex:1}.subject-create>div{flex-wrap:wrap}.subject-create input{flex-basis:65%}}.announcement-center{width:min(640px,100vw);height:100dvh;max-height:100dvh;color:var(--ink);border:0;border-left:1px solid var(--line);background:#f4f5ef;margin:0 0 0 auto;padding:0;animation:.24s both announcement-in;overflow-y:auto;box-shadow:-30px 0 80px #0f181033}.announcement-center::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#10181180}@keyframes announcement-in{0%{opacity:0;transform:translate(44px)}}.announcement-header{z-index:4;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffef9f0;justify-content:space-between;align-items:flex-start;gap:24px;padding:30px 32px 24px;display:flex;position:sticky;top:0}.announcement-header .eyebrow{margin-bottom:8px}.announcement-header h2{letter-spacing:-.055em;margin:0;font-size:31px}.announcement-header p:last-child{color:var(--muted);margin:8px 0 0;font-size:14px}.announcement-header-actions{flex:none;padding-right:46px}.announcement-header .close-button{top:29px;right:27px}.announcement-new{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:10px;min-height:38px;padding:0 13px;font-size:13px;font-weight:750}.admin-mode{color:#526235;background:#eff9d7;border:1px solid #cfe498;border-radius:11px;margin:18px 32px 0;padding:11px 13px;font-size:13px}.admin-mode span{background:var(--ink);color:var(--lime);font:750 10px var(--font-geist-mono),monospace;border-radius:5px;margin-right:8px;padding:3px 6px}.announcement-composer{background:var(--white);border:1px solid #cbd3c6;border-radius:17px;gap:15px;margin:18px 32px 0;padding:21px;display:grid;box-shadow:0 10px 30px #1d2a1e0f}.announcement-composer-heading{justify-content:space-between;align-items:flex-start;display:flex}.announcement-composer-heading span{color:#718071;font:750 10px var(--font-geist-mono),monospace;letter-spacing:.1em}.announcement-composer-heading h3{letter-spacing:-.035em;margin:5px 0 0;font-size:20px}.announcement-composer-heading button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:5px;font-size:13px}.announcement-form-row{grid-template-columns:1fr 1fr;gap:11px;display:grid}.announcement-composer>label,.announcement-form-row label{color:#3e493f;gap:7px;font-size:14px;font-weight:720;display:grid}.announcement-form-row label span{color:#879087;margin-left:4px;font-size:12px;font-weight:500}.announcement-composer input:not([type=checkbox]),.announcement-composer select,.announcement-composer textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #ccd3c8;border-radius:10px;outline:none;padding:11px 12px;font-size:16px}.announcement-composer select{min-height:44px}.announcement-composer textarea{resize:vertical;line-height:1.6}.announcement-composer input:focus,.announcement-composer select:focus,.announcement-composer textarea:focus{border-color:#78945f;box-shadow:0 0 0 3px #79995b2e}.announcement-composer-footer{justify-content:space-between;align-items:center;gap:18px;display:flex}.pin-check{align-items:center;gap:8px;font-size:14px;font-weight:650;display:flex}.pin-check input{width:18px;height:18px;accent-color:var(--ink)}.announcement-publish{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:10px;min-height:42px;padding:0 17px;font-size:14px;font-weight:760}.announcement-publish:disabled{opacity:.45;cursor:not-allowed}.announcement-list{gap:12px;padding:24px 32px 48px;display:grid}.announcement-list article{background:var(--white);border:1px solid #d9dfd4;border-radius:17px;padding:23px;position:relative}.announcement-list article.pinned{box-shadow:inset 4px 0 0 var(--lime);border-color:#b6cb78}.announcement-meta{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.announcement-meta>span,.announcement-meta>b,.announcement-meta>time{font-size:12px}.announcement-kind{border-radius:7px;padding:5px 8px;font-weight:760}.announcement-kind.update{color:#455d13;background:#e2f6b2}.announcement-kind.notice{color:#315f9d;background:#e5edff}.announcement-kind.maintenance{color:#895921;background:#fff0d8}.announcement-meta>b{font-family:var(--font-geist-mono),monospace}.announcement-meta time{color:#7c877e;margin-left:auto}.announcement-meta .pin-label{color:#71804b;font-weight:700}.announcement-list article h3{letter-spacing:-.035em;margin:16px 0 9px;font-size:21px;line-height:1.35}.announcement-list article>p{color:#4e5a50;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:16px;line-height:1.75}.announcement-list article footer{color:#7b867c;border-top:1px solid #e8ebe4;justify-content:space-between;align-items:center;gap:16px;margin-top:20px;padding-top:14px;font-size:12px;display:flex}.announcement-list article footer div{gap:10px;display:flex}.announcement-list article footer button{color:#5e6b60;cursor:pointer;background:0 0;border:0;padding:4px;font-size:13px;text-decoration:underline}.announcement-list article footer button.danger-text{color:#a24837}.announcement-empty{text-align:center;border:1px dashed #c7d0c1;border-radius:18px;padding:72px 24px}.announcement-empty>span{background:var(--lime);border-radius:14px;place-items:center;width:48px;height:48px;margin:0 auto 17px;font-size:25px;display:grid}.announcement-empty h3{margin:0;font-size:20px}.announcement-empty p{color:var(--muted);margin:9px 0 0;font-size:14px;line-height:1.6}.announcement-empty button{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:10px;min-height:42px;margin-top:18px;padding:0 15px;font-size:14px;font-weight:720}.announcement-error{margin:0 32px 24px!important;font-size:13px!important}.login-screen{grid-template-columns:1.15fr .85fr;align-items:center;gap:7vw;min-height:100vh;padding:8vw;display:grid;position:relative;overflow:hidden}.login-screen:after{content:"";z-index:-1;border:9vw solid #e5e9df;border-radius:50%;width:42vw;height:42vw;position:absolute;bottom:-24vw;left:-14vw}.login-brand{letter-spacing:-.04em;align-items:center;gap:10px;font-size:20px;font-weight:780;display:flex;position:absolute;top:28px;left:5vw}.login-copy .eyebrow{margin-bottom:24px}.login-copy h1{letter-spacing:-.075em;margin:0;font-size:clamp(58px,7vw,98px);line-height:.93}.login-copy>p:last-child{max-width:430px;color:var(--muted);margin:30px 0 0;line-height:1.7}.login-card{background:var(--white);text-align:center;border:1px solid #d2d8cd;border-radius:28px;justify-self:end;width:100%;max-width:440px;padding:42px;box-shadow:0 24px 70px #20302117}.login-graphic{background:#e8f7e4;border-radius:36px;place-items:center;width:126px;height:126px;margin:0 auto 28px;display:grid;position:relative;transform:rotate(-5deg)}.login-graphic>span{font:italic 58px Georgia,serif}.login-graphic i{border:5px solid var(--white);background:var(--lime);border-radius:50%;place-items:center;width:38px;height:38px;font-style:normal;font-weight:800;display:grid;position:absolute;bottom:8px;right:-8px}.login-card h2{letter-spacing:-.045em;margin:0;font-size:25px}.login-card>p{color:var(--muted);margin:9px auto 23px;font-size:13px;line-height:1.55}.login-card small a{color:#58645a}.google-button-slot{justify-content:center;min-height:44px;display:flex}.setup-list{text-align:left;gap:7px;display:grid}.setup-list span{color:#59665b;font:11px var(--font-geist-mono),monospace;background:#f6f7f2;border:1px solid #dce1d7;border-radius:9px;padding:10px 12px}.login-card small{color:#8a938b;margin-top:16px;font-size:9px;line-height:1.45;display:block}.loading-screen{min-height:100vh;color:var(--muted);place-content:center;justify-items:center;font-size:12px;display:grid}.loader{border:3px solid #d9ded4;border-top-color:var(--ink);border-radius:50%;width:30px;height:30px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.modal-backdrop,.detail-backdrop{z-index:60;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1018117a;place-items:center;padding:22px;animation:.18s fade-in;display:grid;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}}.upload-modal,.drive-modal,.account-delete-modal{background:var(--white);border-radius:26px;width:min(920px,100%);max-height:calc(100vh - 44px);position:relative;overflow:auto;box-shadow:0 30px 100px #0c140d38}.upload-modal{padding:38px}.drive-modal{width:min(650px,100%);padding:32px}.account-delete-modal{width:min(560px,100%);padding:32px}.close-button{z-index:2;cursor:pointer;background:#eef0eb;border:0;border-radius:50%;width:34px;height:34px;font-size:22px;position:absolute;top:18px;right:20px}.modal-heading h2{letter-spacing:-.05em;margin:0;font-size:30px}.modal-heading>p:last-child{color:var(--muted);margin:7px 0 27px;font-size:13px}.upload-form-grid{grid-template-columns:.92fr 1.08fr;gap:30px;display:grid}.file-preview{cursor:pointer;background:#f0f2eb;border:1px dashed #bfc8b9;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:9px;min-height:430px;padding:24px;display:flex;overflow:hidden}.file-preview>span:first-of-type{background:var(--lime);border-radius:17px;place-items:center;width:58px;height:58px;font-size:30px;display:grid}.file-preview b{text-overflow:ellipsis;max-width:100%;font-size:14px;overflow:hidden}.file-preview small{color:var(--muted);font-size:10px}.file-preview.has-image{background:#1f2820;border-style:solid;padding:0}.file-preview img{object-fit:contain;width:100%;height:100%}.file-preview .pdf-mark{color:#fff;font:800 14px var(--font-geist-mono),monospace;background:#e2674c}.form-fields{flex-direction:column;display:flex}.form-fields label{margin:0 0 8px;font-size:12px;font-weight:750}.form-fields label:not(:first-child){margin-top:19px}.form-fields label span{float:right;color:#8c968d;font-size:9px;font-weight:550}.form-fields select,.form-fields input,.form-fields textarea,.drive-search input{background:#fff;border:1px solid #d4d9cf;border-radius:10px;outline:none;width:100%;transition:border .15s,box-shadow .15s}.form-fields select,.form-fields input{height:43px;padding:0 12px}.form-fields textarea{resize:vertical;min-height:88px;padding:12px}.form-fields select:focus,.form-fields input:focus,.form-fields textarea:focus,.drive-search input:focus{border-color:#7f9379;box-shadow:0 0 0 3px #97af902e}.no-subject{color:#7d6331;background:#fff5dc;border-radius:9px;padding:12px;font-size:11px}.inline-add{gap:7px;margin-top:7px;display:flex}.inline-add button{cursor:pointer;background:#e6eadf;border:0;border-radius:9px;width:60px;font-size:11px;font-weight:700}.analysis-promise{background:#edf7e8;border-radius:11px;gap:10px;margin-top:16px;padding:12px;display:flex}.analysis-promise>span{color:#fff;background:#88bc68;border-radius:50%;flex:none;place-items:center;width:23px;height:23px;font-size:11px;display:grid}.analysis-promise p{color:#536250;margin:0;font-size:10px;line-height:1.55}.analysis-promise b{color:var(--ink);font-size:11px}.upload-safety-note{color:#7c867e;margin:10px 2px 0;font-size:9px;line-height:1.55}.form-fields .original-retention-option{color:#344037;background:#f7f9f4;border:1px solid #dfe6dc;border-radius:11px;align-items:flex-start;gap:9px;margin:12px 0 0;padding:11px 12px;display:flex}.form-fields .original-retention-option input{accent-color:#263b2b;flex:none;width:16px;height:16px;margin:1px 0 0;padding:0}.form-fields .original-retention-option label{color:#344037;cursor:pointer;margin:0}.original-retention-option b,.original-retention-option small{display:block}.original-retention-option b{font-size:10px}.original-retention-option small{color:#7c867e;margin-top:3px;font-size:9px;line-height:1.45}.form-error{text-align:left;background:#ffebe5;border-radius:8px;padding:9px 11px;color:#9e3e2a!important;margin:11px 0 0!important;font-size:10px!important}.submit-analysis{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:12px;min-height:48px;margin-top:auto;font-weight:730}.submit-analysis span{float:right;color:var(--lime);margin-right:15px}.analysis-loading{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:470px;display:flex}.scan-paper{background:#f8f7f1;border:1px solid #ccd3c7;border-radius:13px;place-items:center;width:150px;height:190px;display:grid;position:relative;overflow:hidden;box-shadow:0 14px 30px #20302114}.scan-paper span{opacity:.6;font:italic 60px Georgia,serif}.scan-paper i{background:var(--lime);height:3px;animation:1.7s ease-in-out infinite scan;position:absolute;left:0;right:0;box-shadow:0 0 14px #87c000}@keyframes scan{0%,to{top:13px}50%{top:174px}}.analysis-loading h3{margin:24px 0 16px;font-size:21px}.loading-steps{gap:5px;display:flex}.loading-steps span{color:#939a93;background:#eaede6;border-radius:8px;padding:7px 9px;font-size:9px}.loading-steps span.done{color:#4b7450;background:#e7f3e3}.loading-steps span.active{background:var(--lime);color:var(--ink)}.analysis-loading>p{color:var(--muted);font-size:10px}.drive-header{align-items:center;gap:14px;margin-bottom:24px;display:flex}.drive-logo{color:#3174de;background:#e6f0ff;border-radius:14px;place-items:center;width:48px;height:48px;font-size:28px;display:grid}.drive-header .eyebrow{margin-bottom:5px}.drive-header h2{letter-spacing:-.045em;margin:0;font-size:25px}.sync-flow{background:#edf1e9;border-radius:13px;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:7px;margin:0 0 14px;padding:13px;display:grid}.sync-flow span{color:#4e5a50;align-items:center;gap:7px;font-size:10px;font-weight:650;display:flex}.sync-flow b{color:#738074;width:22px;height:22px;font:8px var(--font-geist-mono),monospace;background:#fff;border-radius:7px;place-items:center;display:grid}.sync-flow i{color:#9aa39b;font-style:normal}.drive-connect{text-align:center;border:1px dashed #c9d0c5;border-radius:17px;padding:30px 25px}.drive-connect h3{margin:0;font-size:18px}.drive-connect p{max-width:470px;color:var(--muted);margin:10px auto 20px;font-size:12px;line-height:1.6}.drive-connect button{color:#fff;cursor:pointer;background:#2563d9;border:0;border-radius:10px;padding:12px 18px;font-size:12px;font-weight:700}.drive-connect button:disabled{opacity:.6;cursor:wait}.sync-detail-grid{grid-template-columns:repeat(3,1fr);gap:7px;max-width:460px;margin:0 auto 15px;display:grid}.sync-detail-grid span{background:#fff;border:1px solid #e0e5dc;border-radius:10px;padding:11px 8px}.sync-detail-grid small,.sync-detail-grid b{display:block}.sync-detail-grid small{color:#8a948b;font-size:8px}.sync-detail-grid b{margin-top:4px;font-size:11px}.drive-connect p.sync-message{color:#536054;background:#f1f4ee;border-radius:9px;margin:0 auto 13px;padding:9px 11px;font-size:10px}.drive-connect small.privacy-note{color:#89928a;max-width:450px;margin:12px auto 0;font-size:9px;line-height:1.5;display:block}.drive-connect small.privacy-note b{color:#68746a}.drive-search{gap:7px;display:flex}.drive-search input{height:42px;padding:0 12px}.drive-search button{background:var(--ink);color:#fff;border:0;border-radius:9px;width:64px;font-size:11px}.drive-files{max-height:430px;margin-top:14px;overflow:auto}.drive-files>button{text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #e4e7df;grid-template-columns:42px 1fr auto;align-items:center;gap:11px;width:100%;padding:12px 5px;display:grid}.drive-files>button:hover{background:#f5f6f1}.drive-files>button>span{color:#5a675c;width:39px;height:39px;font:700 9px var(--font-geist-mono),monospace;background:#e9eee5;border-radius:9px;place-items:center;display:grid}.drive-files b,.drive-files small{display:block}.drive-files b{text-overflow:ellipsis;white-space:nowrap;max-width:440px;font-size:12px;overflow:hidden}.drive-files small{color:#8a938b;margin-top:3px;font-size:9px}.drive-files i{color:#748077;font-style:normal}.drive-status{color:var(--muted);text-align:center;padding:45px;font-size:12px}.account-delete-list{color:#6f352b;background:#fff0e8;border-radius:13px;margin:0 0 16px;padding:17px 17px 17px 37px;font-size:12px;line-height:1.7}.account-delete-list li+li{margin-top:5px}.account-delete-drive{color:#637066;border:1px solid #d8ded4;border-radius:12px;margin:0 0 21px;padding:14px;font-size:11px;line-height:1.65}.account-delete-drive b{color:#315a39}.account-delete-confirm{color:#4a564c;margin-bottom:8px;font-size:11px;display:block}.account-delete-modal>input{border:1px solid #c9d0c5;border-radius:10px;outline:0;width:100%;height:44px;padding:0 12px;font-size:14px}.account-delete-modal>input:focus{border-color:#a04c3b;box-shadow:0 0 0 3px #a04c3b1f}.account-delete-actions{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.account-delete-actions button{color:#536054;cursor:pointer;background:#e8ece5;border:0;border-radius:10px;min-height:42px;padding:0 14px;font-size:11px;font-weight:750}.account-delete-actions .account-delete-submit{color:#fff;background:#a34837}.account-delete-actions button:disabled,.account-delete-modal .close-button:disabled{opacity:.5;cursor:not-allowed}.detail-backdrop{place-items:stretch end;padding:0}.detail-sheet{background:#f6f6f1;flex-direction:column;width:min(670px,100vw);height:100vh;animation:.24s slide-in;display:flex;box-shadow:-30px 0 80px #0f18102e}@keyframes slide-in{0%{opacity:0;transform:translate(40px)}}.detail-top{border-bottom:1px solid var(--line);flex:0 0 64px;justify-content:space-between;align-items:center;padding:0 24px;display:flex}.detail-top button,.detail-top a{color:#5f6b61;cursor:pointer;background:0 0;border:0;padding:4px;font-size:11px;text-decoration:none}.detail-top>div{gap:5px;display:flex}.detail-top .danger-text{color:#b0523c}.detail-top .detail-pin{border:1px solid #cbd2c6;border-radius:8px;padding:6px 8px}.detail-top .detail-pin.active{background:var(--lime);color:var(--ink);border-color:#99aa61;font-weight:760}.detail-top .detail-pin:disabled{opacity:.55;cursor:wait}.detail-title{background:var(--white);border-bottom:1px solid var(--line);padding:26px 28px 22px}.detail-title>div{flex-wrap:wrap;gap:7px;display:flex}.verified-badge,.review-badge,.source-chip{border-radius:7px;padding:6px 9px;font-size:9px;font-weight:720}.verified-badge{color:#47734a;background:#e1f3dc}.review-badge{color:#765b00;background:#fff0bd}.source-chip{color:#315f9d;background:#e5edff}.detail-title h2{letter-spacing:-.05em;margin:14px 0 5px;font-size:30px}.detail-title>p{color:var(--muted);margin:0;font-size:11px}.detail-scroll{flex:1;padding:22px 28px 120px;overflow-y:auto}.source-preview{background:#202820;border-radius:15px;place-items:center;min-height:210px;margin-bottom:13px;display:grid;overflow:hidden}.source-preview img{object-fit:contain;max-width:100%;max-height:520px;display:block}.source-placeholder{color:#fff;place-items:center;gap:10px;display:grid}.source-placeholder span{font:italic 58px Georgia,serif}.source-placeholder small{color:#b6c0b7}.pdf-source{color:#fff;justify-items:center;gap:10px;display:grid}.pdf-source span{font:800 13px var(--font-geist-mono),monospace;background:#e2674c;border-radius:8px;padding:9px 12px}.source-preview.drive-source{min-height:128px;color:var(--ink);background:#edf3ff;border:1px solid #d7e2f8;grid-template-columns:auto 1fr auto;place-items:center stretch;gap:16px;padding:22px;text-decoration:none}.drive-source-mark{color:#2d6ad6;background:#fff;border-radius:15px;place-items:center;width:54px;height:54px;font-size:28px;display:grid}.drive-source small,.drive-source b,.drive-source p{display:block}.drive-source small{color:#4974ae;font:8px var(--font-geist-mono),monospace}.drive-source b{margin-top:5px;font-size:13px}.drive-source p{color:#718198;margin:5px 0 0;font-size:10px}.drive-source i{color:#4472b0;font-style:normal}.analysis-card{background:#fff;border:1px solid #e0e4dc;border-radius:14px;margin-top:10px;padding:18px}.card-kicker{color:#788379;font:700 9px var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.08em;margin:0 0 7px}.analysis-card>p:last-child{margin:0;font-size:13px;line-height:1.65}.analysis-card h3{letter-spacing:-.025em;margin:0;font-size:16px;line-height:1.55}.analysis-card.mistake{background:#fff1eb;border-color:#f0d4ca}.analysis-card.idea{background:var(--lime);border-color:#c7ea54}.mistake-type-editor{justify-content:space-between;align-items:center;gap:10px;display:flex}.mistake-type-editor .card-kicker{margin:0}.mistake-type-editor select{background:#ffffffad;border:1px solid #e7c5b9;border-radius:8px;max-width:180px;padding:6px 8px;font-size:10px;font-weight:700}.reset-classification{color:#9a5e4e;cursor:pointer;background:0 0;border:0;margin:9px 0 0;padding:0;font-size:9px;text-decoration:underline}.review-history{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px;display:grid}.review-history span{background:#fff;border:1px solid #dfe4db;border-radius:11px;padding:12px}.review-history small,.review-history b{display:block}.review-history small{color:#879188;font-size:8px}.review-history b{margin-top:5px;font-size:10px}.analysis-card.note{background:#f2f3ed}.detail-section-title{justify-content:space-between;align-items:end;margin:28px 0 12px;display:flex}.detail-section-title .eyebrow{margin-bottom:5px}.detail-section-title h3{letter-spacing:-.04em;margin:0;font-size:20px}.detail-section-title>span{font:11px var(--font-geist-mono),monospace;color:#778179}.hint-section>button{text-align:left;cursor:pointer;background:#fff;border:1px solid #dce1d8;border-radius:11px;grid-template-columns:32px 1fr;align-items:center;gap:8px;width:100%;min-height:54px;margin-bottom:7px;padding:11px 14px;display:grid}.hint-section>button>span{font:10px var(--font-geist-mono),monospace;color:#89938b}.hint-section>button p{color:#849087;margin:0;font-size:12px}.hint-section>button.revealed{background:#eff6e9;border-color:#bacaac}.hint-section>button.revealed p{color:#344136}.answer-card{color:#fff;background:#202920;border-radius:14px;justify-content:space-between;align-items:center;gap:15px;margin-top:22px;padding:18px;display:flex}.answer-card h3{filter:blur(6px);max-width:440px;margin:0;font-size:15px}.answer-card.revealed h3{filter:none}.answer-card button{color:var(--lime);cursor:pointer;background:0 0;border:1px solid #647266;border-radius:8px;flex:none;padding:8px 10px;font-size:9px}.review-warning{background:#fff7d8;border:1px solid #ead58f;border-radius:11px;margin-top:11px;padding:13px 15px}.review-warning b{font-size:11px}.review-warning p{color:#786938;margin:4px 0 0;font-size:10px;line-height:1.5}.similar-section details{border-bottom:1px solid #dce1d8}.similar-section summary{cursor:pointer;grid-template-columns:34px 1fr;gap:7px;padding:14px 4px;font-size:12px;line-height:1.45;display:grid}.similar-section summary span{color:#8b958d;font:10px var(--font-geist-mono),monospace}.similar-section details>p{color:#59655b;margin:0 0 9px 38px;font-size:11px;line-height:1.55}.similar-section details>p:last-child{margin-bottom:14px}.review-actions{z-index:3;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffef9f0;grid-template-columns:1fr 1.2fr;gap:9px;min-height:78px;padding:13px 20px;display:grid;position:sticky;bottom:0}.review-actions button{cursor:pointer;background:#fff;border:1px solid #cbd1c7;border-radius:12px;font-size:12px;font-weight:720}.review-actions button:last-child{background:var(--ink);color:#fff;border:0}.review-actions button span{color:var(--lime);margin-left:10px}.report-page{max-width:1180px;margin:0 auto;padding:62px 0 30px}.report-heading{justify-content:space-between;align-items:end;margin-bottom:25px;display:flex}.report-heading h1{letter-spacing:-.07em;margin:0;font-size:clamp(44px,5vw,68px);line-height:.98}.report-heading h1 em{color:#718069;font-style:normal}.report-heading>div>p:last-child{color:var(--muted);margin:13px 0 0;font-size:13px}.report-heading>button{cursor:pointer;background:#fff;border:1px solid #c8cfc4;border-radius:10px;padding:11px 15px;font-size:11px;font-weight:700}.report-summary{background:#fffef9b8;border:1px solid #d7ddd3;border-radius:15px;align-items:center;gap:0;min-height:58px;padding:10px 18px;display:flex}.report-summary>span{color:#7b857d;border-right:1px solid #dce1d8;align-items:baseline;gap:7px;min-width:0;padding:0 22px;font-size:10px;font-weight:700;display:flex}.report-summary>span:first-child{padding-left:0}.report-summary>span:last-child{border-right:0}.report-summary b{color:var(--ink);letter-spacing:-.05em;font-size:20px}.subject-report-heading{justify-content:space-between;align-items:end;margin:38px 0 16px;display:flex}.subject-report-heading .eyebrow{margin-bottom:7px}.subject-report-heading h2{letter-spacing:-.05em;margin:0;font-size:25px}.subject-report-heading>span{color:#818b83;font-size:10px}.subject-report-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;display:grid}.subject-report-card{background:var(--white);text-align:left;cursor:pointer;border:1px solid #d8ded4;border-radius:17px;min-height:174px;padding:16px;transition:transform .18s,border-color .18s,box-shadow .18s;position:relative;overflow:hidden}.subject-report-card:hover{border-color:#aebaab;transform:translateY(-2px);box-shadow:0 10px 25px #1f30200f}.subject-report-card.selected{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.subject-report-card-top{align-items:center;gap:11px;display:flex}.subject-report-card .subject-glyph{border-radius:13px;flex:none;width:42px;height:42px;padding:8px}.subject-report-card .subject-glyph svg{width:29px;height:29px}.subject-report-card .subject-glyph-math{font-size:12px}.subject-report-card .subject-glyph-language{padding:0;font-size:18px}.subject-report-card-top>span:last-child{min-width:0}.subject-report-card-top b,.subject-report-card-top small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.subject-report-card-top b{font-size:13px}.subject-report-card-top small{color:#8a938b;margin-top:4px;font-size:9px}.subject-report-card-count{align-items:baseline;gap:4px;display:flex;position:absolute;top:57px;right:16px}.subject-report-card-count b{font:700 30px/1 var(--font-geist-mono),monospace;letter-spacing:-.08em}.subject-report-card-count small{color:#8d968e;font-size:9px}.subject-report-card-unit{color:#4e5b51;text-overflow:ellipsis;white-space:nowrap;max-width:calc(100% - 65px);margin-top:19px;font-size:11px;font-weight:700;display:block;overflow:hidden}.subject-report-card-footer{color:#7e8880;border-top:1px solid #e3e7df;justify-content:space-between;padding-top:11px;font-size:9px;display:flex;position:absolute;bottom:14px;left:16px;right:16px}.subject-report-card-footer b{color:var(--ink);font-size:9px}.report-empty{color:var(--muted);text-align:center;border:1px dashed #c9d0c5;border-radius:17px;padding:35px;font-size:12px}.subject-report-detail{border:1px solid var(--ink);background:#fbfcf7;border-radius:20px;margin-top:13px;padding:25px;box-shadow:0 16px 40px #1b2a1c12}.subject-report-detail-head{border-bottom:1px solid #dce1d8;justify-content:space-between;align-items:start;padding-bottom:20px;display:flex}.subject-report-detail-head .eyebrow{color:#788478;margin-bottom:7px}.subject-report-detail-head h2{letter-spacing:-.055em;margin:0;font-size:27px}.subject-report-detail-head button{color:#748076;cursor:pointer;background:0 0;border:0;padding:7px 9px;font-size:10px}.subject-insight-grid{grid-template-columns:.8fr 1.2fr;gap:14px;padding-top:14px;display:grid}.weakness-panel,.study-focus-panel{background:#fff;border:1px solid #dce1d8;border-radius:15px;padding:19px}.weakness-panel{gap:26px;display:grid}.insight-title{justify-content:space-between;align-items:baseline;margin-bottom:13px;display:flex}.insight-title h3{letter-spacing:-.035em;margin:0;font-size:15px}.insight-title span{color:#8a938b;font:9px var(--font-geist-mono),monospace}.rank-list{display:grid}.rank-list>div{border-bottom:1px solid #edf0eb;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;min-width:0;padding:10px 0;display:grid}.rank-list>div:last-child{border-bottom:0}.rank-list span{color:#9aa29b;font:9px var(--font-geist-mono),monospace}.rank-list b{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.rank-list em{color:#7d877f;font-size:9px;font-style:normal}.mistake-type-list{flex-wrap:wrap;gap:6px;display:flex}.mistake-type-list>span{background:#edf1e9;border-radius:8px;align-items:center;gap:7px;padding:7px 8px;font-size:10px;display:inline-flex}.mistake-type-list b{font-weight:680}.mistake-type-list em{color:#687369;min-width:17px;height:17px;font:normal 8px var(--font-geist-mono),monospace;background:#fff;border-radius:99px;place-items:center;display:grid}.study-focus-list{margin:0;padding:0;list-style:none}.study-focus-list li{border-bottom:1px solid #e8ebe5;grid-template-columns:34px 1fr;gap:9px;padding:13px 0;display:grid}.study-focus-list li:last-child{border-bottom:0}.study-focus-number{background:var(--ink);width:27px;height:27px;color:var(--lime);font:9px var(--font-geist-mono),monospace;border-radius:8px;place-items:center;display:grid}.study-focus-list li>div{min-width:0}.study-focus-list p{align-items:center;gap:7px;margin:0;display:flex}.study-focus-list p b{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.study-focus-list p span{color:#5f6b61;background:#eff3eb;border-radius:6px;flex:none;padding:4px 6px;font-size:8px;font-weight:700}.study-focus-list small{color:#647066;text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:10px;line-height:1.45;display:block;overflow:hidden}.study-focus-list em{color:#99a19a;font:normal 8px var(--font-geist-mono),monospace;margin-top:6px;display:block}.subject-report-empty{align-items:center;gap:15px;padding:28px 4px 5px;display:flex}.subject-report-empty .subject-glyph{border-radius:15px;width:50px;height:50px;padding:9px}.subject-report-empty .subject-glyph svg{width:32px;height:32px}.subject-report-empty b{font-size:13px}.subject-report-empty p{color:var(--muted);margin:6px 0 0;font-size:11px}@media (max-width:860px){.desktop-nav{display:none}.login-screen{grid-template-columns:1fr;padding:100px 24px 40px}.login-copy{text-align:center}.login-copy h1{font-size:clamp(50px,14vw,76px)}.login-copy>p:last-child{margin-left:auto;margin-right:auto}.login-card{justify-self:center}.upload-form-grid{grid-template-columns:1fr}.file-preview{min-height:280px}.submit-analysis{margin-top:20px}.daily-focus{grid-template-columns:auto 1fr auto}.daily-focus-preview{display:none}.subject-report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.subject-insight-grid{grid-template-columns:1fr}}@media (max-width:680px){.app-shell{padding:0 18px 98px}.topbar{height:67px}.brand{font-size:18px}.brand-mark{width:31px;height:31px}.streak{display:none}.avatar{width:33px;height:33px}.sync-strip{margin-top:12px}.sync-main small{max-width:54vw}.sync-now{padding:8px}.daily-focus{grid-template-columns:auto 1fr;gap:13px;padding:15px}.daily-focus-mark{border-radius:14px;width:54px;height:59px}.daily-focus-mark span{font-size:22px}.daily-focus-copy h2{white-space:normal;font-size:16px}.daily-focus-copy>div{margin-top:7px}.daily-focus-actions{grid-column:1/-1;grid-template-columns:.8fr 1.2fr;width:100%}.hero{min-height:auto;padding:44px 0 40px;display:block}.hero h1{font-size:clamp(45px,14vw,62px)}.hero-description{margin-top:22px;font-size:14px}.desktop-break{display:none}.hero-actions{align-items:center}.capture-card{border-radius:23px;min-height:290px;margin-top:34px;padding:32px 20px}.capture-icon{border-radius:18px;width:62px;height:62px}.capture-card h2{margin-top:18px;font-size:22px}.dashboard{padding-top:27px}.mistake-grid{grid-template-columns:1fr}.mistake-card{min-height:230px}.problem-sketch{min-height:82px}.subject-glyph{border-radius:18px;width:58px;height:58px}.subject-glyph svg{width:39px;height:39px}.subject-glyph-math{padding:10px;font-size:16px}.mobile-nav{z-index:30;background:#142016f5;border:1px solid #ffffff1a;border-radius:22px;grid-template-columns:1fr 1fr 56px 1fr 1fr;align-items:center;height:68px;padding:8px 10px;display:grid;position:fixed;bottom:11px;left:12px;right:12px;box-shadow:0 14px 35px #14201638}.mobile-nav button{color:#a8b1a9;background:0 0;border:0;flex-direction:column;align-items:center;gap:3px;font-size:9px;display:flex}.mobile-nav button span{font-size:17px}.mobile-nav button.active{color:var(--lime)}.mobile-nav button.mobile-add{border:4px solid var(--paper);background:var(--lime);width:48px;height:48px;color:var(--ink);border-radius:16px;justify-content:center;justify-self:center;margin-top:-25px;font-size:27px}.login-screen{min-height:100vh;padding:94px 18px 30px;display:block}.login-brand{top:20px;left:18px}.login-copy .eyebrow{margin-bottom:16px}.login-copy h1{font-size:51px}.login-copy>p:last-child{margin-top:22px;font-size:13px}.login-card{border-radius:22px;margin-top:34px;padding:29px 20px}.login-graphic{border-radius:27px;width:92px;height:92px}.modal-backdrop{align-items:end;padding:0}.upload-modal,.drive-modal,.account-delete-modal{border-radius:23px 23px 0 0;width:100%;max-height:94vh;padding:26px 18px}.sync-flow{grid-template-columns:1fr}.sync-flow i{display:none}.sync-detail-grid{grid-template-columns:1fr 1fr 1fr}.upload-form-grid{gap:18px}.file-preview{min-height:220px}.detail-top{padding:0 14px}.detail-top>div{gap:2px}.detail-top button,.detail-top a{font-size:9px}.detail-title{padding:22px 18px 18px}.detail-title h2{font-size:26px}.weakness-panel,.study-focus-panel{padding:15px}.study-focus-list small{white-space:normal}.subject-report-empty{align-items:start}.toast{top:9px}.announcement-bell{border-radius:10px;width:34px;height:34px}.announcement-center{border-left:0;width:100vw}.announcement-header{padding:23px 18px 19px}.announcement-header h2{font-size:27px}.announcement-header p:last-child{max-width:250px;font-size:13px}.announcement-header-actions{padding-right:39px}.announcement-header .close-button{top:21px;right:14px}.announcement-new{padding:0 10px;font-size:12px}.admin-mode,.announcement-composer{margin-left:18px;margin-right:18px}.announcement-composer{padding:17px}.announcement-form-row{grid-template-columns:1fr}.announcement-list{padding:19px 18px 110px}.announcement-list article{padding:19px}.announcement-list article>p{font-size:15px}.announcement-meta time{width:100%;margin-left:0}.announcement-error{margin-left:18px!important;margin-right:18px!important}}@media print{.topbar,.mobile-nav,.pwa-install,.report-heading button,.review-actions,.detail-top{display:none!important}.app-shell{padding:0}.report-page{padding:20px}.detail-backdrop{background:#fff;display:block;position:static}.detail-sheet{width:100%;height:auto;box-shadow:none}.detail-scroll{padding-bottom:20px;overflow:visible}.source-preview,.analysis-card,.hint-section,.similar-section{break-inside:avoid}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.pwa-install{z-index:90;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));color:#fff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#142016f7;border:1px solid #ffffff21;border-radius:18px;grid-template-columns:48px 1fr auto auto;align-items:center;gap:11px;width:min(420px,100vw - 32px);padding:12px 13px;animation:.28s both pwa-rise;display:grid;position:fixed;box-shadow:0 20px 55px #0c180e47}.pwa-install img{border-radius:14px;width:48px;height:48px;display:block}.pwa-install b,.pwa-install span{display:block}.pwa-install b{letter-spacing:-.02em;font-size:12px}.pwa-install span{color:#b8c1b9;margin-top:4px;font-size:9px;line-height:1.45}.pwa-install button{cursor:pointer}.pwa-install-primary{background:var(--lime);min-width:48px;height:36px;color:var(--ink);border:0;border-radius:10px;padding:0 12px;font-size:10px;font-weight:800}.pwa-install-close{color:#9eaaa0;background:0 0;border:0;width:28px;height:28px;font-size:20px;line-height:1}.pwa-install-close:hover{color:#fff}@keyframes pwa-rise{0%{opacity:0;transform:translateY(12px)}}@media (max-width:680px){.pwa-install{left:16px;right:16px;bottom:calc(91px + env(safe-area-inset-bottom));border-radius:17px;grid-template-columns:44px 1fr auto auto;width:auto;padding:10px}.pwa-install img{border-radius:13px;width:44px;height:44px}.pwa-install span{max-width:48vw}.pwa-install-primary{min-width:44px;padding:0 10px}}@media (display-mode:standalone){body{padding-top:env(safe-area-inset-top)}.app-shell{min-height:calc(100vh - env(safe-area-inset-top))}.mobile-nav{bottom:max(11px,env(safe-area-inset-bottom))}}.public-page,.policy-page{max-width:1240px;min-height:100vh;margin:0 auto;padding:0 5vw 44px}.public-nav{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;min-height:82px;display:flex}.public-brand{color:var(--ink);letter-spacing:-.04em;align-items:center;gap:10px;font-size:20px;font-weight:800;text-decoration:none;display:inline-flex}.public-brand span{background:var(--ink);width:34px;height:34px;color:var(--lime);border-radius:10px;place-items:center;font-size:21px;display:grid}.public-nav>div{align-items:center;gap:20px;display:flex}.public-nav>div a{color:#5b675e;font-size:12px;font-weight:700;text-decoration:none}.public-nav>div .public-nav-action{background:var(--ink);color:#fff;border-radius:10px;padding:10px 14px}.public-hero{flex-direction:column;justify-content:center;min-height:560px;padding:90px 0 70px;display:flex}.public-hero h1{letter-spacing:-.08em;max-width:850px;margin:0;font-size:clamp(58px,8vw,108px);line-height:.9}.public-hero h1 em{z-index:0;font-style:normal;position:relative}.public-hero h1 em:after{content:"";z-index:-1;background:var(--lime);border-radius:3px;height:.3em;position:absolute;bottom:8px;left:-3px;right:-12px;transform:rotate(-1deg)}.public-hero>p:last-of-type{max-width:660px;color:var(--muted);margin:34px 0 0;font-size:17px;line-height:1.75}.public-actions{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.public-actions a{color:var(--ink);border:1px solid #c5ccc0;border-radius:11px;padding:13px 17px;font-size:12px;font-weight:750;text-decoration:none}.public-actions a:first-child{border-color:var(--ink);background:var(--ink);color:#fff}.public-feature-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.public-feature-grid article{background:var(--white);border:1px solid #d7ddd2;border-radius:20px;min-height:250px;padding:28px}.public-feature-grid article:nth-child(2){background:#e9f8e7}.public-feature-grid article:nth-child(3){background:#eeeafb}.public-feature-grid span{color:#7e897f;font:11px var(--font-geist-mono),monospace}.public-feature-grid h2{letter-spacing:-.05em;margin:52px 0 10px;font-size:24px}.public-feature-grid p{color:#5e6961;margin:0;font-size:13px;line-height:1.7}.public-data-note{background:var(--ink);color:#fff;border-radius:22px;grid-template-columns:.8fr 1.2fr;gap:60px;margin-top:14px;padding:40px;display:grid}.public-data-note h2{letter-spacing:-.05em;margin:0;font-size:31px}.public-data-note .eyebrow{color:var(--lime)}.public-data-note>p{color:#c5cdc6;margin:0;font-size:14px;line-height:1.8}.public-footer{color:#7b867d;justify-content:space-between;align-items:center;min-height:90px;font-size:11px;display:flex}.public-footer>span:last-child{flex-wrap:wrap;justify-content:flex-end;gap:18px;display:flex}.public-footer a{color:inherit}.policy-heading{border-bottom:1px solid var(--line);padding:78px 0 52px}.policy-heading h1{letter-spacing:-.075em;margin:0;font-size:clamp(50px,7vw,82px)}.policy-heading>p:last-child{color:var(--muted);margin:17px 0 0;font-size:12px}.policy-layout{grid-template-columns:210px minmax(0,760px);gap:70px;padding:54px 0 80px;display:grid}.policy-layout>aside{align-self:start;gap:12px;display:grid;position:sticky;top:24px}.policy-layout>aside a{color:#788279;font-size:11px;text-decoration:none}.policy-layout>aside a:hover{color:var(--ink)}.policy-content{min-width:0}.policy-content section{padding-bottom:38px;scroll-margin-top:30px}.policy-content h2{letter-spacing:-.04em;margin:0 0 15px;font-size:23px}.policy-content p,.policy-content li{color:#556159;font-size:14px;line-height:1.82}.policy-content p{margin:0 0 12px}.policy-content ul{margin:0 0 14px;padding-left:20px}.policy-content li+li{margin-top:7px}.policy-content b{color:var(--ink)}.policy-content code{color:#334137;font:12px var(--font-geist-mono),monospace;background:#e5e9df;border-radius:5px;padding:2px 5px}.policy-content a{color:#294f3a;text-underline-offset:3px}.launch-placeholder{background:#fff7e6;border-left:3px solid #e7a94d;border-radius:0 8px 8px 0;padding:11px 13px}.policy-table-wrap{background:#fff;border:1px solid #d9ded5;border-radius:12px;margin:16px 0 20px;overflow-x:auto}.policy-table-wrap table{border-collapse:collapse;width:100%;min-width:620px}.policy-table-wrap.wide table{min-width:780px}.policy-table-wrap th,.policy-table-wrap td{color:#556159;text-align:left;vertical-align:top;border-bottom:1px solid #e7eae4;padding:12px 13px;font-size:12px;line-height:1.65}.policy-table-wrap th{color:var(--ink);background:#f2f4ef;font-weight:750}.policy-table-wrap tr:last-child td{border-bottom:0}.drive-consent-summary{text-align:left;background:#f3f7ff;border:1px solid #d9e2f3;border-radius:11px;max-width:470px;margin:0 auto 14px;padding:13px 14px}.drive-consent-summary>b{color:#27394f;margin-bottom:7px;font-size:12px;display:block}.drive-consent-summary ul{margin:0;padding-left:18px}.drive-consent-summary li{color:#536176;font-size:11px;line-height:1.6}.drive-consent-summary li+li{margin-top:4px}.drive-consent-summary code{font-size:10px}.drive-connect .drive-consent-summary p{color:#667286;margin:8px 0 0;font-size:10px;line-height:1.5}.drive-consent-summary a,.upload-safety-note a{color:#465f87;text-underline-offset:2px;font-weight:700}@media (max-width:760px){.public-page,.policy-page{padding:0 18px 30px}.public-nav{min-height:68px}.public-brand{font-size:17px}.public-nav>div>a:first-child{display:none}.public-hero{min-height:520px;padding:70px 0 55px}.public-hero h1{font-size:clamp(52px,16vw,78px)}.public-hero>p:last-of-type{font-size:15px}.public-feature-grid{grid-template-columns:1fr}.public-feature-grid article{min-height:210px}.public-feature-grid h2{margin-top:35px}.public-data-note{grid-template-columns:1fr;gap:20px;padding:28px 22px}.policy-heading{padding:58px 0 38px}.policy-layout{padding:38px 0 50px;display:block}.policy-layout>aside{background:#e8ece4;border-radius:14px;grid-template-columns:repeat(2,1fr);margin-bottom:48px;padding:18px;position:static}.policy-content p,.policy-content li{font-size:14px}.app-footer{justify-content:center;margin-top:34px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}
