@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/unbounded-cyrillic-500-normal-vuFlZByi.woff2) format("woff2"),url(/assets/unbounded-cyrillic-500-normal-CRDmNtZY.woff) format("woff")}@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/unbounded-cyrillic-700-normal-BnWDpkfm.woff2) format("woff2"),url(/assets/unbounded-cyrillic-700-normal-BKv7sql3.woff) format("woff")}@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/unbounded-cyrillic-800-normal--HlTIRd4.woff2) format("woff2"),url(/assets/unbounded-cyrillic-800-normal-DbsDaRyD.woff) format("woff")}@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/unbounded-latin-500-normal-4slEIF53.woff2) format("woff2"),url(/assets/unbounded-latin-500-normal-ZsrgWWU1.woff) format("woff")}@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/unbounded-latin-700-normal-CaoNriVp.woff2) format("woff2"),url(/assets/unbounded-latin-700-normal-CZtriu5h.woff) format("woff")}@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/unbounded-latin-800-normal-CN2Hxyoo.woff2) format("woff2"),url(/assets/unbounded-latin-800-normal-Cjred_zf.woff) format("woff")}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/onest-cyrillic-400-normal-BTdD9fLi.woff2) format("woff2"),url(/assets/onest-cyrillic-400-normal-BQq8x-Ju.woff) format("woff")}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/onest-cyrillic-500-normal-CJRUgmys.woff2) format("woff2"),url(/assets/onest-cyrillic-500-normal-BMFE-GJD.woff) format("woff")}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/onest-cyrillic-600-normal-BZYKVyuq.woff2) format("woff2"),url(/assets/onest-cyrillic-600-normal-DXk93W_-.woff) format("woff")}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/onest-cyrillic-700-normal-3rOSeAdn.woff2) format("woff2"),url(/assets/onest-cyrillic-700-normal-BYHfPO1G.woff) format("woff")}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/onest-latin-400-normal-9AYXx_QC.woff2) format("woff2"),url(/assets/onest-latin-400-normal-RaMPE1jb.woff) format("woff")}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/onest-latin-500-normal-2-RsuwM3.woff2) format("woff2"),url(/assets/onest-latin-500-normal-CVP923du.woff) format("woff")}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/onest-latin-600-normal-DM19Lk_j.woff2) format("woff2"),url(/assets/onest-latin-600-normal-D88KJsY0.woff) format("woff")}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/onest-latin-700-normal-DMkYZIUB.woff2) format("woff2"),url(/assets/onest-latin-700-normal-HOulLaZS.woff) format("woff")}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/onest-latin-ext-400-normal-DN_ZkHKd.woff2) format("woff2"),url(/assets/onest-latin-ext-400-normal-n6Pl0Elk.woff) format("woff")}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/onest-latin-ext-600-normal-DJ0mJiNR.woff2) format("woff2"),url(/assets/onest-latin-ext-600-normal-HzGxiJ8N.woff) format("woff")}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/caveat-cyrillic-700-normal-BIyejhEL.woff2) format("woff2"),url(/assets/caveat-cyrillic-700-normal-Bhcx9qBB.woff) format("woff")}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/caveat-latin-700-normal-D8_1Nw6V.woff2) format("woff2"),url(/assets/caveat-latin-700-normal-cPyBTTZN.woff) format("woff")}:root{--bg: #F4F6F9;--bg-2: #E8ECF1;--grid: rgba(64, 112, 176, .095);--margin-line: #E58A90;--surface: #FFFFFF;--surface-2: #F1F3F6;--ink: #14161B;--ink-2: #4A4F5A;--ink-3: #7F8592;--line: rgba(20, 22, 27, .09);--line-2: rgba(20, 22, 27, .16);--ginger: #F4672C;--ginger-2: #E0561C;--ginger-soft: #FDEADF;--on-ginger: #FFFFFF;--good: #168A5C;--good-soft: #DEF2E8;--bad: #D8383F;--bad-soft: #FBE4E4;--warn: #B07A05;--warn-soft: #FBF0D2;--shadow-1: 0 0 0 1px var(--line), 0 1px 0 rgba(20, 22, 27, .04);--shadow-2: 0 0 0 1px var(--line-2), 0 12px 26px -16px rgba(30, 52, 92, .32);--shadow-3: 0 0 0 1px var(--line), 0 30px 70px -24px rgba(24, 40, 72, .38);--ring: 0 0 0 3px color-mix(in srgb, var(--ginger) 32%, transparent);--c-ginger: #EE6A31;--c-ink: #2A2E37;--c-mint: #2E9C7C;--c-sky: #3D79D6;--c-rose: #D4486B;--c-lemon: #E3B126;--c-lilac: #7C68D4;--font-display: "Unbounded", "Onest", system-ui, sans-serif;--font-ui: "Onest", system-ui, -apple-system, "Segoe UI", sans-serif;--font-hand: "Caveat", "Segoe Print", cursive;--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-in-out: cubic-bezier(.77, 0, .175, 1);--ease-drawer: cubic-bezier(.32, .72, 0, 1);--gutter: clamp(16px, 3.2vw, 56px);--sidebar: 248px;--tabbar: 66px;--cell: 24px;--sat: env(safe-area-inset-top, 0px);--sab: env(safe-area-inset-bottom, 0px);color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #111317;--bg-2: #1A1D22;--grid: rgba(255, 255, 255, .035);--margin-line: rgba(229, 120, 128, .5);--surface: #181B20;--surface-2: #20242A;--ink: #ECEEF2;--ink-2: #A6ACB7;--ink-3: #6E7480;--line: rgba(255, 255, 255, .08);--line-2: rgba(255, 255, 255, .14);--ginger: #F5763E;--ginger-2: #FF8A55;--ginger-soft: #33211A;--good: #35C489;--good-soft: #14281F;--bad: #FF6A70;--bad-soft: #321B1D;--warn: #E9B23E;--warn-soft: #2D2515;--shadow-1: 0 0 0 1px var(--line);--shadow-2: 0 0 0 1px var(--line-2), 0 14px 30px -16px rgba(0, 0, 0, .7);--shadow-3: 0 0 0 1px var(--line), 0 30px 70px -20px rgba(0, 0, 0, .75);--c-ink: #3A3F4A;color-scheme:dark}}:root[data-theme=dark]{--bg: #111317;--bg-2: #1A1D22;--grid: rgba(255, 255, 255, .035);--margin-line: rgba(229, 120, 128, .5);--surface: #181B20;--surface-2: #20242A;--ink: #ECEEF2;--ink-2: #A6ACB7;--ink-3: #6E7480;--line: rgba(255, 255, 255, .08);--line-2: rgba(255, 255, 255, .14);--ginger: #F5763E;--ginger-2: #FF8A55;--ginger-soft: #33211A;--good: #35C489;--good-soft: #14281F;--bad: #FF6A70;--bad-soft: #321B1D;--warn: #E9B23E;--warn-soft: #2D2515;--shadow-1: 0 0 0 1px var(--line);--shadow-2: 0 0 0 1px var(--line-2), 0 14px 30px -16px rgba(0, 0, 0, .7);--shadow-3: 0 0 0 1px var(--line), 0 30px 70px -20px rgba(0, 0, 0, .75);--c-ink: #3A3F4A;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent;scroll-behavior:smooth}body{margin:0;color:var(--ink);font:400 16px/1.5 var(--font-ui);background-color:var(--bg);background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:var(--cell) var(--cell);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden;overscroll-behavior-y:none;caret-color:var(--ginger)}img,svg,video,canvas{display:block;max-width:100%}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0;padding:0}a{color:inherit;text-decoration:none}a,button{-webkit-touch-callout:none}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-family:var(--font-ui);font-weight:800;letter-spacing:-.03em;line-height:1.08;text-wrap:balance}.display{font-family:var(--font-display);font-weight:700;letter-spacing:-.03em;line-height:1.05}p{text-wrap:pretty}::selection{background:color-mix(in srgb,var(--ginger) 28%,transparent);color:inherit}:focus-visible{outline:none;box-shadow:var(--ring)}[hidden]{display:none!important}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.tnum{font-variant-numeric:tabular-nums}*{scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:10px;border:3px solid transparent;background-clip:padding-box}::-webkit-scrollbar-track{background:transparent}.btn{--h: 44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:var(--h);padding:0 18px;border-radius:10px;font-weight:600;font-size:15px;letter-spacing:-.005em;white-space:nowrap;user-select:none;-webkit-user-select:none;background:var(--surface);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-2),0 1px #14161b0a;transition:transform .16s var(--ease-out),background-color .16s ease,box-shadow .16s ease,color .16s ease,opacity .16s ease}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn svg{flex:none}.btn.primary{background:var(--ginger);color:var(--on-ginger);box-shadow:inset 0 -2px #0000001f}.btn.dark{background:var(--ink);color:var(--bg);box-shadow:inset 0 -2px #0003}.btn.ghost{background:transparent;box-shadow:none;color:var(--ink-2)}.btn.soft{background:var(--surface-2);box-shadow:none}.btn.danger{color:var(--bad)}.btn.lg{--h: 54px;padding:0 26px;font-size:16px;border-radius:12px}.btn.sm{--h: 36px;padding:0 13px;font-size:14px;border-radius:9px}.btn.icon{width:var(--h);padding:0}@media(hover:hover)and (pointer:fine){.btn:hover:not(:disabled){box-shadow:inset 0 0 0 1px var(--ink-3),0 1px #14161b0a}.btn.primary:hover:not(:disabled){background:var(--ginger-2);box-shadow:inset 0 -2px #0000001f}.btn.dark:hover:not(:disabled){opacity:.88;box-shadow:none}.btn.ghost:hover:not(:disabled),.btn.soft:hover:not(:disabled){background:var(--bg-2);color:var(--ink);box-shadow:none}}.field{display:grid;gap:6px}.field>span{font-size:13px;font-weight:600;color:var(--ink-2)}.input,.textarea,.select{width:100%;min-height:46px;padding:11px 14px;border-radius:10px;border:0;outline:0;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line-2);font-size:16px;transition:box-shadow .16s ease,background-color .16s ease}.input::placeholder,.textarea::placeholder{color:var(--ink-3)}.input:focus,.textarea:focus,.select:focus{box-shadow:inset 0 0 0 1.5px var(--ginger),var(--ring)}.textarea{resize:vertical;line-height:1.5}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:40px;background-image:linear-gradient(45deg,transparent 50%,var(--ink-3) 50%),linear-gradient(135deg,var(--ink-3) 50%,transparent 50%);background-position:right 20px center,right 15px center;background-size:5px 5px;background-repeat:no-repeat}.err-text{color:var(--bad);font-size:14px;font-weight:500}.seg{display:inline-flex;padding:3px;border-radius:11px;background:var(--bg-2);gap:2px;box-shadow:inset 0 0 0 1px var(--line)}.seg button{height:34px;padding:0 14px;border-radius:8px;font-size:14px;font-weight:600;color:var(--ink-2);transition:background-color .16s ease,color .16s ease,box-shadow .16s ease}.seg button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 0 0 1px var(--line-2),0 1px #14161b0d}.pill{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:999px;font-size:12.5px;font-weight:600;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line);color:var(--ink-2);white-space:nowrap}.pill.ginger{background:var(--ginger-soft);color:var(--ginger-2);box-shadow:none}.pill.good{background:var(--good-soft);color:var(--good);box-shadow:none}.kbd{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:6px;font-size:11px;font-weight:700;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line-2),0 1px 0 var(--line-2);color:var(--ink-2)}.panel{background:var(--surface);border-radius:14px;box-shadow:var(--shadow-1)}.sk{background:linear-gradient(90deg,var(--bg-2) 0%,var(--surface-2) 40%,var(--bg-2) 80%);background-size:300% 100%;animation:sk 1.3s linear infinite;border-radius:10px}@keyframes sk{0%{background-position:100% 0}to{background-position:-200% 0}}.spin{width:18px;height:18px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}::view-transition-old(root){animation:.14s var(--ease-out) both vt-out}::view-transition-new(root){animation:.26s var(--ease-out) both vt-in}@keyframes vt-out{to{opacity:0}}@keyframes vt-in{0%{opacity:0;transform:translateY(8px)}}::view-transition-group(*){animation-duration:.38s;animation-timing-function:var(--ease-out)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}.muted{color:var(--ink-2)}.small{font-size:14px}.row{display:flex;align-items:center}.row.gap{gap:10px}.row.wrap{flex-wrap:wrap}.row.end{justify-content:flex-end}.row.between{justify-content:space-between}.row.center{justify-content:center}.grow{flex:1;min-width:0}.stack{display:grid;gap:14px}.center-text{text-align:center}.good-t{color:var(--good)}.warn-t{color:var(--warn)}.bad-t{color:var(--bad)}.good-ic{color:var(--good)}.bad-ic{color:var(--bad)}.flame{color:var(--ginger)}.gold{color:#d99a0b}.warn-text{color:var(--warn);font-size:13px;font-weight:600}code{font-family:Consolas,SF Mono,Menlo,monospace;font-size:.92em;background:var(--surface-2);padding:2px 6px;border-radius:6px}.mono{font-family:Consolas,SF Mono,Menlo,Cascadia Mono,monospace;font-size:14px}.splash{min-height:100dvh;display:grid;place-items:center}.logo{display:inline-flex;align-items:center;gap:10px;color:var(--ink)}.logo-word{font-family:var(--font-display);font-weight:800;font-size:19px;letter-spacing:-.035em}.shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100dvh}.side{position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;gap:20px;padding:22px 14px 18px 18px;border-right:1px solid var(--margin-line)}.side .logo{padding:2px 6px}.side-new{width:100%}.side-nav{display:grid;gap:1px}.side-link{position:relative;display:flex;align-items:center;gap:12px;height:40px;padding:0 10px;border-radius:9px;font-weight:500;font-size:14.5px;color:var(--ink-2);transition:background-color .16s ease,color .16s ease}.side-link svg{flex:none}.side-link.active{color:var(--ink);font-weight:700;background:var(--surface);box-shadow:var(--shadow-1)}.side-link.active svg{color:var(--ginger)}@media(hover:hover)and (pointer:fine){.side-link:hover:not(.active){background:color-mix(in srgb,var(--surface) 70%,transparent);color:var(--ink)}}.badge{margin-left:auto;min-width:22px;height:20px;padding:0 7px;display:inline-grid;place-items:center;border-radius:999px;background:var(--ginger);color:#fff;font-size:11.5px;font-weight:700;font-style:normal}.side-me{margin-top:auto;display:flex;align-items:center;gap:12px;padding:8px;border-radius:12px;transition:background-color .16s ease}.side-me b{display:block;font-size:14.5px;line-height:1.2}.side-me small{display:flex;align-items:center;gap:4px;color:var(--ink-3);font-size:12.5px}.side-me small svg{color:var(--ginger)}@media(hover:hover)and (pointer:fine){.side-me:hover{background:var(--surface)}}.avatar{display:inline-grid;place-items:center;border-radius:30%;color:#fff;font-weight:700;font-family:var(--font-display);flex:none;letter-spacing:0}.main{min-width:0;padding:30px var(--gutter) 80px}.page{width:100%}.tabbar{display:none}.public-top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px var(--gutter);background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:saturate(1.3) blur(12px);-webkit-backdrop-filter:saturate(1.3) blur(12px);border-bottom:1px solid var(--margin-line)}.public-main{padding-top:26px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:26px}.page-head h1{font-size:clamp(30px,2.4vw,44px)}.page-head p{margin-top:10px;max-width:70ch}.page-head-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.crumbs{margin:-8px 0 14px -12px}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:22px}.search{position:relative;flex:1;min-width:220px;max-width:440px}.search.wide{max-width:640px}.search svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--ink-3);pointer-events:none}.search .input{padding-left:42px;min-height:42px}.banner{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:12px 16px;border-radius:12px;background:var(--ginger-soft);color:var(--ink);margin-bottom:22px;font-weight:500;font-size:14.5px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ginger) 22%,transparent)}.banner.warn{background:var(--warn-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--warn) 24%,transparent)}.shelf{margin-bottom:46px}.shelf-head{display:flex;align-items:center;gap:14px;margin-bottom:18px}.shelf-head h2,.shelf-title{font-size:clamp(20px,1.4vw,25px);white-space:nowrap}.shelf-head:after{content:"";order:1;flex:1;height:1px;background:var(--line-2)}.shelf-head .btn{order:2}.shelf-title{margin-bottom:16px}.home-top{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:18px;margin:70px 0 46px;align-items:stretch}.today{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px 24px;padding:26px 30px;border-radius:16px;background:var(--surface);box-shadow:var(--shadow-1)}.today-cat{position:absolute;right:34px;top:-78px;pointer-events:none}.today-num{font-size:clamp(64px,6vw,108px);line-height:.82;color:var(--ginger);letter-spacing:-.06em}.today.calm .today-num{color:var(--ink-3)}.today-text h1,.today-text h2{font-size:clamp(20px,1.6vw,28px);letter-spacing:-.025em}.today-line{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px;color:var(--ink-2);font-size:14.5px}.today-line span{display:inline-flex;align-items:center;gap:5px}.today-go{justify-self:end}.make{display:grid;border-radius:16px;background:var(--surface);box-shadow:var(--shadow-1);overflow:hidden}.make-row{display:flex;align-items:center;gap:14px;min-height:60px;padding:0 18px;font-size:16px;transition:background-color .16s ease}.make-row+.make-row{border-top:1px solid var(--line)}.make-row svg:first-child{color:var(--ginger);flex:none}.make-row b{font-weight:600;flex:1}.make-go{color:var(--ink-3);transition:transform .2s var(--ease-out)}@media(hover:hover)and (pointer:fine){.make-row:hover{background:var(--surface-2)}.make-row:hover .make-go{transform:translate(3px);color:var(--ink)}}.make-row:active{background:var(--bg-2)}.covers.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(176px,1fr));gap:28px 20px}.covers.row-scroll{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(176px,200px);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 6px 14px;margin:-6px -6px 0}.covers.row-scroll>*{scroll-snap-align:start}.covers.row-scroll{scrollbar-width:none}.covers.row-scroll::-webkit-scrollbar{display:none}.cover{display:grid;gap:10px;color:inherit;min-width:0;-webkit-user-select:none;user-select:none}.cover-art{position:relative;aspect-ratio:3 / 4;border-radius:4px 12px 12px 4px;overflow:hidden;background:var(--cc);color:var(--cc-ink);isolation:isolate;transition:transform .24s var(--ease-out),box-shadow .24s ease;box-shadow:0 1px #00000014,0 10px 22px -16px color-mix(in srgb,var(--cc) 80%,#000)}.cover-art:before{content:"";position:absolute;inset:0 auto 0 0;width:14px;background:#00000029;box-shadow:1px 0 #ffffff29}.cover-art:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.045) 0 2px,transparent 2px 6px);pointer-events:none}.cover-lang{position:absolute;top:12px;left:24px;font-size:11.5px;font-weight:700;letter-spacing:.08em;opacity:.85}.cover-due{position:absolute;top:9px;right:9px;height:22px;padding:0 8px;display:inline-flex;align-items:center;gap:3px;border-radius:999px;font-size:11.5px;font-weight:600;background:#fff;color:#14161b;z-index:2}.cover-due b{font-weight:800}.cover-label{position:absolute;left:24px;right:12px;top:36%;padding:10px 11px 9px;border-radius:5px;background:#fbfbf8;color:#1c1e24;box-shadow:0 1px 2px #00000024,inset 0 0 0 1px #0000000f;z-index:1}.cover-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:14.5px;font-weight:700;line-height:1.25;letter-spacing:-.01em;word-break:break-word}.cover-hand{display:block;margin-top:5px;padding-top:3px;border-top:1px solid rgba(61,111,175,.35);font-family:var(--font-hand);font-weight:700;font-size:17px;line-height:1.15;color:#2c4f8c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cover-learned{position:absolute;left:14px;right:0;bottom:0;height:5px;background:#ffffffd9;transform-origin:left}.cover-meta{display:flex;gap:8px;align-items:baseline;padding:0 2px;font-size:13px;color:var(--ink-3);white-space:nowrap;overflow:hidden}.cover-pct{color:var(--ink-2);font-weight:600}.cover-owner{overflow:hidden;text-overflow:ellipsis}.cover-owner:before{content:"· "}@media(hover:hover)and (pointer:fine){.cover:hover .cover-art{transform:translateY(-4px) rotate(-.8deg);box-shadow:0 1px #00000014,0 20px 30px -18px color-mix(in srgb,var(--cc) 85%,#000)}}.cover:active .cover-art{transform:scale(.98)}.cover-new{display:grid;place-content:center;justify-items:center;gap:8px;aspect-ratio:3 / 4;border-radius:4px 12px 12px 4px;border:1.5px dashed var(--line-2);color:var(--ink-2);text-align:center;padding:16px;transition:border-color .16s ease,color .16s ease}@media(hover:hover)and (pointer:fine){.cover-new:hover{border-color:var(--ginger);color:var(--ink)}}.sk-cover .cover-art{box-shadow:none}.sk-cover .cover-art:before,.sk-cover .cover-art:after{display:none}.c-ginger{--cc: var(--c-ginger);--cc-ink: #fff}.c-ink{--cc: var(--c-ink);--cc-ink: #F4F4F6}.c-mint{--cc: var(--c-mint);--cc-ink: #fff}.c-sky{--cc: var(--c-sky);--cc-ink: #fff}.c-rose{--cc: var(--c-rose);--cc-ink: #fff}.c-lemon{--cc: var(--c-lemon);--cc-ink: #2B2205}.c-lilac{--cc: var(--c-lilac);--cc-ink: #fff}.langpair{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;letter-spacing:.06em;color:inherit}.langpair i{font-style:normal;opacity:.6}.bar{position:relative;height:6px;border-radius:999px;background:var(--bg-2);overflow:hidden}.bar i{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:left;background:var(--ginger);border-radius:inherit;transition:transform .5s var(--ease-out)}.bar.good i{background:var(--good)}.bar.warn i{background:var(--warn)}.bar.ink i{background:var(--ink-3)}.empty{display:grid;justify-items:center;text-align:center;gap:12px;padding:clamp(40px,6vw,90px) 20px}.empty h3{font-size:22px;margin-top:8px}.empty p{color:var(--ink-2);max-width:52ch}.empty .row{margin-top:10px}.crash{min-height:100dvh;display:grid;place-content:center;justify-items:center;text-align:center;gap:14px;padding:24px}.crash h1{font-size:34px}.toasts{position:fixed;z-index:1000;left:50%;bottom:24px;transform:translate(-50%);display:grid;gap:8px;justify-items:center;pointer-events:none;width:min(92vw,520px)}.toast{display:flex;align-items:center;gap:10px;padding:11px 16px 11px 13px;border-radius:12px;background:var(--ink);color:var(--bg);font-size:14.5px;font-weight:500;box-shadow:0 16px 34px -14px #00000073;animation:toast-in .26s var(--ease-out) both;pointer-events:auto}.toast.good svg{color:#3ddc97}.toast.error svg{color:#ff7a7f}.toast.info svg{color:var(--ginger)}@keyframes toast-in{0%{opacity:0;transform:translateY(12px) scale(.97)}}.sheet-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;display:grid;place-items:center;padding:20px}.sheet-back{position:absolute;top:0;right:0;bottom:0;left:0;background:#0c10186b}.sheet{position:relative;width:min(520px,100%);max-height:min(86dvh,820px);overflow:auto;background:var(--surface);border-radius:18px;box-shadow:var(--shadow-3);padding:20px 22px 22px}.sheet.wide{width:min(760px,100%)}.sheet-grip{display:none}.sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.sheet-head h3{font-size:20px}.sheet-wrap.in .sheet-back{animation:fade-in .2s ease both}.sheet-wrap.in .sheet{animation:pop-in .24s var(--ease-out) both}.sheet-wrap.out .sheet-back{animation:fade-in .16s ease reverse both}.sheet-wrap.out .sheet{animation:pop-in .16s ease-in reverse both}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:scale(.96) translateY(8px)}}.menu-list{display:grid}.menu-list button{display:flex;align-items:center;gap:12px;height:50px;padding:0 12px;border-radius:10px;font-weight:500;text-align:left;transition:background-color .14s ease}.menu-list button:hover{background:var(--surface-2)}.menu-list .danger{color:var(--bad)}.btn.danger-fill{background:var(--bad);color:#fff}.create-grid{display:grid;border-radius:14px;box-shadow:var(--shadow-1);overflow:hidden}.create-opt{display:flex;align-items:center;gap:14px;min-height:60px;padding:0 16px;text-align:left;font-size:16px;transition:background-color .16s ease}.create-opt+.create-opt{border-top:1px solid var(--line)}.create-opt b{font-weight:600}.create-opt:active{background:var(--bg-2)}@media(hover:hover)and (pointer:fine){.create-opt:hover{background:var(--surface-2)}}.create-ic{display:grid;place-items:center;color:var(--ink-2)}.create-ic.ginger{color:var(--ginger)}.set-head{margin-bottom:26px}.set-meta-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px;font-size:14px;color:var(--ink-2)}.set-meta-row>span:not(.set-dot)+span:before{content:"";display:inline-block;width:3px;height:3px;border-radius:50%;background:var(--ink-3);margin-right:12px;vertical-align:middle}.set-dot{width:12px;height:16px;border-radius:2px 4px 4px 2px;background:var(--cc);flex:none}.set-info h1{font-size:clamp(32px,3vw,56px);letter-spacing:-.035em}.set-desc{margin-top:12px;color:var(--ink-2);max-width:70ch}.set-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.set-body{display:grid;grid-template-columns:minmax(0,1fr) clamp(340px,30vw,540px);gap:26px;margin-bottom:50px;align-items:start}.set-preview{display:grid;gap:14px}.fc-preview{height:clamp(300px,34vw,480px)}.preview-nav{display:flex;align-items:center;justify-content:center;gap:14px}.set-side{display:grid;gap:14px}.dir-seg{justify-self:start}.set-side>.dir-seg{width:100%}.set-side>.dir-seg button{flex:1;height:40px;font-size:15px;letter-spacing:.03em}.modes{display:grid;border-radius:14px;background:var(--surface);box-shadow:var(--shadow-1);overflow:hidden}.mode{display:flex;align-items:center;gap:12px;min-height:56px;padding:0 16px;text-align:left;transition:background-color .16s ease,color .16s ease}.mode+.mode{border-top:1px solid var(--line)}.mode-ic{color:var(--ink-3);flex:none;transition:color .16s ease}.mode b{font-size:16.5px;font-weight:600;letter-spacing:-.01em}.mode-dots{flex:1;align-self:center;height:0;margin:6px 4px 0;border-bottom:2px dotted var(--line-2)}.mode small{color:var(--ink-3);font-size:13px;font-weight:600}.mode small.due{color:var(--ginger-2)}.mode .kbd{margin-left:2px}.mode:disabled{opacity:.45;cursor:not-allowed}@media(hover:hover)and (pointer:fine){.mode:hover:not(:disabled){background:var(--surface-2)}.mode:hover:not(:disabled) .mode-ic{color:var(--ginger)}}.mode:active:not(:disabled){background:var(--bg-2)}.progress-card{padding:16px 18px;border-radius:14px;background:var(--surface);box-shadow:var(--shadow-1);display:grid;gap:12px}.stack-bar{display:flex;height:8px;border-radius:999px;overflow:hidden;gap:3px;background:var(--bg-2)}.stack-bar i{flex-basis:0;transition:flex-grow .5s var(--ease-out);min-width:0}.s-done{background:var(--good)}.s-mid{background:var(--warn)}.s-new{background:var(--line-2)}.legend{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--ink-2)}.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{width:8px;height:8px;border-radius:50%}.terms-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.terms-head h2{font-size:clamp(20px,1.4vw,25px)}.terms-head h2 .muted{font-weight:500;font-size:.7em;margin-left:6px}.term-list{list-style:none;margin:0;padding:4px 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,620px),1fr));column-gap:32px;border-radius:14px;background:var(--surface);box-shadow:var(--shadow-1)}.term-row{position:relative;display:grid;grid-template-columns:8px minmax(0,1fr) minmax(0,1fr) auto;gap:16px;align-items:center;padding:13px 10px 13px 18px;border-bottom:1px solid var(--line)}.term-a b{display:block;font-weight:600;font-size:16.5px;line-height:1.35;word-break:break-word}.term-a small{display:block;margin-top:3px;color:var(--ink-3);font-size:13.5px;font-style:italic}.term-b{color:var(--ink-2);font-size:15.5px;line-height:1.4;padding-left:16px;border-left:1px solid var(--margin-line);word-break:break-word;transition:filter .2s ease,opacity .2s ease}.term-tools{display:flex;gap:0}.term-tools .starred{color:#d99a0b}.term-n{display:none}.term-row.covered{cursor:pointer}.term-row.covered .term-b{filter:blur(7px);opacity:.6;-webkit-user-select:none;user-select:none}.dot{width:8px;height:8px;border-radius:50%;flex:none;background:var(--line-2)}.dot.s-done{background:var(--good)}.dot.s-mid{background:var(--warn)}.ed-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;position:sticky;top:var(--sat);z-index:10;padding:12px 0;margin-top:-12px;background:linear-gradient(var(--bg) 72%,transparent)}.ed-head h1{font-size:clamp(26px,2.2vw,40px)}.ed-meta{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px;padding:22px;margin-bottom:18px}.ed-meta-main{display:grid;gap:8px;align-content:start}.ed-title{width:100%;border:0;outline:0;background:none;font-weight:800;font-size:clamp(22px,1.8vw,32px);letter-spacing:-.03em;padding:6px 0;border-bottom:2px solid var(--line);transition:border-color .16s ease}.ed-title:focus{border-color:var(--ginger)}.ed-title::placeholder{color:var(--ink-3)}.ed-desc{width:100%;border:0;outline:0;background:none;resize:none;padding:8px 0;color:var(--ink-2);font-size:15px;field-sizing:content;min-height:40px}.ed-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ed-meta-grid .field:nth-child(n+3){grid-column:1 / -1}.swatches{display:flex;gap:10px;flex-wrap:wrap}.sw{width:26px;height:34px;border-radius:2px 6px 6px 2px;background:var(--cc);box-shadow:inset 4px 0 #00000029;transition:transform .16s var(--ease-out),box-shadow .16s ease}.sw.on{box-shadow:inset 4px 0 #00000029,0 0 0 2px var(--surface),0 0 0 4px var(--cc)}.sw:active{transform:scale(.9)}.ed-tools{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:22px 0 12px}.ed-rows{list-style:none;padding:0;margin:0;display:grid;border-radius:14px;background:var(--surface);box-shadow:var(--shadow-1);overflow:hidden}.ed-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 10px 12px 12px}.ed-row+.ed-row{border-top:1px solid var(--line)}.ed-n{color:var(--ink-3);font-weight:600;font-size:14px;text-align:center}.ed-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ed-fields.with-ex{grid-template-columns:1fr 1fr 1fr}.ed-f{display:grid;gap:2px}.ed-f input{width:100%;border:0;outline:0;background:none;font-size:16px;padding:8px 2px;border-bottom:1.5px solid var(--line-2);transition:border-color .16s ease}.ed-f input:focus{border-color:var(--ginger)}.ed-f span{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.ed-row-tools{display:flex}.ed-add{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:56px;margin-top:10px;border-radius:14px;border:1.5px dashed var(--line-2);color:var(--ink-2);font-weight:600;transition:border-color .16s ease,color .16s ease}@media(hover:hover)and (pointer:fine){.ed-add:hover{border-color:var(--ginger);color:var(--ink)}}.ed-bottom{display:flex;justify-content:center;margin-top:26px}.agent-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.8fr);gap:20px;align-items:start}.agent-grid.result{grid-template-columns:minmax(300px,.8fr) minmax(0,1.4fr)}.agent-input{display:grid;gap:14px}.drop{display:grid;gap:18px;padding:22px;border-radius:16px;border:2px dashed var(--line-2);background:color-mix(in srgb,var(--surface) 80%,transparent);min-height:380px;align-content:center;transition:border-color .16s ease,background-color .16s ease}.drop.over{border-color:var(--ginger);background:var(--ginger-soft)}.drop.has{align-content:start;border-style:solid;border-color:var(--line);background:var(--surface)}.drop-empty{display:grid;justify-items:center;text-align:center;gap:8px;padding:10px}.drop-empty b{font-size:18px;margin-top:6px}.drop-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px}.thumb{position:relative;margin:0;aspect-ratio:3 / 4;border-radius:8px;overflow:hidden;background:var(--surface-2);box-shadow:var(--shadow-1)}.thumb img{width:100%;height:100%;object-fit:cover}.thumb figcaption{position:absolute;left:8px;bottom:8px;min-width:22px;height:22px;display:grid;place-items:center;padding:0 6px;border-radius:999px;background:#0000008c;color:#fff;font-size:12px;font-weight:700}.thumb-x{position:absolute;top:6px;right:6px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#0000008c;color:#fff}.thumb.add{display:grid;place-content:center;justify-items:center;gap:6px;color:var(--ink-2);border:1.5px dashed var(--line-2);background:none;box-shadow:none}.agent-text{min-height:380px;border-radius:16px;padding:18px}.agent-opts{display:grid;gap:18px;padding:20px;position:sticky;top:calc(20px + var(--sat))}.pairs{display:grid;margin-bottom:8px;border-radius:12px;box-shadow:var(--shadow-1);overflow:hidden}.pair-btn{display:flex;align-items:baseline;gap:8px;padding:12px 14px;text-align:left;transition:background-color .16s ease}.pair-btn+.pair-btn{border-top:1px solid var(--line)}.pair-btn small{color:var(--ink-3)}.pair-btn.on{background:var(--ginger-soft)}.pair-btn.on b{color:var(--ginger-2)}.agent-source{display:grid;gap:16px;position:sticky;top:calc(20px + var(--sat))}.scan-stack{position:relative;aspect-ratio:4 / 5;border-radius:12px;overflow:hidden;background:var(--surface-2);box-shadow:var(--shadow-1)}.scan-stack img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transform:translate(calc(var(--n) * 10px),calc(var(--n) * 10px)) rotate(calc(var(--n) * 2deg))}.scan-stack img:first-child{z-index:4;transform:none}.scan-line{position:absolute;z-index:5;left:0;right:0;height:30%;top:0;background:linear-gradient(transparent,color-mix(in srgb,var(--ginger) 26%,transparent) 80%,var(--ginger));animation:scan 1.8s cubic-bezier(.65,0,.35,1) infinite;mix-blend-mode:screen}@keyframes scan{0%{transform:translateY(-100%)}to{transform:translateY(334%)}}.text-source{max-height:420px;overflow:hidden;padding:18px;border-radius:14px;background:var(--surface);box-shadow:var(--shadow-1);color:var(--ink-2);font-size:14px;white-space:pre-wrap;-webkit-mask-image:linear-gradient(#000 70%,transparent);mask-image:linear-gradient(#000 70%,transparent)}.agent-status{display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:14px;background:var(--surface);box-shadow:var(--shadow-1)}.agent-status>div{display:grid;flex:1}.agent-cards{display:grid;gap:16px}.found{list-style:none;padding:0;margin:0;display:grid;border-radius:14px;background:var(--surface);box-shadow:var(--shadow-1);overflow:hidden}.found-row{display:grid;grid-template-columns:28px 1fr 1fr auto;gap:10px;align-items:center;padding:6px 8px 6px 14px;animation:card-in .38s var(--ease-out) both}.found-row+.found-row{border-top:1px solid var(--line)}.found-row input{width:100%;border:0;outline:0;background:none;font-size:15.5px;padding:8px 4px;border-bottom:1.5px solid transparent;transition:border-color .16s ease}.found-row input:first-of-type{font-weight:600}.found-row input:focus{border-color:var(--ginger)}.found-row.ghost{animation:none}.found-row.ghost .sk{height:18px}.found>li[aria-hidden]{border:0!important}@keyframes card-in{0%{opacity:0;transform:translateY(10px) scale(.98)}}.agent-save{display:grid;gap:14px;padding:18px}.no-agent{align-items:flex-start}.import-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}.import-steps{display:grid;gap:16px}.step{display:grid;grid-template-columns:auto 1fr;gap:16px;padding:20px}.step-n{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--ink);color:var(--bg);font-family:var(--font-display);font-weight:700;font-size:15px}.step-body{display:grid;gap:10px;min-width:0}.step-body h3{font-size:18px;letter-spacing:-.015em;line-height:1.25}.step-body .btn{justify-self:start}.prompt-box{margin:4px 0;padding:14px 16px;border-radius:10px;background:var(--surface-2);font:14px/1.55 var(--font-ui);white-space:pre-wrap;max-height:260px;overflow:auto;color:var(--ink-2)}.import-text{min-height:280px}.import-preview{display:grid;gap:14px;position:sticky;top:calc(20px + var(--sat))}.import-sum{display:flex;gap:16px;align-items:flex-start;padding:4px 0}.import-sum h3{font-size:20px;margin-top:4px}.import-sets{display:grid;gap:12px;max-height:64vh;overflow:auto;padding:2px}.imp-set{padding:16px;display:grid;gap:12px;transition:opacity .2s ease}.imp-set.off{opacity:.45}.imp-set header{display:flex;align-items:center;gap:12px}.imp-title{flex:1;min-width:0;border:0;outline:0;background:none;font-weight:700;font-size:16.5px;padding:6px 0;border-bottom:1.5px solid transparent}.imp-title:focus{border-color:var(--ginger)}.imp-check{position:relative;display:inline-grid}.imp-check input{position:absolute;opacity:0;top:0;right:0;bottom:0;left:0;cursor:pointer}.imp-check span{width:22px;height:22px;border-radius:6px;box-shadow:inset 0 0 0 1.5px var(--line-2);display:grid;place-items:center;transition:background-color .14s ease}.imp-check input:checked+span{background:var(--ginger);box-shadow:none}.imp-check input:checked+span:after{content:"";width:10px;height:6px;border:2px solid #fff;border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}.imp-check input:focus-visible+span{box-shadow:var(--ring)}.imp-langs{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.imp-langs .select{width:auto;min-height:38px;padding:6px 36px 6px 12px;font-size:14px;border-radius:9px}.imp-table{width:100%;border-collapse:collapse;font-size:14px}.imp-table td{padding:7px 8px;border-top:1px solid var(--line);vertical-align:top}.imp-table td:first-child{font-weight:600;width:50%}.import-go{display:grid;gap:14px;padding:18px}.profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px;align-items:start}.me-card{padding:22px;display:grid;gap:20px}.me-card h2{font-size:24px}.me-stats{display:grid;grid-template-columns:repeat(3,1fr);border-radius:12px;box-shadow:var(--shadow-1);overflow:hidden}.me-stats>div{display:grid;gap:4px;padding:14px}.me-stats>div+div{border-left:1px solid var(--line)}.me-stats b{font-family:var(--font-display);font-size:24px}.me-stats span{font-size:12.5px;color:var(--ink-2);line-height:1.3}.settings{padding:22px;display:grid;gap:14px;align-content:start}.settings h3{font-size:15px;font-weight:700;letter-spacing:0;margin-top:6px}.settings .seg{justify-self:start;flex-wrap:wrap}.settings .seg button{display:inline-flex;align-items:center;gap:6px}.settings form .btn{justify-self:start}.profile-links{display:grid;border-radius:12px;box-shadow:var(--shadow-1);overflow:hidden}.profile-links a{display:flex;align-items:center;gap:12px;height:48px;padding:0 14px;font-weight:500;color:var(--ink-2)}.profile-links a+a{border-top:1px solid var(--line)}.profile-links a:hover{background:var(--surface-2);color:var(--ink)}.logout{margin-top:28px}.review-wrap{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,1fr);gap:20px;align-items:start;margin-top:60px}.due-list{display:grid;border-radius:14px;background:var(--surface);box-shadow:var(--shadow-1);overflow:hidden}.due-row{display:flex;align-items:center;gap:14px;padding:12px 16px;transition:background-color .16s ease}.due-row+.due-row{border-top:1px solid var(--line)}.due-row b{display:block;font-size:15px}.due-row small{color:var(--ink-3)}.due-sw{width:12px;height:18px;border-radius:2px 4px 4px 2px;background:var(--cc);flex:none}@media(hover:hover)and (pointer:fine){.due-row:hover{background:var(--surface-2)}}.auth{min-height:100dvh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}.auth-form-side{display:grid;grid-template-rows:auto 1fr;padding:calc(20px + var(--sat)) var(--gutter) 20px}.auth-form{align-self:center;justify-self:center;width:min(420px,100%);display:grid;gap:16px;padding:24px 0}.auth-form h1{font-size:clamp(32px,2.6vw,44px);margin-bottom:6px}.auth-form .btn.lg{margin-top:6px}.auth-switch{text-align:center;font-size:14.5px}.auth-switch a,.page-head a:not(.btn),.sheet a:not(.btn){color:var(--ginger-2);font-weight:600}.pw{position:relative;display:block}.pw .input{padding-right:52px}.pw-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:40px;height:40px;display:grid;place-items:center;border-radius:10px;color:var(--ink-3)}.auth-art{position:relative;overflow:hidden;display:grid;place-items:center;border-left:1px solid var(--margin-line);background:color-mix(in srgb,var(--surface) 55%,transparent)}.auth-cat{position:relative;z-index:2;margin-top:80px}.auth-cards{position:absolute;top:0;right:0;bottom:0;left:0}.float-card{position:absolute;display:grid;gap:4px;padding:30px 22px 18px;border-radius:8px;background:#fdfdfb;color:#15171c;box-shadow:0 1px #0000000f,0 24px 40px -24px #18284880;min-width:190px;background-image:linear-gradient(transparent 21px,rgba(216,56,63,.55) 21px,rgba(216,56,63,.55) 22px,transparent 22px)}.float-card span{font-family:var(--font-display);font-weight:700;font-size:20px;letter-spacing:-.03em}.float-card small{font-family:var(--font-hand);font-weight:700;font-size:19px;color:#2c4f8c}.f1{top:13%;left:11%;transform:rotate(-7deg)}.f2{top:10%;right:10%;transform:rotate(5deg)}.f3{bottom:24%;right:8%;transform:rotate(-3deg)}.f4{bottom:28%;left:7%;transform:rotate(6deg)}.range{width:100%;accent-color:var(--ginger)}.checks{display:flex;gap:8px;flex-wrap:wrap}.check{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px 0 10px;border-radius:10px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line-2);font-weight:600;font-size:14px;cursor:pointer;transition:background-color .16s ease}.check input{position:absolute;opacity:0;pointer-events:none}.check i{width:20px;height:20px;border-radius:5px;display:grid;place-items:center;box-shadow:inset 0 0 0 1.5px var(--line-2);color:transparent}.check.on{background:var(--ginger-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ginger) 30%,transparent)}.check.on i{background:var(--ginger);color:#fff;box-shadow:none}.actions-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:40px}.action{display:inline-flex;align-items:center;gap:12px;height:60px;padding:0 22px;border-radius:12px;background:var(--surface);box-shadow:var(--shadow-1);font-size:16.5px;transition:transform .16s var(--ease-out),box-shadow .2s ease,background-color .16s ease}.action svg{color:var(--ginger);flex:none}.action.ginger{background:var(--ginger);color:#fff;box-shadow:inset 0 -2px #0000001f}.action.ginger svg{color:#fff}.action:active{transform:scale(.98)}@media(hover:hover)and (pointer:fine){.action:hover{box-shadow:var(--shadow-2)}.action.ginger:hover{background:var(--ginger-2);box-shadow:inset 0 -2px #0000001f}}.add-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px;flex-wrap:wrap}.add-rows{display:grid;gap:8px;max-height:46vh;overflow:auto;padding:2px}.add-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.add-foot{margin-top:16px}.ios-band{position:fixed;z-index:990;top:0;left:0;right:0;height:var(--sat);background:var(--ginger);pointer-events:none}.install-hint{position:fixed;z-index:800;left:12px;right:12px;bottom:calc(var(--tabbar) + var(--sab) + 12px);display:flex;align-items:center;gap:12px;padding:12px 12px 12px 14px;border-radius:14px;background:var(--surface);box-shadow:var(--shadow-3);font-size:14.5px;line-height:1.35;animation:toast-in .32s var(--ease-out) both}.install-hint .grow b{display:block}.install-hint svg.share{display:inline;vertical-align:-3px;color:#2f7bf5}.public .install-hint{bottom:calc(var(--sab) + 12px)}@media(min-width:1800px){:root{--sidebar: 272px}.covers.grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}}@media(max-width:1280px){.home-top,.set-body,.agent-grid,.agent-grid.result,.import-grid,.review-wrap{grid-template-columns:1fr}.agent-opts,.agent-source,.import-preview{position:static}.scan-stack{aspect-ratio:16 / 10}}@media(max-width:900px){:root{--gutter: 16px}.shell{grid-template-columns:1fr}.side{display:none}.main{padding:calc(16px + var(--sat)) var(--gutter) calc(var(--tabbar) + var(--sab) + 32px)}.public{padding-top:var(--sat)}.public-top{top:var(--sat)}.tabbar{position:fixed;z-index:50;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(5,1fr);align-items:center;height:calc(var(--tabbar) + var(--sab));padding:0 6px var(--sab);background:color-mix(in srgb,var(--surface) 90%,transparent);backdrop-filter:saturate(1.5) blur(16px);-webkit-backdrop-filter:saturate(1.5) blur(16px);border-top:1px solid var(--line)}.tab{position:relative;display:grid;justify-items:center;gap:3px;font-size:11px;font-weight:600;color:var(--ink-3);padding-top:4px;-webkit-user-select:none;user-select:none}.tab.active{color:var(--ink)}.tab.active svg{color:var(--ginger)}.tab .badge{position:absolute;top:-2px;left:calc(50% + 6px);margin:0}.tab-plus span{display:grid;place-items:center;width:50px;height:50px;border-radius:14px;background:var(--ginger);color:#fff;box-shadow:inset 0 -2px #00000024;transition:transform .16s var(--ease-out)}.tab-plus:active span{transform:scale(.94)}.tab-avatar{display:inline-flex}.tab.active .tab-avatar .avatar{box-shadow:0 0 0 2px var(--ginger)}.hide-sm{display:none!important}.sheet-wrap{place-items:end stretch;padding:0}.sheet{width:100%;max-width:none;border-radius:20px 20px 0 0;padding:10px 16px calc(20px + var(--sab));max-height:90dvh}.sheet.wide{width:100%}.sheet-grip{display:block;width:40px;height:5px;border-radius:3px;background:var(--line-2);margin:0 auto 10px}.sheet-wrap.in .sheet{animation:sheet-up .34s var(--ease-drawer) both}.sheet-wrap.out .sheet{animation:sheet-up .22s ease-in reverse both}@keyframes sheet-up{0%{transform:translateY(100%)}}.toasts{bottom:calc(var(--tabbar) + var(--sab) + 12px)}.page-head{margin-bottom:18px}.home-top{margin-top:92px;gap:14px}.today{grid-template-columns:auto minmax(0,1fr);padding:20px;gap:6px 18px}.today-cat{right:14px;top:-94px;transform:scale(.8);transform-origin:top right}.today-num{font-size:64px}.today-go{grid-column:1 / -1;justify-self:stretch;margin-top:10px}.covers.grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:22px 14px}.covers.row-scroll{grid-auto-columns:42%;margin:-6px calc(-1 * var(--gutter)) 0;padding:6px var(--gutter) 14px;scroll-padding:0 var(--gutter)}.cover-label{left:20px;right:9px;padding:8px 9px 7px}.cover-title{font-size:13.5px}.cover-hand{font-size:15.5px}.cover-lang{left:20px;top:10px}.cover-due{min-width:24px;justify-content:center}.set-info h1{font-size:32px}.mode{min-height:52px}.term-list{grid-template-columns:1fr}.term-row{grid-template-columns:8px minmax(0,1fr) auto;gap:12px;padding:12px 6px 12px 14px}.term-b{grid-column:2;grid-row:2;border-left:0;padding-left:0;margin-top:-6px;font-size:15px}.term-tools{grid-column:3;grid-row:1 / span 2;flex-direction:column}.ed-meta{grid-template-columns:1fr;padding:16px;gap:18px}.ed-row{grid-template-columns:1fr auto;padding:12px}.ed-n{display:none}.ed-fields,.ed-fields.with-ex{grid-template-columns:1fr;gap:8px}.ed-row-tools{flex-direction:column}.ed-row-tools .btn:not(:last-child){display:none}.ed-head{padding:10px 0}.drop{min-height:300px;padding:16px}.thumbs{grid-template-columns:repeat(3,1fr);gap:8px}.found-row{grid-template-columns:1fr auto;grid-template-rows:auto auto;padding:6px 6px 6px 12px}.found-row>span{display:none}.found-row input:nth-of-type(2){grid-column:1;grid-row:2;color:var(--ink-2)}.found-row .btn{grid-column:2;grid-row:1 / span 2}.step{grid-template-columns:1fr;padding:18px}.auth{grid-template-columns:1fr}.auth-art{display:none}.me-stats b{font-size:20px}.actions-row{display:grid;grid-template-columns:1fr 1fr;margin-bottom:28px}.action{height:56px;padding:0 16px;font-size:15.5px}.action.ginger{grid-column:1 / -1}.review-wrap{margin-top:56px}}@media(max-width:520px){.add-row{grid-template-columns:1fr;padding-bottom:8px;border-bottom:1px solid var(--line)}}@media(pointer:coarse){.hide-touch{display:none!important}}.study{min-height:100dvh;display:flex;flex-direction:column;padding-top:var(--sat)}.study-loading,.study-empty{flex:1;display:grid;place-items:center}.study-top{position:sticky;top:var(--sat);z-index:20;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;height:68px;padding:0 calc(var(--gutter) - 8px);background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px)}.study-title{display:flex;align-items:center;justify-content:center;gap:10px;min-width:0}.study-title>div{display:grid;min-width:0;line-height:1.2}.study-title b{font-size:15px}.study-title span{font-size:12.5px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.study-right{display:flex;align-items:center;gap:6px;justify-content:flex-end;min-width:44px}.study-count{font-size:14px;font-weight:600;padding:0 6px}.study-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--line)}.study-progress i{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--ginger);transform-origin:left;transition:transform .4s var(--ease-out)}.match-clock{font-family:var(--font-display);font-weight:700;font-size:18px;min-width:76px;text-align:right}.fc{position:relative;perspective:1800px;cursor:pointer;user-select:none;-webkit-user-select:none;outline:none}.fc-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .42s var(--ease-out)}.fc.flipped .fc-inner{transform:rotateY(180deg)}.fc-face{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:grid;place-content:center;justify-items:center;gap:18px;padding:64px clamp(24px,4vw,64px);text-align:center;border-radius:28px;background:var(--surface);color:var(--ink);box-shadow:var(--shadow-2),0 0 0 calc(var(--yes, 0) * 3px) var(--good),0 0 0 calc(var(--no, 0) * 3px) var(--warn);overflow:hidden}.fc-text{font-family:var(--font-display);font-weight:700;letter-spacing:-.025em;line-height:1.08;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;max-width:22ch}.fc-text.fit-xl{font-size:clamp(36px,4.6vw,76px)}.fc-text.fit-lg{font-size:clamp(28px,3.2vw,52px)}.fc-text.fit-md{font-size:clamp(22px,2.2vw,34px);max-width:30ch;line-height:1.18}.fc-text.fit-sm{font-family:var(--font-ui);font-weight:600;font-size:clamp(18px,1.5vw,23px);letter-spacing:-.01em;max-width:44ch;line-height:1.35}.fc-text.fit-xs{font-family:var(--font-ui);font-weight:500;font-size:16px;letter-spacing:0;max-width:60ch;line-height:1.45}.fc-sub{max-width:46ch;font-size:clamp(15px,1.1vw,18px);font-style:italic;opacity:.62;line-height:1.45}.fc-tools{position:absolute;top:16px;right:16px;display:flex;gap:6px}.fc-tool{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--surface-2);color:var(--ink-2);transition:transform .16s var(--ease-out),background-color .16s ease,color .16s ease}.fc-back .fc-tool{background:color-mix(in srgb,var(--bg) 12%,transparent);color:color-mix(in srgb,var(--bg) 80%,transparent)}.fc-tool.on{color:#e8a40c}.fc-tool:active{transform:scale(.9)}@media(hover:hover)and (pointer:fine){.fc-tool:hover{color:var(--ink)}.fc-back .fc-tool:hover{color:var(--bg)}}.fc-hint{position:absolute;bottom:18px;left:0;right:0;font-size:12.5px;color:var(--ink-3);letter-spacing:.02em}.fc-stage{flex:1;display:grid;align-content:center;justify-items:center;gap:22px;padding:18px var(--gutter) 28px}.fc-tally{display:flex;justify-content:space-between;width:min(780px,100%)}.tally{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 14px;border-radius:999px;font-size:13.5px;font-weight:600}.tally b{font-family:var(--font-display);font-size:15px}.tally.warn{background:var(--warn-soft);color:var(--warn)}.tally.good{background:var(--good-soft);color:var(--good)}.deck{position:relative;width:min(780px,100%);height:clamp(320px,56vh,560px)}.deck-card{position:absolute;top:0;right:0;bottom:0;left:0;transition:transform .34s var(--ease-out),opacity .34s ease;will-change:transform}.deck-card .fc{width:100%;height:100%}.deck-card.top{touch-action:none;z-index:3}.deck-card[data-depth="1"]{transform:translateY(16px) scale(.955);z-index:2;pointer-events:none}.deck-card[data-depth="2"]{transform:translateY(32px) scale(.91);opacity:.55;z-index:1;pointer-events:none}.deck-card:not(.top) .fc-face{box-shadow:var(--shadow-1)}.deck-card:not(.top) .fc-tools,.deck-card:not(.top) .fc-hint{visibility:hidden}.stamp{position:absolute;top:30px;z-index:5;padding:6px 14px;border-radius:12px;font-family:var(--font-display);font-weight:800;font-size:20px;letter-spacing:.02em;text-transform:uppercase;pointer-events:none;border:3px solid}.stamp.yes{left:28px;color:var(--good);transform:rotate(-12deg);opacity:var(--yes, 0)}.stamp.no{right:28px;color:var(--warn);transform:rotate(12deg);opacity:var(--no, 0)}.fc-actions{display:flex;align-items:center;justify-content:center;gap:clamp(14px,3vw,36px)}.fc-actions .btn.on{color:var(--ginger)}.round-btn{display:grid;justify-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--ink-2)}.round-btn svg{box-sizing:content-box;padding:22px;border-radius:50%;transition:transform .16s var(--ease-out),background-color .16s ease}.round-btn.no svg{background:var(--warn-soft);color:var(--warn)}.round-btn.yes svg{background:var(--good-soft);color:var(--good)}.round-btn:active svg{transform:scale(.92)}.round-btn.sm svg{padding:14px}@media(hover:hover)and (pointer:fine){.round-btn.no:hover svg{background:var(--warn);color:#fff}.round-btn.yes:hover svg{background:var(--good);color:#fff}}.keys-hint{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:center;font-size:12.5px;color:var(--ink-3)}.keys-hint .kbd{margin-left:8px}.q-stage{flex:1;display:grid;justify-items:center;align-content:start;gap:16px;padding:clamp(20px,6vh,72px) var(--gutter) 40px}.q-card{width:min(880px,100%);display:grid;gap:26px;padding:clamp(22px,3vw,44px);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-2);animation:card-in .36s var(--ease-out) both}.q-kind{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ginger)}.q-prompt{display:grid;gap:10px}.q-label{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:var(--ink-3)}.q-label .fc-tool{width:34px;height:34px}.q-text{font-family:var(--font-display);font-weight:700;letter-spacing:-.025em;line-height:1.1;word-break:break-word}.q-text.xl{font-size:clamp(34px,3.6vw,60px)}.q-text.lg{font-size:clamp(26px,2.6vw,42px)}.q-text.md{font-size:clamp(21px,1.8vw,28px);line-height:1.2}.q-text.sm{font-family:var(--font-ui);font-weight:600;font-size:19px;letter-spacing:-.01em;line-height:1.4}.q-example{font-style:italic;color:var(--ink-3)}.q-next{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:4px}.q-meta{display:flex;align-items:center;gap:8px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice{display:flex;align-items:center;gap:14px;min-height:64px;padding:12px 16px;border-radius:12px;text-align:left;font-size:16.5px;font-weight:500;line-height:1.3;background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--line-2);transition:box-shadow .16s ease,background-color .16s ease,opacity .2s ease,transform .16s var(--ease-out)}.choice-n{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--surface-2);font-size:13px;font-weight:700;color:var(--ink-2)}.choice-t{word-break:break-word}.choice:active:not(:disabled){transform:scale(.985)}@media(hover:hover)and (pointer:fine){.choice:hover:not(:disabled):not(.right):not(.wrong){box-shadow:inset 0 0 0 1.5px var(--ink-3)}}.choice.sel{box-shadow:inset 0 0 0 2px var(--ginger);background:var(--ginger-soft)}.choice.right{box-shadow:inset 0 0 0 2px var(--good);background:var(--good-soft)}.choice.right .choice-n{background:var(--good);color:#fff}.choice.wrong{box-shadow:inset 0 0 0 2px var(--bad);background:var(--bad-soft);animation:shake .36s var(--ease-out)}.choice.wrong .choice-n{background:var(--bad);color:#fff}.choice.dim{opacity:.45}.choices.compact .choice{min-height:52px;font-size:15.5px}@keyframes shake{20%{transform:translate(-6px)}40%{transform:translate(5px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}.writebox{display:grid;gap:12px}.wb-row{display:flex;gap:10px}.wb-input{flex:1;min-width:0;height:62px;padding:0 20px;border:0;outline:0;border-radius:12px;font-size:21px;font-weight:500;background:var(--surface-2);box-shadow:inset 0 0 0 1.5px var(--line-2);transition:box-shadow .16s ease,background-color .16s ease}.wb-input:focus{box-shadow:inset 0 0 0 2px var(--ginger),var(--ring);background:var(--surface)}.wb-row .btn{height:62px;padding:0 24px}.writebox.ok .wb-input{box-shadow:inset 0 0 0 2px var(--good);background:var(--good-soft)}.writebox.bad .wb-input{box-shadow:inset 0 0 0 2px var(--bad);background:var(--bad-soft);animation:shake .36s var(--ease-out)}.writebox.typo .wb-input{box-shadow:inset 0 0 0 2px var(--warn);background:var(--warn-soft)}.wb-tools{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.accents{display:flex;gap:4px;margin-left:auto}.accent-key{width:36px;height:36px;border-radius:10px;background:var(--surface-2);font-size:16px;font-weight:600;transition:transform .12s var(--ease-out)}.accent-key:active{transform:scale(.92)}.wb-result{display:grid;gap:10px;padding:16px 18px;border-radius:12px;background:var(--surface-2);animation:card-in .26s var(--ease-out) both}.wb-verdict{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.wb-verdict b{font-family:var(--font-display);font-size:20px}.wb-verdict span{color:var(--ink-2);font-size:14.5px}.wb-answer{font-size:20px;font-weight:700}.wb-answer small,.wb-yours small{font-size:13px;font-weight:500;color:var(--ink-3);margin-right:6px}.wb-yours{color:var(--ink-2)}.round-end{flex:1;width:min(760px,100%);margin:0 auto;display:grid;align-content:start;gap:22px;padding:clamp(24px,6vh,72px) var(--gutter) 40px}.round-end h1{font-size:clamp(30px,3vw,48px)}.round-end>.btn{justify-self:start}.re-bars{display:grid;gap:12px;padding:20px;border-radius:14px;background:var(--surface);box-shadow:var(--shadow-1)}.re-bar{display:grid;grid-template-columns:90px 1fr 40px;align-items:center;gap:14px;font-size:14px;font-weight:600;color:var(--ink-2)}.re-bar .bar{height:10px}.re-bar b{text-align:right;color:var(--ink)}.re-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.re-list li{display:grid;grid-template-columns:10px minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:center;padding:12px 16px;border-radius:14px;background:var(--surface)}.re-list span:last-child{color:var(--ink-2)}.finish{flex:1;display:grid;justify-items:center;align-content:center;text-align:center;gap:14px;padding:32px var(--gutter) 48px}.finish h1{font-size:clamp(36px,4.4vw,72px);letter-spacing:-.035em}.finish>p{max-width:54ch}.finish-stats{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:8px}.finish-stats>div{display:grid;gap:2px;min-width:120px;padding:14px 20px;border-radius:12px;background:var(--surface);box-shadow:var(--shadow-1)}.finish-stats b{font-family:var(--font-display);font-size:30px}.finish-stats span{font-size:13px;color:var(--ink-2)}.finish-stats .good b{color:var(--good)}.finish-stats .warn b{color:var(--warn)}.finish-stats .bad b{color:var(--bad)}.finish-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:18px}.test-setup{width:min(620px,calc(100% - 2 * var(--gutter)));margin:clamp(20px,6vh,72px) auto 40px;padding:clamp(22px,3vw,36px);display:grid;gap:22px;border-radius:28px}.test-setup h1{font-size:clamp(26px,2.4vw,40px)}.test-setup .btn.lg{justify-self:start}.test{width:min(900px,100%);margin:0 auto;padding:24px var(--gutter) 140px}.test-score{margin-bottom:16px}.test-score .finish{padding-top:12px}.test-list{list-style:none;margin:0;padding:0;display:grid;gap:14px}.tq{padding:22px;display:grid;gap:14px;border-radius:14px;transition:box-shadow .2s ease}.tq.ok{box-shadow:inset 0 0 0 2px var(--good)}.tq.bad{box-shadow:inset 0 0 0 2px var(--bad)}.tq-head{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:600;color:var(--ink-3)}.tq-head svg{margin-left:auto}.tq-q{font-family:var(--font-display);font-weight:700;font-size:clamp(20px,1.8vw,28px);letter-spacing:-.02em;line-height:1.2;word-break:break-word}.tf-shown{font-size:18px;font-weight:600;color:var(--ink-2)}.seg.tf{justify-self:start}.seg.tf button{height:40px;padding:0 20px}.seg.tf button.right{background:var(--good);color:#fff}.seg.tf button.wrong{background:var(--bad);color:#fff}.tq-fix{font-size:15px;font-weight:600;color:var(--good);display:flex;align-items:center;gap:10px;flex-wrap:wrap}.test-submit{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;justify-content:center;align-items:center;gap:18px;padding:14px var(--gutter) calc(14px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line)}.match-ready{flex:1;display:grid;justify-items:center;align-content:center;text-align:center;gap:14px;padding:24px var(--gutter) 60px}.match-ready h1{font-size:clamp(30px,3.4vw,54px)}.match-ready p{max-width:46ch}.mr-icon{display:grid;place-items:center;width:96px;height:96px;border-radius:30px;background:var(--ginger-soft);color:var(--ginger);margin-bottom:6px}.best{display:inline-flex;align-items:center;gap:8px;font-weight:600}.match-board{flex:1;width:min(1280px,100%);margin:0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-content:center;padding:24px var(--gutter) 40px}.match-board.small{grid-template-columns:repeat(4,minmax(0,1fr))}.tile{min-height:clamp(100px,17vh,170px);padding:14px;border-radius:12px;background:var(--surface);box-shadow:var(--shadow-1),inset 0 0 0 1.5px transparent;font-size:clamp(15px,1.2vw,19px);font-weight:600;line-height:1.3;word-break:break-word;transition:transform .2s var(--ease-out),opacity .26s ease,box-shadow .16s ease,background-color .16s ease}.tile .small{font-size:14px;font-weight:500}.tile:active{transform:scale(.97)}@media(hover:hover)and (pointer:fine){.tile:hover:not(:disabled){box-shadow:var(--shadow-2)}}.tile.sel{background:var(--ginger-soft);box-shadow:inset 0 0 0 2px var(--ginger)}.tile.bad{background:var(--bad-soft);box-shadow:inset 0 0 0 2px var(--bad);animation:shake .38s var(--ease-out)}.tile.gone{opacity:0;transform:scale(.9);pointer-events:none}.review-stage{flex:1;display:grid;align-content:center;justify-items:center;gap:22px;padding:18px var(--gutter) 28px}.fc-review{width:min(780px,100%);height:clamp(300px,52vh,520px)}.grades{width:min(780px,100%);display:grid;grid-template-columns:repeat(4,1fr);gap:10px;min-height:76px}.show-btn{grid-column:1 / -1;height:76px;border-radius:14px;font-size:17px}.grade{position:relative;display:grid;justify-items:center;align-content:center;gap:2px;height:76px;border-radius:12px;transition:transform .16s var(--ease-out),filter .16s ease;animation:card-in .24s var(--ease-out) both}.grade b{font-size:16px}.grade small{font-size:12.5px;opacity:.8;font-weight:600}.grade .kbd{position:absolute;top:8px;right:8px;min-width:18px;height:18px;font-size:10px;background:transparent;box-shadow:inset 0 0 0 1px currentColor;color:inherit;opacity:.5}.grade:active{transform:scale(.96)}.grade.again{background:var(--bad-soft);color:var(--bad)}.grade.hard{background:var(--warn-soft);color:var(--warn)}.grade.good{background:var(--good-soft);color:var(--good)}.grade.easy{background:color-mix(in srgb,var(--c-sky) 14%,var(--surface));color:var(--c-sky)}.grade:nth-child(2){animation-delay:30ms}.grade:nth-child(3){animation-delay:60ms}.grade:nth-child(4){animation-delay:90ms}@media(hover:hover)and (pointer:fine){.grade:hover{filter:brightness(.97) saturate(1.2)}}@media(max-width:900px){.study-top{height:60px;padding:0 8px}.study-title .cat{display:none}.fc-stage,.review-stage{align-content:start;padding-top:12px;gap:16px}.deck{height:min(58dvh,520px)}.fc-review{height:min(52dvh,480px)}.fc-face{padding:56px 22px;border-radius:16px}.choices{grid-template-columns:1fr}.choice{min-height:56px}.q-stage{padding-top:14px}.q-card{padding:20px;border-radius:14px;gap:20px}.wb-row{flex-direction:column}.wb-row .btn{height:52px}.accents{margin-left:0;width:100%}.match-board{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px;align-content:start}.tile{min-height:92px;border-radius:16px;padding:10px;font-size:14.5px}.grades{gap:6px}.grade{height:68px;border-radius:16px}.grade b{font-size:14px}.finish-actions{flex-direction:column;width:100%}.finish-actions .btn{width:100%}.re-list li{grid-template-columns:8px 1fr}.re-list span:last-child{grid-column:2;margin-top:-10px}.stamp{font-size:16px;top:22px}}:root{--card: #ECEDF0;--card-ink: #1B1D23;--card-tool: rgba(17, 18, 22, .06)}:root[data-theme=dark]{--card: #202128;--card-ink: #ECEDF1;--card-tool: rgba(255, 255, 255, .07)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--card: #202128;--card-ink: #ECEDF1;--card-tool: rgba(255, 255, 255, .07)}}.fc-face,.fc-back,:root[data-theme=dark] .fc-front{background:var(--card);color:var(--card-ink);outline:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .fc-front{background:var(--card);outline:none}}.fc-tool,.fc-back .fc-tool{background:var(--card-tool);color:color-mix(in srgb,var(--card-ink) 70%,transparent)}@media(hover:hover)and (pointer:fine){.fc-tool:hover,.fc-back .fc-tool:hover{color:var(--card-ink)}}.fc-lang{position:absolute;top:22px;left:22px;height:26px;padding:0 10px;display:inline-flex;align-items:center;border-radius:999px;background:var(--card-tool);font-size:12px;font-weight:700;letter-spacing:.06em;color:color-mix(in srgb,var(--card-ink) 65%,transparent)}.fc-back .fc-lang{background:color-mix(in srgb,var(--ginger) 16%,transparent);color:var(--ginger-2)}.dir-switch{gap:6px;font-variant-numeric:tabular-nums;letter-spacing:.02em}@media(max-width:900px){.study-right .dir-switch{padding:0 10px}.study-count{display:none}}:root{--card: #EEF0F3}:root[data-theme=dark]{--card: #1E2127}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--card: #1E2127}}.fc-face{border-radius:18px;box-shadow:0 0 0 1px var(--line-2),0 18px 34px -24px #18284880,0 0 0 calc(var(--yes, 0) * 3px) var(--good),0 0 0 calc(var(--no, 0) * 3px) var(--warn)}.fc-back{transform:rotateY(180deg)}.fc-face:before{content:"";position:absolute;left:0;right:0;top:66px;height:1.5px;background:var(--margin-line);opacity:.75}.fc-lang{top:24px;left:22px}.deck-card:not(.top) .fc-face{box-shadow:0 0 0 1px var(--line-2)}.study-top{background:color-mix(in srgb,var(--bg) 88%,transparent)}.q-card,.test-setup{box-shadow:var(--shadow-1)}.round-btn svg{border-radius:16px}.mark{position:relative;display:inline-grid;place-items:center;width:150px;height:128px;font-family:var(--font-hand);font-weight:700;font-size:118px;line-height:1;color:var(--bad);letter-spacing:0;animation:mark-in .42s var(--ease-out) both}.mark svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible}.mark path{fill:none;stroke:var(--bad);stroke-width:3.5;stroke-linecap:round;stroke-dasharray:360;stroke-dashoffset:360;animation:mark-draw .65s .22s var(--ease-out) forwards}@keyframes mark-in{0%{opacity:0;transform:scale(.9) rotate(-6deg)}}@keyframes mark-draw{to{stroke-dashoffset:0}}@media(prefers-reduced-motion:reduce){.mark path{stroke-dashoffset:0}}
