:root{--paper:#f0f1ec;--paper-2:#e7e8e1;--paper-3:#dcded5;--ink:#1b1e26;--ink-soft:#565c69;--ink-faint:#8b909b;--shu:#c8452f;--shu-soft:#e6d3ce;--ai:#33526e;--gold:#9c7a35;--line:rgba(27,30,38,0.12);--line-2:rgba(27,30,38,0.06);--shadow:0 1px 2px rgba(27,30,38,.06),0 8px 28px rgba(27,30,38,.10);--brand-icon:url(/lyra-icon.png);--display:"Hiragino Mincho ProN","Yu Mincho","Songti SC","Noto Serif JP",serif;--sans:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Segoe UI",system-ui,sans-serif;--mono:ui-monospace,"SF Mono",Menlo,monospace;--r:12px}@media (prefers-color-scheme:dark){:root{--paper:#14161b;--paper-2:#1a1d24;--paper-3:#22262f;--ink:#ecebe3;--ink-soft:#a2a8b4;--ink-faint:#6b7280;--shu:#e4634b;--shu-soft:#3a2723;--ai:#86aacb;--gold:#c6a25a;--line:rgba(236,235,227,0.14);--line-2:rgba(236,235,227,0.07);--shadow:0 1px 2px rgba(0,0,0,.4),0 10px 34px rgba(0,0,0,.5);--brand-icon:url(/lyra-icon-dark.png)}}.postit{background:color-mix(in srgb,var(--paper) 72%,var(--glass-strong))}.postit-label{color:var(--ai);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.postit-edit{width:22px;height:22px;border:0;border-radius:7px;color:var(--ink-faint);background:transparent;cursor:pointer;font-size:13px;line-height:1}.postit-edit svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.postit-edit:hover{color:var(--ai);background:color-mix(in srgb,var(--ai) 9%,transparent)}.postit-mini:hover{background:color-mix(in srgb,var(--ink) 7%,transparent)}.postit-del:hover{background:color-mix(in srgb,var(--shu) 9%,transparent)}.postit-resize.se,.postit-resize.sw{opacity:.52}.postit-confirm{margin:0 7px 7px;padding:7px 8px;border:0;border-radius:10px;background:color-mix(in srgb,var(--shu) 8%,var(--glass-soft))}.postit-confirm button{border:0;background:var(--glass-strong)}.postit-pill{padding:6px 7px 6px 11px;border:1px solid var(--glass-edge);box-shadow:0 10px 28px rgba(27,31,40,.15),inset 0 1px 0 rgba(255,255,255,.58)}.pill-k{color:var(--ai)}.pill-k .app-glyph{width:15px;height:15px}.pill-open{background:var(--ai)}.notesview{position:relative;overflow:hidden;background:radial-gradient(ellipse 56% 48% at 12% 8%,color-mix(in srgb,var(--gold) 10%,transparent),transparent 72%),radial-gradient(ellipse 62% 58% at 92% 88%,var(--ai-glow),transparent 74%),linear-gradient(145deg,var(--paper),color-mix(in srgb,var(--paper-2) 70%,var(--paper)))}.notesview .content-bar{position:relative;z-index:2;padding:17px 24px 10px;border:0;background:transparent}.notesview .board{position:relative;z-index:1}.notesview .board:before{content:"";position:absolute;z-index:-1;inset:-10px;pointer-events:none;opacity:.25;filter:blur(.75px);background-image:radial-gradient(color-mix(in srgb,var(--ink) 22%,transparent) 1.1px,transparent 1.1px);background-size:22px 22px;-webkit-mask-image:radial-gradient(ellipse 90% 90% at 50% 45%,#000 26%,rgba(0,0,0,.62) 70%,transparent 100%);mask-image:radial-gradient(ellipse 90% 90% at 50% 45%,#000 26%,rgba(0,0,0,.62) 70%,transparent 100%)}.mural{columns:260px;column-gap:16px}.mnote,.mnote:nth-child(3n),.mnote:nth-child(3n+1),.mnote:nth-child(3n+2){transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.card-filters select,.card-form.horizontal select,.qcard-taxonomy select{font:inherit;color:var(--ink);background:var(--glass-strong);border:1px solid var(--line);border-radius:9px;padding:7px 9px}.card-form.horizontal .card-category-input{flex:0 1 150px;min-width:120px}.card-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:var(--ink-soft);font-size:12px;padding:2px 0 4px}.card-filters span{margin-right:4px}.card-filters button{border:0;background:transparent;color:var(--shu);cursor:pointer;padding:6px}.multi-filter{position:relative}.multi-filter summary{min-width:132px;padding:7px 28px 7px 10px;border:1px solid var(--line);border-radius:9px;color:var(--ink);background:var(--glass-strong);cursor:pointer;list-style:none}.multi-filter summary::-webkit-details-marker{display:none}.multi-filter summary:after{content:"⌄";position:absolute;right:10px;color:var(--ink-faint)}.multi-filter-menu{position:absolute;z-index:30;top:calc(100% + 6px);left:0;min-width:190px;max-height:230px;overflow:auto;padding:7px;border:1px solid var(--glass-edge);border-radius:11px;background:var(--glass-strong);box-shadow:0 14px 34px rgba(20,24,30,.18);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.multi-filter-menu label{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:7px;color:var(--ink);cursor:pointer}.multi-filter-menu label:hover{background:var(--glass-soft)}.multi-filter-menu input{accent-color:var(--shu)}.cards-grid{grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:14px}.qcard-tags{position:absolute;top:9px;left:34px;right:34px;display:flex;gap:5px;align-items:center;overflow:hidden}.qcard-tags span{min-width:0;max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:2px 6px;border-radius:999px;color:var(--ink-soft);background:color-mix(in srgb,var(--ink) 6%,transparent);font:600 9px/1.4 var(--sans)}.qcard-tags span:last-child{margin-left:auto;color:var(--ai)}.qcard-taxonomy{display:grid;grid-template-columns:1fr auto;gap:6px}.qcard-taxonomy input{min-width:0;font-family:var(--sans);font-size:12px}.qcard-taxonomy select{min-width:68px;font-size:12px}.qcard-due{top:auto;bottom:10px}.qcard-hint{left:auto;right:12px}.qcard-del,.qcard-edit-trigger{position:absolute;z-index:5;top:8px;width:25px;height:25px;display:grid;place-items:center;padding:0;border:0;border-radius:8px;color:var(--ink-soft);background:color-mix(in srgb,var(--glass-strong) 88%,transparent);box-shadow:0 4px 12px rgba(27,31,40,.1);opacity:.72;cursor:pointer}.qcard-edit-trigger{left:8px;font-size:15px}.qcard-del{right:8px;font-size:17px}.qcard:hover .qcard-del,.qcard:hover .qcard-edit-trigger{opacity:1}.qcard-edit-trigger:hover{color:var(--ai)}.qcard-del:hover{color:var(--shu)}.qcard-inline-edit{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;gap:6px;padding:38px 10px 10px;border-radius:14px;background:var(--glass-strong);box-shadow:inset 0 0 0 1px var(--glass-edge),0 16px 38px rgba(27,31,40,.14)}.qcard-inline-edit input,.qcard-inline-edit textarea{min-width:0;border:1px solid var(--line);border-radius:7px;padding:5px 7px;color:var(--ink);background:var(--paper);font:inherit}.qcard-inline-edit textarea{flex:1 1;resize:none;font-size:11px}.qcard-edit-done{align-self:flex-end;border:0;border-radius:7px;padding:4px 9px;color:#fff;background:var(--ai);cursor:pointer}.qcard-confirm{position:absolute;z-index:8;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px;border-radius:14px;color:var(--ink);background:var(--glass-strong);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.qcard-confirm button{min-width:92px;border:0;border-radius:8px;padding:6px 10px;color:var(--ink);background:var(--paper-2);cursor:pointer}.qcard-confirm button:first-of-type{color:#fff;background:var(--shu)}.mnote-go{color:var(--ink-soft)}:root[data-theme=light]{--paper:#f0f1ec;--paper-2:#e7e8e1;--paper-3:#dcded5;--ink:#1b1e26;--ink-soft:#565c69;--ink-faint:#8b909b;--shu:#c8452f;--shu-soft:#e6d3ce;--ai:#33526e;--gold:#9c7a35;--line:rgba(27,30,38,0.12);--line-2:rgba(27,30,38,0.06);--shadow:0 1px 2px rgba(27,30,38,.06),0 8px 28px rgba(27,30,38,.10);--brand-icon:url(/lyra-icon.png)}:root[data-theme=dark]{--paper:#14161b;--paper-2:#1a1d24;--paper-3:#22262f;--ink:#ecebe3;--ink-soft:#a2a8b4;--ink-faint:#6b7280;--shu:#e4634b;--shu-soft:#3a2723;--ai:#86aacb;--gold:#c6a25a;--line:rgba(236,235,227,0.14);--line-2:rgba(236,235,227,0.07);--shadow:0 1px 2px rgba(0,0,0,.4),0 10px 34px rgba(0,0,0,.5);--brand-icon:url(/lyra-icon-dark.png)}*{box-sizing:border-box}.app-glyph{width:100%;height:100%;display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.icon-kicker{display:inline-flex;align-items:center;gap:7px}.icon-kicker .app-glyph{width:16px;height:16px}body,html{margin:0;padding:0;height:100%}body{background:radial-gradient(120% 80% at 50% -10%,var(--paper-2),var(--paper) 60%);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}.wrap{min-height:100vh}.app{width:100%;background:var(--paper);overflow:hidden;display:flex;flex-direction:column;height:100vh;height:100dvh}.topbar{height:58px;flex:0 0 58px;box-sizing:border-box;gap:16px;padding:8px 18px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper) 88%,var(--paper-2))}.brand,.topbar{display:flex;align-items:center}.brand{gap:9px;font-family:var(--display)}.brand .mark{width:31px;height:31px;flex:0 0 31px;border-radius:8px;background:var(--paper-2) var(--brand-icon) center/cover no-repeat;box-shadow:inset 0 0 0 1px var(--line)}.brand .name{font-size:19px;letter-spacing:.01em}.reader-header-settings{height:34px;display:flex;align-items:center;min-width:0}.reader-header-settings:empty{display:none}.reader-header-settings .reader-settings{padding-left:14px;border-left:1px solid var(--line)}.brightness-control,.reader-header-settings .mini{background:color-mix(in srgb,var(--paper-2) 70%,transparent)}.brightness-control{display:inline-flex;align-items:center;gap:6px;min-width:142px;padding:3px 7px;border:1px solid var(--line);border-radius:10px;color:var(--ink-soft)}.brightness-control>span{font-size:14px;line-height:1}.brightness-control input{width:72px;accent-color:var(--shu);cursor:pointer}.brightness-control button{min-width:36px;padding:2px 0;border:0;color:var(--ink-soft);background:transparent;font:inherit;font-size:10px;cursor:pointer}.brightness-control button:hover{color:var(--shu)}.spread{transition:filter .18s ease}.spacer{flex:1 1}.icon-btn{font:inherit;font-size:13px;cursor:pointer;color:var(--ink-soft);background:var(--paper-2);border:1px solid var(--line);border-radius:8px;padding:7px 11px;transition:.16s}.icon-btn:hover{color:var(--ink);border-color:var(--ink-faint)}.icon-btn.primary{background:var(--shu);color:#fff;border-color:var(--shu)}.icon-btn.primary:hover{filter:brightness(1.05)}.theme-switch{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--line);border-radius:9px;background:color-mix(in srgb,var(--paper-2) 72%,transparent)}.theme-switch button{width:27px;height:27px;display:grid;place-items:center;padding:0;border:0;border-radius:6px;color:var(--ink-faint);background:transparent;cursor:pointer}.theme-switch button:hover{color:var(--ink)}.theme-switch button[aria-pressed=true]{color:var(--ink);background:var(--glass-strong,var(--paper));box-shadow:0 2px 7px rgba(27,30,38,.1),inset 0 0 0 1px color-mix(in srgb,var(--ink) 7%,transparent)}.theme-switch svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.estante{flex:1 1;overflow-y:auto}.estante-head{padding:30px clamp(20px,4vw,40px) 6px}.kicker{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--shu);font-weight:600}.estante-head h1{font-family:var(--display);font-weight:600;font-size:clamp(26px,4vw,34px);margin:8px 0 4px;letter-spacing:.01em;text-wrap:balance}.estante-head p{color:var(--ink-soft);margin:0;max-width:60ch;font-size:14px;line-height:1.5}.subject-section{padding:18px clamp(20px,4vw,40px) 0}.subject-section-title{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.subject-section-title span{font-family:var(--display);font-size:15px;font-weight:600}.subject-section-title small{color:var(--ink-faint);font-size:11px}.subject-bar{display:flex;align-items:stretch;gap:9px;overflow-x:auto;padding:2px 2px 9px;scrollbar-width:thin}.subject-bar>button,.subject-create button{flex:0 0 auto;min-width:128px;display:grid;grid-template-columns:auto 1fr;align-items:center;text-align:left;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--paper) 88%,transparent);color:var(--ink-soft);padding:10px 12px;font:inherit;font-size:12px;cursor:pointer;white-space:nowrap;box-shadow:0 5px 18px rgba(27,30,38,.04)}.subject-bar>button strong{color:var(--ink);font-weight:620}.subject-bar>button.subject-all{grid-template-columns:1fr}.subject-bar>button.subject-all .subject-count{grid-column:1}.subject-bar>button.subject-unassigned{grid-template-columns:1fr}.subject-bar>button.subject-unassigned .subject-count{grid-column:1}.subject-item{position:relative;flex:0 0 auto;min-width:150px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--paper) 88%,transparent);box-shadow:0 5px 18px rgba(27,30,38,.04);overflow:visible}.subject-item>button:first-child{min-width:0;width:100%;display:grid;grid-template-columns:auto 1fr;align-items:center;text-align:left;border:0;border-radius:11px 0 0 11px;background:transparent;color:var(--ink-soft);padding:10px 4px 10px 12px;font:inherit;font-size:12px;cursor:pointer;white-space:nowrap}.subject-item>button:first-child strong{color:var(--ink);font-weight:620;overflow:hidden;text-overflow:ellipsis}.subject-more{align-self:center;width:25px;height:25px;margin:0 6px 0 2px;padding:0;border:0;border-radius:999px;background:color-mix(in srgb,var(--paper) 28%,transparent);color:var(--ink-faint);font:inherit;font-size:19px;line-height:18px;cursor:pointer}.subject-more:hover{color:var(--shu);background:color-mix(in srgb,var(--shu) 12%,transparent)}.subject-menu{position:fixed;z-index:100;min-width:108px;display:grid;gap:3px;padding:5px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--paper) 94%,transparent);box-shadow:0 12px 28px rgba(27,30,38,.16)}.subject-menu button{border:0;border-radius:8px;background:transparent;color:var(--ink);padding:7px 9px;text-align:left;font:inherit;font-size:12px;cursor:pointer}.subject-menu button:hover{background:color-mix(in srgb,var(--shu) 10%,transparent)}.subject-menu button.danger{color:var(--shu)}.subject-dialog-backdrop{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:20px;background:rgba(20,24,30,.38);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.subject-dialog{width:min(420px,100%);border:1px solid var(--glass-edge,var(--line));border-radius:22px;padding:24px;background:var(--glass-strong,var(--paper));box-shadow:0 24px 80px rgba(20,24,30,.28);color:var(--ink)}.subject-dialog-kicker{display:block;margin-bottom:7px;color:var(--shu);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.subject-dialog-kicker.danger{color:var(--shu)}.subject-dialog h2{margin:0;font-family:var(--display);font-size:23px;font-weight:600}.subject-dialog p{margin:9px 0 18px;color:var(--ink-soft);font-size:13px;line-height:1.55}.subject-dialog-label{display:block;margin-bottom:6px;color:var(--ink-faint);font-size:11px}.subject-dialog input{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:12px;padding:11px 13px;outline:none;background:color-mix(in srgb,var(--paper) 72%,transparent);color:var(--ink);font:inherit;font-size:14px}.subject-dialog input:focus{border-color:var(--shu);box-shadow:0 0 0 3px color-mix(in srgb,var(--shu) 14%,transparent)}.subject-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px}.subject-dialog-actions button{border:1px solid var(--line);border-radius:999px;padding:9px 14px;background:transparent;color:var(--ink-soft);font:inherit;font-size:12px;cursor:pointer}.subject-dialog-actions button:hover:not(:disabled){border-color:var(--ink-faint);color:var(--ink)}.subject-dialog-actions button.primary{border-color:var(--shu);background:var(--shu);color:#fff}.subject-dialog-actions button.danger{border-color:var(--shu);background:color-mix(in srgb,var(--shu) 12%,transparent);color:var(--shu)}.subject-dialog-actions button:disabled{cursor:default;opacity:.5}.subject-count{grid-column:2;margin-top:2px;color:var(--ink-faint);font-size:10px}.subject-bar>button.active,.subject-bar>button:hover,.subject-item:has(>button:first-child.active){border-color:color-mix(in srgb,var(--shu) 55%,var(--line));color:var(--shu);background:color-mix(in srgb,var(--shu) 8%,var(--paper))}.subject-bar>button i,.subject-item>button:first-child i{grid-row:1/3;width:8px;height:26px;margin-right:9px;display:inline-block;border-radius:999px}.subject-bar .subject-add{border-style:dashed}.subject-create{display:flex;align-items:center;gap:6px;flex:0 0 auto}.subject-create input{width:150px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);padding:7px 12px;font:inherit;font-size:12px;outline:none}.subject-create input:focus{border-color:var(--shu)}.subject-create button:disabled{opacity:.45;cursor:default}.grid{display:grid;gap:clamp(16px,2.4vw,26px);grid-template-columns:repeat(auto-fill,minmax(172px,1fr));padding:24px clamp(20px,4vw,40px) 40px}.book{cursor:pointer;gap:10px;border:0;background:none;padding:0;text-align:left;font:inherit;color:inherit}.book,.cover{display:flex;flex-direction:column}.cover{position:relative;aspect-ratio:3/4.2;border-radius:10px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);transition:transform .2s ease;justify-content:flex-end;padding:14px;color:#fff}.book:hover .cover{transform:translateY(-4px)}.cover .spine{position:absolute;left:0;top:0;bottom:0;width:6px;background:rgba(0,0,0,.18)}.cover .seal{position:absolute;top:12px;right:12px;width:30px;height:30px;border-radius:6px;border:1.5px solid rgba(255,255,255,.85);color:rgba(255,255,255,.92);display:grid;place-items:center}.cover .cover-title,.cover .seal{font-family:var(--display);font-size:15px}.cover .cover-title{line-height:1.3;font-weight:600;text-shadow:0 1px 6px rgba(0,0,0,.3);word-break:break-word}.progress{height:4px;border-radius:999px;background:var(--paper-3);overflow:hidden}.progress i{display:block;height:100%;background:var(--shu);border-radius:999px}.book-meta{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.book-meta .t{font-size:13.5px;font-weight:550;color:var(--ink);line-height:1.25;word-break:break-word}.book-meta .p{font-family:var(--mono);font-size:11px;color:var(--ink-faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.book-meta-main{min-width:0;display:flex;flex-direction:column;gap:4px}.book-meta-main select{width:fit-content;max-width:145px;border:0;padding:0;background:transparent;font:inherit;font-size:10.5px}.book-meta-main select,.import-card{color:var(--ink-faint);cursor:pointer}.import-card{border:1.5px dashed var(--line);border-radius:10px;aspect-ratio:3/4.2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:var(--paper-2);transition:.16s;font:inherit}.import-card:hover{border-color:var(--shu);color:var(--shu)}.import-card .plus{font-size:30px;font-weight:300;line-height:1}.import-card span{font-size:13px}.import-card:disabled{opacity:.6;cursor:default}.book-del{position:absolute;top:8px;left:8px;width:22px;height:22px;border-radius:50%;border:0;background:rgba(0,0,0,.4);color:#fff;font-size:15px;line-height:1;cursor:pointer;opacity:0;transition:opacity .12s;display:grid;place-items:center}.book:focus-within .book-del,.book:hover .book-del{opacity:1}.book-del:hover{background:var(--shu)}.book-confirm{position:absolute;inset:0;background:rgba(0,0,0,.62);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:12px;text-align:center;color:#fff;font-size:13px}.book-confirm-actions{display:flex;gap:8px}.book-confirm-actions button{font:inherit;font-size:12px;border:1px solid rgba(255,255,255,.4);background:transparent;color:#fff;border-radius:7px;padding:6px 12px;cursor:pointer}.book-confirm-actions .danger{background:var(--shu);border-color:var(--shu)}.empty{text-align:center;color:var(--ink-faint);padding:10px 20px 40px;font-size:14px}.reader{flex:1 1;display:flex;flex-direction:column;min-height:0}.reader-bar{height:51px;flex:0 0 51px;box-sizing:border-box;display:flex;gap:12px;padding:8px 16px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper) 90%,var(--paper-2));flex-wrap:nowrap}.back,.reader-bar{align-items:center}.back{font:inherit;font-size:13px;background:none;border:0;color:var(--ink-soft);cursor:pointer;display:inline-flex;gap:6px;white-space:nowrap}.back:hover{color:var(--ink)}.booktitle{font-family:var(--display);font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:26ch}.reader-actions,.reader-settings{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto}.reader-actions .icon-btn{display:inline-flex;align-items:center;gap:6px}.reader-actions .icon-btn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.timeline{flex:1 1;height:16px;position:relative;margin:0 4px;cursor:default;pointer-events:none;-webkit-user-select:none;user-select:none;min-width:60px;border:0;background:none;padding:0}.timeline .track{inset:7px 0;background:var(--paper-3)}.timeline .fill,.timeline .track{position:absolute;border-radius:999px}.timeline .fill{left:0;top:7px;bottom:7px;background:color-mix(in srgb,var(--ai) 55%,transparent)}.timeline .pin{position:absolute;top:50%;width:12px;height:12px;border-radius:50%;transform:translate(-50%,-50%);border:2px solid var(--paper);box-shadow:0 0 0 1px var(--line);background:var(--shu)}.mini{display:inline-flex;align-items:center;gap:2px;background:var(--paper-2);border:1px solid var(--line);border-radius:8px;padding:3px}.mini button{font:inherit;font-size:12px;border:0;background:none;color:var(--ink-soft);cursor:pointer;padding:4px 9px;border-radius:6px}.mini button[aria-pressed=true]{background:var(--paper);color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.08)}.mini button:disabled{opacity:.4;cursor:default}.mini .kanji{font-family:var(--display)}.canvas{position:relative;flex:1 1;min-width:0;display:flex}.canvas-scroll{flex:1 1;min-width:0;overflow:auto;display:grid;place-items:center;padding:24px;background:linear-gradient(0deg,var(--paper-2),var(--paper))}.nav-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:8;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 72%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:var(--ink);font-family:var(--display);font-size:26px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:var(--shadow);transition:opacity .15s,background .15s;opacity:.5}.canvas:hover .nav-arrow{opacity:1}.nav-arrow:hover{background:var(--paper);color:var(--shu)}.nav-arrow:active{transform:translateY(-50%) scale(.92)}.nav-arrow:disabled{opacity:.12;cursor:default}.nav-arrow.left{left:10px}.nav-arrow.right{right:10px}.spread{display:flex;gap:16px;align-items:flex-start}.page{position:relative;background:var(--paper);border:1px solid var(--line);border-radius:4px;box-shadow:var(--shadow);overflow:hidden}.page canvas{display:block}.page .folio{position:absolute;bottom:5px;left:0;right:0;text-align:center;font-family:var(--mono);font-size:10px;color:var(--ink-faint);pointer-events:none}.reader-msg{color:var(--ink-faint);font-size:14px}.review-save-error{position:absolute;z-index:4;top:16px;left:50%;transform:translateX(-50%);max-width:min(92%,460px);padding:9px 14px;border-radius:12px;color:var(--shu);background:var(--paper);box-shadow:var(--shadow);font-size:13px;text-align:center}.review-free-next:disabled,.review-grades button:disabled{opacity:.58;cursor:wait}.reader-pdf-repair{display:grid;justify-items:center;gap:14px;max-width:460px;margin:auto;text-align:center}.reader-pdf-repair p{margin:0}.reader-pdf-repair button{padding:11px 17px;border:1px solid var(--glass-edge);border-radius:14px;color:#fff;background:var(--shu);box-shadow:0 8px 22px rgba(35,40,50,.12);cursor:pointer;font:inherit;font-weight:650}.reader-pdf-repair button:disabled{opacity:.62;cursor:wait}.reader-pdf-repair .reader-pdf-repair-error{color:var(--shu)}.reader-main{flex:1 1;display:flex;min-height:0}.page.selecting{cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;outline:3px dashed color-mix(in srgb,var(--shu) 92%,transparent);outline-offset:0;box-shadow:var(--shadow)}.selbox{position:absolute;border:1.5px solid var(--shu);background:color-mix(in srgb,var(--shu) 14%,transparent);border-radius:2px;pointer-events:none}.side{width:300px;flex-shrink:0;border-left:1px solid var(--line);display:flex;flex-direction:column;background:var(--paper);min-height:0}.side-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--line);font-weight:600;font-size:14px}.side-close{font:inherit;font-size:12px;background:none;border:0;color:var(--ink-soft);cursor:pointer}.side-close:hover{color:var(--ink)}.side-body{flex:1 1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:12px}.side-empty{color:var(--ink-faint);font-size:13px;line-height:1.55;margin:4px 0}.crop{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--paper-2)}.crop img{display:block;width:100%;height:auto;background:#fff}.crop-meta{display:flex;align-items:center;justify-content:space-between;padding:6px 8px}.crop-goto{font-family:var(--mono);font-size:12px;background:none;border:0;color:var(--ink-soft);cursor:pointer}.crop-goto:hover{color:var(--ink)}.crop-del{font:inherit;font-size:12px;background:none;border:0;color:var(--shu);cursor:pointer}.rail{width:68px;flex-shrink:0;border-right:1px solid var(--line);background:var(--paper);align-items:stretch;gap:2px;padding:10px 8px}.rail,.rail button{display:flex;flex-direction:column}.rail button{width:100%;height:52px;border:0;background:none;cursor:pointer;border-radius:11px;align-items:center;justify-content:center;gap:3px;color:var(--ink-faint);transition:background .15s,color .15s}.rail button .k{width:20px;height:20px;display:grid;place-items:center}.rail button .l{font-size:8.5px;letter-spacing:.02em}.rail button:hover{background:var(--paper-2);color:var(--ink)}.rail button[aria-pressed=true]{background:color-mix(in srgb,var(--shu) 12%,var(--paper));color:var(--shu)}.rail button[aria-pressed=true] .l{font-weight:600}.toc-entry{display:flex;align-items:baseline;justify-content:space-between;gap:8px;width:100%;text-align:left;font:inherit;font-size:13px;background:none;border:0;color:var(--ink);cursor:pointer;padding:6px 8px;border-radius:6px}.toc-entry:hover:not(:disabled){background:var(--paper-2);color:var(--shu)}.toc-entry:disabled{color:var(--ink-faint);cursor:default}.toc-title{line-height:1.35}.toc-page{font-family:var(--mono);font-size:11px;color:var(--ink-faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.note{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--paper-2);display:flex;flex-direction:column}.note img{display:block;width:100%;height:auto;max-height:120px;object-fit:cover;object-position:top;background:#fff}.note-text{font:inherit;font-size:13px;color:var(--ink);background:var(--paper);border:0;border-top:1px solid var(--line);padding:8px 10px;resize:vertical;min-height:54px;line-height:1.5}.note-text::placeholder{color:var(--ink-faint)}.note-meta{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;border-top:1px solid var(--line)}.postit{position:absolute;z-index:6;min-width:72px;min-height:54px;display:flex;flex-direction:column;background:color-mix(in srgb,var(--gold) 20%,var(--paper));border:1px solid color-mix(in srgb,var(--gold) 55%,var(--line));border-radius:4px;box-shadow:0 4px 12px rgba(0,0,0,.18);overflow:hidden}.postit-resize{position:absolute;z-index:3;touch-action:none}.postit-resize.e,.postit-resize.w{top:24px;bottom:12px;width:10px;cursor:ew-resize}.postit-resize.e{right:-3px}.postit-resize.w{left:-3px}.postit-resize.s{left:12px;right:12px;bottom:-3px;height:10px;cursor:ns-resize}.postit-resize.se,.postit-resize.sw{bottom:0;width:16px;height:16px}.postit-resize.se{right:0;cursor:nwse-resize;background:linear-gradient(135deg,transparent 45%,color-mix(in srgb,var(--gold) 60%,var(--line)) 45% 70%,transparent 70%)}.postit-resize.sw{left:0;cursor:nesw-resize;background:linear-gradient(225deg,transparent 45%,color-mix(in srgb,var(--gold) 60%,var(--line)) 45% 70%,transparent 70%)}.postit:hover .postit-resize.e,.postit:hover .postit-resize.w{background:color-mix(in srgb,var(--gold) 22%,transparent);border-radius:999px}.postit-bar{display:flex;align-items:center;gap:4px;height:18px;padding:0 3px;cursor:grab;background:color-mix(in srgb,var(--gold) 40%,var(--paper));border-bottom:1px solid color-mix(in srgb,var(--gold) 40%,var(--line));touch-action:none}.postit-bar:active{cursor:grabbing}.postit-grip{height:7px;color:var(--ink);opacity:.3;background-image:radial-gradient(currentColor 1px,transparent 0);background-size:5px 5px}.postit-del,.postit-mini{width:16px;height:14px;border:0;background:transparent;color:var(--ink-soft);font-size:13px;line-height:1;cursor:pointer;border-radius:3px;display:grid;place-items:center}.postit-mini:hover{background:rgba(0,0,0,.08);color:var(--ink)}.postit-del:hover{background:color-mix(in srgb,var(--shu) 20%,transparent);color:var(--shu)}.postit textarea{display:block;width:100%;flex:1 1;min-height:52px;overflow-y:auto;resize:none;border:0;background:transparent;font:inherit;font-size:12.5px;line-height:1.45;padding:6px 8px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ink) 22%,transparent) transparent}.postit textarea::-webkit-scrollbar{width:8px}.postit textarea::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ink) 20%,transparent);border-radius:4px;border:2px solid transparent;background-clip:padding-box}.postit textarea::-webkit-scrollbar-track{background:transparent}.postit textarea::placeholder{color:color-mix(in srgb,var(--ink) 42%,transparent)}.postit textarea:focus{outline:none}.postit-preview{flex:1 1;min-height:52px;overflow:auto;padding:9px 11px 12px;color:var(--ink);font-size:12.5px;line-height:1.5;cursor:text}.postit-preview>.md{font-size:inherit;line-height:inherit}.postit-preview .md>:first-child{margin-top:0}.postit-preview .md>:last-child{margin-bottom:0}.postit-preview .md p{margin:.35em 0}.postit-preview .md table{width:100%;border-collapse:collapse;font-size:.9em}.postit-preview .md td,.postit-preview .md th{padding:3px 5px;border:1px solid color-mix(in srgb,var(--ink) 18%,transparent);text-align:left}.postit-empty{color:var(--ink-faint);font-style:italic}.postit.collapsed{min-width:0;max-width:none;width:auto;background:transparent;border:0;box-shadow:none;overflow:visible}.postit-pill{display:inline-flex;align-items:center;gap:5px;max-width:190px;cursor:grab;touch-action:none;background:color-mix(in srgb,var(--gold) 30%,var(--paper));border:1px solid color-mix(in srgb,var(--gold) 55%,var(--line));border-radius:999px;padding:3px 4px 3px 9px;box-shadow:0 2px 6px rgba(0,0,0,.15)}.postit-pill:active{cursor:grabbing}.pill-k{font-family:var(--display);font-size:12px;color:var(--gold)}.pill-t{font-size:11.5px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pill-open{width:16px;height:16px;border:0;border-radius:50%;background:var(--gold);color:#fff;font-size:11px;line-height:1;cursor:pointer;flex-shrink:0;display:grid;place-items:center;padding:0;line-height:0}.sel-actions{position:absolute;z-index:9;margin-top:6px;display:flex;flex-wrap:wrap;gap:4px;max-width:250px;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:5px;box-shadow:var(--shadow)}.sel-actions.up{margin-top:0;transform:translateY(calc(-100% - 6px))}.sel-actions button{font:inherit;font-size:12px;border:1px solid var(--line);background:var(--paper-2);color:var(--ink);padding:6px 9px;cursor:pointer}.sel-actions button:hover{border-color:var(--shu);color:var(--shu)}.sel-actions .sel-x{border:0;background:transparent;color:var(--ink-faint);padding:6px 8px}.sel-actions button.on{border-color:var(--shu);background:var(--shu-soft)}.selbox.pending{pointer-events:none}.page:has(.sel-actions){z-index:8;overflow:visible}.page:has(.sel-actions)>canvas{border-radius:inherit}.sel-actions{width:184px;max-width:none;margin:0;padding:6px;display:grid;grid-template-columns:1fr;gap:3px;overflow:visible;border:1px solid var(--glass-edge);border-radius:13px;color:var(--ink);background:color-mix(in srgb,var(--paper) 94%,var(--glass-strong));box-shadow:0 14px 34px rgba(20,24,30,.2),inset 0 1px 0 rgba(255,255,255,.5);backdrop-filter:blur(14px) saturate(115%);-webkit-backdrop-filter:blur(14px) saturate(115%)}.sel-actions.side-right{margin-left:8px}.sel-actions.side-left{margin-right:8px}.sel-actions.lower{transform:translateY(-100%)}.sel-actions:has(.cardgen){width:276px}.sel-actions button{width:100%;display:flex;align-items:center;gap:8px;padding:8px 9px;border:0;border-radius:8px;color:var(--ink-soft);background:transparent;text-align:left}.sel-actions button:hover{color:var(--ink);border-color:transparent;background:color-mix(in srgb,var(--ink) 7%,transparent)}.sel-actions .sel-action-main{color:var(--ink);background:color-mix(in srgb,var(--ai) 9%,transparent)}.sel-actions button.on{border:0;color:var(--shu);background:color-mix(in srgb,var(--shu) 10%,transparent)}.sel-actions button svg{width:15px;height:15px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.sel-actions .sel-x{position:absolute;top:-7px;right:-7px;width:20px;height:20px;display:grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:50%;color:var(--ink-soft);background:var(--paper);box-shadow:0 3px 9px rgba(20,24,30,.16)}.sel-actions .cardgen{margin-top:3px;padding:9px 7px 6px;border-top:1px solid color-mix(in srgb,var(--ink) 8%,transparent)}.sel-actions .cardgen-go{width:auto;min-height:32px;justify-content:center;padding:6px 12px;border:1px solid color-mix(in srgb,var(--shu) 40%,transparent);color:var(--shu);background:color-mix(in srgb,var(--shu) 12%,transparent);box-shadow:0 5px 14px color-mix(in srgb,var(--shu) 12%,transparent)}.sel-actions .cardgen-go:hover{color:var(--shu);border-color:color-mix(in srgb,var(--shu) 58%,transparent);background:color-mix(in srgb,var(--shu) 19%,transparent)}.cardgen{flex-basis:100%;width:100%;display:flex;flex-direction:column;gap:8px;margin-top:2px}.cardgen-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--ink);font-size:11.5px;font-weight:650}.cardgen-head small{color:var(--ink-faint);font-size:9.5px;font-weight:500}.cardgen textarea{width:100%;height:82px;min-height:82px;overflow-y:auto;resize:none;font:12px/1.5 var(--sans);background:color-mix(in srgb,var(--paper-2) 82%,var(--paper));border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:10px;padding:9px 10px;color:var(--ink);scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ink) 18%,transparent) transparent}.cardgen textarea:focus{outline:2px solid color-mix(in srgb,var(--ai) 20%,transparent);border-color:color-mix(in srgb,var(--ai) 36%,transparent)}.cardgen textarea::placeholder{color:var(--ink-faint)}.cardgen-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.cardgen-go{font:inherit;font-size:12px;background:var(--ai);color:#fff;border:0;border-radius:8px;padding:6px 14px;cursor:pointer}.cardgen-hint{font-size:9.5px;line-height:1.3;color:var(--ink-faint)}.toast{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);z-index:12;background:var(--ink);color:var(--paper);font-size:12.5px;padding:8px 14px;border-radius:999px;box-shadow:var(--shadow);max-width:80%;text-align:center}.cards-full{flex:1 1;min-width:0;min-height:0;background:var(--paper);display:flex;flex-direction:column}.cards-full.overlay{position:absolute;inset:0;z-index:15;flex:none}.popup-backdrop{position:fixed;inset:0;z-index:40;background:rgba(0,0,0,.42)}.popup{position:fixed;z-index:41;background:var(--paper);border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 80px rgba(0,0,0,.45);display:flex;flex-direction:column;overflow:hidden}.popup .cards-full-bar{cursor:move;touch-action:none;-webkit-user-select:none;user-select:none}.popup .cards-full-body{padding:16px clamp(14px,3vw,28px) 26px}.ask-fab{position:fixed;right:20px;bottom:20px;z-index:45;width:54px;height:54px;border-radius:50%;border:0;cursor:pointer;background:var(--ai);color:#fff;box-shadow:0 8px 24px rgba(0,0,0,.32);display:grid;place-items:center}.ask-fab-k{font-family:var(--display);font-size:22px}.ask-fab.busy{animation:askpulse 1.2s ease-in-out infinite}@keyframes askpulse{0%,to{box-shadow:0 8px 24px rgba(0,0,0,.32)}50%{box-shadow:0 8px 10px rgba(0,0,0,.2),0 0 0 7px color-mix(in srgb,var(--ai) 30%,transparent)}}.ask-badge{position:absolute;top:-3px;right:-3px;min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:var(--shu);color:#fff;font-size:11px;font-weight:700;display:grid;place-items:center;border:2px solid var(--paper)}.ask-dock{position:fixed;right:20px;bottom:20px;z-index:45;width:min(384px,92vw);background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 56px rgba(0,0,0,.42);display:flex;flex-direction:column;overflow:hidden}.ask-dock-head{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper) 90%,var(--paper-2));cursor:move;touch-action:none;-webkit-user-select:none;user-select:none}.ask-resize{position:absolute;right:0;bottom:0;width:18px;height:18px;z-index:3;cursor:nwse-resize;touch-action:none;background:linear-gradient(135deg,transparent 45%,color-mix(in srgb,var(--ink) 28%,transparent) 45% 68%,transparent 68%)}.ask-title{font-family:var(--display);font-weight:600;font-size:14px}.ask-dock-btn{font:inherit;font-size:12px;background:none;border:1px solid var(--line);color:var(--ink-soft);border-radius:7px;padding:3px 9px;cursor:pointer}.ask-dock-btn:hover{color:var(--ink);border-color:var(--ink-faint)}.ask-dock-body{flex:1 1;overflow-y:auto;padding:12px;gap:14px}.ask-dock-body,.ask-item{display:flex;flex-direction:column}.ask-item{gap:7px;padding-bottom:12px;border-bottom:1px dashed var(--line)}.ask-item:last-child{border-bottom:0;padding-bottom:0}.ask-crop{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--paper-2);position:relative;align-self:flex-start}.ask-crop.small img{max-width:160px;max-height:96px;object-fit:contain;display:block}.ask-crop-x{position:absolute;top:3px;right:3px;width:20px;height:20px;border-radius:50%;border:0;background:rgba(0,0,0,.5);color:#fff;font-size:13px;line-height:1;cursor:pointer}.ask-q{align-self:flex-end;max-width:90%;background:var(--shu-soft);color:var(--ink);border-radius:12px 12px 4px 12px;padding:8px 11px;line-height:1.5}.ask-a,.ask-q{font-size:13px;white-space:pre-wrap}.ask-a{align-self:flex-start;max-width:94%;background:var(--paper-2);border:1px solid var(--line);border-radius:12px 12px 12px 4px;padding:9px 12px;line-height:1.6;word-break:break-word}.ask-a.err{background:var(--shu-soft);color:var(--shu)}.ask-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ask-mini{font:inherit;font-size:11.5px;background:var(--paper);border:1px solid var(--line);color:var(--ink-soft);border-radius:8px;padding:4px 10px;cursor:pointer}.ask-mini:hover:not(:disabled){border-color:var(--shu);color:var(--shu)}.ask-mini:disabled{color:var(--ai);border-color:var(--ai);cursor:default}.ask-dock-compose{border-top:1px solid var(--line);padding:10px 12px;display:flex;flex-direction:column;gap:8px}.ask-compose-row{display:flex;align-items:flex-end;gap:6px}.ask-compose-row textarea{flex:1 1;min-width:0;font:inherit;font-size:13px;background:var(--paper-2);border:1px solid var(--line);border-radius:9px;padding:8px 10px;resize:none;min-height:40px;max-height:120px;line-height:1.45}.mainarea{flex:1 1;min-width:0;min-height:0;display:flex;flex-direction:column}.chatview,.mainarea{background:var(--paper)}.chatview .tutor{max-width:720px;width:100%}.chatview .tutor-top{border-bottom:0;padding:10px 4px 4px}.chatview .tutor-top .conv-select{color:var(--ink-soft);font-size:13px;padding:4px 6px}.chatview .tutor-top .conv-select:hover{color:var(--ink)}.chatview .tutor-quick{border-bottom:0;padding:2px 4px 10px}.chatview .tutor-scroll{padding:10px 6px 22px;gap:22px}.chatview .msg{max-width:100%;gap:4px}.chatview .msg.user{max-width:78%}.chatview .msg.assistant{max-width:100%}.chatview .msg.assistant .bubble{background:none;padding:0;font-size:14.5px;line-height:1.7}.chatview .msg.user .bubble{background:var(--paper-2);border:1px solid var(--line);font-size:13.5px;border-radius:13px 13px 4px 13px}.chatview .tutor-input{border-top:1px solid var(--line);padding:12px 6px 4px}.talker-out{white-space:pre-wrap;font-family:var(--display);font-size:14px;line-height:1.6}.md p{margin:0 0 8px}.md>:last-child{margin-bottom:0}.md ol,.md ul{margin:4px 0 8px;padding-left:20px}.md li{margin:2px 0}.md code{font-family:var(--mono);font-size:.88em;background:color-mix(in srgb,var(--ink) 9%,transparent);padding:1px 5px;border-radius:4px}.md strong{font-weight:700}.md em{font-style:italic}.seg{display:inline-flex;border:1px solid var(--line);border-radius:9px;overflow:hidden}.seg button{font:inherit;font-size:12px;padding:5px 11px;background:var(--paper);color:var(--ink-soft);border:0;border-left:1px solid var(--line);cursor:pointer}.seg button:first-child{border-left:0}.seg button:hover{color:var(--ink)}.seg button[aria-pressed=true]{background:var(--shu-soft);color:var(--shu);font-weight:600}.content-bar{display:flex;align-items:center;gap:8px;padding:11px 18px;border-bottom:1px solid var(--line)}.ca-kanji{width:20px;height:20px;display:grid;place-items:center;color:var(--shu)}.ca-title{font-weight:600;font-size:14px}.ca-count{font-size:12px;color:var(--ink-faint)}.board{flex:1 1;overflow-y:auto;padding:28px clamp(16px,3vw,26px) 40px;background-image:radial-gradient(color-mix(in srgb,var(--ink) 15%,transparent) 1.15px,transparent 1.2px);background-size:17px 17px;background-position:8px 8px}.mural{columns:240px;column-gap:24px}.mnote{page-break-inside:avoid;break-inside:avoid;margin:0 0 24px;width:100%;position:relative;display:flex;flex-direction:column;text-align:left;cursor:pointer;font:inherit;color:var(--ink);background:color-mix(in srgb,var(--gold) 16%,var(--paper));border:1px solid color-mix(in srgb,var(--gold) 45%,var(--line));border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.03),0 7px 16px rgba(27,30,38,.13);padding:21px 16px 13px;transition:transform .12s,box-shadow .12s}.mnote:nth-child(3n+1){transform:rotate(-1deg)}.mnote:nth-child(3n+2){transform:rotate(.7deg)}.mnote:nth-child(3n){transform:rotate(-.4deg)}.mnote:hover{transform:rotate(0deg) translateY(-2px);box-shadow:0 10px 22px rgba(27,30,38,.2)}.mnote-text{font-size:13px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.mnote-empty{color:var(--ink-faint);font-style:italic}.mnote-foot{margin-top:12px;display:flex;align-items:center;justify-content:space-between}.mnote-page{font-family:var(--display);font-size:11px;font-weight:600;color:var(--shu);letter-spacing:.02em}.mnote-go{font-size:11px;color:var(--ink-faint);opacity:0;transition:opacity .12s}.mnote:hover .mnote-go{opacity:1}.mtape{position:absolute;top:-8px;width:44px;height:16px;pointer-events:none;background:color-mix(in srgb,var(--shu) 22%,var(--paper));border-top:1px solid color-mix(in srgb,var(--shu) 16%,transparent);border-bottom:1px solid color-mix(in srgb,var(--shu) 16%,transparent);opacity:.9;-webkit-mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent);mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent)}.mtape.l{left:13px;transform:rotate(-7deg)}.mtape.r{right:13px;transform:rotate(6deg)}.cards-full-bar{display:flex;align-items:center;gap:14px;padding:12px 16px;border-bottom:1px solid var(--line)}.cards-title{font-family:var(--display);font-size:15px}.review-start.inline{width:auto;padding:8px 16px;font-size:13px}.cards-full-body{flex:1 1;overflow-y:auto;padding:16px clamp(16px,4vw,40px) 40px;display:flex;flex-direction:column;gap:16px}.card-form.horizontal{display:flex;flex-direction:row;gap:8px;align-items:stretch;flex-wrap:wrap;border-top:0}.card-form.horizontal input{flex:1 1;min-width:160px}.card-form.horizontal textarea{flex:2 1;min-width:220px;min-height:44px}.cards-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(154px,1fr))}.colecao-h{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--shu);font-weight:600;margin:6px 2px 2px}.crop-mini{font:inherit;font-size:11px;background:var(--paper-2);border:1px solid var(--line);color:var(--ink-soft);border-radius:6px;padding:3px 8px;cursor:pointer}.crop-mini:hover{border-color:var(--ai);color:var(--ai)}.qcard{position:relative;aspect-ratio:3/2;perspective:1000px;cursor:pointer;border:0;background:none;padding:0}.qcard-inner{position:absolute;inset:0;transition:transform .5s cubic-bezier(.2,.8,.2,1);transform-style:preserve-3d}.qcard.flipped .qcard-inner{transform:rotateY(180deg)}.qcard:hover .qcard-inner{transform:translateY(-2px) scale(1.03)}.qcard.flipped:hover .qcard-inner{transform:rotateY(180deg) translateY(-2px) scale(1.03)}.qcard-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:13px;border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px;text-align:center;overflow:hidden}.qcard-front{background:color-mix(in srgb,var(--gold) 14%,var(--paper))}.qcard-back{background:color-mix(in srgb,var(--ai) 16%,var(--paper));transform:rotateY(180deg)}.qcard-jp{font-family:var(--display);font-size:19px;line-height:1.3;color:var(--ink)}.qcard-hint{bottom:10px;font-size:10px;letter-spacing:.05em}.qcard-due,.qcard-hint{position:absolute;color:var(--ink-faint)}.qcard-due{top:8px;left:12px;font-size:9.5px;font-family:var(--mono)}.qcard-ans{font-size:13.5px;line-height:1.55;color:var(--ink);white-space:pre-wrap;max-height:100%;overflow:auto}.qcard-del{position:absolute;top:-9px;right:-9px;z-index:2;width:24px;height:24px;border-radius:50%;border:2.5px solid var(--ink);background:var(--paper);color:var(--ink);font-size:14px;line-height:1;cursor:pointer;opacity:0;transition:opacity .12s}.qcard:hover .qcard-del{opacity:1}.review-start.inline{border-radius:12px;border:2.5px solid var(--ai);background:var(--ai);color:#fff;box-shadow:3px 3px 0 color-mix(in srgb,var(--ai) 55%,var(--ink));font-weight:700}.review-start.inline:disabled{border-color:var(--line);background:var(--paper-3);color:var(--ink-faint);box-shadow:none}.regen{display:flex;gap:8px;align-items:flex-start;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:14px}.regen textarea{flex:1 1;min-width:220px;font:inherit;font-size:13px;background:var(--paper-2);border:1px solid var(--line);border-radius:9px;padding:8px 10px;color:var(--ink);resize:vertical;min-height:44px;line-height:1.45}.qcard-edit{position:relative;aspect-ratio:3/2;border:2px solid var(--ink);border-radius:18px;box-shadow:4px 4px 0 color-mix(in srgb,var(--ink) 80%,var(--paper));background:var(--paper);display:flex;flex-direction:column;gap:6px;padding:12px}.qcard-edit input{font-family:var(--display);font-size:18px}.qcard-edit input,.qcard-edit textarea{background:var(--paper-2);border:1px solid var(--line);border-radius:8px;padding:6px 8px;color:var(--ink)}.qcard-edit textarea{flex:1 1;font:inherit;font-size:12.5px;resize:none;line-height:1.45}.qcard-edit-actions{display:flex;align-items:center;justify-content:space-between}.qcard-edit-btn{position:absolute;top:-9px;left:-9px;z-index:2;border:2px solid var(--ink);background:var(--paper);color:var(--ink);font-size:10px;border-radius:999px;padding:2px 8px;cursor:pointer;opacity:0;transition:opacity .12s}.qcard:hover .qcard-edit-btn{opacity:1}.postit-confirm{display:flex;align-items:center;gap:6px;padding:5px 7px;border-top:1px solid color-mix(in srgb,var(--gold) 40%,var(--line));background:color-mix(in srgb,var(--shu) 12%,var(--paper));font-size:11.5px;color:var(--ink)}.postit-confirm button{font:inherit;font-size:11.5px;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:6px;padding:2px 9px;cursor:pointer}.postit-confirm button:first-of-type{background:var(--shu);border-color:var(--shu);color:#fff}.page.noting{cursor:crosshair}.review-start{width:100%;font:inherit;font-size:14px;font-weight:600;padding:10px;border-radius:9px;border:0;background:var(--ai);color:#fff;cursor:pointer}.review-start:disabled{background:var(--paper-3);color:var(--ink-faint);cursor:default}.card-form{display:flex;flex-direction:column;gap:6px;padding:10px 0;border-bottom:1px solid var(--line)}.card-form input,.card-form textarea{font:inherit;font-size:13px;background:var(--paper-2);border:1px solid var(--line);border-radius:8px;padding:8px 10px;color:var(--ink)}.card-form input{font-family:var(--display);font-size:15px}.card-form textarea{resize:vertical;min-height:54px;line-height:1.5}.card-form .icon-btn{justify-content:center;text-align:center}.fcard{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--paper-2)}.fcard-front{font-family:var(--display);font-size:16px;padding:8px 10px;color:var(--ink)}.fcard-back{font-size:12.5px;color:var(--ink-soft);padding:0 10px 8px;line-height:1.45;border-bottom:1px solid var(--line);white-space:pre-wrap}.fcard-meta{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;font-size:11px;color:var(--ink-faint)}.review{position:absolute;inset:0;z-index:20;background:var(--paper)}.review-bar{display:flex;align-items:center;gap:14px;padding:12px 16px;border-bottom:1px solid var(--line)}.review-count{font-size:12px;color:var(--ink-faint)}.review-body{flex:1 1;display:grid;place-items:center;padding:24px;overflow-y:auto}.review-empty{text-align:center;color:var(--ink-soft);display:flex;flex-direction:column;align-items:center;gap:14px}.review-kanji{width:54px;height:54px;color:var(--gold)}.review-card{width:100%;max-width:520px;background:var(--paper-2);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:28px;display:flex;flex-direction:column;gap:18px;align-items:center}.review-front{font-family:var(--display);font-size:30px;text-align:center;color:var(--ink);line-height:1.4}.review-divider{width:40px;height:2px;background:var(--shu);border-radius:2px}.review-back{font-size:16px;text-align:center;color:var(--ink-soft);line-height:1.6;white-space:pre-wrap}.review-show{font:inherit;font-size:14px;padding:10px 18px;border-radius:9px;border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer}.review-show:hover{border-color:var(--shu);color:var(--shu)}.review-grades{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:100%}.review-grades .g{font:inherit;font-size:13px;font-weight:600;padding:10px 6px;border-radius:9px;border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;display:flex;flex-direction:column;gap:3px;align-items:center}.review-grades .g small{font-weight:400;font-size:10px;color:var(--ink-faint)}.review-grades .again:hover{border-color:var(--shu);color:var(--shu)}.review-grades .easy:hover{border-color:var(--ai);color:var(--ai)}.review-grades .good:hover,.review-grades .hard:hover{border-color:var(--ink-faint)}.side-tutor{width:360px}.tutor{flex:1 1;min-height:0;display:flex;flex-direction:column}.tutor-top{display:flex;gap:6px;align-items:center;padding:8px 10px;border-bottom:1px solid var(--line)}.conv-select{flex:1 1;min-width:0;font:inherit;font-size:12.5px;padding:6px 8px;color:var(--ink)}.conv-btn,.conv-select{background:var(--paper-2);border:1px solid var(--line);border-radius:7px}.conv-btn{font:inherit;font-size:14px;width:30px;height:30px;flex-shrink:0;color:var(--ink-soft);cursor:pointer}.conv-btn:hover{color:var(--ink);border-color:var(--ink-faint)}.tutor-quick{display:flex;flex-wrap:wrap;gap:6px;padding:8px 10px;border-bottom:1px solid var(--line)}.tutor-quick button{font:inherit;font-size:11.5px;background:var(--paper-2);border:1px solid var(--line);color:var(--ink-soft);border-radius:999px;padding:5px 10px;cursor:pointer}.tutor-quick button:hover{border-color:var(--shu);color:var(--shu)}.talker-toggle{font-family:var(--display)}.tutor-quick .talker-toggle.on{background:var(--ai);border-color:var(--ai);color:#fff}.talker-hint{font-size:11px;color:var(--ink-faint);line-height:1.4;align-self:center;flex:1 1;min-width:160px}.talker-head{font-family:var(--display);font-size:13px;color:var(--ai);font-weight:600}.tutor-scroll{flex:1 1;overflow-y:auto;padding:12px;gap:12px}.msg,.tutor-scroll{display:flex;flex-direction:column}.msg{gap:5px;max-width:92%}.msg.user{align-self:flex-end;align-items:flex-end}.msg.assistant{align-self:flex-start}.msg .bubble{font-size:13px;line-height:1.55;padding:9px 12px;border-radius:12px;white-space:pre-wrap;word-break:break-word}.msg.user .bubble{background:var(--ai);color:#fff}.msg.assistant .bubble{background:var(--paper-2);border:1px solid var(--line);color:var(--ink)}.msg-imgs{display:flex;gap:6px;flex-wrap:wrap}.msg-imgs img{max-width:120px;max-height:90px;border-radius:8px;border:1px solid var(--line);background:#fff}.tutor-error{font-size:12.5px;color:var(--shu);background:var(--shu-soft);border-radius:8px;padding:8px 10px;line-height:1.45}.tutor-status{font-size:12px;color:var(--ai)}.tool-confirm{align-self:flex-start;max-width:90%;border:1.5px solid var(--gold);background:color-mix(in srgb,var(--gold) 12%,var(--paper));border-radius:12px;padding:10px 12px}.tool-confirm-h{font-weight:600;font-size:12.5px;color:var(--ink);margin-bottom:4px}.tool-confirm ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:3px}.tool-confirm li{font-size:12.5px;line-height:1.45;color:var(--ink-soft)}.tool-confirm-actions{display:flex;gap:8px;margin-top:9px}.tool-confirm-actions button{font:inherit;font-size:12.5px;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:8px;padding:5px 12px;cursor:pointer}.tool-confirm-actions .ok{background:var(--shu);border-color:var(--shu);color:#fff}.tutor-input{border-top:1px solid var(--line);padding:8px 10px;display:flex;flex-direction:column;gap:8px}.attach-row{display:flex;gap:6px;flex-wrap:wrap}.attach{position:relative}.attach img{width:54px;height:54px;object-fit:cover;object-position:top;border-radius:6px;border:1px solid var(--line);background:#fff}.attach button{position:absolute;top:-6px;right:-6px;width:18px;height:18px;border-radius:50%;border:0;background:var(--ink);color:var(--paper);font-size:12px;line-height:1;cursor:pointer}.tutor-compose{display:flex;align-items:flex-end;gap:6px}.attach-btn{font:inherit;font-size:11px;white-space:nowrap;background:var(--paper-2);border:1px solid var(--line);color:var(--ink-soft);border-radius:8px;padding:8px;cursor:pointer;flex-shrink:0}.attach-btn:hover{color:var(--shu);border-color:var(--shu)}.tutor-compose textarea{flex:1 1;min-width:0;font:inherit;font-size:13px;background:var(--paper-2);border:1px solid var(--line);border-radius:9px;padding:8px 10px;color:var(--ink);resize:none;min-height:40px;max-height:120px;line-height:1.45}.send-btn{font:inherit;font-size:13px;background:var(--shu);color:#fff;border:0;border-radius:9px;padding:9px 12px;cursor:pointer;flex-shrink:0}.send-btn:disabled{background:var(--paper-3);color:var(--ink-faint);cursor:default}@media (max-width:860px){.reader-main{flex-direction:column}.rail{border-right:0;border-bottom:1px solid var(--line);justify-content:center}.rail,.rail button{width:auto;flex-direction:row}.rail button{height:auto;padding:8px 12px}.side{width:auto;border-left:0;border-top:1px solid var(--line);max-height:45%}}.statusbar{display:flex;align-items:center;gap:14px;padding:8px 16px;border-top:1px solid var(--line);background:var(--paper-2);font-size:12px;color:var(--ink-soft);flex-wrap:wrap}.statusbar .folionum{font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.statusbar .save-hint{color:var(--ink-faint);display:inline-flex;align-items:center;gap:6px}.statusbar .save-hint b{color:var(--shu);font-weight:600}button{font-family:inherit}.book:focus-visible,.import-card:focus-visible,.timeline:focus-visible,button:focus-visible{outline:2px solid var(--shu);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important}}@media (max-width:700px){.wrap{padding:0}.app{border-radius:0;border:0;height:100vh}.booktitle{max-width:12ch}}:root{--glass:rgba(247,247,243,.68);--glass-strong:rgba(250,250,247,.84);--glass-soft:rgba(255,255,255,.46);--glass-edge:rgba(255,255,255,.72);--glass-shadow:0 24px 70px rgba(37,42,52,.18),0 3px 12px rgba(37,42,52,.08);--ai-glow:rgba(73,108,135,.22)}:root[data-theme=dark]{--glass:rgba(25,29,36,.66);--glass-strong:rgba(28,32,40,.86);--glass-soft:rgba(255,255,255,.06);--glass-edge:rgba(255,255,255,.13);--glass-shadow:0 28px 80px rgba(0,0,0,.52),0 3px 14px rgba(0,0,0,.32);--ai-glow:rgba(92,145,184,.25)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--glass:rgba(25,29,36,.66);--glass-strong:rgba(28,32,40,.86);--glass-soft:rgba(255,255,255,.06);--glass-edge:rgba(255,255,255,.13);--glass-shadow:0 28px 80px rgba(0,0,0,.52),0 3px 14px rgba(0,0,0,.32);--ai-glow:rgba(92,145,184,.25)}}.postit{color:var(--ink);background:color-mix(in srgb,var(--paper) 86%,var(--glass-strong));border:1px solid var(--glass-edge);border-radius:14px;box-shadow:0 16px 38px rgba(27,31,40,.18),inset 0 1px 0 rgba(255,255,255,.58);backdrop-filter:blur(18px) saturate(130%);-webkit-backdrop-filter:blur(18px) saturate(130%)}.postit-bar{min-width:156px;box-sizing:border-box;height:28px;padding:0 7px;background:transparent;border-bottom:1px solid color-mix(in srgb,var(--ink) 7%,transparent)}.postit-grip{flex:0 0 26px;height:6px;margin:0 auto;color:var(--ink-soft);opacity:.28}.postit-del,.postit-mini{width:22px;height:22px;color:var(--ink-faint);border-radius:7px}.postit-del{flex:0 0 22px;display:grid;place-items:center;visibility:visible;opacity:1}.postit-del svg{display:block;width:15px;height:15px}.postit textarea{padding:10px 12px 13px;color:var(--ink);font-size:13px;line-height:1.55}.postit textarea::placeholder{color:var(--ink-faint)}.postit-resize.e,.postit-resize.w{top:34px}.postit:hover .postit-resize.e,.postit:hover .postit-resize.w{background:color-mix(in srgb,var(--ai) 18%,transparent)}.postit-resize.se{background:linear-gradient(135deg,transparent 48%,color-mix(in srgb,var(--ai) 38%,transparent) 48% 60%,transparent 60%)}.postit-resize.sw{background:linear-gradient(225deg,transparent 48%,color-mix(in srgb,var(--ai) 38%,transparent) 48% 60%,transparent 60%)}.postit-pill{background:var(--glass-strong);border-color:var(--glass-edge);border-radius:12px;backdrop-filter:blur(16px) saturate(125%);-webkit-backdrop-filter:blur(16px) saturate(125%)}.notesview .board{background:transparent}.mnote,.mnote:nth-child(3n),.mnote:nth-child(3n+1),.mnote:nth-child(3n+2){margin-bottom:16px;padding:18px;transform:none;color:var(--ink);background:color-mix(in srgb,var(--glass-strong) 88%,transparent);border:1px solid var(--glass-edge);border-radius:18px;box-shadow:0 12px 30px rgba(27,31,40,.11),inset 0 1px 0 rgba(255,255,255,.54);backdrop-filter:blur(18px) saturate(125%);-webkit-backdrop-filter:blur(18px) saturate(125%)}.mnote:hover{transform:translateY(-3px);background:var(--glass-strong);box-shadow:0 18px 42px rgba(27,31,40,.16),inset 0 1px 0 rgba(255,255,255,.66)}.mnote-text{font-size:13.5px;line-height:1.65}.mnote-foot{margin-top:16px;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--ink) 8%,transparent)}.mnote-page{color:var(--ai);font-family:var(--sans);font-weight:650}.popup-backdrop{background:rgba(17,21,28,.36);backdrop-filter:blur(16px) saturate(115%);-webkit-backdrop-filter:blur(16px) saturate(115%)}.popup{background:var(--glass);border:1px solid var(--glass-edge);border-radius:26px;box-shadow:var(--glass-shadow);backdrop-filter:blur(28px) saturate(145%);-webkit-backdrop-filter:blur(28px) saturate(145%)}.ask-dock:before,.popup:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(145deg,rgba(255,255,255,.28),transparent 34%,transparent 72%,rgba(255,255,255,.08));z-index:0}.ask-dock>*,.popup>*{position:relative;z-index:1}.popup .cards-full-bar{padding:16px 20px;border-bottom:0;background:linear-gradient(180deg,var(--glass-soft),transparent)}.popup .cards-full-body{padding-top:10px}.regen{border:0;padding:10px;border-radius:18px;background:var(--glass-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--glass-edge) 70%,transparent)}.qcard-edit input,.qcard-edit textarea,.regen textarea{border:0;background:color-mix(in srgb,var(--glass-strong) 82%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 8%,transparent)}.qcard-edit,.qcard-face{border:1px solid var(--glass-edge);box-shadow:0 14px 34px rgba(35,40,50,.13),inset 0 1px 0 rgba(255,255,255,.42);background:color-mix(in srgb,var(--glass-strong) 88%,var(--paper));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.qcard-del,.qcard-edit-btn{border-width:1px;box-shadow:0 6px 18px rgba(20,24,30,.18)}.ask-dock{background:var(--glass);border:1px solid var(--glass-edge);border-radius:22px;box-shadow:var(--glass-shadow);backdrop-filter:blur(26px) saturate(145%);-webkit-backdrop-filter:blur(26px) saturate(145%)}.ask-dock-compose,.ask-dock-head{border:0;background:transparent}.ask-dock-head{padding:14px 16px 8px}.ask-dock-body{padding:10px 16px}.ask-item{border:0;padding:12px;border-radius:17px;background:var(--glass-soft)}.ask-a{border:0;background:color-mix(in srgb,var(--glass-strong) 78%,transparent);box-shadow:0 8px 22px rgba(35,40,50,.08)}.ask-q{background:color-mix(in srgb,var(--shu) 14%,var(--glass-strong))}.ask-dock-compose{margin:0 10px 10px;padding:10px;border-radius:16px;background:var(--glass-soft)}.ask-compose-row textarea{background:color-mix(in srgb,var(--glass-strong) 78%,transparent)}.ask-compose-row textarea,.ask-dock-btn,.ask-mini{border:0;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 8%,transparent)}.ask-dock-btn,.ask-mini{background:var(--glass-soft)}.chatview{position:relative;overflow:hidden;background:radial-gradient(ellipse 55% 46% at 18% 10%,color-mix(in srgb,var(--shu) 10%,transparent),transparent 70%),radial-gradient(ellipse 62% 55% at 88% 90%,var(--ai-glow),transparent 72%),linear-gradient(145deg,var(--paper),color-mix(in srgb,var(--paper-2) 72%,var(--paper)))}.chatview:after{content:"";position:absolute;z-index:0;inset:-8px;pointer-events:none;opacity:.28;filter:blur(.65px);background-image:linear-gradient(color-mix(in srgb,var(--ink) 13%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--ink) 13%,transparent) 1px,transparent 1px);background-size:30px 30px;-webkit-mask-image:radial-gradient(ellipse 86% 82% at 50% 46%,#000 20%,rgba(0,0,0,.68) 64%,transparent 100%);mask-image:radial-gradient(ellipse 86% 82% at 50% 46%,#000 20%,rgba(0,0,0,.68) 64%,transparent 100%)}.chatview .tutor{position:relative;z-index:1;max-width:860px;margin:18px auto;height:calc(100% - 36px);border:1px solid var(--glass-edge);border-radius:28px;background:var(--glass);box-shadow:var(--glass-shadow);backdrop-filter:blur(24px) saturate(135%);-webkit-backdrop-filter:blur(24px) saturate(135%);overflow:hidden}.chatview .tutor-top{padding:16px 18px 6px}.chatview .tutor-top .conv-select{background:var(--glass-soft);border:0;border-radius:12px;padding:8px 12px}.chatview .conv-btn{border:0;border-radius:11px;background:var(--glass-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 7%,transparent)}.chatview .tutor-quick{padding:6px 18px 12px}.chatview .tutor-quick button{border:0;background:var(--glass-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 7%,transparent)}.chatview .tutor-scroll{padding:18px 28px 26px;gap:20px}.chatview .msg.assistant .bubble{padding:16px 18px;border:1px solid var(--glass-edge);border-radius:18px 18px 18px 6px;background:var(--glass-soft);box-shadow:0 10px 30px rgba(35,40,50,.08)}.chatview .msg.user .bubble{border:0;border-radius:18px 18px 6px 18px;background:color-mix(in srgb,var(--shu) 15%,var(--glass-strong));box-shadow:0 10px 26px rgba(50,40,38,.09)}.chatview .tutor-input{margin:0 18px 18px;padding:10px;border:1px solid var(--glass-edge);border-radius:18px;background:var(--glass-soft);box-shadow:0 12px 32px rgba(35,40,50,.1)}.chatview .tutor-compose textarea{border:0;background:transparent;padding:10px 8px;box-shadow:none}.chatview .attach-btn{border:0;background:color-mix(in srgb,var(--glass-strong) 80%,transparent)}.chatview .send-btn{border-radius:13px;padding:11px 17px;box-shadow:0 8px 20px color-mix(in srgb,var(--shu) 24%,transparent)}.tutor-welcome{margin:auto;width:min(620px,100%);padding:30px 16px;display:flex;flex-direction:column;align-items:center;text-align:center}.tutor-orb{width:58px;height:58px;display:grid;place-items:center;border-radius:20px;font-family:var(--display);font-size:25px;background:linear-gradient(145deg,var(--glass-strong),var(--glass-soft));border:1px solid var(--glass-edge);box-shadow:0 16px 36px rgba(35,40,50,.14),inset 0 1px 0 rgba(255,255,255,.55)}.tutor-orb .app-glyph{width:28px;height:28px}.tutor-eyebrow{margin-top:18px;color:var(--shu);font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.tutor-welcome h2{margin:7px 0 8px;font-family:var(--display);font-size:clamp(25px,4vw,34px);font-weight:550;letter-spacing:-.02em}.tutor-welcome p{max-width:48ch;margin:0;font-size:13.5px;line-height:1.6}.tutor-starters{width:100%;margin-top:24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tutor-starters button{min-height:54px;padding:11px 14px;text-align:left;border:1px solid var(--glass-edge);border-radius:15px;background:var(--glass-soft);box-shadow:0 8px 22px rgba(35,40,50,.06);cursor:pointer;transition:transform .18s ease,background .18s ease,color .18s ease}.tutor-starters button:hover{transform:translateY(-2px);color:var(--ink);background:var(--glass-strong)}@media (max-width:700px){.chatview .tutor{margin:8px;height:calc(100% - 16px);border-radius:21px}.chatview .tutor-scroll{padding:12px 14px 18px}.chatview .tutor-input{margin:0 10px 10px}.tutor-welcome{padding:20px 4px}.tutor-starters{grid-template-columns:1fr}.popup{border-radius:20px}}:root,:root[data-theme=light]{--paper:#f3f2ed;--paper-2:#e9e8e1;--paper-3:#dcddd5;--ink:#191c22;--ink-soft:#424852;--ink-faint:#686f7a;--shu:#b94735;--shu-soft:#ead7d1;--ai:#2e526d;--gold:#896b30;--glass:rgba(248,248,244,.82);--glass-strong:rgba(252,252,249,.94);--glass-soft:rgba(255,255,255,.64);--glass-edge:rgba(255,255,255,.9)}.popup{color:var(--ink)}.popup .cards-title{color:var(--ink);font-weight:600}.popup .back{color:var(--ink-soft);font-weight:550}.popup .back:hover{color:var(--shu)}.popup .side-empty{color:var(--ink-soft)}.popup .qcard-edit input,.popup .qcard-edit textarea,.popup .regen textarea{color:var(--ink);background:var(--glass-strong)}.popup input::placeholder,.popup textarea::placeholder{color:var(--ink-faint);opacity:1}.popup .qcard-due,.popup .qcard-hint{color:var(--ink-soft);font-weight:550}.popup .qcard-ans{color:var(--ink)}.popup .cardgen-go{box-shadow:0 8px 20px color-mix(in srgb,var(--ai) 22%,transparent)}.qcard-inner{transition:transform .24s cubic-bezier(.2,.75,.25,1)}.qcard-face{transition:box-shadow .24s ease,border-color .24s ease,background .24s ease}.qcard:hover .qcard-inner{transform:translateY(-5px)}.qcard.flipped:hover .qcard-inner{transform:rotateY(180deg) translateY(-5px)}.qcard:hover .qcard-face{border-color:color-mix(in srgb,var(--ai) 26%,var(--glass-edge));box-shadow:0 20px 42px rgba(35,40,50,.18),0 3px 9px rgba(35,40,50,.08),inset 0 1px 0 rgba(255,255,255,.62)}.page-picker{width:310px}.page-picker-preview{height:290px;transition:height .28s ease}.page-picker.expanded{position:fixed;left:50%;bottom:50%;width:min(560px,calc(100vw - 40px));max-height:calc(100vh - 40px);transform:translate(-50%,50%)}.page-picker.expanded .page-picker-preview{height:min(52vh,560px)}.page-picker-preview img{display:block;max-width:100%;max-height:100%}.qcard-jp{max-width:100%;max-height:calc(100% - 54px);overflow:hidden;overflow-wrap:anywhere}.qcard-jp.latin{padding:0 4px;font-family:var(--sans);font-size:14.5px;font-weight:560;line-height:1.42;letter-spacing:0}.qcard-jp.latin.long{font-size:12.5px;line-height:1.38}.qcard:hover .qcard-jp{max-height:calc(100% - 62px)}.qcard-confirm{gap:5px;padding:11px;font-size:10.5px;line-height:1.3}.qcard-confirm button{min-width:68px;padding:4px 8px;border-radius:6px;font-size:10px}.qcard.prose-front{aspect-ratio:4/3}.qcard.long-front{aspect-ratio:5/4}.qcard.prose-front .qcard-jp{max-height:calc(100% - 48px);font-size:13.5px}.qcard.long-front .qcard-jp{max-height:calc(100% - 52px);font-size:12.5px;scrollbar-width:thin}.review-free-next{border:0;border-radius:10px;padding:10px 18px;color:#fff;background:var(--ai);cursor:pointer}.review-front.latin{font-family:var(--sans);font-size:clamp(17px,3vw,23px);line-height:1.45}.cards-full,.review{position:relative;inset:auto;flex:1 1;min-width:0;min-height:0;background-color:var(--paper);background-image:radial-gradient(color-mix(in srgb,var(--ink) 10%,transparent) .8px,transparent .9px);background-size:22px 22px;background-position:11px 11px}.review{z-index:1;display:flex;flex-direction:column}.cards-full-body,.review-body{background:transparent}.qcard:not(:hover) .qcard-face{border-color:var(--glass-edge);box-shadow:0 7px 18px rgba(27,31,40,.065),inset 0 1px 0 rgba(255,255,255,.42)}.cards-full-bar,.content-bar,.reader-bar,.review-bar,.statusbar,.topbar{border-top:0;border-bottom:0}.reader-bar,.topbar{box-shadow:0 7px 22px rgba(27,31,40,.045)}.cards-full-bar,.content-bar,.review-bar{position:relative;z-index:2;background:color-mix(in srgb,var(--glass-strong) 68%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.statusbar{background:color-mix(in srgb,var(--paper-2) 70%,var(--paper));box-shadow:inset 0 1px 0 color-mix(in srgb,var(--ink) 5%,transparent)}.qcard,.qcard.long-front,.qcard.prose-front{aspect-ratio:3/2}.qcard.long-front .qcard-jp,.qcard.prose-front .qcard-jp{max-height:calc(100% - 54px)}.qcard.long-front .qcard-jp{overflow-y:auto}.qcard>.qcard-del,.qcard>.qcard-edit-trigger,.qcard>.qcard-expand{width:21px;height:21px}.qcard>.qcard-del,.qcard>.qcard-edit-trigger{top:-10px}.qcard>.qcard-edit-trigger{left:-10px}.qcard>.qcard-del{right:-10px}.qcard>.qcard-expand{position:absolute;z-index:5;display:grid;place-items:center;padding:0;border:1px solid color-mix(in srgb,var(--ink) 20%,transparent);border-radius:50%;color:var(--ink-soft);background:color-mix(in srgb,var(--glass-strong) 76%,transparent);opacity:0;box-shadow:0 4px 12px rgba(27,31,40,.09);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;transition:opacity .28s ease,background .22s ease}.qcard:hover>.qcard-expand{opacity:1}.qcard>.qcard-expand:hover{color:var(--ink);border-color:color-mix(in srgb,var(--ink) 32%,transparent);background:color-mix(in srgb,var(--glass-strong) 94%,transparent)}.qcard-expand svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.card-zoom-backdrop{position:fixed;z-index:65;inset:0;display:grid;place-items:center;padding:24px;background:rgba(17,21,28,.35);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px)}.card-zoom{position:relative;width:min(620px,calc(100vw - 48px));height:min(400px,calc(100vh - 80px));perspective:1200px;cursor:pointer}.card-zoom-inner{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .48s cubic-bezier(.2,.7,.2,1)}.card-zoom.flipped .card-zoom-inner{transform:rotateY(180deg)}.card-zoom-face{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:auto;padding:48px;backface-visibility:hidden;border:1px solid var(--glass-edge);border-radius:24px;box-shadow:var(--glass-shadow);color:var(--ink);text-align:center;font-size:clamp(17px,3vw,25px);line-height:1.55}.card-zoom-face.front{background:color-mix(in srgb,var(--gold) 9%,var(--glass-strong))}.card-zoom-face.back{transform:rotateY(180deg);background:color-mix(in srgb,var(--ai) 11%,var(--glass-strong));font-size:clamp(14px,2.4vw,19px)}.card-zoom-face small{position:absolute;right:18px;bottom:15px;color:var(--ink-faint);font-size:10px}.card-zoom-category{left:20px;top:17px;font-size:10px}.card-zoom-category,.card-zoom-close{position:absolute;color:var(--ink-soft)}.card-zoom-close{z-index:4;top:-11px;right:-11px;width:26px;height:26px;border:1px solid var(--glass-edge);border-radius:50%;background:var(--glass-strong);cursor:pointer}.review-card{background:color-mix(in srgb,var(--gold) 9%,var(--glass-strong))}.review-card.revealed{background:color-mix(in srgb,var(--ai) 11%,var(--glass-strong))}:root[data-theme=light]{--paper:#eef0ec;--paper-2:#dfe3df;--paper-3:#cdd3cf;--ink:#151a20;--ink-soft:#3d4650;--ink-faint:#626d77;--line:rgba(21,26,32,.13);--line-2:rgba(21,26,32,.065);--glass:rgba(239,242,239,.78);--glass-strong:rgba(250,250,246,.95);--glass-soft:rgba(255,255,255,.56);--glass-edge:rgba(255,255,255,.88)}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--paper:#eef0ec;--paper-2:#dfe3df;--paper-3:#cdd3cf;--ink:#151a20;--ink-soft:#3d4650;--ink-faint:#626d77;--line:rgba(21,26,32,.13);--line-2:rgba(21,26,32,.065);--glass:rgba(239,242,239,.78);--glass-strong:rgba(250,250,246,.95);--glass-soft:rgba(255,255,255,.56);--glass-edge:rgba(255,255,255,.88)}}:root[data-theme=light] .cards-full,:root[data-theme=light] .review{background-color:#e3e7e3;background-image:radial-gradient(ellipse 55% 45% at 90% 8%,rgba(46,82,109,.09),transparent 72%),radial-gradient(rgba(21,26,32,.13) 1px,transparent 1.15px);background-size:auto,24px 24px}:root[data-theme=light] .qcard-face,:root[data-theme=light] .qcard:not(:hover) .qcard-face{color:#151a20;border-color:rgba(255,255,255,.96);box-shadow:0 9px 22px rgba(42,49,55,.13),inset 0 1px 0 #fff}:root[data-theme=light] .qcard-front{background:#f4ecdc}:root[data-theme=light] .qcard-back{background:#e1eaf0}:root[data-theme=light] .cards-full-bar,:root[data-theme=light] .review-bar{background:rgba(247,248,244,.82);box-shadow:0 8px 24px rgba(42,49,55,.07)}:root[data-theme=light] .canvas-scroll{background:linear-gradient(145deg,#d9dfdc,#e6e9e5)}:root[data-theme=light] .chatview{background:radial-gradient(ellipse 58% 52% at 88% 88%,rgba(46,82,109,.14),transparent 74%),linear-gradient(145deg,#e9ece8,#dfe5e2)}:root[data-theme=light] .chatview .tutor-input{background:rgba(252,252,248,.96)}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .cards-full,:root:not([data-theme=dark]) .review{background-color:#e3e7e3;background-image:radial-gradient(rgba(21,26,32,.13) 1px,transparent 1.15px);background-size:24px 24px}:root:not([data-theme=dark]) .qcard-front{background:#f4ecdc}:root:not([data-theme=dark]) .qcard-back{background:#e1eaf0}:root:not([data-theme=dark]) .canvas-scroll{background:linear-gradient(145deg,#d9dfdc,#e6e9e5)}:root:not([data-theme=dark]) .chatview{background:radial-gradient(ellipse 58% 52% at 88% 88%,rgba(46,82,109,.14),transparent 74%),linear-gradient(145deg,#e9ece8,#dfe5e2)}}.card-zoom-face{overflow-wrap:anywhere;word-break:break-word;white-space:pre-wrap}.card-zoom-face>div{width:100%;max-width:100%}.card-zoom.latin .card-zoom-face.front{font-family:var(--sans);font-size:clamp(16px,2.5vw,21px)}.card-zoom-face small{max-width:calc(100% - 32px);padding:3px 7px;border-radius:999px;color:var(--ink-soft);background:color-mix(in srgb,var(--glass-strong) 88%,transparent);line-height:1.3;white-space:normal}.card-zoom-face{backdrop-filter:blur(26px) saturate(120%);-webkit-backdrop-filter:blur(26px) saturate(120%)}.card-zoom-face.front{background:color-mix(in srgb,var(--gold) 8%,var(--paper))}.card-zoom-face.back{background:color-mix(in srgb,var(--ai) 10%,var(--paper))}.qcard>.qcard-expand{right:9px;bottom:9px;width:19px;height:19px}.qcard-expand svg{width:10px;height:10px}.postit-page-select{max-width:58px;height:20px;padding:0 4px;border:0;border-radius:6px;color:var(--ink-soft);background:color-mix(in srgb,var(--ink) 6%,transparent);font:10px var(--sans);cursor:pointer}.postit-page-select:focus{outline:1px solid color-mix(in srgb,var(--ai) 45%,transparent)}.postit[style*="position: fixed"]{pointer-events:auto;box-shadow:0 22px 50px rgba(27,31,40,.24),inset 0 1px 0 rgba(255,255,255,.64)}.page-picker-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.page-picker-tools button{color:var(--ink-soft);background:transparent}.page-picker-tools button.selected{color:var(--ai);background:color-mix(in srgb,var(--ai) 10%,transparent)}.page-picker-selection{margin:6px 0 10px;padding:7px 9px;border-radius:8px;color:var(--ink-soft);background:color-mix(in srgb,var(--ink) 5%,transparent);font-size:10.5px;line-height:1.45}.page-picker-tools .page-picker-icon{width:30px;height:30px;display:grid;place-items:center;padding:0;border:1px solid color-mix(in srgb,var(--ink) 11%,transparent);border-radius:9px;color:var(--ink-soft);background:color-mix(in srgb,var(--glass-strong) 62%,transparent)}.page-picker-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.page-picker-tools .page-select-dot{margin-left:auto;border-radius:50%}.page-select-dot>span{width:12px;height:12px;border:1.5px solid var(--ai);border-radius:50%;background:transparent;transition:background .18s ease,box-shadow .18s ease}.page-picker-tools .page-select-dot.selected{color:var(--ai);background:transparent}.page-select-dot.selected>span{background:var(--ai);box-shadow:inset 0 0 0 3px var(--glass-strong)}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ink) 18%,transparent) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-corner,::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{min-height:34px;border:3px solid transparent;border-radius:999px;background:color-mix(in srgb,var(--ink) 18%,transparent);background-clip:padding-box;-webkit-transition:background .2s ease;transition:background .2s ease}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--ink) 32%,transparent);background-clip:padding-box}::-webkit-scrollbar-thumb:active{background:color-mix(in srgb,var(--ai) 46%,transparent);background-clip:padding-box}.note-ai-editor{position:relative;z-index:2;padding:12px 18px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--ai) 5%,var(--glass-strong))}.note-ai-compose{display:flex;align-items:flex-end;gap:9px}.note-ai-compose textarea{flex:1 1;min-height:58px;max-height:130px;resize:vertical;border:1px solid var(--line);border-radius:11px;padding:9px 11px;color:var(--ink);background:var(--paper);font:12.5px/1.5 var(--sans)}.note-ai-compose button,.note-ai-draft-head button{border:0;border-radius:9px;padding:8px 11px;color:var(--ink);background:var(--paper-2);cursor:pointer}.note-ai-compose>button{color:#fff;background:var(--ai)}.note-ai-compose button:disabled,.note-ai-draft-head button:disabled{opacity:.45;cursor:default}.note-ai-error{display:block;margin-top:8px;color:var(--shu);font-size:11.5px}.note-ai-draft{margin-top:12px;overflow:hidden;border:1px solid var(--glass-edge);border-radius:14px;background:var(--paper);box-shadow:0 10px 28px rgba(27,31,40,.09)}.note-ai-draft-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border-bottom:1px solid var(--line);color:var(--ai);font-size:11px;font-weight:650}.note-ai-draft-head>div{display:flex;gap:7px}.note-ai-draft-head button:last-child{color:#fff;background:var(--ai)}.note-ai-preview{max-height:300px;overflow:auto;padding:18px;color:var(--ink);font-size:12.5px;line-height:1.65}@media (max-width:700px){.note-ai-compose{flex-direction:column;align-items:stretch}.note-ai-draft-head{align-items:flex-start;flex-direction:column}}.qcard-front{background:color-mix(in srgb,var(--gold) 9%,var(--glass-strong))}.qcard-back{background:color-mix(in srgb,var(--ai) 11%,var(--glass-strong))}.qcard-del,.qcard-edit-btn{color:var(--ink);background:var(--glass-strong);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.chatview .tutor{max-width:900px;margin:0 auto;height:100%;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;overflow:visible}.chatview .tutor-top{padding:18px 28px 4px}.chatview .tutor-top .conv-select{padding:7px 4px;color:var(--ink);font-weight:550;background:transparent;border-radius:0}.chatview .conv-btn{color:var(--ink-soft);background:transparent;box-shadow:none}.chatview .conv-btn-text{width:auto;padding:0 8px;font-size:11.5px}.chatview .conv-btn:hover{color:var(--shu);background:color-mix(in srgb,var(--shu) 8%,transparent)}.conv-delete-confirm{display:inline-flex;align-items:center;gap:6px;padding:4px 5px 4px 10px;border:1px solid color-mix(in srgb,var(--shu) 22%,var(--glass-edge));border-radius:11px;color:var(--ink-soft);background:color-mix(in srgb,var(--shu) 7%,var(--glass-soft));font-size:11px}.conv-delete-confirm button{border:0;border-radius:7px;padding:5px 8px;color:var(--ink-soft);background:transparent;cursor:pointer;font:inherit}.conv-delete-confirm .cancel:hover{color:var(--ink);background:var(--glass-soft)}.conv-delete-confirm .danger{color:#fff;background:var(--shu)}.conv-delete-confirm .danger:hover{filter:brightness(.94)}.chatview .tutor-quick{padding:4px 28px 8px}.chatview .tutor-quick button{padding:5px 0;color:var(--ink-soft);background:transparent;border-radius:0;box-shadow:none}.chatview .tutor-quick button:hover{color:var(--ai)}.chatview .tutor-quick .talker-toggle,.chatview .tutor-quick .talker-toggle.on{display:inline-flex;align-items:center;gap:8px;padding:3px 0;color:var(--ink-soft);background:transparent;box-shadow:none}.talker-mode{font-size:11.5px;transition:color .18s ease,font-weight .18s ease}.talker-toggle.on .talker-mode:last-child,.talker-toggle:not(.on) .talker-mode:first-child{color:var(--ink);font-weight:650}.talker-track{position:relative;width:38px;height:22px;flex:0 0 auto;border-radius:999px;background:color-mix(in srgb,var(--ink) 16%,var(--glass-strong));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 10%,transparent);transition:background .2s ease}.talker-thumb{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--glass-strong);box-shadow:0 2px 7px rgba(20,24,30,.24);transition:transform .22s cubic-bezier(.2,.75,.25,1),background .2s ease}.talker-toggle.on .talker-track{background:var(--ai)}.talker-toggle.on .talker-thumb{transform:translateX(16px);background:#fff}.chatview .tutor-scroll{padding:18px 28px 28px;gap:24px}.chatview .msg.assistant .bubble{max-width:72ch;padding:2px 0 2px 18px;color:var(--ink);border:0;border-left:2px solid color-mix(in srgb,var(--ai) 42%,transparent);border-radius:0;background:transparent;box-shadow:none}.chatview .msg.user .bubble{padding:11px 15px;color:var(--ink);border-radius:16px 16px 5px 16px;background:color-mix(in srgb,var(--shu) 11%,var(--glass-strong));box-shadow:0 7px 22px rgba(50,40,38,.07)}.chatview .tutor-input{margin:0 28px 22px;padding:9px;border-color:var(--glass-edge);background:var(--glass-strong);box-shadow:0 16px 42px rgba(35,40,50,.13),inset 0 1px 0 rgba(255,255,255,.68);backdrop-filter:blur(22px) saturate(130%);-webkit-backdrop-filter:blur(22px) saturate(130%)}.chatview .tutor-compose textarea{color:var(--ink)}.chatview .tutor-compose textarea::placeholder{color:var(--ink-faint);opacity:1}.tutor-welcome{padding-top:18px}.tutor-orb{width:50px;height:50px;border:0;border-radius:50%;color:var(--shu);background:color-mix(in srgb,var(--shu) 10%,transparent);box-shadow:none}.tutor-welcome h2,.tutor-welcome p{color:var(--ink)}.tutor-welcome p{color:var(--ink-soft)}.tutor-starters{max-width:560px;gap:0 24px;border-top:1px solid color-mix(in srgb,var(--ink) 10%,transparent)}.tutor-starters button{min-height:48px;padding:12px 2px;color:var(--ink-soft);border:0;border-bottom:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:0;background:transparent;box-shadow:none}.tutor-starters button:hover{transform:translateX(3px);color:var(--shu);background:transparent}.ask-dock{color:var(--ink);background:color-mix(in srgb,var(--paper) 92%,var(--glass-strong));border-color:color-mix(in srgb,var(--ink) 14%,var(--glass-edge));backdrop-filter:blur(20px) saturate(112%);-webkit-backdrop-filter:blur(20px) saturate(112%)}.ask-dock:before{opacity:.34}.ask-title{color:var(--ink)}.ask-dock-btn,.ask-mini{color:var(--ink-soft)}.ask-item{background:color-mix(in srgb,var(--paper-2) 94%,var(--glass-soft))}.ask-a,.ask-q{color:var(--ink)}.ask-a{background:color-mix(in srgb,var(--paper) 96%,var(--glass-strong))}.ask-q{background:color-mix(in srgb,var(--shu) 11%,var(--paper))}.ask-dock-compose{background:color-mix(in srgb,var(--paper-2) 94%,var(--glass-soft))}.ask-compose-row textarea{color:var(--ink);background:color-mix(in srgb,var(--paper) 96%,var(--glass-strong))}.ask-compose-row textarea::placeholder{color:var(--ink-faint);opacity:1}@media (max-width:700px){.chatview .tutor{margin:0;height:100%;border-radius:0}.chatview .tutor-top{padding:12px 14px 2px}.chatview .tutor-quick{padding-inline:14px}.chatview .tutor-scroll{padding:12px 16px 20px}.chatview .tutor-input{margin:0 10px 10px}.tutor-starters{grid-template-columns:1fr}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#14161b;--paper-2:#1a1d24;--paper-3:#22262f;--ink:#ecebe3;--ink-soft:#b3b8c2;--ink-faint:#858c98;--shu:#e4634b;--shu-soft:#3a2723;--ai:#8eb6d8;--gold:#c6a25a;--glass:rgba(25,29,36,.66);--glass-strong:rgba(28,32,40,.9);--glass-soft:rgba(255,255,255,.06);--glass-edge:rgba(255,255,255,.13)}}.qcard>.qcard-del,.qcard>.qcard-edit-trigger{top:8px;width:25px;height:25px;border:0;border-radius:8px;background:var(--glass-strong);opacity:.78;box-shadow:0 4px 12px rgba(27,31,40,.1)}.qcard>.qcard-edit-trigger{position:absolute;z-index:5;left:8px;display:grid;place-items:center;color:var(--ink-soft);cursor:pointer}.qcard>.qcard-del{right:8px;color:var(--ink-soft)}.qcard-face .qcard-tags{left:40px;right:40px}.qcard-face .qcard-due{top:auto;bottom:10px;left:12px}.qcard-face .qcard-hint{left:auto;right:12px}.attach-page{position:absolute;left:3px;bottom:3px;padding:1px 4px;border-radius:5px;color:#fff;background:rgba(20,24,30,.7);font-size:9px}.tutor-compose{position:relative}.page-picker{position:absolute;z-index:12;left:0;bottom:calc(100% + 10px);width:230px;padding:10px;border:1px solid var(--glass-edge);border-radius:16px;color:var(--ink);background:var(--glass-strong);box-shadow:var(--glass-shadow);backdrop-filter:blur(22px) saturate(130%);-webkit-backdrop-filter:blur(22px) saturate(130%)}.page-picker-actions,.page-picker-head{display:flex;align-items:center;justify-content:space-between;gap:7px;font-size:11px}.page-picker button{border:0;border-radius:7px;padding:5px 8px;color:var(--ink);background:var(--paper-2);cursor:pointer}.page-picker button:disabled{opacity:.4;cursor:default}.page-picker-preview{height:190px;margin:9px 0;display:grid;place-items:center;overflow:hidden;border-radius:10px;color:var(--ink-faint);background:color-mix(in srgb,var(--ink) 5%,transparent)}.page-picker-preview img{width:100%;height:100%;object-fit:contain}.page-picker-actions{justify-content:flex-end}.page-picker-actions button:last-child{color:#fff;background:var(--ai)}.note-visibility{display:inline-flex;align-items:center;gap:3px;padding:3px;border-radius:9px;color:var(--ink-soft);background:color-mix(in srgb,var(--glass-strong) 72%,transparent);box-shadow:inset 0 0 0 1px var(--line);font-size:10.5px}.note-visibility span{padding:0 5px}.note-visibility button{border:0;border-radius:6px;padding:4px 7px;color:var(--ink-soft);background:transparent;cursor:pointer;font-size:10.5px}.note-visibility button:hover{color:var(--ink);background:var(--glass-strong)}.postit{min-width:156px;min-height:92px}.postit-bar{flex:0 0 28px;overflow:visible}.postit-grip{flex:1 1;margin:0;min-width:8px}.postit-del,.postit-mini{flex:0 0 22px}.notesview .board{padding:24px clamp(18px,5vw,54px) 60px}.notebook{width:min(820px,100%);margin:0 auto;display:flex;flex-direction:column}.notebook .mnote,.notebook .mnote:nth-child(n){width:100%;margin:0;display:block;cursor:default;padding:clamp(20px,4vw,36px);border-radius:6px 18px 18px 6px;background:color-mix(in srgb,var(--glass-strong) 94%,transparent);border-left:4px solid color-mix(in srgb,var(--ai) 42%,var(--glass-edge));box-shadow:0 16px 44px rgba(27,31,40,.12),inset 0 1px 0 rgba(255,255,255,.6)}.mnote-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px;padding-bottom:12px;border-bottom:1px solid color-mix(in srgb,var(--ink) 9%,transparent)}.mnote-head .mnote-page{color:var(--ai);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.mnote-open{border:0;color:var(--ink-soft);background:transparent;cursor:pointer;font-size:11.5px}.mnote-open:hover{color:var(--shu)}.notebook .mnote-text{font-size:14px;line-height:1.72;text-align:left}.notebook .mnote-foot{justify-content:flex-end;margin-top:22px;padding-top:10px}.mnote-date{color:var(--ink-faint);font-size:10.5px}.md-table-wrap{width:100%;overflow-x:auto;margin:12px 0;border-radius:10px;border:1px solid var(--line)}.md-table-wrap table{width:100%;border-collapse:collapse;font-size:12.5px}.md-table-wrap td,.md-table-wrap th{padding:9px 11px;text-align:left;vertical-align:top;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.md-table-wrap th{color:var(--ink);background:color-mix(in srgb,var(--ai) 9%,var(--glass-soft));font-weight:650}.md-table-wrap td{color:var(--ink-soft);background:color-mix(in srgb,var(--glass-strong) 72%,transparent)}.md-table-wrap tr:last-child td{border-bottom:0}.md-table-wrap td:last-child,.md-table-wrap th:last-child{border-right:0}@media (max-width:900px){.note-visibility span{display:none}.note-visibility button{padding-inline:5px}}.qcard-face .qcard-due,.qcard-face .qcard-tags{opacity:0;transform:translateY(-3px);transition:opacity .32s ease,transform .36s cubic-bezier(.2,.7,.25,1)}.qcard-face .qcard-due{transform:translateY(3px);color:var(--shu);font-weight:700}.qcard:hover .qcard-due,.qcard:hover .qcard-tags{opacity:1;transform:translateY(0)}.qcard-face .qcard-hint{color:var(--ink-faint);opacity:.58;font-size:9.5px}.qcard:hover .qcard-hint{opacity:0}.qcard>.qcard-del,.qcard>.qcard-edit-trigger{top:-11px;width:23px;height:23px;border-radius:50%;opacity:0;transform:scale(.92);box-shadow:0 4px 12px rgba(27,31,40,.09);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:opacity .32s ease,transform .36s cubic-bezier(.2,.7,.25,1),background .28s ease}.qcard>.qcard-edit-trigger{left:-11px;color:var(--gold);border:1px solid color-mix(in srgb,var(--gold) 65%,transparent)}.qcard>.qcard-del,.qcard>.qcard-edit-trigger{background:color-mix(in srgb,var(--glass-strong) 58%,transparent)}.qcard>.qcard-del{right:-11px;color:var(--shu);border:1px solid color-mix(in srgb,var(--shu) 62%,transparent)}.qcard>.qcard-del svg,.qcard>.qcard-edit-trigger svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.qcard:hover>.qcard-del,.qcard:hover>.qcard-edit-trigger{opacity:1;transform:scale(1)}.qcard>.qcard-edit-trigger:hover{background:color-mix(in srgb,var(--gold) 10%,var(--glass-strong))}.qcard>.qcard-del:hover{background:color-mix(in srgb,var(--shu) 9%,var(--glass-strong))}.qcard-inner{transition-duration:.4s;transition-timing-function:cubic-bezier(.2,.7,.2,1)}.qcard-face{transition-duration:.4s}.qcard:hover .qcard-inner{transform:translateY(-3px)}.qcard.flipped:hover .qcard-inner{transform:rotateY(180deg) translateY(-3px)}.card-editor-backdrop{position:fixed;z-index:60;inset:0;display:grid;place-items:center;padding:20px;background:rgba(17,21,28,.34);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.card-editor{width:min(580px,100%);display:flex;flex-direction:column;gap:14px;padding:22px;color:var(--ink);background:var(--glass-strong);border:1px solid var(--glass-edge);border-radius:22px;box-shadow:var(--glass-shadow)}.card-editor-head{display:flex;align-items:center;justify-content:space-between;font-family:var(--display);font-size:17px;font-weight:600}.card-editor-head button{width:28px;height:28px;border:0;border-radius:50%;color:var(--ink-soft);background:var(--paper-2);cursor:pointer}.card-editor label{display:flex;flex-direction:column;gap:6px;color:var(--ink-soft);font-size:11px;font-weight:650;letter-spacing:.04em}.card-editor input,.card-editor select,.card-editor textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px 11px;color:var(--ink);background:var(--paper);font:13px/1.5 var(--sans)}.card-editor textarea{min-height:150px;resize:vertical}.card-editor-meta{display:grid;grid-template-columns:1fr 110px;gap:10px}.card-editor-save{align-self:flex-end;border:0;border-radius:10px;padding:9px 16px;color:#fff;background:var(--ai);cursor:pointer}@media (hover:none){.qcard>.qcard-del,.qcard>.qcard-edit-trigger{opacity:.78;transform:scale(.9)}}.mnote-head>div:first-child{min-width:0}.mnote-head h3{margin:5px 0 0;color:var(--ink);font-family:var(--display);font-size:18px;font-weight:580}.mnote-kind{color:var(--ai);font-size:9.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.mnote-actions{display:flex;gap:8px;flex:0 0 auto}.mnote-preview{display:-webkit-box;overflow:hidden;-webkit-line-clamp:4;-webkit-box-orient:vertical;color:var(--ink-soft)}.note-viewer-backdrop{position:fixed;z-index:70;inset:0;display:grid;place-items:center;padding:22px;background:rgba(17,21,28,.38);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.note-viewer{width:min(900px,100%);height:min(820px,calc(100vh - 44px));display:flex;flex-direction:column;overflow:hidden;color:var(--ink);background:var(--glass-strong);border:1px solid var(--glass-edge);border-radius:24px;box-shadow:var(--glass-shadow)}.note-viewer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px 26px 17px;border-bottom:1px solid var(--line)}.note-viewer-head>div:first-child{min-width:0;flex:1 1}.note-viewer-kicker{color:var(--ai);font-size:9.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.note-viewer h2{margin:5px 0 0;font-family:var(--display);font-size:clamp(21px,3vw,28px);font-weight:580}.note-viewer-head input{width:100%;margin-top:6px;border:0;border-bottom:1px solid var(--line);padding:5px 0;color:var(--ink);background:transparent;font:580 24px/1.3 var(--display)}.note-viewer-actions{display:flex;align-items:center;gap:7px}.note-viewer-actions button{border:0;border-radius:9px;padding:7px 10px;color:var(--ink-soft);background:var(--paper-2);cursor:pointer}.note-viewer-actions .note-viewer-close{width:31px;height:31px;padding:0;border-radius:50%;font-size:18px}.note-viewer-body{flex:1 1;overflow:auto;padding:clamp(24px,5vw,52px)}.note-viewer-body>.md{width:min(720px,100%);margin:0 auto;font-size:14.5px;line-height:1.75}.note-viewer-body .md h1,.note-viewer-body .md h2,.note-viewer-body .md h3{margin:1.5em 0 .6em;font-family:var(--display);line-height:1.3}.note-viewer-body .md h1:first-child,.note-viewer-body .md h2:first-child,.note-viewer-body .md h3:first-child{margin-top:0}.note-viewer-body textarea{width:100%;height:100%;min-height:420px;resize:none;border:0;outline:0;padding:0;color:var(--ink);background:transparent;font:13.5px/1.65 var(--mono)}@media (max-width:700px){.note-viewer-backdrop{padding:0}.note-viewer{height:100dvh;border-radius:0}.note-viewer-head{flex-direction:column;padding:16px}.note-viewer-actions{width:100%}.note-viewer-actions .note-viewer-close{margin-left:auto}.mnote-head{align-items:flex-start}.mnote-actions{flex-direction:column}}.mnote-delete{width:28px;height:28px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;color:var(--ink-faint);background:transparent;cursor:pointer;font-size:17px}.mnote-delete:hover{color:#fff;background:var(--shu)}.mnote-confirm{margin-top:16px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:11px;color:var(--ink);background:color-mix(in srgb,var(--shu) 8%,var(--glass-soft));font-size:12px}.mnote-confirm>div{display:flex;gap:7px}.mnote-confirm button{border:0;border-radius:8px;padding:6px 10px;color:var(--ink);background:var(--paper-2);cursor:pointer}.mnote-confirm button:first-child{color:#fff;background:var(--shu)}.postit.confirming-delete{min-height:148px}.postit.confirming-delete textarea{min-height:44px}.postit.confirming-delete .postit-confirm{flex:0 0 auto}.manual-card-form{padding:14px;border:1px solid var(--glass-edge);border-radius:16px;background:var(--glass-soft);box-shadow:0 10px 28px rgba(27,31,40,.08)}.note-eye{width:32px;height:32px;display:grid;place-items:center;padding:0;border:0;border-radius:9px;color:var(--ink-soft);background:transparent;cursor:pointer;transition:color .16s ease,background .16s ease}.note-eye:hover{color:var(--ai);background:color-mix(in srgb,var(--ai) 9%,transparent)}.note-eye svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.note-eye[aria-pressed=true]{color:var(--ink-faint)}.note-viewer{background:var(--glass);backdrop-filter:blur(24px) saturate(135%);-webkit-backdrop-filter:blur(24px) saturate(135%)}.note-viewer-head{background:color-mix(in srgb,var(--glass-soft) 82%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.note-viewer-body{background:var(--paper);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--ink) 5%,transparent)}.note-viewer-body>.md{color:var(--ink)}.notebook .mnote,.notebook .mnote:nth-child(n){padding:0;overflow:hidden;background:var(--glass)}.notebook .mnote-head{margin:0;padding:18px 22px 14px;background:color-mix(in srgb,var(--glass-soft) 82%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.notebook .mnote-text{margin:0;padding:20px 22px;color:var(--ink);background:var(--paper)}.notebook .mnote-foot{margin:0;padding:9px 22px 12px;background:var(--paper)}.notebook .mnote-confirm{margin:0;border-radius:0}.mnote-delete svg,.postit-del svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.qcard:hover>.qcard-del,.qcard:hover>.qcard-edit-trigger,.qcard>.qcard-del,.qcard>.qcard-edit-trigger{transform:none;transition:opacity .28s ease,background .22s ease,border-color .22s ease}.notebook .mnote:hover,.notebook .mnote:nth-child(n):hover{transform:translateY(-1px);box-shadow:0 14px 34px rgba(27,31,40,.13),inset 0 1px 0 rgba(255,255,255,.62)}.notesview .board{padding-inline:clamp(18px,4vw,52px)}.notebook{width:min(1180px,100%);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:18px}.notebook .mnote,.notebook .mnote:nth-child(n){min-width:0;min-height:270px;height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;border-radius:16px;border-left-width:1px}.notebook .mnote-head{min-height:82px;padding:16px 18px 13px;align-items:flex-start}.notebook .mnote-head h3{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:16px;line-height:1.3}.notebook .mnote-text{padding:18px;-webkit-line-clamp:6;font-size:13.5px;line-height:1.65}.notebook .mnote-foot{min-height:43px;padding:8px 14px 10px 18px;align-items:center;justify-content:space-between;border-top:1px solid color-mix(in srgb,var(--ink) 6%,transparent)}.mnote-actions{align-items:center;gap:3px}.mnote-read{padding:5px 7px;border-radius:7px;white-space:nowrap}.mnote-pdf,.mnote-read:hover{background:color-mix(in srgb,var(--ai) 8%,transparent)}.mnote-pdf{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:8px;padding:5px 7px;color:var(--ai);cursor:pointer;font:600 10.5px/1 var(--sans)}.mnote-pdf:hover{background:color-mix(in srgb,var(--ai) 14%,transparent)}.mnote-pdf svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}@media (max-width:820px){.notebook{grid-template-columns:1fr}.notebook .mnote{min-height:250px}}.estante{background-image:radial-gradient(circle,color-mix(in srgb,var(--ink) 10%,transparent) .75px,transparent .9px);background-size:24px 24px}.estante .empty,.estante .grid,.estante-head{position:relative;z-index:1}.mobile-card-home{display:none}.pwa-install{position:relative}.pwa-ios-help{position:absolute;z-index:80;top:calc(100% + 9px);right:0;width:260px;padding:11px 13px;border:1px solid var(--line);border-radius:10px;color:var(--ink);background:var(--paper);box-shadow:var(--shadow);font-size:12px;line-height:1.45}.notification-control{position:relative}.notification-bell{width:34px;height:34px;display:grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:10px;color:var(--ink-soft);background:var(--paper-2);font-size:22px;cursor:pointer}.notification-bell.on{color:var(--shu);background:color-mix(in srgb,var(--shu) 9%,var(--paper))}.notification-popover{position:absolute;z-index:120;top:calc(100% + 10px);right:0;width:min(330px,calc(100vw - 24px));display:grid;gap:12px;padding:18px;border:1px solid var(--glass-edge);border-radius:17px;color:var(--ink);background:color-mix(in srgb,var(--paper) 90%,transparent);box-shadow:0 24px 65px rgba(20,22,26,.22);backdrop-filter:blur(24px) saturate(130%);-webkit-backdrop-filter:blur(24px) saturate(130%)}.notification-head{display:flex;align-items:center;justify-content:space-between}.notification-head button{border:0;color:var(--ink-soft);background:transparent;font-size:20px}.notification-popover p{margin:-4px 0 2px;color:var(--ink-soft);font-size:11.5px;line-height:1.5}.notification-popover label{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--ink-soft);font-size:12px}.notification-popover select{padding:7px 9px;border:1px solid var(--line);border-radius:9px;color:var(--ink);background:var(--paper-2)}.notification-popover .notification-check{justify-content:flex-start;line-height:1.4}.notification-popover small{color:var(--gold)}.notification-save,.notification-update{min-height:39px;border:0;border-radius:10px;color:var(--paper);background:var(--ink);font-weight:650}.notification-update{color:var(--ink);background:var(--paper-2)}@media (max-width:700px){.app,.wrap,body,html{height:100%;min-height:100%}html{background:var(--paper)}.topbar{height:calc(50px + env(safe-area-inset-top));flex-basis:calc(50px + env(safe-area-inset-top));gap:8px;padding:calc(7px + env(safe-area-inset-top)) calc(12px + env(safe-area-inset-right)) 7px calc(12px + env(safe-area-inset-left))}.brand .name,.fullscreen-toggle,.reader-header-settings{display:none}.brand .mark{font-size:18px;padding:3px 5px}.pwa-install-button{padding:6px 9px;font-size:11px}.auth-signout{top:calc(8px + env(safe-area-inset-top));right:calc(54px + env(safe-area-inset-right));bottom:auto;left:auto;width:34px;height:34px;display:grid;place-items:center;padding:0;border-color:color-mix(in srgb,var(--ink) 10%,transparent);border-radius:10px;color:var(--ink-soft);background:color-mix(in srgb,var(--paper) 76%,transparent);box-shadow:0 5px 18px rgba(20,22,26,.1);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);font-size:0}.auth-signout:before{content:"↪";display:block;font-size:17px;line-height:1}.reader-bar{height:50px;flex-basis:50px;gap:7px;padding:7px 10px}.reader-bar .back{max-width:30px;overflow:hidden;font-size:0}.reader-bar .back:first-letter{font-size:25px}.booktitle{max-width:28vw;font-size:13px}.timeline{min-width:34px;margin:0}.reader-actions{gap:5px}.reader-actions .icon-btn{width:36px;height:36px;justify-content:center;padding:0;font-size:0}.reader-actions .icon-btn svg{width:18px;height:18px}.note-eye{width:34px;height:34px}.reader-main{position:relative;flex-direction:row;padding-bottom:calc(78px + env(safe-area-inset-bottom))}.rail{position:absolute;z-index:60;left:50%;right:auto;bottom:calc(8px + env(safe-area-inset-bottom));width:min(calc(100% - 20px),430px);height:62px;flex-direction:row;align-items:center;justify-content:space-around;gap:4px;padding:5px;border:1px solid color-mix(in srgb,var(--ink) 12%,var(--glass-edge));border-radius:22px;background:color-mix(in srgb,var(--paper) 88%,transparent);box-shadow:0 14px 38px rgba(18,21,25,.18),inset 0 1px 0 rgba(255,255,255,.55);backdrop-filter:blur(24px) saturate(140%);-webkit-backdrop-filter:blur(24px) saturate(140%);transform:translateX(-50%);transform-origin:center bottom;transition:transform .22s ease,opacity .18s ease}.rail:before{display:none}.rail button{position:relative;z-index:1;flex:1 1;width:auto;height:50px;flex-direction:column;gap:2px;padding:4px;border-radius:17px;transition:color .2s ease,background .2s ease,transform .2s ease,box-shadow .2s ease}.rail button:active{transform:scale(.94)}.rail button[aria-pressed=true]{color:var(--paper);background:var(--ink);box-shadow:0 7px 18px color-mix(in srgb,var(--ink) 24%,transparent)}.rail button .k{font-size:18px;line-height:1.05}.rail button .l{font-size:8.5px;font-weight:700;letter-spacing:.025em}.rail.keyboard-hidden{opacity:0;pointer-events:none;transform:translateX(-50%) translateY(calc(100% + 24px))}.canvas,.cards-full,.mainarea{width:100%}.canvas-scroll{padding:12px 7px 18px;align-items:start}.spread{gap:7px}.nav-arrow{top:auto;bottom:12px;width:38px;height:38px;transform:none;opacity:.72}.nav-arrow:active{transform:scale(.92)}.side{position:absolute;z-index:55;inset:0 0 calc(78px + env(safe-area-inset-bottom));max-height:none;border:0}.statusbar{display:none}.cards-full-bar{min-height:50px;padding:10px 14px}.cards-full-bar .seg,.cards-full-bar>.icon-btn,.cards-full-bar>.review-start,.cards-full-bar>.spacer{display:none}.cards-full-body{padding:14px 14px 28px;gap:14px}.mobile-card-home{display:grid;gap:14px}.mobile-card-summary{display:grid;gap:5px;padding:20px;border:1px solid var(--glass-edge);border-radius:18px;background:var(--glass-strong);box-shadow:0 12px 30px rgba(27,31,40,.08)}.mobile-card-summary span{color:var(--gold);font-size:10px;font-weight:750;letter-spacing:.14em;text-transform:uppercase}.mobile-card-summary strong{font-family:var(--display);font-size:25px;font-weight:560}.mobile-card-summary small{color:var(--ink-soft)}.mobile-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.mobile-card-actions button,.mobile-library-toggle{min-height:48px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;color:var(--ink);background:var(--glass-strong);font-weight:650}.mobile-card-actions button:first-child{grid-column:1/-1}.mobile-card-actions .primary{border-color:var(--ink);color:var(--paper);background:var(--ink)}.mobile-card-actions button:disabled{opacity:.4}.mobile-library-toggle{width:100%;min-height:40px;color:var(--ink-soft);background:transparent;font-size:12px}.cards-full-body:not(.library-open)>.card-filters,.cards-full-body:not(.library-open)>.cards-grid,.cards-full-body:not(.library-open)>.side-empty{display:none}.card-form.horizontal{display:grid;grid-template-columns:1fr;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--glass-soft)}.card-form.horizontal .card-category-input,.card-form.horizontal input,.card-form.horizontal textarea{min-width:0;width:100%}.cards-grid{grid-template-columns:1fr;gap:14px}.qcard{aspect-ratio:3/2}.qcard>.qcard-del,.qcard>.qcard-edit-trigger{opacity:0!important;pointer-events:none;transform:scale(.86)!important}.qcard:focus-within>.qcard-del,.qcard:focus-within>.qcard-edit-trigger{opacity:1!important;pointer-events:auto;transform:scale(1)!important}.chatview .tutor-top{padding:9px 12px 2px}.chatview .tutor-quick{flex-wrap:nowrap;overflow-x:auto;padding:5px 12px 8px;scrollbar-width:none}.chatview .tutor-quick::-webkit-scrollbar{display:none}.chatview .tutor-quick button{flex:0 0 auto}.chatview .talker-hint{display:none}.chatview .tutor-scroll{padding:10px 13px 18px;gap:16px}.chatview .msg{max-width:94%}.chatview .tutor-input{position:sticky;bottom:0;margin:0;padding:8px 10px 10px;border-radius:0;background:color-mix(in srgb,var(--paper) 94%,transparent);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.chatview .tutor-compose textarea{min-height:46px;padding:10px 7px;font-size:16px}.chatview .attach-btn{max-width:72px;padding:8px 6px;overflow:hidden;text-overflow:ellipsis}.chatview .send-btn{min-height:42px;padding:8px 10px}.tutor-welcome{padding:12px 2px}.tutor-orb{width:50px;height:50px}.tutor-starters{display:flex;overflow-x:auto;gap:8px;margin-top:16px;scroll-snap-type:x mandatory}.tutor-starters button{min-width:78%;scroll-snap-align:start}}@media (max-width:820px){html{background:var(--paper)}.auth-shell{position:relative;display:grid;place-items:center;min-height:100dvh;overflow:hidden;padding:calc(78px + env(safe-area-inset-top)) calc(18px + env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) calc(18px + env(safe-area-inset-left));background-color:#292923;background-image:radial-gradient(rgba(255,255,255,.16) .8px,transparent 1px),radial-gradient(ellipse 75% 58% at 50% 45%,rgba(196,163,93,.14),transparent 72%);background-size:22px 22px,auto}.auth-hero{position:absolute;inset:0;min-height:0;height:auto;padding:calc(14px + env(safe-area-inset-top)) calc(20px + env(safe-area-inset-right)) 20px calc(20px + env(safe-area-inset-left));color:#f5f1e8;background:transparent;pointer-events:none}.auth-features,.auth-hero:after,.auth-promise{display:none}.auth-brand{align-self:flex-start;gap:10px;font-size:20px}.auth-brand .mark{width:36px;height:36px;border-radius:10px;background:rgba(255,255,255,.08)}.auth-panel{position:relative;z-index:2;width:100%;min-height:0;padding:0;background:transparent}.auth-card{width:min(390px,100%);margin:auto;gap:16px;padding:25px 21px 21px;border:1px solid rgba(255,255,255,.25);border-radius:22px;color:#252520;background:rgba(248,246,239,.86);box-shadow:0 24px 70px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.72);backdrop-filter:blur(22px) saturate(115%);-webkit-backdrop-filter:blur(22px) saturate(115%)}.auth-form-head{margin-bottom:2px}.auth-form-head .auth-eyebrow{margin-bottom:9px;color:#8a6b2e;font-size:9px}.auth-form-head h2{color:#252520;font-size:28px}.auth-form-head p{margin-top:7px;color:#66665f;font-size:13px}.auth-card label{gap:7px;color:#66665f}.auth-card input{padding:13px 14px;border:1px solid rgba(37,37,32,.13);border-radius:11px;color:#252520;background:rgba(255,255,255,.56);font-size:16px}.auth-card input::placeholder{color:#8b8a82}.auth-card input:focus{border-color:rgba(37,37,32,.55);box-shadow:0 0 0 3px rgba(37,37,32,.07)}.auth-card .primary{color:#f7f4eb;background:#292923;box-shadow:0 10px 22px rgba(37,37,32,.2)}.auth-card .auth-mode{color:#62625b}.auth-card .auth-separator{background:rgba(37,37,32,.1)}.auth-shell{place-items:center;background-color:#24241f;background-image:radial-gradient(circle,rgba(255,255,255,.2) 1px,transparent 1.15px),radial-gradient(ellipse 78% 60% at 50% 48%,rgba(183,151,82,.13),transparent 70%);background-size:21px 21px,auto}.auth-hero{display:block;padding:0}.auth-brand{position:absolute;top:calc(15px + env(safe-area-inset-top));left:calc(18px + env(safe-area-inset-left));display:flex;align-items:center;color:#f6f2e8;font-size:19px}.auth-brand .mark{color:#f6f2e8;border-color:rgba(255,255,255,.34);background:rgba(255,255,255,.08)}.auth-panel{display:grid;place-items:center}.auth-card{color:#f7f3e9;border-color:rgba(255,255,255,.22);background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.065));box-shadow:0 28px 80px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.2);backdrop-filter:blur(28px) saturate(145%);-webkit-backdrop-filter:blur(28px) saturate(145%)}.auth-form-head .auth-eyebrow{color:#cfb36f}.auth-form-head h2{color:#f7f3e9}.auth-card label,.auth-form-head p{color:rgba(247,243,233,.68)}.auth-card input{color:#252520;border-color:rgba(255,255,255,.34);background:rgba(250,248,241,.92);-webkit-text-fill-color:#252520;box-shadow:inset 0 0 0 1000px rgba(250,248,241,.92)}}@media (max-width:820px){.auth-card input::placeholder{color:#77766f;-webkit-text-fill-color:#77766f}.auth-card input:focus{border-color:rgba(255,255,255,.72);box-shadow:inset 0 0 0 1000px #fff,0 0 0 3px rgba(255,255,255,.1)}.auth-card input:-webkit-autofill,.auth-card input:-webkit-autofill:focus,.auth-card input:-webkit-autofill:hover{-webkit-text-fill-color:#252520;caret-color:#252520;-webkit-transition:background-color 9999s ease-out;transition:background-color 9999s ease-out}.auth-card .primary{color:#24241f;background:#f4efe3;box-shadow:0 10px 28px rgba(0,0,0,.2)}.auth-card .auth-mode{color:rgba(247,243,233,.76)}.auth-card .auth-separator{background:rgba(255,255,255,.13)}.auth-message{color:#ffd2c8;background:rgba(200,69,47,.16)}}@media (max-width:700px){.chatview{background:var(--paper)}.chatview .tutor-top{min-height:45px;padding:8px 12px 4px;border:0}.chatview .conv-select{height:36px;border:0;border-radius:11px;background:color-mix(in srgb,var(--paper-2) 72%,transparent);box-shadow:inset 0 0 0 1px var(--line)}.chatview .conv-btn-text{width:auto;height:34px;padding:0 9px;border:0;background:transparent;font-size:11px}.chatview .tutor-quick{justify-content:center;padding:3px 12px 7px;border:0;overflow:visible}.chatview .talker-toggle{min-height:30px;padding:4px 9px;border:1px solid var(--line);background:transparent}.chatview .tutor-scroll{padding:12px 14px 20px}.chatview .tutor-welcome{align-items:flex-start;padding:22px 4px 10px;text-align:left}.chatview .tutor-orb{display:none}.chatview .tutor-eyebrow{margin-top:0}.chatview .tutor-welcome h2{margin-top:5px;font-size:26px}.chatview .tutor-welcome p{font-size:13px}.chatview .tutor-starters{width:calc(100% + 4px);display:grid;grid-template-columns:1fr 1fr;overflow:visible;gap:7px;margin-top:16px}.chatview .tutor-starters button{min-width:0;min-height:52px;padding:10px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--paper-2) 58%,transparent);box-shadow:none;font-size:11.5px;text-align:left}.chatview .msg .bubble{border-radius:15px;box-shadow:none}.chatview .msg.assistant .bubble{border-color:var(--line);background:color-mix(in srgb,var(--paper-2) 54%,transparent)}.chatview .msg.user .bubble{background:var(--ink)}.chatview .tutor-input{border-top:1px solid var(--line);background:color-mix(in srgb,var(--paper) 94%,transparent);box-shadow:0 -8px 20px color-mix(in srgb,var(--paper) 72%,transparent)}.chatview .tutor-compose{align-items:center;gap:5px;padding:3px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--paper-2) 62%,transparent)}.chatview .tutor-compose textarea{min-height:44px;padding:10px 7px;background:transparent}.chatview .attach-btn{border:0;background:transparent}.chatview .send-btn{min-width:44px;min-height:38px;border-radius:12px;background:var(--ink)}}.notebook{width:min(780px,100%);margin:0;grid-template-columns:minmax(0,1fr)}.notebook .mnote,.notebook .mnote:nth-child(n){min-height:250px}.note-viewer-head{background:color-mix(in srgb,var(--paper) 91%,var(--glass-strong));backdrop-filter:blur(14px) saturate(108%);-webkit-backdrop-filter:blur(14px) saturate(108%)}.notes-layout-toggle{display:inline-flex;gap:3px;padding:3px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--glass-strong) 72%,transparent)}.notes-layout-toggle button{border:0;border-radius:999px;padding:5px 10px;color:var(--ink-faint);background:transparent;font:inherit;font-size:10.5px;cursor:pointer}.notes-layout-toggle button.active{color:var(--ink);background:var(--glass-strong);box-shadow:0 2px 7px rgba(27,30,38,.1)}.notesview .board{min-width:0;overflow-x:hidden}.notes-notebook-view{position:relative;width:100%;min-width:0;min-height:min(650px,calc(100vh - 190px));display:grid;place-items:center;overflow:hidden;padding:36px clamp(46px,9vw,130px) 80px;box-sizing:border-box}.notes-notebook-paper{position:relative;width:min(820px,100%);min-height:min(520px,62vh);box-sizing:border-box;padding:clamp(26px,5vw,56px) clamp(26px,8vw,108px) clamp(26px,5vw,56px) clamp(26px,5vw,56px);border:1px solid var(--glass-edge);border-radius:8px 22px 22px 8px;color:var(--ink);background:color-mix(in srgb,var(--paper) 92%,var(--glass-strong));box-shadow:0 18px 48px rgba(27,31,40,.14),inset 0 1px 0 rgba(255,255,255,.5)}.notes-notebook-kicker{color:var(--ai);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.notes-notebook-paper h2{margin:10px 0 26px;font-family:var(--display);font-size:clamp(24px,3.2vw,34px);font-weight:580;line-height:1.2}.notes-notebook-content{color:var(--ink-soft);font-size:15px;line-height:1.8}.notes-notebook-content .md>:first-child{margin-top:0}.notes-notebook-content .md-table-wrap{margin:14px 0}.notes-notebook-actions{position:absolute;top:18px;right:18px;display:flex;gap:5px;margin:0}.notes-notebook-actions button{border:1px solid var(--line);border-radius:999px;padding:8px 12px;color:var(--ink-soft);background:var(--glass-soft);font:inherit;font-size:11px;cursor:pointer}.notes-notebook-actions button:hover{color:var(--ink);border-color:var(--ai)}.notes-notebook-actions .notes-notebook-icon{width:32px;height:32px;padding:0;display:grid;place-items:center;border-radius:50%}.notes-notebook-actions .notes-notebook-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.notes-notebook-actions .notes-notebook-icon.danger:hover{color:var(--shu);border-color:var(--shu)}.notes-notebook-arrow{position:absolute;top:50%;z-index:2;width:42px;height:42px;border:1px solid var(--glass-edge);border-radius:50%;color:var(--ink-soft);background:var(--glass-strong);box-shadow:0 8px 24px rgba(27,31,40,.12);font-size:27px;line-height:1;cursor:pointer;transform:translateY(-50%)}.notes-notebook-arrow.left{left:clamp(12px,4vw,56px)}.notes-notebook-arrow.right{right:clamp(12px,4vw,56px)}.notes-notebook-arrow:hover:not(:disabled){color:var(--ink);border-color:var(--ai);transform:translateY(-50%) scale(1.05)}.notes-notebook-arrow:disabled{cursor:default;opacity:.28}.notes-page-thumbnail{position:absolute;left:18px;top:18px;width:148px;padding:5px;border:1px solid var(--glass-edge);border-radius:10px;background:var(--glass-strong);box-shadow:0 8px 22px rgba(27,31,40,.15);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.notes-page-thumbnail:hover{z-index:4;transform:translateY(-2px) scale(1.06);box-shadow:0 16px 34px rgba(27,31,40,.24)}.notes-page-thumbnail img{display:block;width:100%;height:178px;object-fit:cover;object-position:top;border-radius:6px;background:var(--paper-2)}.notes-page-thumbnail span{display:grid;place-items:center;height:178px;color:var(--ink-faint);font-size:9px;text-align:center}.notes-page-thumbnail small{display:block;padding:5px 2px 1px;color:var(--ink-faint);font-size:9px;text-align:right}.notes-notebook-confirm{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-top:14px;padding:9px 11px;border-radius:10px;color:var(--ink-soft);background:color-mix(in srgb,var(--shu) 8%,var(--glass-soft));font-size:11px}.notes-notebook-confirm button{border:0;border-radius:7px;padding:6px 9px;color:var(--ink);background:var(--paper-2);font:inherit;font-size:11px;cursor:pointer}.notes-notebook-confirm button:first-of-type{color:#fff;background:var(--shu)}.notes-notebook-counter{position:absolute;bottom:28px;left:50%;color:var(--ink-faint);font-size:10px;transform:translateX(-50%)}.notesview .notebook{width:min(1160px,100%);margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:16px}.notesview .notebook .mnote,.notesview .notebook .mnote:nth-child(n){min-height:238px;width:auto;margin:0;display:flex;flex-direction:column;border:1px solid var(--glass-edge);border-top:3px solid color-mix(in srgb,var(--ai) 62%,var(--glass-edge));border-radius:16px;background:color-mix(in srgb,var(--glass-strong) 90%,transparent);box-shadow:0 12px 30px rgba(27,31,40,.1),inset 0 1px 0 rgba(255,255,255,.54)}.notesview .notebook .mnote:hover{transform:translateY(-4px)}.notesview .notebook .mnote-head{min-height:61px;margin:0;padding:16px 17px 12px}.notesview .notebook .mnote-head h3{font-size:16px;line-height:1.25}.notesview .notebook .mnote-text{flex:1 1;min-height:92px;max-height:170px;overflow:hidden;padding:15px 17px;font-size:13px;line-height:1.6;background:color-mix(in srgb,var(--paper) 62%,transparent)}.notesview .notebook .mnote-foot{margin-top:auto;padding:10px 17px 13px}.notesview .notebook .mnote-confirm{margin:0;border-radius:0 0 15px 15px}.note-viewer-body.editing{background:var(--paper-2)}@media (max-width:980px){.notesview .notebook{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.notesview .notebook{grid-template-columns:1fr;gap:13px}.notesview .notebook .mnote{min-height:220px}.notesview .content-bar{flex-wrap:wrap;gap:7px}.notes-layout-toggle{margin-left:auto}.notes-notebook-view{min-height:calc(100vh - 180px);padding:20px 14px 70px}.notes-notebook-paper{min-height:520px;padding:58px 22px 26px}.notes-notebook-arrow{top:auto;bottom:76px;transform:none}.notes-notebook-arrow.left{left:22px}.notes-notebook-arrow.right{right:22px}.notes-notebook-arrow:hover:not(:disabled){transform:scale(1.05)}.notes-page-thumbnail{left:14px;top:12px;width:108px}.notes-page-thumbnail:hover{transform:translateY(-2px) scale(1.04)}.notes-page-thumbnail img,.notes-page-thumbnail span{height:96px}.notes-notebook-counter{bottom:84px}}.canvas-scroll,:root:not([data-theme]) .canvas-scroll,:root[data-theme=dark] .canvas-scroll,:root[data-theme=light] .canvas-scroll{background-color:var(--paper-2);background-image:linear-gradient(color-mix(in srgb,var(--ink) 6%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--ink) 6%,transparent) 1px,transparent 1px),linear-gradient(145deg,color-mix(in srgb,var(--paper-2) 88%,var(--paper)),var(--paper));background-size:32px 32px,32px 32px,100% 100%;background-position:50%}.qcard:hover .qcard-face{border-color:color-mix(in srgb,var(--shu) 18%,var(--glass-edge));box-shadow:0 18px 38px rgba(35,40,50,.14),0 0 30px color-mix(in srgb,var(--shu) 13%,transparent),0 0 8px color-mix(in srgb,var(--shu) 8%,transparent),inset 0 1px 0 rgba(255,255,255,.6)}.qcard .qcard-jp.latin,.qcard:hover .qcard-jp.latin{width:100%;max-height:calc(100% - 44px);padding:2px 9px 5px;overflow-x:hidden;overflow-y:auto;font-size:clamp(12px,.95vw,13.5px);line-height:1.38;white-space:normal;text-wrap:pretty;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--ink) 17%,transparent) transparent}.qcard .qcard-jp.latin.long,.qcard:hover .qcard-jp.latin.long{font-size:clamp(11px,.86vw,12.25px);line-height:1.35}.qcard .qcard-jp.latin::-webkit-scrollbar{width:5px}.qcard .qcard-jp.latin::-webkit-scrollbar-track{background:transparent}.qcard .qcard-jp.latin::-webkit-scrollbar-thumb{border-radius:999px;background:color-mix(in srgb,var(--ink) 17%,transparent)}.auth-shell{min-height:100dvh;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);color:var(--ink);background:var(--paper)}.auth-hero{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;overflow:hidden;padding:clamp(34px,5vw,72px);color:#f5f1e8;background-color:#252520;background-image:radial-gradient(rgba(255,255,255,.13) 1px,transparent 1.15px),radial-gradient(ellipse 62% 54% at 82% 82%,rgba(156,122,53,.17),transparent 72%),linear-gradient(145deg,#20211e,#35342d);background-size:24px 24px,auto,auto}.auth-hero:after{content:"L";position:absolute;right:-4vw;bottom:-14vh;color:rgba(255,255,255,.035);font-family:var(--display);font-size:min(58vw,620px);line-height:1;pointer-events:none}.auth-brand{position:relative;z-index:1;gap:13px;font-size:24px;letter-spacing:-.02em}.auth-brand .mark{width:44px;height:44px;flex:0 0 44px;border:1px solid rgba(255,255,255,.22);border-radius:12px;background:var(--paper) var(--brand-icon) center/cover no-repeat;box-shadow:0 8px 24px rgba(0,0,0,.18)}.auth-promise{position:relative;z-index:1;max-width:680px}.auth-eyebrow,.auth-kicker{display:block;margin-bottom:18px;color:var(--gold);font-size:11px;font-weight:750;letter-spacing:.17em;text-transform:uppercase}.auth-promise h1{max-width:720px;margin:0;font-family:var(--display);font-size:clamp(44px,5.2vw,78px);font-weight:520;line-height:1.03;letter-spacing:-.045em}.auth-promise p{max-width:590px;margin:26px 0 0;color:rgba(247,242,232,.74);font-size:clamp(15px,1.25vw,18px);line-height:1.7}.auth-features{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:10px 24px;color:rgba(247,242,232,.62);font-size:11px;letter-spacing:.04em}.auth-features span:before{content:"·";margin-right:8px;color:#c4a35d}.auth-panel{min-height:100dvh;padding:clamp(30px,6vw,86px);background:linear-gradient(150deg,color-mix(in srgb,var(--paper) 96%,white),var(--paper-2))}.auth-card{width:min(430px,100%);gap:20px}.auth-form-head{margin-bottom:10px}.auth-form-head h2{font-size:clamp(30px,3vw,42px);font-weight:550;line-height:1.14;letter-spacing:-.035em}.auth-form-head p{margin:12px 0 0;color:var(--ink-soft);font-size:14px;line-height:1.6}.auth-card label{display:grid;gap:8px;color:var(--ink-soft);font-size:12px;font-weight:650}.auth-card input{padding:13px 2px 12px;border:0;border-bottom:1px solid color-mix(in srgb,var(--ink) 22%,transparent);border-radius:0;color:var(--ink);background:transparent;transition:border-color .2s}.auth-card input::placeholder{color:var(--ink-faint);opacity:.72}.auth-card input:focus{border-color:var(--ink);box-shadow:none}.auth-card button{padding:14px;border-radius:11px;font:inherit;cursor:pointer}.auth-card .primary{margin-top:6px;color:var(--paper);background:var(--ink);box-shadow:0 10px 24px color-mix(in srgb,var(--ink) 16%,transparent);font-weight:700}.auth-card .primary:disabled{opacity:.65}.auth-mode{border:0;color:var(--ink-soft);background:transparent;font-size:13px;font-weight:650}.auth-mode:hover{color:var(--ink)}.auth-separator{display:flex;align-items:center;justify-content:center;height:1px;margin:5px 0;background:var(--line)}.auth-separator span{padding:0 10px;color:var(--ink-faint);background:var(--paper);font-size:10px}.social-auth{gap:10px}.auth-social-note{margin:0;color:var(--ink-faint);font-size:12px;text-align:center}.google-signin{min-height:44px}.social-provider{min-height:44px;gap:9px;border:1px solid color-mix(in srgb,var(--ink) 18%,transparent);color:var(--ink)}.social-provider small{color:var(--ink-faint);font-size:10px;font-weight:500}.social-provider:disabled{opacity:.52}.social-provider.apple:not(:disabled){color:white;background:#050505}.auth-message{padding:11px 13px;border-radius:9px;background:color-mix(in srgb,var(--shu) 8%,transparent)}.auth-error,.auth-loading,.auth-message{color:var(--shu);text-align:center}.auth-error,.auth-loading{min-height:100vh;display:grid;place-items:center}.auth-signout{position:fixed;z-index:1000;right:18px;bottom:18px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;color:var(--ink-soft);background:var(--paper-2)}.import-lock{position:fixed;z-index:4000;inset:0;display:grid;place-items:center;padding:24px;background:color-mix(in srgb,var(--paper) 76%,transparent);-webkit-backdrop-filter:blur(16px) saturate(80%);backdrop-filter:blur(16px) saturate(80%)}.import-progress-card{width:min(440px,100%);display:grid;justify-items:center;padding:42px 38px;border:1px solid var(--glass-edge);border-radius:18px;color:var(--ink);background:var(--glass-strong);box-shadow:0 28px 80px rgba(20,24,30,.22);text-align:center}.import-spinner{width:34px;height:34px;margin-bottom:24px;border:2px solid color-mix(in srgb,var(--ink) 12%,transparent);border-top-color:var(--shu);border-radius:50%;animation:import-spin .8s linear infinite}.import-kicker{color:var(--gold);font-size:10px;font-weight:750;letter-spacing:.16em;text-transform:uppercase}.import-progress-card h2{margin:10px 0 24px;font-family:var(--display);font-size:27px;font-weight:560}.import-progress-track{width:100%;height:5px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--ink) 9%,transparent)}.import-progress-track span{display:block;height:100%;border-radius:inherit;background:var(--shu);transition:width .18s ease}.import-progress-card strong{margin-top:10px;font-family:var(--mono);font-size:12px}.import-progress-card p{max-width:330px;margin:18px 0 0;color:var(--ink-faint);font-size:11px;line-height:1.55}@keyframes import-spin{to{transform:rotate(1turn)}}@media (max-width:820px){.auth-shell{grid-template-columns:1fr}.auth-hero{min-height:42vh;padding:28px 26px 42px}.auth-promise h1{font-size:clamp(38px,11vw,56px)}.auth-promise p{margin-top:18px}.auth-features{display:none}.auth-panel{min-height:58vh;padding:42px 24px 54px}}.auth-mobile-brand,.auth-mobile-note{display:none}.auth-password-field{position:relative;display:block}.auth-password-field input{padding-right:74px}.auth-password-toggle{right:0;padding:6px 2px;color:var(--ink-soft)}@media (max-width:820px){body:has(.auth-shell),html:has(.auth-shell){min-height:100%;height:auto;overflow-x:hidden;background:#f3f0e8}.auth-shell{position:relative;display:block;min-height:100svh;overflow-x:hidden;overflow-y:auto;padding:0;color:#20211e;background:radial-gradient(circle at 12% 8%,rgba(186,146,66,.13),transparent 27rem),linear-gradient(155deg,#faf8f2,#f2efe6 56%,#ebe7dc)}.auth-shell:before{content:"L";position:fixed;right:-34px;bottom:-56px;color:rgba(42,42,36,.035);font-family:var(--display);font-size:210px;line-height:1;pointer-events:none}.auth-hero{display:none}.auth-panel{position:relative;z-index:1;display:flex;align-items:center;min-height:100svh;padding:max(26px,env(safe-area-inset-top)) max(22px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(22px,env(safe-area-inset-left));background:transparent}.auth-card{width:min(420px,100%);margin:auto;display:grid;gap:18px;padding:0;border:0;border-radius:0;color:#20211e;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.auth-mobile-brand{display:flex;align-items:center;gap:10px;margin-bottom:clamp(18px,6vh,54px);color:#24251f;font-family:var(--display);font-size:21px;font-weight:600;letter-spacing:-.025em}.auth-mobile-brand .mark{width:38px;height:38px;display:block;border:1px solid rgba(32,33,30,.13);border-radius:12px;background:var(--paper) var(--brand-icon) center/cover no-repeat;box-shadow:0 7px 18px rgba(31,32,28,.14)}.auth-form-head{margin:0 0 4px}.auth-form-head .auth-eyebrow{margin-bottom:10px;color:#96712f;font-size:9px;font-weight:800;letter-spacing:.18em}.auth-form-head h2{max-width:340px;color:#20211e;font-size:clamp(31px,9.5vw,39px);font-weight:560;line-height:1.04;letter-spacing:-.045em;text-wrap:balance}.auth-form-head p{margin-top:11px;color:#696a63;font-size:13.5px;line-height:1.5}.auth-fields{display:grid;gap:12px}.auth-card label{display:grid;gap:7px;color:#5f6059;font-size:11px;font-weight:720}.auth-card input{min-height:52px;padding:0 15px;border:1px solid rgba(32,33,30,.12);border-radius:14px;outline:0;color:#20211e;background:rgba(255,255,255,.68);box-shadow:0 1px 0 rgba(255,255,255,.8),0 8px 24px rgba(31,32,28,.035);-webkit-text-fill-color:#20211e;font-size:16px;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.auth-card input::placeholder{color:#999990;-webkit-text-fill-color:#999990;opacity:1}.auth-card input:focus{border-color:rgba(32,33,30,.52);background:rgba(255,255,255,.92);box-shadow:0 0 0 4px rgba(32,33,30,.055)}.auth-card input:-webkit-autofill,.auth-card input:-webkit-autofill:focus,.auth-card input:-webkit-autofill:hover{-webkit-text-fill-color:#20211e;caret-color:#20211e;-webkit-transition:background-color 9999s ease-out;transition:background-color 9999s ease-out}.auth-password-field input{width:100%;padding-right:78px}.auth-password-toggle{right:13px;padding:8px 2px;color:#696a63;background:transparent;font-size:10.5px}.auth-card .primary{min-height:52px;margin-top:2px;padding:0 18px;border:0;border-radius:14px;color:#f9f6ee;background:#292a25;box-shadow:0 12px 28px rgba(32,33,29,.18);font-size:14px;font-weight:760;transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}.auth-card .primary:active{transform:scale(.985);box-shadow:0 7px 18px rgba(32,33,29,.16)}.auth-card .primary:disabled{opacity:.58}.auth-separator{height:1px;margin:1px 0;background:rgba(32,33,30,.09)}.auth-card .auth-mode{padding:5px;color:#292a25;background:transparent;font-size:12.5px;font-weight:750}.auth-card .auth-mode span{color:#83837b;font-weight:520}.auth-message{padding:11px 13px;border:1px solid rgba(172,65,48,.12);border-radius:12px;color:#a64130;background:rgba(172,65,48,.055);font-size:12px;line-height:1.4;text-align:left}.auth-mobile-note{display:block;max-width:270px;margin:3px auto 0;color:#8b8b83;font-size:10.5px;line-height:1.5;text-align:center}}@media (max-width:820px) and (max-height:680px){.auth-panel{align-items:flex-start}.auth-card{gap:13px}.auth-mobile-brand{margin-bottom:12px}.auth-form-head h2{font-size:29px}.auth-form-head p{margin-top:7px}.auth-card .primary,.auth-card input{min-height:48px}.auth-mobile-note{display:none}}@media (max-width:360px){.auth-panel{padding-inline:max(16px,env(safe-area-inset-left))}.auth-form-head h2{font-size:29px}}.auth-signout svg,.notification-bell svg,.pill-open svg,.reader-back svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}@media (max-width:700px){:root{--mobile-control-radius:8px;--mobile-surface-radius:10px}.topbar{position:relative;z-index:80;gap:7px;padding-right:max(10px,env(safe-area-inset-right))}.brand{flex:0 0 auto}.brand .mark{border-radius:5px}.theme-switch{margin-left:0;border-radius:var(--mobile-control-radius)}.theme-switch button{border-radius:5px}.notification-bell{border-radius:var(--mobile-control-radius);font-size:inherit}.notification-bell svg{width:17px;height:17px}.icon-btn,.pwa-install-button{border-radius:var(--mobile-control-radius)}.auth-signout{top:calc(8px + env(safe-area-inset-top));right:auto;bottom:auto;left:calc(51px + env(safe-area-inset-left));width:34px;height:34px;display:grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:var(--mobile-control-radius);color:var(--ink-soft);background:var(--paper-2);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;font-size:0}.auth-signout:before{content:none}.auth-signout svg{display:block}.auth-signout span{display:none}.reader-bar{gap:8px;padding-inline:9px}.reader-bar .reader-back{width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;padding:0;border:1px solid var(--line);border-radius:var(--mobile-control-radius);color:var(--ink);background:var(--paper-2);font-size:inherit}.reader-back svg{width:19px;height:19px}.reader-back span{display:none}.reader-bar .back:first-letter{font-size:inherit}.reader-main{padding-bottom:calc(72px + env(safe-area-inset-bottom))}.rail{position:fixed;z-index:90;left:50%;bottom:max(7px,env(safe-area-inset-bottom));width:min(calc(100% - 18px),430px);height:58px;gap:2px;padding:4px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--paper) 96%,var(--paper-2));box-shadow:0 8px 24px rgba(18,21,25,.14),inset 0 1px 0 rgba(255,255,255,.38);backdrop-filter:none;-webkit-backdrop-filter:none}.rail button{height:48px;gap:1px;border-radius:9px}.rail button[aria-pressed=true]{box-shadow:none}.rail.keyboard-hidden{transform:translateX(-50%) translateY(calc(100% + 28px))}.chatview{min-height:0;background:var(--paper)}.chatview:after{display:none}.chatview .tutor{width:100%;height:100%;margin:0;border:0;border-radius:0;background:var(--paper);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.chatview .tutor-top{min-height:44px;padding:7px 12px 3px}.chatview .conv-btn-text,.chatview .conv-select{height:34px;border-radius:var(--mobile-control-radius)}.chatview .tutor-quick{padding:3px 12px 7px}.chatview .talker-toggle{border-radius:var(--mobile-control-radius)}.chatview .tutor-scroll{padding:14px 14px 18px;gap:14px}.chatview .msg{max-width:90%}.chatview .msg .bubble{padding:10px 12px;border-radius:10px;box-shadow:none}.chatview .msg.assistant .bubble{border-radius:10px 10px 10px 3px;background:var(--paper-2)}.chatview .msg.user .bubble{border-radius:10px 10px 3px 10px;color:var(--paper);background:var(--ink)}.chatview .tutor-starters button{border-radius:var(--mobile-control-radius)}.chatview .tutor-input{position:sticky;bottom:0;margin:0;padding:8px 10px calc(9px + env(safe-area-inset-bottom));border:0;border-top:1px solid var(--line);border-radius:0;background:var(--paper);box-shadow:0 -7px 18px color-mix(in srgb,var(--ink) 5%,transparent);backdrop-filter:none;-webkit-backdrop-filter:none}.chatview .tutor-compose{min-height:50px;align-items:center;gap:5px;padding:4px;border:1px solid var(--line);border-radius:var(--mobile-surface-radius);background:var(--paper-2)}.chatview .tutor-compose textarea{min-height:42px;padding:10px 7px;font-size:16px}.chatview .attach-btn{max-width:68px;border-radius:6px}.chatview .send-btn{min-width:44px;min-height:40px;border-radius:7px;color:var(--paper);background:var(--ink);box-shadow:none}.postit{min-width:128px;min-height:92px;border:1px solid color-mix(in srgb,var(--ink) 16%,transparent);border-radius:var(--mobile-surface-radius);background:color-mix(in srgb,var(--paper) 97%,var(--paper-2));box-shadow:0 8px 22px rgba(20,24,30,.16);backdrop-filter:none;-webkit-backdrop-filter:none}.postit-bar{min-height:32px;height:32px;padding:2px 5px 2px 8px}.postit-del,.postit-mini{width:27px;height:27px;border-radius:6px;flex:0 0 27px}.postit-del svg{width:15px;height:15px}.postit textarea{min-height:58px;padding:9px 10px 12px;font-size:13px;background:transparent}.postit-resize.e,.postit-resize.w{top:36px}.postit-confirm{flex-wrap:wrap;margin:0 5px 5px;border-radius:7px}.postit.collapsed{min-width:0;min-height:0}.postit-pill{max-width:min(180px,56vw);padding:6px 6px 6px 9px;border:1px solid color-mix(in srgb,var(--ink) 17%,transparent);border-radius:8px;background:var(--paper);box-shadow:0 4px 12px rgba(20,24,30,.14);backdrop-filter:none;-webkit-backdrop-filter:none}.pill-open{width:24px;height:24px;flex:0 0 24px;display:grid;place-items:center;border-radius:50%;background:var(--ink)}.pill-open svg{width:14px;height:14px;display:block}.notesview .content-bar{padding:14px 16px 8px}.notesview .board{padding:8px 12px 24px}.notebook{gap:10px}.notebook .mnote{min-height:190px;border-radius:var(--mobile-surface-radius);background:var(--paper-2);box-shadow:0 5px 16px rgba(20,24,30,.08);backdrop-filter:none;-webkit-backdrop-filter:none}.mnote-head{padding:14px 14px 10px}.mnote-text{padding:12px 14px}.mnote-foot{padding:9px 14px 11px}.mnote-delete,.mnote-pdf,.mnote-read{border-radius:6px}.card-form.horizontal,.mobile-card-summary,.qcard-face,.review-card{border-radius:var(--mobile-surface-radius)}.mobile-card-actions button,.mobile-library-toggle,.review-grades .g,.review-show,.review-start{border-radius:var(--mobile-control-radius)}}@media (display-mode:standalone) and (max-width:700px){.rail{bottom:max(10px,env(safe-area-inset-bottom))}.reader-main{padding-bottom:calc(76px + env(safe-area-inset-bottom))}}@media (max-width:700px){.topbar{height:calc(46px + env(safe-area-inset-top));flex-basis:calc(46px + env(safe-area-inset-top));padding-top:calc(6px + env(safe-area-inset-top));padding-bottom:6px}.auth-signout{top:calc(6px + env(safe-area-inset-top))}.reader-bar{height:44px;flex-basis:44px;padding-block:5px}.reader.view-chat .reader-bar{height:40px;flex-basis:40px;border-bottom-color:color-mix(in srgb,var(--line) 65%,transparent)}.reader.view-chat .reader-bar .timeline{display:none}.reader.view-chat .reader-bar .booktitle{max-width:none;flex:1 1;font-size:12.5px}.reader-main{padding-bottom:69px;transition:padding-bottom .2s ease}.reader-main:has(.rail.keyboard-hidden){padding-bottom:0}.rail{bottom:max(5px,calc(env(safe-area-inset-bottom) - 18px));width:min(calc(100% - 22px),420px);height:61px;padding:5px;border-color:color-mix(in srgb,var(--ink) 14%,transparent);border-radius:24px;background:color-mix(in srgb,var(--paper) 88%,transparent);box-shadow:0 10px 30px rgba(18,21,25,.18),inset 0 1px 0 rgba(255,255,255,.48);backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%)}.rail button{height:51px;border-radius:19px}.rail button[aria-pressed=true]{box-shadow:0 5px 14px color-mix(in srgb,var(--ink) 18%,transparent)}.pill-open{color:var(--paper);background:var(--ink)}.reader.view-chat .chatview{overflow:hidden}.reader.view-chat .chatview .tutor{position:relative;overflow:hidden}.chatview .tutor-top{min-height:39px;padding:5px 10px 2px}.chatview .conv-select{height:31px;padding:5px 9px;border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:11px;color:var(--ink);background:color-mix(in srgb,var(--paper-2) 74%,var(--paper));box-shadow:none}.chatview .conv-btn-text{height:31px;padding-inline:8px;border-radius:10px}.chatview .tutor-quick{position:absolute;z-index:12;top:45px;right:11px;width:auto;padding:0;border:0;overflow:visible}.chatview .tutor-quick .talker-toggle,.chatview .tutor-quick .talker-toggle.on{min-height:35px;gap:7px;padding:5px 8px 5px 10px;border:1px solid color-mix(in srgb,var(--ink) 13%,transparent);border-radius:999px;color:var(--ink-soft);background:color-mix(in srgb,var(--paper) 78%,transparent);box-shadow:0 7px 20px rgba(20,24,30,.13),inset 0 1px 0 rgba(255,255,255,.38);backdrop-filter:blur(18px) saturate(135%);-webkit-backdrop-filter:blur(18px) saturate(135%)}.talker-mode{font-size:10.5px}.talker-track{width:34px;height:20px}.talker-thumb{width:14px;height:14px}.talker-toggle.on .talker-thumb{transform:translateX(14px)}.chatview .talker-hint{display:none}.chatview .tutor-scroll{padding:48px 13px 14px;gap:13px}.chatview .msg{max-width:88%}.chatview .msg .bubble{padding:10px 13px;border-radius:17px}.chatview .msg.assistant .bubble{border-radius:17px 17px 17px 6px}.chatview .msg.user .bubble{border-radius:17px 17px 6px 17px}.chatview .tutor-welcome{padding-top:8px}.chatview .tutor-welcome h2{font-size:24px}.chatview .tutor-starters{gap:8px}.chatview .tutor-starters button{min-height:48px;border-radius:14px}.chatview .tutor-input{padding:7px 9px max(7px,env(safe-area-inset-bottom));box-shadow:0 -5px 15px color-mix(in srgb,var(--ink) 4%,transparent)}.reader-main:has(.rail.keyboard-hidden) .chatview .tutor-input{padding-bottom:5px}.chatview .tutor-compose{min-height:52px;padding:5px;border-color:color-mix(in srgb,var(--ink) 12%,transparent);border-radius:21px;background:color-mix(in srgb,var(--paper-2) 76%,var(--paper));box-shadow:inset 0 1px 0 rgba(255,255,255,.28)}.chatview .tutor-compose textarea{min-height:40px;max-height:92px;padding:9px 8px}.chatview .attach-btn{min-height:39px;padding:7px 8px;border-radius:15px}.chatview .send-btn{min-width:42px;min-height:42px;padding:8px 10px;border-radius:16px}}@media (display-mode:standalone) and (max-width:700px){.rail{bottom:max(6px,calc(env(safe-area-inset-bottom) - 16px))}.reader-main{padding-bottom:71px}.reader-main:has(.rail.keyboard-hidden){padding-bottom:0}}@media (max-width:700px){:root[data-theme=dark] .chatview .conv-select{color:#ecebe3;background:#24272e;border-color:rgba(236,235,227,.14)}:root[data-theme=dark] .chatview .tutor-quick .talker-toggle{color:#c2c5cc;background:rgba(35,38,45,.82);border-color:rgba(236,235,227,.15)}:root[data-theme=dark] .pill-open{color:#f1f0e9;background:#343841;border:1px solid rgba(241,240,233,.2)}}@media (prefers-color-scheme:dark) and (max-width:700px){:root:not([data-theme=light]) .chatview .conv-select{color:#ecebe3;background:#24272e;border-color:rgba(236,235,227,.14)}:root:not([data-theme=light]) .chatview .tutor-quick .talker-toggle{color:#c2c5cc;background:rgba(35,38,45,.82);border-color:rgba(236,235,227,.15)}:root:not([data-theme=light]) .pill-open{color:#f1f0e9;background:#343841;border:1px solid rgba(241,240,233,.2)}}@media (max-width:700px){.postit.confirming-delete .postit-confirm{position:absolute;z-index:8;inset:32px 0 0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:minmax(18px,auto) 29px;align-content:center;gap:4px 6px;margin:0;padding:5px 7px 7px;border:0;border-radius:0 0 9px 9px;background:color-mix(in srgb,var(--paper) 97%,var(--shu) 3%)}.postit.confirming-delete .postit-confirm span{grid-column:1/-1;overflow:hidden;font-size:10.5px;line-height:1.2;text-align:center;text-overflow:ellipsis;white-space:nowrap}.postit.confirming-delete .postit-confirm button{min-width:0;width:100%;height:29px;display:grid;place-items:center;padding:0 4px;border-radius:6px;font-size:11px;line-height:1;white-space:nowrap}}.conv-btn-icon svg,.send-btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.send-loading{width:14px;height:14px;display:block;border:1.5px solid color-mix(in srgb,currentColor 28%,transparent);border-top-color:currentcolor;border-radius:50%;animation:import-spin .75s linear infinite}@media (max-width:700px){.rail{height:62px;padding:5px;border-radius:31px;background:color-mix(in srgb,var(--paper) 73%,transparent);box-shadow:0 12px 34px rgba(18,21,25,.2),inset 0 1px 0 rgba(255,255,255,.58);backdrop-filter:blur(30px) saturate(165%);-webkit-backdrop-filter:blur(30px) saturate(165%)}.rail button{height:52px;border-radius:26px}.chatview .tutor-top{gap:5px;padding-inline:9px}.chatview .conv-select{border-color:color-mix(in srgb,var(--ink) 11%,transparent);border-radius:16px;background:color-mix(in srgb,var(--paper) 60%,transparent);box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 5px 16px rgba(20,24,30,.07);backdrop-filter:blur(20px) saturate(145%);-webkit-backdrop-filter:blur(20px) saturate(145%)}.chatview .conv-btn-icon{width:32px;height:32px;display:grid;place-items:center;flex:0 0 32px;padding:0;border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);border-radius:50%;color:var(--ink-soft);background:color-mix(in srgb,var(--paper) 58%,transparent);box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 4px 13px rgba(20,24,30,.07);backdrop-filter:blur(18px) saturate(145%);-webkit-backdrop-filter:blur(18px) saturate(145%)}.chatview .conv-btn-icon svg{width:15px;height:15px}.chatview .tutor-quick{right:auto;left:11px}.chatview .tutor-quick .talker-toggle,.chatview .tutor-quick .talker-toggle.on{border-color:color-mix(in srgb,var(--ink) 9%,transparent);background:color-mix(in srgb,var(--paper) 54%,transparent);box-shadow:0 7px 22px rgba(20,24,30,.09),inset 0 1px 0 rgba(255,255,255,.4);backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%)}.chatview .tutor-compose{min-height:54px;padding:5px;border-color:color-mix(in srgb,var(--ink) 10%,transparent);border-radius:28px;background:color-mix(in srgb,var(--paper) 62%,transparent);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 8px 24px rgba(20,24,30,.09);backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%)}.chatview .attach-btn{min-height:42px;border:1px solid color-mix(in srgb,var(--ink) 8%,transparent);border-radius:21px;background:color-mix(in srgb,var(--paper-2) 48%,transparent)}.chatview .send-btn{width:44px;min-width:44px;height:44px;min-height:44px;display:grid;place-items:center;padding:0;border:1px solid color-mix(in srgb,var(--ink) 20%,transparent);border-radius:50%;color:var(--ink);background:color-mix(in srgb,var(--paper) 58%,transparent);box-shadow:inset 0 1px 0 rgba(255,255,255,.62),0 6px 18px rgba(20,24,30,.14);backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%)}.chatview .send-btn:disabled{color:var(--ink-faint);background:color-mix(in srgb,var(--paper-2) 48%,transparent);opacity:.58}.chatview .send-btn:not(:disabled):active{transform:scale(.94)}.chatview .send-btn svg{width:19px;height:19px}:root[data-theme=dark] .chatview .conv-btn-icon,:root[data-theme=dark] .chatview .conv-select,:root[data-theme=dark] .chatview .send-btn,:root[data-theme=dark] .chatview .tutor-compose{color:#ecebe3;border-color:rgba(236,235,227,.13);background:rgba(38,41,48,.62);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 7px 20px rgba(0,0,0,.2)}:root[data-theme=dark] .chatview .tutor-quick .talker-toggle{background:rgba(38,41,48,.55)}}@media (prefers-color-scheme:dark) and (max-width:700px){:root:not([data-theme=light]) .chatview .conv-btn-icon,:root:not([data-theme=light]) .chatview .conv-select,:root:not([data-theme=light]) .chatview .send-btn,:root:not([data-theme=light]) .chatview .tutor-compose{color:#ecebe3;border-color:rgba(236,235,227,.13);background:rgba(38,41,48,.62);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 7px 20px rgba(0,0,0,.2)}:root:not([data-theme=light]) .chatview .tutor-quick .talker-toggle{background:rgba(38,41,48,.55)}}@media (min-width:701px){.auth-signout{right:20px;bottom:86px;transition:opacity .16s ease,transform .16s ease}body:has(.ask-dock) .auth-signout{opacity:0;pointer-events:none;transform:translateY(5px)}}.admin-usage{position:relative}.admin-usage-popover{position:absolute;z-index:20;top:calc(100% + 10px);right:0;width:min(390px,calc(100vw - 32px));padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--paper);box-shadow:0 16px 40px rgba(20,24,30,.18);color:var(--ink)}.admin-usage-heading,.admin-usage-row,.admin-usage-totals{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-usage-heading select{border:1px solid var(--line);border-radius:8px;padding:5px 8px;background:var(--paper);color:var(--ink)}.admin-usage-totals{margin:14px 0 10px;font-size:.9rem}.admin-usage-table{display:grid;gap:7px;max-height:260px;overflow:auto}.admin-usage-row{padding-top:8px;font-size:.8rem}.admin-usage-error{color:var(--danger,#a23a32)}.admin-usage-overlay{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:24px;background:rgba(15,18,22,.42)}.admin-usage-panel{width:100%;max-width:1240px;min-height:100%;box-sizing:border-box;max-height:min(860px,92vh);overflow:auto;padding:32px;border:1px solid var(--line);border-radius:18px;background:var(--paper);color:var(--ink);box-shadow:0 24px 80px rgba(0,0,0,.28)}.admin-usage-heading h2{margin:3px 0 0;font-size:1.35rem}.admin-usage-kicker{color:var(--ink-faint);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.admin-usage-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:22px 0 16px}.admin-usage-toolbar p{margin:0;color:var(--ink-soft);font-size:.88rem}.admin-usage-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:22px}.admin-usage-summary article{display:grid;min-width:0;gap:5px;padding:14px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.admin-usage-summary strong{font-size:1.25rem}.admin-usage-summary span,.admin-usage-summary strong{min-width:0;overflow-wrap:anywhere}.admin-usage-row small,.admin-usage-summary span{color:var(--ink-faint);font-size:.75rem}.admin-usage-table{overflow-x:auto}.admin-usage-row{display:grid;grid-template-columns:minmax(220px,1.8fr) repeat(7,minmax(82px,.7fr));align-items:center;gap:12px;min-width:900px;padding:11px 4px;border-top:1px solid var(--line);font-size:.82rem}.admin-usage-row span:first-child{display:grid;gap:3px;min-width:0}.admin-usage-row-head{color:var(--ink-faint);font-size:.72rem;text-transform:uppercase}@media (max-width:700px){.admin-usage-overlay{padding:10px}.admin-usage-panel{padding:16px}.admin-usage-summary{grid-template-columns:repeat(2,1fr)}.admin-usage-toolbar{align-items:stretch;flex-direction:column}.admin-usage-row{grid-template-columns:minmax(150px,1.5fr) .7fr .8fr}.admin-usage-row span:last-child{grid-column:2/-1}}.consent-backdrop{position:fixed;inset:0;display:grid;place-items:center;padding:1.5rem;background:color-mix(in srgb,var(--ink) 55%,transparent);z-index:60}.consent-card{max-width:34rem;width:100%;padding:1.75rem;border-radius:1rem;background:var(--paper);color:var(--ink);box-shadow:0 1.5rem 3rem color-mix(in srgb,var(--ink) 25%,transparent)}.consent-card h2{font-family:var(--display);margin-bottom:.75rem}.consent-card p{margin-bottom:.75rem;line-height:1.55}.consent-card input{width:100%;padding:.6rem .75rem;margin-top:.5rem;border-radius:.5rem;border:1px solid color-mix(in srgb,var(--ink) 25%,transparent);background:transparent;color:var(--ink)}.consent-error{color:var(--shu)}.consent-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.25rem}.consent-actions button{padding:.6rem 1.1rem;border-radius:.5rem;border:1px solid color-mix(in srgb,var(--ink) 25%,transparent);background:transparent;color:var(--ink);cursor:pointer}.consent-accept{background:var(--ai)}.consent-accept,.consent-danger{color:var(--paper);border-color:transparent}.consent-danger{background:var(--shu)}.consent-actions button:disabled{opacity:.5;cursor:not-allowed}.danger-link{background:none;border:none;padding:0;color:var(--shu);cursor:pointer;text-decoration:underline}.consent-revoked{color:var(--ink-soft,var(--ink));font-size:.9rem}body:has(.auth-shell),html:has(.auth-shell){min-height:100%;background:#fff}.auth-shell{min-height:100svh;display:block;color:#1b1e26;background-color:#e9eeeb;background-image:radial-gradient(circle at 16% 18%,rgba(51,82,110,.16),transparent 30%),radial-gradient(circle at 88% 82%,rgba(200,69,47,.1),transparent 28%),linear-gradient(135deg,#eef2ed,#e5ebe8)}.auth-panel{min-height:100svh;display:grid;place-items:center;padding:max(32px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(32px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));background:transparent}.auth-card{width:min(520px,100%);display:grid;gap:18px;padding:clamp(30px,4vw,48px);border:1px solid rgba(27,30,38,.13);border-radius:30px;color:#1b1e26;background:rgba(255,255,255,.92);box-shadow:0 24px 70px rgba(27,30,38,.13),0 2px 8px rgba(27,30,38,.04)}.auth-brand{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:clamp(28px,7vh,68px);color:#1b1e26;font-family:var(--display);font-size:30px;font-weight:600;letter-spacing:-.03em}.auth-brand .mark{width:48px;height:48px;display:block;flex:0 0 48px;border:0;border-radius:0;background:transparent url(/lyra-icon.png) 50%/contain no-repeat;box-shadow:none}.auth-form-head{margin:-4px 0 4px;text-align:center}.auth-form-head .auth-eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:12px;color:#a4782f;font-size:9px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.auth-form-head .auth-eyebrow:after,.auth-form-head .auth-eyebrow:before{content:"";width:18px;height:1px;background:rgba(164,120,47,.35)}.auth-form-head h2{margin:0;color:#1b1e26;font-family:var(--display);font-size:clamp(28px,3.2vw,38px);font-weight:560;line-height:1.08;letter-spacing:-.045em}.auth-form-head h2 em{color:var(--gold);font-style:italic;font-weight:500}.auth-form-head p{max-width:340px;margin:10px auto 0;color:#737984;font-size:13px;line-height:1.5}.auth-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.auth-fields{display:grid;gap:14px}.auth-card label{display:block}.auth-input-field,.auth-password-field{position:relative;display:block}.auth-input-field>svg,.auth-password-field>svg{position:absolute;z-index:1;top:50%;left:18px;width:19px;height:19px;fill:none;stroke:#666b75;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transform:translateY(-50%);pointer-events:none}.auth-card input{width:100%;min-height:54px;padding:0 18px 0 50px;border:1px solid rgba(27,30,38,.1);border-radius:24px;outline:0;color:#1b1e26;background:#f5f6f2;box-shadow:none;-webkit-text-fill-color:#1b1e26;font:inherit;font-size:16px;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.auth-card input::placeholder{color:#777c85;-webkit-text-fill-color:#777c85;opacity:1}.auth-card input:focus{border-color:#c8452f;background:#fff;box-shadow:0 0 0 3px rgba(200,69,47,.1)}.auth-card input:-webkit-autofill,.auth-card input:-webkit-autofill:focus,.auth-card input:-webkit-autofill:hover{-webkit-text-fill-color:#1b1e26;caret-color:#1b1e26;-webkit-transition:background-color 9999s ease-out;transition:background-color 9999s ease-out}.auth-password-field input{padding-right:84px}.auth-password-toggle{position:absolute;z-index:2;top:50%;right:14px;min-width:auto;padding:8px 5px;border:0;border-radius:8px;color:#666b75;background:transparent;font-size:11px;font-weight:700;transform:translateY(-50%)}.social-auth{display:grid;grid-template-columns:1fr;gap:12px;margin-top:6px}.google-signin{width:100%;min-width:0;min-height:46px;display:grid;place-items:center;overflow:visible;border-radius:999px;transition:opacity .18s}.google-signin iframe,.google-signin>div{width:100%!important;max-width:100%!important}.google-signin>div{min-width:0!important}.google-signin.is-disabled{pointer-events:none;opacity:.55}.social-provider{width:100%;min-height:46px;display:flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;border:1px solid rgba(27,30,38,.15);border-radius:999px;color:#1b1e26;background:#fff;box-shadow:none;font:inherit;font-size:13px;font-weight:650}.social-provider svg{width:18px;height:18px;fill:currentColor}.social-provider.apple:not(:disabled){color:#fff;border-color:#111;background:#111}.social-provider:disabled{cursor:not-allowed;opacity:.48}.auth-card .primary{min-height:52px;margin:2px 0 0;padding:0 18px;border:0;border-radius:18px;color:#fff;background:#c8452f;box-shadow:none;font:inherit;font-size:14px;font-weight:650;cursor:pointer;transition:background .16s ease,transform .16s ease,opacity .16s ease}.auth-card .primary:hover:not(:disabled){background:#b83d29}.auth-card .primary:active:not(:disabled){transform:scale(.99)}.auth-card .primary:disabled{cursor:wait;opacity:.58}.auth-card .auth-mode{justify-self:center;padding:6px 12px;border:0;border-radius:10px;color:#4f5560;background:transparent;font:inherit;font-size:13px;font-weight:600;cursor:pointer}.auth-card .auth-mode:hover{color:#c8452f;background:rgba(200,69,47,.055)}.auth-footnote{margin:-2px 0 0;color:#9297a0;font-size:10.5px;line-height:1.45;text-align:center}.auth-footnote span{margin-right:5px;color:#c8452f;font-size:10px}.auth-message{padding:11px 14px;border:1px solid rgba(200,69,47,.14);border-radius:14px;color:#a43a28;background:rgba(200,69,47,.055);font-size:12px;line-height:1.45;text-align:left}@media (max-width:560px){.auth-panel{align-items:center;padding-inline:max(20px,env(safe-area-inset-left))}.auth-card{gap:15px;padding:25px 20px 22px;border-radius:26px}.auth-brand{margin-bottom:clamp(22px,6vh,48px);font-size:25px}.auth-brand .mark{width:42px;height:42px;flex-basis:42px}.auth-form-head h2{font-size:29px}.auth-form-head p{font-size:12.5px}}@media (max-width:380px){.social-auth{grid-template-columns:1fr}}@media (max-height:620px){.auth-panel{align-items:start}.auth-brand{margin-bottom:20px}.auth-footnote,.auth-form-head p{display:none}}.onboarding-shell{display:grid;grid-template-columns:minmax(320px,520px) minmax(260px,390px);justify-content:center;align-items:center;gap:72px;padding:32px 24px;color:var(--ink);background:radial-gradient(circle at 72% 20%,rgba(213,163,78,.16),transparent 30%),var(--paper)}.onboarding-card{width:100%;padding:36px 40px 30px;border:1px solid var(--line);border-radius:24px;background:rgba(255,250,240,.82);box-shadow:0 28px 80px -55px rgba(20,25,27,.7)}.onboarding-brand{display:flex;align-items:center;gap:8px;margin-bottom:30px;font:600 22px var(--display)}.onboarding-brand .mark{width:25px;height:25px;display:block;border-radius:50%;background:var(--terracotta);box-shadow:inset 0 0 0 6px rgba(255,255,255,.22)}.onboarding-eyebrow{margin:0 0 16px;color:var(--terracotta);font-weight:800;letter-spacing:.16em}.onboarding-card h1{margin:0;font:400 clamp(34px,4vw,48px)/1.02 var(--display);letter-spacing:-.04em}.onboarding-copy{margin:16px 0 26px;color:var(--muted);font-size:14px;line-height:1.6}.onboarding-error{margin:15px 0 -5px;color:#a63b2c;font-size:12px}.onboarding-next{flex:1 1;display:flex;justify-content:space-between;align-items:center;padding:15px 17px;border:0;border-radius:10px;background:var(--ink);font-size:13px;font-weight:750;cursor:pointer}.onboarding-next:disabled{opacity:.6;cursor:wait}.onboarding-next span{color:var(--gold);font-size:18px}.onboarding-back{border:0;padding:10px 0;color:var(--muted);background:transparent;font-size:12px;cursor:pointer;white-space:nowrap}@media (max-width:800px){.onboarding-shell{grid-template-columns:minmax(280px,540px);gap:26px;padding:24px 16px}.onboarding-card{padding:28px 22px 24px}.onboarding-shell{height:auto;min-height:100svh;overflow:auto}}@media (min-width:801px) and (max-height:820px){.onboarding-shell{align-items:start;padding-top:20px;padding-bottom:20px}.onboarding-card{padding:24px 32px 20px}.onboarding-brand{margin-bottom:18px}}.onboarding-result{max-width:680px}.tour-reopen{position:fixed;right:22px;bottom:22px;z-index:20;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;color:var(--muted);background:var(--paper);box-shadow:0 8px 24px -14px var(--ink);cursor:pointer}.profile-trigger{display:grid;place-items:center;width:32px;height:32px;margin-left:7px;padding:0;border:1px solid var(--line);border-radius:50%;color:#fff;background:var(--ai);font-size:12px;font-weight:800;cursor:pointer}.profile-backdrop{position:fixed;inset:0;z-index:80;background:rgba(24,24,20,.34)}.profile-panel{position:absolute;top:68px;right:20px;width:min(340px,calc(100vw - 32px));padding:28px 24px 22px;border:1px solid var(--line);border-radius:16px;color:var(--ink);background:var(--paper);box-shadow:0 25px 70px -35px #000;animation:profile-drop .24s ease}.profile-close{position:absolute;top:12px;right:15px;border:0;color:var(--muted);background:transparent;font-size:22px;cursor:pointer}.profile-avatar{display:grid;place-items:center;width:54px;height:54px;margin-bottom:18px;border-radius:50%;color:#fff;background:var(--ai);font:600 24px var(--display)}.profile-panel h2{margin:3px 0 4px;font:400 30px var(--display);letter-spacing:-.04em}.profile-email{margin:0;color:var(--muted);font-size:12px;overflow-wrap:anywhere}.profile-plan{display:grid;gap:5px;margin:22px 0 16px;padding:14px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.35)}.profile-plan small,.profile-plan span{color:var(--muted);font-size:11px}.profile-plan strong{font:400 21px var(--display)}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:18px}.profile-stats div{display:grid;gap:3px;padding:12px 8px;border-radius:9px;text-align:center;background:var(--paper2)}.profile-stats strong{font:400 23px var(--display)}.profile-language{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;padding:10px 12px;border-radius:9px;background:var(--paper2);font-size:14px}.profile-language select{border:1px solid var(--line);border-radius:8px;padding:6px 8px;background:var(--paper);color:var(--ink);font:inherit}.profile-stats span{color:var(--muted);font-size:10px}.profile-links{display:grid;gap:2px;border-top:1px solid var(--line);padding-top:10px}.profile-links button{display:flex;justify-content:space-between;padding:10px 0;border:0;color:var(--ink);background:transparent;text-align:left;font-size:12px;cursor:pointer}.profile-links button span{color:var(--terracotta);font-size:16px}.profile-links .danger-link{width:100%;padding:10px 0;color:#a63b2c;font-size:12px;text-align:left;text-decoration:none}.profile-links .danger-link:hover{color:#7d2419;text-decoration:underline}.profile-backdrop{overscroll-behavior:contain;touch-action:none}.profile-panel{max-height:calc(100vh - 88px);max-height:calc(100dvh - 68px - max(20px, env(safe-area-inset-bottom)));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;padding-bottom:max(22px,env(safe-area-inset-bottom))}@media (max-width:560px){.profile-panel{top:max(12px,env(safe-area-inset-top));right:16px;left:16px;width:auto;max-height:calc(100vh - 24px);max-height:calc(100dvh - max(12px, env(safe-area-inset-top)) - max(12px, env(safe-area-inset-bottom)))}}.consent-backdrop,.consent-card{overflow-y:auto;overscroll-behavior:contain}.consent-card{max-height:calc(100vh - 3rem);max-height:calc(100dvh - 3rem);-webkit-overflow-scrolling:touch}@keyframes profile-drop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.onboarding-shell{--ob-accent:#b94a35;--ob-accent-dark:#873323;--ob-ink:#202a2c;--ob-muted:#6d7673;--ob-line:rgba(32,42,44,.14);--ob-soft:#edf1ed;height:100dvh;overflow:hidden;grid-template-columns:minmax(260px,330px) minmax(480px,600px);gap:clamp(38px,7vw,110px);padding:36px 32px;color:var(--ob-ink);background:radial-gradient(circle at 16% 20%,rgba(51,82,110,.12),transparent 28%),radial-gradient(circle at 84% 80%,rgba(185,74,53,.1),transparent 28%),#f2f5f1}.onboarding-card{position:relative;padding:36px 42px 30px;border:1px solid var(--ob-line);border-radius:26px;background:rgba(255,255,255,.9);box-shadow:0 28px 80px rgba(31,45,43,.12)}.onboarding-brand{margin-bottom:26px;color:var(--ob-ink);font-size:23px}.onboarding-brand .mark{width:28px;height:28px;background:var(--ob-accent);box-shadow:inset 0 0 0 7px rgba(255,255,255,.22)}.onboarding-eyebrow{margin-bottom:13px;color:var(--ob-accent);font-size:10px;letter-spacing:.15em}.onboarding-card h1{color:var(--ob-ink);font-size:clamp(35px,4vw,52px);line-height:1.01}.onboarding-copy{max-width:500px;margin:14px 0 24px;color:var(--ob-muted);line-height:1.55}.onboarding-next{border-radius:12px;color:#fff;background:var(--ob-ink);box-shadow:0 10px 20px rgba(32,42,44,.15)}.onboarding-next:hover{background:#101b1e}.onboarding-back{color:var(--ob-muted)}.onboarding-result{max-width:720px}@media (max-width:800px){.onboarding-shell{height:auto;min-height:100svh;overflow:auto;grid-template-columns:minmax(280px,560px);padding:24px 16px}.onboarding-card{padding:28px 22px 24px}}@media (max-width:430px){.onboarding-card h1{font-size:36px}}.onboarding-analysis-shell{grid-template-columns:minmax(440px,620px)}.onboarding-analysis{text-align:center}.onboarding-analysis .onboarding-brand{justify-content:center}.onboarding-analysis h1,.onboarding-result h1{max-width:570px;margin-inline:auto}.onboarding-analysis .onboarding-copy{margin-inline:auto}.result-badge{width:fit-content;margin:0 auto 22px;padding:8px 11px;border-radius:999px;color:#356d68;background:rgba(61,116,112,.12);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.onboarding-result{text-align:center}.onboarding-result .onboarding-copy{margin-inline:auto}.onboarding-result .onboarding-next{width:100%}.onboarding-product-backdrop{position:absolute;inset:0;overflow:hidden;opacity:.48;filter:blur(5px);transform:scale(1.04);background:linear-gradient(135deg,#e8efeb,#dce7e4)}.backdrop-window{position:absolute;top:12%;left:11%;width:78%;height:76%;border:1px solid rgba(32,42,44,.18);border-radius:18px;background:rgba(255,255,255,.72);box-shadow:0 30px 80px rgba(31,45,43,.2)}.backdrop-toolbar{height:46px;border-bottom:1px solid rgba(32,42,44,.12);background:rgba(255,255,255,.62)}.backdrop-pdf{position:absolute;top:75px;left:9%;width:48%;height:64%;padding:32px 25px;background:#f7f0e3;box-shadow:0 15px 30px rgba(32,42,44,.1)}.backdrop-pdf i{display:block;width:85%;height:7px;margin-bottom:18px;border-radius:5px;background:#d2c9bb}.backdrop-pdf i:nth-child(2){width:65%}.backdrop-pdf i:nth-child(3){width:90%;margin-top:35px;background:#e1b76b}.backdrop-pdf i:nth-child(4){width:72%}.backdrop-pdf b{display:block;width:80%;height:55px;margin-top:28px;background:rgba(185,74,53,.18)}.backdrop-card{position:absolute;right:7%;top:31%;width:30%;display:grid;gap:9px;padding:18px;border:1px solid rgba(185,74,53,.35);border-radius:12px;color:var(--ob-ink);background:rgba(255,255,255,.86)}.backdrop-card small{color:var(--ob-accent);font-size:7px;letter-spacing:.1em}.backdrop-card strong{font:400 16px var(--display);line-height:1.3}.backdrop-card span{color:var(--ob-muted);font-size:9px}.onboarding-analysis,.onboarding-result{position:relative;z-index:1}.onboarding-analysis-shell .onboarding-card{background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.motion-card,.motion-pdf{width:130px;height:90px;display:grid;place-items:center;padding:12px;border-radius:10px}.motion-pdf{position:relative;background:#f7f0e3;border:1px solid #d2c9bb}.motion-pdf span{color:#7c7469;font-size:9px}.motion-pdf b{position:absolute;width:75%;height:24px;border:2px solid var(--ob-accent);background:rgba(185,74,53,.14);animation:crop-pulse 1.8s ease-in-out infinite}.motion-card{align-content:center;border:1px solid rgba(185,74,53,.3);background:linear-gradient(145deg,#263d42,#16272c);color:#fff}.motion-card small{color:#e1b76b;font-size:7px;letter-spacing:.1em}.motion-card strong{font:400 14px var(--display)}.motion-arrow{color:var(--ob-accent);font-size:24px;animation:arrow-nudge 1.2s ease-in-out infinite}@keyframes crop-pulse{50%{transform:scale(1.08);box-shadow:0 0 0 5px rgba(185,74,53,.08)}}@keyframes arrow-nudge{50%{transform:translateX(4px)}}@media (max-width:700px){.backdrop-window{left:-10%;width:120%}.backdrop-card{right:4%;width:34%}.motion-card,.motion-pdf{width:112px}}@media (max-width:800px){.onboarding-analysis-shell{grid-template-columns:minmax(280px,560px)}}.onboarding-shell:not(.onboarding-analysis-shell){grid-template-columns:minmax(480px,600px);gap:0}@media (max-width:800px){.onboarding-shell:not(.onboarding-analysis-shell){grid-template-columns:minmax(280px,560px)}}.result-free{margin:24px 0 0;padding:22px 22px 20px;border:1.5px solid #3d7470;border-radius:18px;text-align:left;background:linear-gradient(160deg,rgba(61,116,112,.13),rgba(61,116,112,.04) 60%),#fff;box-shadow:0 18px 40px -22px rgba(32,62,60,.45);position:relative;z-index:2}.result-free-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.result-free-head small{color:#3d7470;font-size:10px;font-weight:800;letter-spacing:.12em}.result-free-head span{padding:5px 10px;border-radius:999px;color:#fff;background:#3d7470;font-size:10px;font-weight:800;letter-spacing:.06em}.result-free-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px;margin:10px 0 14px}.result-free-price strong{color:var(--ob-ink);font:500 44px/1 var(--display);letter-spacing:-.02em}.result-free-price span{color:#356d68;font-size:13px;font-weight:700}.result-free ul{display:grid;gap:9px;margin:0 0 18px;padding:0;list-style:none}.result-free li{position:relative;padding-left:26px;color:var(--ob-ink);font-size:13.5px;line-height:1.45}.result-free li:before{content:"";position:absolute;left:0;top:1px;width:17px;height:17px;border-radius:50%;background:#3d7470 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") 50%/11px no-repeat}.onboarding-result .result-free-cta{width:100%;padding:17px 20px;border-radius:14px;font-size:15px;font-weight:700;color:#fff;background:linear-gradient(135deg,#e47a59,var(--ob-accent) 55%,var(--ob-accent-dark));box-shadow:0 14px 28px -12px rgba(185,74,53,.7)}.onboarding-result .result-free-cta:hover{background:linear-gradient(135deg,#e47a59,var(--ob-accent-dark))}.onboarding-result .result-free-cta span{color:#fff}.result-upgrade-label{margin:22px 0 8px;color:var(--ob-muted);font-size:11px;font-weight:600;text-align:left}.result-upgrades{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px;text-align:left;opacity:.82}.result-upgrades article{display:grid;gap:3px;padding:11px 13px;border:1px solid var(--ob-line);border-radius:12px;background:rgba(247,249,246,.6)}.result-upgrades small{color:var(--ob-muted);font-size:9px;font-weight:800;letter-spacing:.1em}.result-upgrades strong{color:var(--ob-ink);font:500 17px var(--display)}.result-upgrades span{color:var(--ob-muted);font-size:11px;line-height:1.35}@media (max-width:600px){.result-free{padding:18px 16px 16px}.result-free-price strong{font-size:38px}.result-upgrades{grid-template-columns:1fr}}.onboarding-shell{height:auto;min-height:100dvh;overflow:visible;align-items:safe center}.ob2-shell{grid-template-columns:minmax(0,580px)!important}.ob2-card{text-align:left}.ob2-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:0 0 26px}.ob2-progress i{height:4px;border-radius:4px;background:var(--ob-line);transition:background .4s ease}.ob2-progress i.done{background:#3d7470}.ob2-progress i.now{background:linear-gradient(90deg,#3d7470 50%,var(--ob-line) 50%);background-size:200% 100%;animation:ob2-fill .6s ease forwards}@keyframes ob2-fill{0%{background-position:100% 0}to{background-position:0 0}}.ob2-body,.ob2-head{animation:ob2-in .45s cubic-bezier(.22,1,.36,1) both}.ob2-body{animation-delay:.06s;margin-top:22px}@keyframes ob2-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.ob2-title{margin:6px 0 8px}.ob2-aside{margin:14px 0 0;color:var(--ob-muted);font-size:13px}.ob2-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:26px}.ob2-actions .ob2-next{flex:0 1 260px}.ob2-next:disabled{opacity:.35;cursor:not-allowed}.ob2-goals{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ob2-goals button:last-child{grid-column:1/-1}.ob2-goals button{display:flex;align-items:center;gap:14px;padding:16px;border:1.5px solid var(--ob-line);border-radius:16px;background:#fff;color:var(--ob-ink);text-align:left;cursor:pointer;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease}.ob2-goals button:hover{transform:translateY(-2px);border-color:rgba(61,116,112,.5);box-shadow:0 12px 24px -16px rgba(32,62,60,.5)}.ob2-goals button.is-on{border-color:#3d7470;background:rgba(61,116,112,.08);box-shadow:inset 0 0 0 1px #3d7470}.ob2-goal-icon{flex:none;width:42px;height:42px;display:grid;place-items:center;border-radius:12px;color:#3d7470;background:rgba(61,116,112,.1);transition:background .2s,color .2s}.ob2-goals button.is-on .ob2-goal-icon{color:#fff;background:#3d7470}.ob2-goal-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.ob2-goal-text{display:grid;gap:3px}.ob2-goal-text strong{font-size:14.5px}.ob2-goal-text small{color:var(--ob-muted);font-size:12px;line-height:1.35}.ob2-chips{display:flex;flex-wrap:wrap;gap:9px}.ob2-chips button{display:inline-flex;align-items:center;gap:8px;padding:12px 17px;border:1.5px solid var(--ob-line);border-radius:999px;background:#fff;color:var(--ob-ink);font-size:14px;font-weight:600;cursor:pointer;transition:background .2s,color .2s,border-color .2s,transform .15s}.ob2-chips button:active{transform:scale(.96)}.ob2-chips button span{width:18px;height:18px;display:grid;place-items:center;border-radius:50%;color:#3d7470;background:rgba(61,116,112,.12);font-size:12px}.ob2-chips button.is-on{border-color:var(--ob-ink);color:#fff;background:var(--ob-ink)}.ob2-chips button.is-on span{color:var(--ob-ink);background:#fff}.ob2-retention{display:grid;gap:10px}.ob2-curve{display:block;width:100%;height:auto;max-height:190px;margin-inline:auto;overflow:visible}.ob2-grid{stroke:var(--ob-line);stroke-width:1;stroke-dasharray:2 4}.ob2-axis{stroke:rgba(32,42,44,.25);stroke-width:1}.ob2-forget{fill:none;stroke:var(--ob-accent);stroke-width:3;stroke-linecap:round;transition:d .25s ease}.ob2-spaced{fill:none;stroke:#3d7470;stroke-width:2;stroke-dasharray:5 5;opacity:0;transition:opacity .6s ease}.ob2-spaced.is-shown{opacity:.75}.ob2-legend-spaced{opacity:0;transition:opacity .6s ease .15s}.ob2-legend-spaced.is-shown{opacity:1}.ob2-dot{fill:var(--ob-accent);stroke:#fff;stroke-width:3;transition:cy .25s ease}.ob2-dot-label{fill:var(--ob-accent);font:700 13px var(--sans,sans-serif)}.ob2-tick{fill:var(--ob-muted);font:600 10px var(--sans,sans-serif)}.ob2-legend{display:flex;gap:16px;color:var(--ob-muted);font-size:11.5px}.ob2-legend span{display:inline-flex;align-items:center;gap:6px}.ob2-legend i{width:16px;height:0;border-top:3px solid var(--ob-accent)}.ob2-legend i.spaced{border-top:2px dashed #3d7470}.ob2-slider{display:block;padding:8px 0 0}.ob2-slider .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.ob2-slider input{width:100%;height:8px;margin:0;border-radius:8px;appearance:none;-webkit-appearance:none;background:linear-gradient(90deg,var(--ob-accent) var(--p),rgba(32,42,44,.12) var(--p));cursor:pointer}.ob2-slider input:focus{outline:none}.ob2-slider input:focus-visible{outline:2px solid #3d7470;outline-offset:8px;border-radius:10px}.ob2-slider input::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;border-radius:50%;background:#fff;border:3px solid var(--ob-accent);box-shadow:0 4px 12px rgba(185,74,53,.35)}.ob2-slider input::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#fff;border:3px solid var(--ob-accent)}.ob2-segmented{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:5px;border-radius:18px;background:rgba(32,42,44,.06)}.ob2-segmented button{display:grid;justify-items:center;gap:1px;padding:14px 6px 12px;border:0;border-radius:14px;background:transparent;color:var(--ob-ink);cursor:pointer;transition:background .25s,color .25s,box-shadow .25s}.ob2-segmented button strong{font:500 30px/1 var(--display,serif)}.ob2-segmented button small{color:var(--ob-muted);font-size:11px;font-weight:700;letter-spacing:.06em}.ob2-segmented button.is-on{color:#fff;background:var(--ob-ink);box-shadow:0 10px 22px -12px rgba(32,42,44,.8)}.ob2-segmented button.is-on small{color:rgba(255,255,255,.7)}.ob2-estimate{margin:16px 0 0;color:var(--ob-muted);font-size:14px;text-align:center}.ob2-estimate strong{color:#3d7470}@media (max-width:600px){.ob2-goals{grid-template-columns:1fr}.ob2-goals button{padding:13px 14px}.ob2-actions .ob2-next{flex:1 1}.ob2-segmented button strong{font-size:24px}}.ob2-preparing{text-align:center}.pm-frame{position:relative;width:100%;max-width:520px;margin:14px auto 0;overflow:hidden;border-radius:20px;background:radial-gradient(90% 80% at 50% 40%,#f3efe6,#e9e4d8)}.pm-stage{position:absolute;left:0;top:0;width:520px;height:360px;transform-origin:0 0;text-align:left}.pm-stage *{animation-fill-mode:both!important}.pm-stage.is-still *{animation-duration:1ms!important;animation-delay:0s!important}.pm-foot{display:flex;align-items:center;justify-content:center;gap:16px;min-height:48px;margin-top:14px}.pm-caption{margin:0;color:var(--ob-ink);font-size:14px;font-weight:700;animation:ob2-in .4s ease both}.pm-skip{position:absolute;right:24px;top:26px;border:0;padding:8px 4px;color:var(--ob-muted);background:transparent;font-size:12px;cursor:pointer}.ob2-preparing{position:relative}.pm-continue{flex:0 1 220px}.pm-paper{position:absolute;left:110px;top:40px;width:300px;padding:18px 20px 20px;border-radius:8px;background:#fbf8f1;box-shadow:0 22px 44px -22px rgba(32,42,44,.55);animation:pm-paper 7.2s cubic-bezier(.22,1,.36,1)}.pm-paper small{display:block;margin-bottom:10px;color:#9a9285;font:800 8px var(--sans,sans-serif);letter-spacing:.16em}.pm-paper p{margin:0 0 12px;color:#2d2b27;font-size:13.5px;line-height:1.7}.pm-paper>i{display:block;height:6px;margin-top:8px;border-radius:4px;background:#e7e0d2}.pm-paper>i:nth-of-type(2){width:86%}.pm-paper>i:nth-of-type(3){width:58%}.pm-word{background-image:linear-gradient(rgba(213,163,78,.45),rgba(213,163,78,.45));background-repeat:no-repeat;background-position:0 60%;background-size:0 88%;animation:pm-word .3s ease-out;animation-delay:calc(.75s + var(--i) * .09s)}@keyframes pm-word{to{background-size:100% 88%}}@keyframes pm-paper{0%{opacity:0;transform:translateY(18px) rotate(-1deg) scale(.98);filter:blur(0)}20.8%,9.7%{opacity:1;transform:translateY(0) rotate(-1deg) scale(1);filter:blur(0)}29%,45.8%{opacity:.3;transform:translateY(-8px) rotate(-1deg) scale(.94);filter:blur(1.5px)}52.8%,to{opacity:0;transform:translateY(-34px) rotate(-1deg) scale(.92);filter:blur(2px)}}.pm-card{position:absolute;left:0;top:0;width:84px;height:112px;transform-origin:0 0;perspective:600px;animation:pm-card 7.2s cubic-bezier(.3,.7,.3,1);animation-delay:calc((4 - var(--i)) * .06s)}.pm-card-inner{transform-style:preserve-3d;animation:pm-flip .55s cubic-bezier(.45,0,.2,1);animation-delay:calc(2.1s + var(--i) * .1s)}.pm-card-inner,.pm-face{position:absolute;inset:0}.pm-face{border-radius:9px;backface-visibility:hidden;-webkit-backface-visibility:hidden}.pm-back{display:grid;place-items:center;background:linear-gradient(150deg,#2a3940,#172126);box-shadow:0 14px 26px -12px rgba(0,0,0,.55),inset 0 0 0 1px rgba(213,163,78,.4)}.pm-back span{width:22px;height:22px;border-radius:50%;border:2px solid #d5a34e;box-shadow:inset 0 0 0 4px #172126,inset 0 0 0 10px #d76545}.pm-front{transform:rotateY(180deg);display:flex;flex-direction:column;gap:6px;padding:10px 9px;background:#fffaf0;border-bottom:3px solid var(--ob-accent);box-shadow:0 16px 28px -12px rgba(32,42,44,.5)}.pm-front small,.pm-pcard small{color:var(--ob-accent);font:800 6px var(--sans,sans-serif);letter-spacing:.16em}.pm-front strong{color:#1d1c19;font:600 9.5px/1.3 var(--sans,sans-serif)}@keyframes pm-flip{0%{transform:rotateY(0)}to{transform:rotateY(180deg)}}@keyframes pm-card{0%,20.8%{opacity:0;transform:translate(218px,100px) rotate(-10deg) scale(.2)}22.5%{opacity:1}28%{opacity:1;transform:translate(var(--fx),calc(var(--fy) - 10px)) rotate(var(--fr)) scale(1.04)}31.5%,45.8%{opacity:1;transform:translate(var(--fx),var(--fy)) rotate(var(--fr)) scale(1)}52.8%{opacity:1;transform:translate(201px,66px) rotate(calc(var(--fr) / 3)) scale(1)}61.1%{opacity:1;transform:translate(201px,94px) rotate(0deg) scale(1.405)}62.5%,to{opacity:0;transform:translate(201px,94px) rotate(0deg) scale(1.405)}}.pm-phone{position:absolute;left:185px;top:30px;width:150px;height:300px;padding:6px;border-radius:30px;background:linear-gradient(145deg,#2b2c30,#0a0a0c 35%,#0a0a0c 70%,#26272b);box-shadow:0 30px 50px -22px rgba(0,0,0,.55),inset 0 0 0 1px #44454a;animation:pm-phone 7.2s}@keyframes pm-phone{0%,48.6%{opacity:0;transform:translateY(380px);animation-timing-function:cubic-bezier(.22,1,.36,1)}49.5%{opacity:1}58.3%,to{opacity:1;transform:translateY(0)}}.pm-screen{position:relative;width:100%;height:100%;overflow:hidden;border-radius:24px;background:#f4f1ea}.pm-island{position:absolute;top:7px;left:50%;z-index:3;height:14px;width:44px;display:grid;place-items:center;overflow:hidden;border-radius:10px;background:#050506;transform:translateX(-50%);animation:pm-island 7.2s cubic-bezier(.3,1.4,.5,1)}.pm-island span{display:inline-flex;align-items:center;gap:4px;color:#fff;font:700 6.5px var(--sans,sans-serif);white-space:nowrap;animation:pm-island-text 7.2s}.pm-island b{width:5px;height:5px;border-radius:50%;background:#5fcf7f;box-shadow:0 0 6px #5fcf7f}@keyframes pm-island{0%,84.7%{width:44px;height:14px}91%,to{width:124px;height:19px}}@keyframes pm-island-text{0%,87.5%{opacity:0}91%,to{opacity:1}}.pm-head{position:absolute;top:30px;left:10px;right:10px;display:flex;justify-content:space-between;align-items:baseline}.pm-head strong{color:#141414;font:700 9px var(--sans,sans-serif)}.pm-head span{color:#8a8a84;font-size:7px}.pm-track{position:absolute;top:45px;left:10px;right:10px;height:3px;border-radius:3px;background:#e3ded3}.pm-track i{display:block;width:20%;height:100%;border-radius:3px;background:var(--ob-accent)}.pm-pcard{position:absolute;top:58px;left:10px;width:118px;height:152px;display:flex;flex-direction:column;gap:7px;padding:13px 11px;border-radius:11px;background:#fffaf0;border-bottom:3px solid var(--ob-accent);box-shadow:0 10px 20px -12px rgba(0,0,0,.3);animation:pm-pcard 7.2s}.pm-pcard strong{color:#1d1c19;font:600 12px/1.3 var(--sans,sans-serif)}@keyframes pm-pcard{0%,60.4%{opacity:0}62%,to{opacity:1}}.pm-grades{position:absolute;top:222px;left:10px;width:118px;display:flex;gap:4px;animation:pm-pcard 7.2s}.pm-grades>span{position:relative;flex:1 1;height:38px;display:grid;place-items:center;border-radius:10px;color:#3a2f2a;font:700 7px var(--sans,sans-serif)}.pm-grades .r{background:#f6cfc9}.pm-grades .y{background:#f5e4b5}.pm-grades .g{background:#c3e7cb;animation:pm-green 7.2s}.pm-grades .g em{font-style:normal;animation:pm-green-label 7.2s}@keyframes pm-green{0%,74.5%{background:#c3e7cb;transform:scale(1)}76.4%{transform:scale(.9)}78%{background:#4fbf72;transform:scale(1.08)}80%,to{background:#4fbf72;transform:scale(1)}}@keyframes pm-green-label{0%,76.4%{opacity:1}78%,to{opacity:0}}.pm-bulb,.pm-check{position:absolute;inset:0;margin:auto;width:18px;height:18px}.pm-bulb{fill:#ffd21f;stroke:#9a6a00;stroke-width:1;filter:drop-shadow(0 0 6px rgba(255,205,40,.95));animation:pm-bulb 7.2s}@keyframes pm-bulb{0%,77.5%{opacity:0;transform:scale(.3)}80%{opacity:1;transform:scale(1.2)}82%,83.3%{opacity:1;transform:scale(1)}85.5%,to{opacity:0;transform:scale(.5)}}.pm-check{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:22;animation:pm-check 7.2s}@keyframes pm-check{0%,84.5%{opacity:0;stroke-dashoffset:22}85.5%{opacity:1;stroke-dashoffset:22}90.5%,to{opacity:1;stroke-dashoffset:0}}.pm-home{position:absolute;bottom:5px;left:50%;width:46px;height:3px;margin-left:-23px;border-radius:3px;background:#111}.pm-touch{position:absolute;left:290px;top:266px;width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.65);box-shadow:0 0 0 1.5px rgba(255,255,255,.95),0 6px 14px rgba(0,0,0,.25);animation:pm-touch 7.2s}@keyframes pm-touch{0%,70%{opacity:0;transform:translate(14px,22px) scale(1.2)}73%{opacity:1;transform:translate(0) scale(1)}75.5%{opacity:1;transform:scale(.78)}77.5%,to{opacity:0;transform:scale(1.1)}}@media (prefers-reduced-motion:reduce){.ob2-body,.ob2-head,.ob2-progress i.now{animation:none}}.admin-audience{margin-top:28px}.admin-audience header{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:6px 16px;margin-bottom:12px}.admin-audience h2{margin:0;font-size:18px}.admin-audience header p,.admin-audience-note{margin:0;color:var(--muted,#6d7673);font-size:12px}.admin-audience-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-audience-card{display:grid;gap:8px;padding:14px 16px;border:1px solid var(--line,rgba(32,42,44,.14));border-radius:14px;background:rgba(255,255,255,.7)}.admin-audience-card h3{margin:0 0 4px;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted,#6d7673)}.admin-audience-bar{display:grid;grid-template-columns:minmax(0,150px) 1fr 32px;align-items:center;gap:10px;font-size:12.5px}.admin-audience-bar span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-audience-bar i{height:8px;border-radius:6px;background:rgba(32,42,44,.08);overflow:hidden}.admin-audience-bar b{display:block;height:100%;border-radius:6px;background:#3d7470}.admin-audience-bar strong{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (max-width:700px){.admin-audience-grid{grid-template-columns:1fr}}.onboarding-card.onboarding-result{padding:28px 34px 20px}.onboarding-result .result-badge{margin-bottom:14px}.onboarding-result h1{font-size:clamp(30px,3.4vw,42px);margin-bottom:8px}.onboarding-result .onboarding-copy{margin-bottom:0;font-size:13.5px}.onboarding-result .result-free{margin-top:18px;padding:18px 20px 16px}.onboarding-result .result-free-price{margin:6px 0 10px}.onboarding-result .result-free-price strong{font-size:38px}.onboarding-result .result-free ul{gap:6px;margin-bottom:14px}.onboarding-result .result-free li{font-size:13px}.onboarding-result .result-free-cta{padding:14px 18px}.onboarding-result .result-upgrade-label{margin:16px 0 6px}.onboarding-result .result-upgrades article{padding:9px 12px}.onboarding-result .onboarding-back{padding:6px 0 0}@media (max-width:600px){.onboarding-card.onboarding-result{padding:22px 18px 16px}.onboarding-result h1{font-size:30px}.onboarding-result .result-free{padding:15px 15px 14px}.onboarding-result .result-free-price strong{font-size:32px}.onboarding-result .result-free li{font-size:12.5px;padding-left:24px}.onboarding-result .result-upgrades{grid-template-columns:1fr 1fr}.onboarding-result .result-upgrades span{display:none}}.onboarding-analysis-shell{position:relative;overflow:clip}@media (max-height:700px){.onboarding-analysis-shell{padding-block:8px}.onboarding-result .result-free{margin-top:14px}}.tut-root{position:fixed;inset:0;z-index:90;pointer-events:none}.tut-shade{position:fixed;pointer-events:auto;background:rgba(17,22,25,.55)}.tut-shade-soft{background:rgba(17,22,25,.28)}.tut-hole{position:fixed;pointer-events:none;border-radius:12px;box-shadow:0 0 0 2px #e8b464,0 0 0 6px rgba(232,180,100,.35);animation:tut-ring 1.6s ease-in-out infinite;transition:top .25s ease,left .25s ease,width .25s ease,height .25s ease}@keyframes tut-ring{50%{box-shadow:0 0 0 2px #e8b464,0 0 0 12px rgba(232,180,100,.12)}}.tut-balloon{position:fixed;pointer-events:auto;display:grid;gap:8px;padding:18px 18px 14px;border-radius:16px;color:#f6f1e7;background:#1c2528;box-shadow:0 24px 50px -18px rgba(0,0,0,.6),inset 0 0 0 1px rgba(255,255,255,.08);transition:top .3s cubic-bezier(.22,1,.36,1),left .3s cubic-bezier(.22,1,.36,1);animation:tut-in .35s cubic-bezier(.22,1,.36,1)}@keyframes tut-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.tut-balloon small{color:#e8b464;font-size:10px;font-weight:800;letter-spacing:.14em}.tut-balloon strong{font-size:16px;line-height:1.3}.tut-balloon p{margin:0;color:rgba(246,241,231,.78);font-size:13.5px;line-height:1.5}.tut-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:6px}.tut-skip{border:0;padding:6px 0;color:rgba(246,241,231,.55);background:transparent;font-size:12px;cursor:pointer}.tut-skip:hover{color:#fff}.tut-next{border:0;padding:10px 16px;border-radius:10px;color:#1b1710;background:linear-gradient(135deg,#f0c77c,#d5a34e);font-size:13px;font-weight:800;cursor:pointer}.tut-balloon.is-nudge{animation:tut-nudge .45s ease}@keyframes tut-nudge{20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}@media (prefers-reduced-motion:reduce){.tut-balloon,.tut-balloon.is-nudge,.tut-hole{animation:none;transition:none}}.popup-cards .cards-full-bar{min-width:0}.popup-cards .cards-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.popup-cards .cards-full-bar .back,.popup-cards .review-start.inline{flex:none}.popup-cards .cards-full-bar>.review-start{display:inline-flex}.popup-cards .cards-full-body>.cards-grid{display:grid}.popup-cards .cards-full-body>.side-empty{display:block}.selbox.is-tutorial{border:2px solid #d5a34e;border-radius:4px;background:rgba(213,163,78,.24);box-shadow:0 0 0 4px rgba(213,163,78,.18),0 0 22px rgba(213,163,78,.45)}.ask-fab-k svg,.ask-title svg{width:1em;height:1em;vertical-align:-.15em}.page.selecting.tutorial-selecting{outline-color:#d5a34e;border-color:#d5a34e}.ask-title{display:inline-flex;align-items:center;gap:6px}.ob2-curve{max-height:min(190px,22vh)}@media (max-height:820px){.onboarding-card.ob2-card{padding-top:22px;padding-bottom:18px}.ob2-card .onboarding-brand{margin-bottom:12px}.ob2-progress{margin-bottom:16px}.onboarding-card h1.ob2-title{font-size:clamp(26px,3vw,36px);line-height:1.05;margin:4px 0 6px}.ob2-head .onboarding-copy{font-size:13px;margin-bottom:0}.ob2-body{margin-top:12px}.ob2-retention{gap:6px}.ob2-slider{padding-top:2px}.ob2-aside{margin-top:8px;font-size:12.5px}.ob2-actions{margin-top:14px}}.note-editor-backdrop{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:24px;background:rgba(17,22,25,.5);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.note-editor-modal{width:min(760px,100%);height:min(80vh,760px);display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--paper);color:var(--ink);box-shadow:0 40px 90px -30px rgba(0,0,0,.55)}.note-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 22px 12px;border-bottom:1px solid var(--line)}.note-editor-kicker{display:block;color:var(--ink-faint,var(--ink-soft));font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.note-editor-head h2{margin:4px 0 0;font:600 20px/1.25 var(--display)}.note-editor-x{border:0;padding:2px 8px;background:transparent;color:var(--ink-soft);font-size:24px;line-height:1;cursor:pointer}.note-editor-foot{display:flex;justify-content:flex-end;gap:10px;padding:12px 22px;border-top:1px solid var(--line)}.note-editor-cancel,.note-editor-save{padding:10px 18px;border-radius:10px;font:inherit;font-size:13.5px;font-weight:700;cursor:pointer}.note-editor-cancel{border:1px solid var(--line);background:transparent;color:var(--ink)}.note-editor-save{border:0;background:var(--ai);color:#fff}.rich-note-editor{flex:1 1;min-height:0;display:flex;flex-direction:column}.rich-note-editor.is-loading{display:grid;place-items:center;color:var(--ink-soft);font-size:13px}.rich-note-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:8px 16px;border-bottom:1px solid var(--line);background:var(--paper-2,var(--paper))}.rich-note-toolbar button{min-width:34px;height:32px;display:inline-grid;place-items:center;padding:0 9px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--ink-soft);font:inherit;font-size:13px;cursor:pointer}.rich-note-toolbar button.is-on,.rich-note-toolbar button:hover:not(:disabled){border-color:var(--line);color:var(--ink)}.rich-note-toolbar button.is-on{background:color-mix(in srgb,var(--ai) 14%,transparent)}.rich-note-toolbar button:disabled{opacity:.35;cursor:default}.rich-note-toolbar svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.rich-note-toolbar svg circle{fill:currentColor;stroke:none}.rich-note-sep{width:1px;height:20px;margin:0 4px;background:var(--line)}.rich-note-spacer{flex:1 1}.rich-note-linkbar{display:flex;gap:6px;padding:8px 16px;border-bottom:1px solid var(--line)}.rich-note-linkbar input{flex:1 1;min-width:0;padding:7px 10px;font:inherit;font-size:13px}.rich-note-linkbar button,.rich-note-linkbar input{border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--ink)}.rich-note-linkbar button{padding:7px 12px;font:inherit;font-size:12.5px;cursor:pointer}.rich-note-scroll{flex:1 1;min-height:0;overflow:auto}.rich-note-content{min-height:100%;padding:22px 28px 40px;outline:none;font-size:15px;line-height:1.7;color:var(--ink)}.rich-note-content>:first-child{margin-top:0}.rich-note-content p{margin:0 0 .8em}.rich-note-content h1,.rich-note-content h2,.rich-note-content h3{margin:1.2em 0 .5em;font-family:var(--display);line-height:1.25}.rich-note-content h2{font-size:20px}.rich-note-content ol,.rich-note-content ul{margin:0 0 .8em;padding-left:1.4em}.rich-note-content blockquote{margin:0 0 .8em;padding:4px 0 4px 14px;border-left:3px solid var(--ai);color:var(--ink-soft)}.rich-note-content a{color:var(--ai);text-decoration:underline}.rich-note-content code{padding:1px 5px;border-radius:5px;background:color-mix(in srgb,var(--ink) 8%,transparent);font-size:.92em}.rich-note-content pre{padding:12px 14px;border-radius:10px;background:color-mix(in srgb,var(--ink) 7%,transparent);overflow:auto}.rich-note-content table{width:100%;margin:0 0 1em;border-collapse:collapse;table-layout:fixed}.rich-note-content td,.rich-note-content th{padding:6px 9px;border:1px solid var(--line);vertical-align:top}.rich-note-content th{background:color-mix(in srgb,var(--ink) 5%,transparent);text-align:left}.rich-note-content .selectedCell{background:color-mix(in srgb,var(--ai) 12%,transparent)}.rich-note-content p.is-editor-empty:first-child:before{content:"Escreva sua nota…";float:left;height:0;color:var(--ink-faint,var(--ink-soft));pointer-events:none}.note-viewer-body.editing{display:flex;flex-direction:column;padding:0;overflow:hidden}@media (max-width:700px){.note-editor-backdrop{padding:0}.note-editor-modal{width:100%;height:100dvh;border-radius:0}.rich-note-content{padding:18px 18px 32px}}.plan-card{display:grid;gap:6px}.plan-meters{display:grid;gap:10px;margin-top:10px}.plan-meter>div{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--ink-soft)}.plan-meter>div strong{color:var(--ink);font-weight:700}.plan-meter i{height:6px;margin-top:5px;background:color-mix(in srgb,var(--ink) 10%,transparent);overflow:hidden}.plan-meter b,.plan-meter i{display:block;border-radius:6px}.plan-meter b{height:100%;background:var(--ai);transition:width .4s ease}.plan-meter b.is-high{background:var(--shu)}.plan-actions{display:grid;gap:8px;margin-top:12px}.plan-actions button{padding:11px 14px;border:0;border-radius:12px;background:var(--ai);color:#fff;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.plan-actions button:nth-child(2){background:transparent;color:var(--ink);border:1px solid var(--line)}.plan-actions button:disabled{opacity:.6;cursor:wait}.quota-banner{position:fixed;z-index:95;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translateX(-50%);width:min(560px,calc(100% - 24px));display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 14px 14px 18px;border:1px solid var(--line);border-radius:16px;background:var(--paper);color:var(--ink);box-shadow:0 24px 50px -20px rgba(0,0,0,.45)}.quota-banner p{margin:0;font-size:13.5px;line-height:1.45}.quota-banner>div{display:flex;align-items:center;gap:8px;flex:none}.quota-cta{padding:9px 14px;border:0;border-radius:10px;background:var(--ai);color:#fff;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.quota-close{border:0;background:transparent;color:var(--ink-soft);font-size:22px;line-height:1;cursor:pointer}.quota-banner.is-info{border-color:color-mix(in srgb,var(--ai) 40%,var(--line))}@media (max-width:700px){.quota-banner{bottom:calc(92px + env(safe-area-inset-bottom))}}.book-local{display:inline-block;margin-left:6px;padding:2px 7px;border-radius:999px;background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--ink-soft);font-size:10px;font-weight:700;letter-spacing:.02em;vertical-align:middle;white-space:nowrap}.reader-pdf-pro{color:var(--ink-soft);font-size:13px}.result-upgrades .result-upgrade-buy{display:grid;gap:3px;padding:11px 13px;border:1px solid var(--ob-line);border-radius:12px;background:#fff;text-align:left;font:inherit;color:var(--ob-ink);cursor:pointer;transition:border-color .2s,transform .2s}.result-upgrades .result-upgrade-buy:hover{border-color:#3d7470;transform:translateY(-1px)}.result-upgrades .result-upgrade-buy small{color:#3d7470;font-size:9px;font-weight:800;letter-spacing:.1em}.result-upgrades .result-upgrade-buy strong{font:500 18px var(--display,serif)}.result-upgrades .result-upgrade-buy sup{color:var(--ob-muted);font-size:10px}.result-upgrades .result-upgrade-buy span{color:var(--ob-muted);font-size:11px}.plan-card .plan-note{display:block;margin-top:8px;opacity:.8}:root{--fc-surface:#ffffff;--fc-stack-1:#f7f7f3;--fc-stack-2:#eeeee8;--fc-border:rgba(27,30,38,.08);--fc-shadow:0 1px 2px rgba(27,30,38,.05),0 4px 10px rgba(27,30,38,.05),0 18px 40px rgba(27,30,38,.10);--fc-red:#d14a3a;--fc-orange:#d9822b;--fc-green:#2f9e6a;--fc-blue:#3a78c9}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--fc-surface:#252a34;--fc-stack-1:#1f232c;--fc-stack-2:#1a1e26;--fc-border:rgba(255,255,255,.08);--fc-shadow:0 1px 2px rgba(0,0,0,.4),0 6px 14px rgba(0,0,0,.3),0 22px 48px rgba(0,0,0,.45);--fc-red:#ef6a5a;--fc-orange:#f0a04b;--fc-green:#4cc58a;--fc-blue:#6aa5f0}}:root[data-theme=dark]{--fc-surface:#252a34;--fc-stack-1:#1f232c;--fc-stack-2:#1a1e26;--fc-border:rgba(255,255,255,.08);--fc-shadow:0 1px 2px rgba(0,0,0,.4),0 6px 14px rgba(0,0,0,.3),0 22px 48px rgba(0,0,0,.45);--fc-red:#ef6a5a;--fc-orange:#f0a04b;--fc-green:#4cc58a;--fc-blue:#6aa5f0}.fc-review{width:100%;max-width:560px;display:flex;flex-direction:column;align-items:stretch;gap:20px}.fc-progress-row{display:flex;align-items:center;gap:12px}.fc-progress{flex:1 1;height:8px;border-radius:99px;background:color-mix(in srgb,var(--ink) 9%,transparent);overflow:hidden}.fc-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--ai),color-mix(in srgb,var(--ai) 60%,var(--fc-blue)));transition:width .4s ease}.fc-counter{font-size:13px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink-soft);min-width:48px;text-align:right}.fc-deck{position:relative;width:100%;height:clamp(320px,50vh,440px);perspective:1400px;margin-bottom:26px}.fc-face,.fc-stack{position:absolute;inset:0;border-radius:24px;border:1px solid var(--fc-border);background:var(--fc-surface);box-shadow:var(--fc-shadow)}.fc-stack{transform-origin:50% 100%;transition:transform .35s ease,opacity .35s ease}.fc-stack-1{transform:translateY(12px) scale(.96);background:var(--fc-stack-1)}.fc-stack-2{transform:translateY(24px) scale(.92) rotate(.6deg);opacity:.85}.fc-stack-2,.fc-stack-3{background:var(--fc-stack-2)}.fc-stack-3{transform:translateY(36px) scale(.88) rotate(-.8deg);opacity:.6}.fc-card{position:absolute;inset:0;cursor:pointer;outline:none;border-radius:24px;animation:fc-rise .38s cubic-bezier(.2,.8,.2,1);transition:transform .32s ease-in,opacity .32s ease-in}.fc-card:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--ai) 45%,transparent)}.fc-card.flipped{cursor:default}.fc-inner{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .46s cubic-bezier(.45,.05,.55,.95)}.fc-card.flipped .fc-inner{transform:rotateY(180deg)}.fc-face{display:flex;flex-direction:column;padding:22px 26px 26px;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden}.fc-back{transform:rotateY(180deg)}.fc-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.fc-label{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}.fc-label.ans{color:var(--ai)}.fc-tag{font-size:11px;color:var(--ink-faint);padding:3px 9px;border-radius:99px;background:color-mix(in srgb,var(--ink) 6%,transparent);max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fc-body{flex:1 1;display:flex;align-items:center;justify-content:center;text-align:center;overflow-y:auto;padding:8px 0}.fc-q{font-family:var(--display);font-size:clamp(40px,9vw,60px);line-height:1.25;color:var(--ink)}.fc-q.latin{font-family:var(--sans);font-size:clamp(22px,4.6vw,30px);font-weight:600;letter-spacing:-.01em;line-height:1.35}.fc-q.long{font-size:clamp(18px,3.6vw,22px)}.fc-hint{align-self:center;font-size:12px;letter-spacing:.02em}.fc-echo,.fc-hint{color:var(--ink-faint)}.fc-echo{margin-top:14px;padding-bottom:14px;border-bottom:1px dashed var(--line);text-align:center;font-family:var(--display);font-size:20px}.fc-echo.latin{font-family:var(--sans);font-size:15px}.fc-a{font-size:clamp(18px,3.8vw,22px);line-height:1.55;color:var(--ink);white-space:pre-wrap}.fc-card.leaving{pointer-events:none;opacity:0}.fc-card.leaving-again{transform:translateX(-60%) rotate(-8deg)}.fc-card.leaving-hard{transform:translateY(40%) scale(.9)}.fc-card.leaving-easy,.fc-card.leaving-good{transform:translateX(60%) rotate(8deg)}.fc-actions{width:100%;display:flex;justify-content:center;min-height:62px}.fc-actions.shown>*{animation:fc-fade .3s ease both}.fc-primary{font:inherit;font-size:15px;font-weight:600;width:100%;max-width:360px;padding:15px 22px;border:0;border-radius:16px;background:var(--ai);color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 6px 18px color-mix(in srgb,var(--ai) 35%,transparent);transition:transform .12s ease,filter .12s ease}.fc-primary:hover{filter:brightness(1.07)}.fc-primary:active{transform:scale(.97)}.fc-primary:disabled{opacity:.6;cursor:wait}.fc-primary kbd{font:inherit;font-size:11px;padding:1px 7px;border-radius:6px;background:rgba(255,255,255,.18)}.fc-grades{gap:10px}.fc-grades .g{--c:var(--ink);padding:12px 6px;border-radius:16px;border:1px solid color-mix(in srgb,var(--c) 30%,transparent);background:color-mix(in srgb,var(--c) 10%,var(--fc-surface));color:var(--c);font-size:14px;transition:transform .12s ease,background .15s ease}.fc-grades .g small{color:color-mix(in srgb,var(--c) 70%,var(--ink-faint));font-size:11px;font-weight:500}.fc-grades .g.again{--c:var(--fc-red)}.fc-grades .g.hard{--c:var(--fc-orange)}.fc-grades .g.good{--c:var(--fc-green)}.fc-grades .g.easy{--c:var(--fc-blue)}.fc-grades .g:hover{border-color:var(--c);color:var(--c);background:color-mix(in srgb,var(--c) 16%,var(--fc-surface))}.fc-grades .g:active{transform:scale(.95)}@keyframes fc-rise{0%{transform:translateY(16px) scale(.95);opacity:.6}to{transform:none;opacity:1}}@keyframes fc-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.fc-card,.fc-grades .g,.fc-inner,.fc-primary,.fc-progress-fill,.fc-stack{transition:none!important;animation:none!important}.fc-actions.shown>*{animation:none}}@media (hover:none){.fc-primary kbd{display:none}}.onboarding-demo-error{margin-top:14px;padding:12px 14px;border:1px solid color-mix(in srgb,#a63b2c 35%,transparent);border-radius:10px;background:color-mix(in srgb,#a63b2c 7%,var(--paper));font-size:13px;line-height:1.45}.onboarding-demo-error p,.tutorial-start-error p{margin:0 0 10px}.onboarding-demo-actions{display:flex;flex-wrap:wrap;gap:8px}.onboarding-demo-actions button{min-height:40px;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);font:inherit;font-size:13px;cursor:pointer}.onboarding-demo-actions button:first-child{color:#fff;background:var(--terracotta);border-color:transparent}.tutorial-start-error{position:fixed;left:50%;bottom:max(20px,env(safe-area-inset-bottom));transform:translateX(-50%);z-index:90;width:min(440px,calc(100vw - 32px));padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--paper);color:var(--ink);box-shadow:0 20px 50px -25px #000;font-size:13px}.onboarding-card,.onboarding-card button,.onboarding-card h1,.onboarding-card input,.onboarding-card strong,.onboarding-shell{color:#1f2a2c}.onboarding-card{background:rgba(255,255,255,.96);color-scheme:light}.ob2-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.ob2-top .onboarding-brand{margin-bottom:26px}.ob2-skip{border:0;padding:8px 0;color:#6d7673!important;background:transparent;font:inherit;font-size:12px;cursor:pointer}.ob2-daily-goals{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.ob2-daily-goals button,.ob2-daily-goals label{min-height:82px;display:grid;place-items:center;align-content:center;gap:3px;border:1.5px solid var(--ob-line);border-radius:15px;background:#fff;cursor:pointer}.ob2-daily-goals button.is-on,.ob2-daily-goals label.is-on{border-color:#3d7470;background:rgba(61,116,112,.08);box-shadow:inset 0 0 0 1px #3d7470}.ob2-daily-goals strong{font:500 28px/1 var(--display)}.ob2-daily-goals label span,.ob2-daily-goals small{color:#6d7673;font-size:11px;font-weight:700}.ob2-daily-goals input{width:76px;border:0;outline:0;background:transparent;text-align:center;font:600 22px var(--sans)}@media (max-width:430px){.onboarding-shell{padding:12px}.onboarding-card{padding:22px 18px 20px;border-radius:22px}.onboarding-card h1{font-size:34px}.ob2-goals button{padding:11px 12px}.ob2-goal-icon{width:38px;height:38px}.ob2-daily-goals{grid-template-columns:repeat(2,1fr)}}.first-run-shell{display:grid;grid-template-columns:minmax(0,520px);padding:20px 16px;background:radial-gradient(circle at 50% 0,rgba(239,93,61,.1),transparent 40%),#f7f7f2}.first-run-card{max-width:520px;padding:28px;border-radius:28px;background:rgba(255,255,255,.94)}.first-run-top{display:flex;align-items:center;justify-content:space-between}.first-run-top .onboarding-brand{margin:0}.first-run-top>button{border:0;background:none;color:var(--muted);font-weight:650}.first-run-dots{display:flex;gap:6px;margin:28px 0}.first-run-dots i{width:7px;height:7px;border-radius:9px;background:#d9dcd6;transition:.2s}.first-run-dots i.active{width:24px;background:var(--terracotta)}.first-run-options{display:grid;gap:9px}.first-run-options button{display:flex;justify-content:space-between;align-items:center;padding:15px 16px;border:1px solid var(--line);border-radius:15px;background:#fff;color:var(--ink);font-weight:700;text-align:left}.first-run-options button span{opacity:0}.first-run-goals .selected,.first-run-options button.selected,.first-run-segments button.selected{border-color:#3d7470;background:rgba(61,116,112,.08);box-shadow:inset 0 0 0 1px #3d7470}.first-run-options button.selected span{opacity:1;color:#3d7470}.first-run-adapt{display:grid;gap:18px}.first-run-segments{display:grid;grid-template-columns:repeat(3,1fr);padding:4px;border-radius:14px;background:#eff0ec}.first-run-segments button{min-height:48px;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--ink);font-weight:650}.first-run-goals{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.first-run-goals button,.first-run-goals label{min-height:78px;display:grid;place-items:center;align-content:center;gap:2px;border:1px solid var(--line);border-radius:15px;background:#fff}.first-run-goals strong{font-size:23px}.first-run-goals small{color:var(--muted)}.first-run-goals label span{font-size:12px;font-weight:700}.first-run-goals input{width:70px;border:0;background:transparent;text-align:center;font-size:21px;font-weight:700;outline:0}.first-run-actions{display:flex;gap:10px;margin-top:26px}.first-run-actions .onboarding-next{margin-left:auto}.first-run-back{width:52px;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:20px}.paywall-backdrop{position:fixed;z-index:10000;inset:0;display:grid;place-items:center;padding:16px;background:rgba(14,18,18,.58);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.paywall{position:relative;width:min(100%,520px);padding:34px 28px 26px;border-radius:28px;background:#fff;color:#18201f;box-shadow:0 30px 90px rgba(0,0,0,.28);text-align:center}.paywall-close{position:absolute;top:14px;right:15px;width:36px;height:36px;border:0;border-radius:50%;background:#f0f1ee;font-size:23px}.paywall-mark{width:48px;height:48px;display:grid;place-items:center;margin:0 auto 14px;border-radius:15px;background:#18201f;color:#e7bd6b}.paywall>small{color:#c65038;font-weight:850;letter-spacing:.15em}.paywall h2{margin:9px auto 10px;max-width:420px;font:600 30px/1.08 var(--display);letter-spacing:-.03em}.paywall>p{color:#68706d;line-height:1.5}.paywall-plans{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0 16px}.paywall-plans button{position:relative;display:grid;gap:5px;padding:20px 12px 16px;border:1px solid #dfe1da;border-radius:17px;background:#fff;color:#18201f}.paywall-plans button.recommended{border:2px solid #3d7470;background:#f2f8f6}.paywall-plans em{position:absolute;top:-10px;left:50%;transform:translateX(-50%);padding:4px 9px;border-radius:20px;background:#3d7470;color:#fff;font-size:9px;font-style:normal;font-weight:850;white-space:nowrap}.paywall-plans span{font-weight:750}.paywall-plans strong{font-size:24px}.paywall-note,.paywall-plans small{color:#737a77!important;font-size:11px}@media(max-width:440px){.first-run-card{padding:22px 18px}.first-run-card h1{font-size:34px}.first-run-goals{grid-template-columns:1fr 1fr}.paywall{padding:30px 18px 22px}.paywall h2{font-size:27px}}.first-run-card,.first-run-shell,.first-run-shell button{color:#1f2a2c}.first-run-goals button,.first-run-options button,.first-run-segments button{color:#1f2a2c!important;border-color:#d9dcd6!important;background:#fff}.first-run-goals .selected,.first-run-options button.selected,.first-run-segments button.selected{background:#eaf2f0}.first-run-shell input{color:#1f2a2c;background:#fff}.first-run-shell .onboarding-next{color:#fff!important}.dm-card,.dm-shell{color:#1f2a2c}.dm-card{max-width:560px;margin:0 auto;background:rgba(255,255,255,.97);color-scheme:light;text-align:center}.dm-card .ob2-title,.dm-card .onboarding-copy{color:#1f2a2c}.dm-card .onboarding-copy{opacity:.78;min-height:3em}.dm-top{display:flex;justify-content:space-between;align-items:center}.dm-skip{background:none;border:0;color:#6d7673;font:inherit;cursor:pointer;text-decoration:underline}.dm-stage{position:relative;height:220px;margin:14px 0 8px;cursor:pointer;border-radius:20px;background:linear-gradient(160deg,#fbf4ec,#f1ece4);overflow:hidden}.dm-laptop{position:absolute;left:50%;top:28px;width:250px;transform:translateX(-50%);transition:transform .8s cubic-bezier(.2,.8,.2,1)}.dm-s2 .dm-laptop,.dm-s3 .dm-laptop{transform:translateX(-78%) scale(.9)}.dm-screen{position:relative;height:150px;border:solid #2b3436;border-width:8px 8px 10px;border-radius:12px 12px 4px 4px;background:#fff;display:grid;grid-template-columns:1.3fr 1fr;gap:8px;padding:10px}.dm-base{height:10px;margin:0 -20px;border-radius:0 0 12px 12px;background:#c9cfcc}.dm-pdf{display:flex;flex-direction:column;gap:7px}.dm-card-new b,.dm-fly b,.dm-pdf i,.dm-phone-card b{display:block;height:6px;border-radius:3px;background:#d9dddb}.dm-card-new b.short,.dm-fly b.short,.dm-pdf i.short,.dm-phone-card b.short{width:60%}.dm-pdf .dm-hl{position:relative;overflow:hidden}.dm-pdf .dm-hl:after{content:"";position:absolute;inset:0;background:#f4c95d;transform-origin:left;animation:dm-hl 1.2s ease-out .3s both}.dm-card-new{align-self:center;padding:8px;border-radius:8px;border:1px solid rgba(185,74,53,.35);background:#fff6f2;display:flex;flex-direction:column;gap:5px;text-align:left;animation:dm-pop .6s cubic-bezier(.2,1.4,.4,1) 1.4s both}.dm-card-new small,.dm-phone-card small{font-size:9px;font-weight:700;color:#b94a35;text-transform:uppercase;letter-spacing:.04em}.dm-phone{position:absolute;top:22px;right:-120px;width:96px;height:180px;border:6px solid #2b3436;border-radius:20px;background:#fff;transition:right .8s cubic-bezier(.2,.8,.2,1);overflow:hidden}.dm-s2 .dm-phone,.dm-s3 .dm-phone{right:14%}.dm-notch{width:34px;height:6px;margin:4px auto 10px;border-radius:4px;background:#2b3436}.dm-phone-card{margin:0 7px;padding:7px;border-radius:8px;border:1px solid rgba(185,74,53,.35);background:#fff6f2;display:flex;flex-direction:column;gap:5px;text-align:left;opacity:0}.dm-s2 .dm-phone-card{animation:dm-pop .5s 1.9s both}.dm-s3 .dm-phone-card{opacity:1}.dm-fly{position:absolute;top:90px;left:40%;width:56px;padding:6px;border-radius:7px;background:#fff6f2;border:1px solid rgba(185,74,53,.4);display:flex;flex-direction:column;gap:4px;opacity:0;box-shadow:0 8px 20px rgba(31,45,43,.15)}.dm-s2 .dm-fly{animation:dm-fly 1.2s cubic-bezier(.5,0,.3,1) .9s both}.dm-notif{position:absolute;left:5px;right:5px;top:14px;display:flex;gap:4px;align-items:center;padding:6px;border-radius:9px;background:#1f2a2c;color:#fff;font-size:8.5px;font-weight:600;text-align:left;line-height:1.2;opacity:0;transform:translateY(-40px)}.dm-notif .mark{flex:none;width:10px;height:10px;border-radius:3px;background:#b94a35}.dm-s3 .dm-notif{animation:dm-notif .6s cubic-bezier(.2,1.3,.4,1) .5s both}.dm-streak{position:absolute;bottom:14px;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:4px;color:#b94a35;opacity:0}.dm-s3 .dm-streak{animation:dm-pop .5s 1.5s both}.dm-s3 .dm-flame{display:inline-block;font-size:20px;animation:dm-flame 1s ease-in-out 2s infinite alternate}.dm-text{animation:dm-in .5s both}.dm-dots{display:flex;justify-content:center;gap:8px;margin:6px 0 14px}.dm-dots button{width:8px;height:8px;padding:0;border:0;border-radius:4px;background:rgba(32,42,44,.2);cursor:pointer;transition:width .3s,background .3s}.dm-dots button.now{width:24px;background:#b94a35}.dm-phone-hint{margin:0 0 12px;font-size:14px;color:#1f2a2c;opacity:.8}.dm-actions{display:flex;flex-direction:column;gap:10px}.dm-btn{width:100%;justify-content:center;text-decoration:none}.dm-btn-ghost,a.dm-btn.onboarding-next{display:flex;align-items:center}.dm-btn-ghost{justify-content:center;min-height:48px;border-radius:14px;border:1px solid rgba(32,42,44,.2);background:#fff;color:#1f2a2c;font:inherit;font-weight:600;cursor:pointer}.dm-android{margin:10px 0 0;font-size:13px;color:#6d7673}@keyframes dm-hl{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes dm-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes dm-fly{0%{opacity:0;transform:translate(-40px) scale(.8)}20%{opacity:1}80%{opacity:1}to{opacity:0;transform:translate(110px,-20px) scale(.7) rotate(8deg)}}@keyframes dm-notif{to{opacity:1;transform:translateY(0)}}@keyframes dm-flame{0%{transform:scale(1)}to{transform:scale(1.18) rotate(-6deg)}}@keyframes dm-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (max-width:600px){.dm-stage{height:200px}.dm-laptop{width:210px}.dm-s2 .dm-phone,.dm-s3 .dm-phone{right:6%}}@media (prefers-reduced-motion:reduce){.dm-stage *,.dm-text{animation:none!important;transition:none!important}.dm-pdf .dm-hl:after{transform:none}.dm-card-new{opacity:1}.dm-s2 .dm-phone-card,.dm-s3 .dm-notif,.dm-s3 .dm-streak{opacity:1;transform:none}}