:root{--bg: #f6f6f8;--surface: #ffffff;--surface-2: #f1f2f5;--surface-3: #e7e8ee;--border: #e4e5ec;--border-strong: #d3d5df;--fg: #1a1b23;--muted: #565866;--muted-2: #888b98;--brand: #5b5bd6;--brand-strong: #4a4ac2;--brand-soft: rgba(91, 91, 214, .1);--brand-fg: #ffffff;--danger: #d64550;--danger-strong: #c02f3a;--danger-soft: rgba(214, 69, 80, .11);--success: #2e9e5b;--success-soft: rgba(46, 158, 91, .13);--warning: #c98a12;--freeze: #2f80c9;--freeze-soft: rgba(47, 128, 201, .14);--radius: 12px;--radius-sm: 8px;--radius-lg: 18px;--shadow: 0 1px 2px rgba(20, 22, 40, .04), 0 4px 16px rgba(20, 22, 40, .05);--shadow-lg: 0 8px 40px rgba(20, 22, 40, .12);--maxw: 1800px;--maxw-text: 1080px;--header-h: 60px;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji", sans-serif;--mono: ui-monospace, "SF Mono", "Cascadia Code", "JetBrains Mono", Menlo, Consolas, monospace}:root[data-theme=dark]{--bg: #0d0e12;--surface: #16171d;--surface-2: #1c1e26;--surface-3: #262933;--border: #24262f;--border-strong: #343745;--fg: #e8e9ef;--muted: #a2a5b0;--muted-2: #6d7080;--brand: #8484f2;--brand-strong: #9494f5;--brand-soft: rgba(132, 132, 242, .14);--brand-fg: #ffffff;--danger: #f0757f;--danger-strong: #f28c95;--danger-soft: rgba(240, 117, 127, .13);--success: #52c07e;--success-soft: rgba(82, 192, 126, .15);--warning: #e0a53c;--freeze: #5aa9e6;--freeze-soft: rgba(90, 169, 230, .16);--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 6px 22px rgba(0, 0, 0, .35);--shadow-lg: 0 12px 46px rgba(0, 0, 0, .5)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font);background:var(--bg);color:var(--fg);line-height:1.55;font-size:15px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}html:not([data-theme]) body{visibility:hidden}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{line-height:1.25;font-weight:650;margin:0 0 .4em;letter-spacing:-.01em}h1{font-size:1.65rem}h2{font-size:1.25rem}p{margin:0 0 1em}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 28px}.container-text{max-width:var(--maxw-text)}main{padding:28px 0 80px}.page-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}.page-head .subtitle{color:var(--muted);font-size:.92rem;margin:4px 0 0}.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:.85rem;color:var(--muted-2);margin-bottom:14px}.breadcrumbs a{color:var(--muted)}.breadcrumbs .sep{opacity:.6}.site-header{position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--surface) 86%,transparent);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--border)}.site-header .bar{height:var(--header-h);display:flex;align-items:center;gap:16px}.brand{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:1.08rem;letter-spacing:-.02em;color:var(--fg)}.brand:hover{text-decoration:none}.brand .mark{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:linear-gradient(140deg,var(--brand),var(--brand-strong));color:#fff}.header-spacer{flex:1}.mode-nav{display:flex;align-items:center;gap:2px;padding:3px;background:var(--surface-2);border:1px solid var(--border);border-radius:11px}.mode-nav a{display:inline-flex;align-items:center;gap:7px;padding:6px 13px;border-radius:8px;font-size:.9rem;font-weight:550;color:var(--muted);white-space:nowrap}.mode-nav a:hover{color:var(--fg);text-decoration:none}.mode-nav a[aria-current=page]{background:var(--surface);color:var(--brand);box-shadow:var(--shadow)}.mode-nav a .label{display:inline}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px 15px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--fg);font:inherit;font-size:.9rem;font-weight:550;cursor:pointer;transition:background-color .15s,border-color .15s,opacity .15s;text-decoration:none;white-space:nowrap}.btn:hover{background:var(--surface-2);text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--brand);border-color:var(--brand);color:var(--brand-fg)}.btn-primary:hover{background:var(--brand-strong);border-color:var(--brand-strong)}.btn-danger{color:var(--danger);border-color:transparent;background:transparent}.btn-danger:hover{background:var(--danger-soft)}.btn-ghost{border-color:transparent;background:transparent;color:var(--muted)}.btn-ghost:hover{background:var(--surface-2);color:var(--fg)}.btn-sm{padding:5px 10px;font-size:.82rem}.btn-icon{padding:8px;border-radius:var(--radius-sm)}.btn-block{width:100%}.icon-btn{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--muted);cursor:pointer;transition:background-color .15s,color .15s}.icon-btn:hover{background:var(--surface-2);color:var(--fg)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.card-pad{padding:18px}.grid{display:grid;gap:14px}.grid-cards{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.tile{display:flex;flex-direction:column;gap:6px;padding:18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);transition:border-color .15s,transform .1s}a.tile:hover{text-decoration:none;border-color:var(--border-strong);transform:translateY(-1px)}.tile .tile-title{font-weight:620;font-size:1.02rem;color:var(--fg)}.tile .tile-meta{font-size:.83rem;color:var(--muted-2)}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:13px}.field>.label,.field-label{font-size:.8rem;font-weight:550;color:var(--muted)}.input,select.input,textarea.input{width:100%;padding:9px 12px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--fg);font:inherit;font-size:.92rem;transition:border-color .15s,box-shadow .15s}.input:focus,textarea.input:focus,select.input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}textarea.input{resize:vertical;min-height:90px}.input::placeholder{color:var(--muted-2)}.form-row{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}.form-row .field{flex:1;min-width:140px;margin-bottom:0}.row{display:flex;align-items:center;gap:10px}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.gap-sm{gap:6px}.muted{color:var(--muted)}.muted-2{color:var(--muted-2)}.small{font-size:.85rem}.tag{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);font-size:.76rem;font-weight:550;color:var(--muted)}.tag.brand{background:var(--brand-soft);border-color:transparent;color:var(--brand)}.pill-count{min-width:22px;text-align:center;padding:1px 7px;border-radius:999px;background:var(--surface-2);font-size:.76rem;font-weight:600;color:var(--muted)}.empty{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;color:var(--muted-2);padding:54px 20px;border:1px dashed var(--border-strong);border-radius:var(--radius)}.divider{height:1px;background:var(--border);border:0;margin:18px 0}.flash{padding:10px 14px;border-radius:var(--radius-sm);font-size:.88rem;margin-bottom:16px}.flash.error{background:var(--danger-soft);color:var(--danger-strong)}.flash.ok{background:var(--success-soft);color:var(--success)}.table{width:100%;border-collapse:collapse;font-size:.92rem}.table th,.table td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--border)}.table th{font-size:.78rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.table tr:last-child td{border-bottom:0}.table .num{color:var(--muted-2);width:1%;white-space:nowrap}.vocab-actions{justify-content:flex-end}.tense-head{display:flex;align-items:center;gap:8px;padding:11px 14px;font-weight:600;color:var(--fg);border-bottom:1px solid var(--border)}.ico{display:inline-block;width:1em;height:1em;vertical-align:-.14em;flex:none}.ico-lg{width:20px;height:20px}.split{display:grid;grid-template-columns:260px 1fr;gap:24px;align-items:start}.sidebar{position:sticky;top:calc(var(--header-h) + 20px)}.tree{list-style:none;margin:0;padding:0;font-size:.9rem}.tree ul{list-style:none;margin:0;padding-left:16px;border-left:1px solid var(--border)}.tree li{margin:1px 0}.tree .node{display:flex;align-items:center;gap:7px;padding:5px 8px;border-radius:7px;color:var(--muted)}.tree .node:hover{background:var(--surface-2);color:var(--fg);text-decoration:none}.tree .node.active{background:var(--brand-soft);color:var(--brand)}.tree .node.folder{font-weight:550;color:var(--fg)}.prose{font-size:.97rem;line-height:1.7;color:var(--fg);max-width:72ch}.prose>:first-child{margin-top:0}.prose h1,.prose h2,.prose h3{margin-top:1.5em}.prose h2{padding-bottom:.25em;border-bottom:1px solid var(--border)}.prose code{font-family:var(--mono);font-size:.86em;background:var(--surface-2);padding:.12em .4em;border-radius:5px}.prose pre{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px 16px;overflow:auto}.prose pre code{background:none;padding:0}.prose blockquote{margin:1em 0;padding:2px 16px;border-left:3px solid var(--brand);color:var(--muted)}.prose table{border-collapse:collapse;width:100%;margin:1em 0}.prose th,.prose td{border:1px solid var(--border);padding:7px 11px}.prose th{background:var(--surface-2)}.prose img{max-width:100%;border-radius:var(--radius-sm)}.prose a{text-decoration:underline;text-underline-offset:2px}.prose :is(h1,h2,h3,h4,h5,h6){scroll-margin-top:calc(var(--header-h) + 16px)}.doc-layout{display:grid;grid-template-columns:232px minmax(0,1fr) 250px;grid-template-areas:"nav main side";gap:26px;align-items:start}.doc-nav{grid-area:nav}.doc-main{grid-area:main}.doc-side{grid-area:side}.doc-nav,.doc-side{position:sticky;top:calc(var(--header-h) + 20px);font-size:.9rem}.doc-nav{max-height:calc(100vh - var(--header-h) - 40px);overflow:auto}.section-lead{font-size:.72rem;font-weight:600;color:var(--muted-2);text-transform:uppercase;letter-spacing:.05em;margin:0 0 8px}.doc-nav .section-lead:not(:first-child),.doc-side .section-lead:not(:first-child){margin-top:20px}.node{display:flex;align-items:center;gap:7px;padding:5px 8px;border-radius:7px;color:var(--muted)}.node:hover{background:var(--surface-2);color:var(--fg);text-decoration:none}.node.active{background:var(--brand-soft);color:var(--brand)}.doc-toc{display:flex;flex-direction:column;gap:1px}.doc-toc a{display:block;padding:4px 8px;border-radius:7px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-toc a:hover{background:var(--surface-2);color:var(--fg);text-decoration:none}.doc-toc .toc-l1{font-weight:600;color:var(--fg)}.doc-toc .toc-l2{padding-left:8px}.doc-toc .toc-l3{padding-left:20px}.doc-toc .toc-l4,.doc-toc .toc-l5,.doc-toc .toc-l6{padding-left:32px}.doc-pages{margin-top:6px;padding-top:6px;border-top:1px solid var(--border)}.doc-title{font-size:1.9rem;margin-bottom:.6em;overflow-wrap:break-word}.detail-row{display:flex;align-items:center;gap:8px;padding:4px 0;color:var(--muted)}.detail-row time{color:var(--fg);cursor:help;border-bottom:1px dotted var(--border-strong)}.doc-action{display:flex;align-items:center;gap:9px;width:100%;padding:8px 10px;border-radius:var(--radius-sm);border:0;background:transparent;color:var(--fg);font:inherit;font-size:.9rem;text-align:left;cursor:pointer}.doc-action:hover{background:var(--surface-2);text-decoration:none}.doc-action.danger{color:var(--danger)}.doc-action.danger:hover{background:var(--danger-soft)}.doc-move{position:relative}.doc-move>summary{list-style:none}.doc-move>summary::-webkit-details-marker{display:none}.doc-move-panel{position:absolute;top:calc(100% + 4px);right:0;z-index:30;width:min(260px,84vw);box-shadow:var(--shadow-lg)}@media(max-width:1080px){.doc-layout{grid-template-columns:minmax(0,1fr) 250px;grid-template-areas:"main side"}.doc-nav{display:none}}@media(max-width:780px){.doc-layout{grid-template-columns:1fr;grid-template-areas:"main" "side" "nav";gap:18px}.doc-nav{display:block}.doc-nav,.doc-side{position:static;max-height:none}}.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.editor-pane textarea{min-height:max(460px,calc(100vh - 250px));font-family:var(--mono);font-size:.9rem;line-height:1.6}.preview-pane{position:sticky;top:calc(var(--header-h) + 20px)}.preview-pane .preview-head{font-size:.78rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;padding:12px 16px;border-bottom:1px solid var(--border)}.preview-body{padding:18px;max-height:calc(100vh - var(--header-h) - 56px);overflow:auto;max-width:none}.save-status{align-self:center;white-space:nowrap}.save-status.bad{color:var(--danger)}.practice{max-width:560px;margin:10px auto 0}.flashcard{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);padding:44px 28px;text-align:center;margin-bottom:20px}.flashcard .side-label{font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted-2);margin-bottom:12px}.flashcard .term{font-size:1.9rem;font-weight:650;letter-spacing:-.02em}.flashcard .answer{margin-top:22px;padding-top:22px;border-top:1px dashed var(--border-strong)}.flashcard .answer .term{color:var(--brand)}.flashcard .note{margin-top:12px;color:var(--muted);font-size:.9rem}.progressbar{height:6px;border-radius:999px;background:var(--surface-3);overflow:hidden;margin-bottom:18px}.progressbar>span{display:block;height:100%;background:var(--brand);transition:width .3s}.dir-menu{position:relative}.dir-menu-toggle{list-style:none}.dir-menu-toggle::-webkit-details-marker{display:none}.dir-menu[open] .dir-menu-toggle{border-color:var(--brand);color:var(--brand)}.dir-menu-panel{position:absolute;top:calc(100% + 6px);left:0;z-index:30;min-width:200px;padding:6px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-lg)}.dir-menu-lead{display:block;padding:6px 10px 4px;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted-2)}.dir-menu-lead-sep{margin-top:6px;padding-top:10px;border-top:1px solid var(--border)}.dir-menu-item{display:flex;flex-direction:column;gap:1px;padding:8px 10px;border-radius:var(--radius-sm);color:var(--fg);text-decoration:none}.dir-menu-item:hover{background:var(--surface-2)}.dir-menu-item-label{font-size:.9rem;font-weight:550}.dir-menu-item-hint{font-size:.76rem;color:var(--muted-2)}.theme-toggle .moon{display:none}.theme-toggle .sun{display:block}:root[data-theme=dark] .theme-toggle .moon{display:block}:root[data-theme=dark] .theme-toggle .sun{display:none}.searchbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:20px}.search-field{position:relative;flex:1;min-width:200px;max-width:520px;display:flex;align-items:center}.search-field>.ico{position:absolute;left:11px;color:var(--muted-2);pointer-events:none}.search-field .input{padding-left:34px}.search-summary{color:var(--muted);font-size:.9rem;margin-bottom:14px}.labels{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px}.labels .labels-lead{font-size:.78rem;font-weight:600;color:var(--muted-2);text-transform:uppercase;letter-spacing:.04em}.label-manage{position:relative}.label-manage>summary{list-style:none;cursor:pointer}.label-manage>summary::-webkit-details-marker{display:none}.label-manage-panel{position:absolute;top:calc(100% + 6px);left:0;z-index:30;min-width:260px;box-shadow:var(--shadow-lg)}.label-manage-list{display:flex;flex-direction:column;gap:8px}.filtered-out{display:none!important}.view-toggle{display:inline-flex;gap:2px;padding:3px;background:var(--surface-2);border:1px solid var(--border);border-radius:10px}.view-toggle button{display:inline-grid;place-items:center;width:32px;height:30px;border:0;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer}.view-toggle button[aria-pressed=true]{background:var(--surface);color:var(--brand);box-shadow:var(--shadow)}.item-list{display:flex;flex-direction:column;gap:10px}.item-list .item{display:flex;align-items:center;gap:16px;padding:13px 18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);transition:border-color .15s}.item-list .item:hover{border-color:var(--border-strong)}.item .item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.item .item-title{font-weight:620;font-size:1.04rem;color:var(--fg)}.item .item-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:.82rem;color:var(--muted-2)}.item .item-counts{display:flex;align-items:center;gap:16px}.count-badge{display:flex;flex-direction:column;align-items:center;line-height:1.15;min-width:40px}.count-badge .n{font-size:1.15rem;font-weight:700}.count-badge.due .n{color:var(--brand)}.count-badge.due.zero .n{color:var(--muted-2)}.count-badge .l{font-size:.64rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted-2)}.item .item-actions{display:flex;gap:6px;align-items:center}.item-list.as-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}.item-list.as-grid .item{flex-direction:column;align-items:stretch;gap:12px}.item-list.as-grid .item-counts{justify-content:flex-start}.grades{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.grades form{display:flex}.btn.grade{flex:1;flex-direction:column;gap:1px;padding:9px 6px;line-height:1.2}.btn.grade .grade-when{font-size:.72rem;font-weight:500;opacity:.85}.btn.grade-again{color:var(--danger);border-color:var(--border-strong)}.btn.grade-again:hover{background:var(--danger-soft)}.type-form{display:flex;gap:8px}.type-form .input{flex:1;min-width:0}.type-feedback{margin-bottom:14px}.type-verdict{font-weight:650}.type-verdict.ok{color:var(--success)}.type-verdict.bad{color:var(--danger)}.type-line{display:flex;gap:10px;align-items:baseline;margin-top:6px}.type-label{flex:none;min-width:96px;font-size:.76rem;color:var(--muted-2)}.type-chars{font-size:1.05rem;overflow-wrap:anywhere}.tch-bad{color:var(--danger);background:var(--danger-soft);border-radius:3px;text-decoration:line-through}.tch-miss{color:var(--success);background:var(--success-soft);border-radius:3px}.kbd-hint{display:none}@media(hover:hover)and (pointer:fine){.kbd-hint{display:inline-block;min-width:1.35em;padding:0 4px;margin-right:6px;border-radius:5px;border:1px solid var(--border-strong);background:var(--surface-2);color:var(--muted);font-family:var(--mono);font-size:.72em;font-weight:600;line-height:1.5;text-align:center;vertical-align:middle}.btn-primary .kbd-hint{border-color:color-mix(in srgb,var(--brand-fg) 55%,transparent);background:color-mix(in srgb,var(--brand-fg) 18%,transparent);color:var(--brand-fg);margin-right:0;margin-left:6px}}.pick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.pick{display:flex;align-items:center;gap:10px;padding:10px 13px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer}.pick:hover{border-color:var(--border-strong)}.pick input{width:17px;height:17px;accent-color:var(--brand);flex:none}.pick .pick-body{min-width:0;display:flex;flex-direction:column;gap:1px}.pick .pick-title{font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pick .pick-meta{font-size:.76rem;color:var(--muted-2)}.pick.hidden{display:none}.filter-chip{cursor:pointer;user-select:none}.filter-chip[aria-pressed=true]{background:var(--brand-soft);border-color:transparent;color:var(--brand)}.pick-conj{display:block;padding:0;cursor:default}.pick-conj .pick-head{display:flex;align-items:center;gap:10px;padding:10px 13px;cursor:pointer}.pick-tenses{max-height:0;overflow:hidden;padding:0 13px;border-top:1px solid transparent;transition:max-height .22s ease,padding .22s ease}.pick-conj.expanded .pick-tenses{max-height:500px;padding:10px 13px 12px;border-top-color:var(--border)}.pick-tenses-lead{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600;color:var(--muted-2);margin-bottom:7px}.pick-tenses-list{display:flex;flex-wrap:wrap;gap:6px}.tense-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);font-size:.78rem;cursor:pointer;user-select:none}.tense-chip input{width:14px;height:14px;accent-color:var(--brand);flex:none}.logout-form{display:flex}.auth-wrap{min-height:calc(100vh - 108px);display:flex;align-items:center;justify-content:center}.auth-card{width:100%;max-width:380px;padding:28px 26px}.auth-brand{display:flex;align-items:center;gap:9px;font-weight:700;font-size:1.1rem;letter-spacing:-.02em;margin-bottom:18px}.auth-brand .mark{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:linear-gradient(140deg,var(--brand),var(--brand-strong));color:#fff}.auth-card h1{margin-bottom:4px}.auth-card .subtitle{font-size:.9rem;margin-bottom:18px}.auth-card .field{margin-bottom:15px}.auth-card .btn-block{margin-top:6px}@media(max-width:860px){.split{grid-template-columns:1fr}.sidebar{position:static}.editor-grid{grid-template-columns:1fr}.preview-pane{position:static}}@media(max-width:680px){h1{font-size:1.4rem}.container{padding:0 16px}.grades{grid-template-columns:repeat(2,1fr)}.vocab-table thead{display:none}.vocab-table,.vocab-table tbody,.vocab-table td{display:block;width:auto}.vocab-table tr{display:grid;grid-template-columns:1fr auto;grid-template-rows:repeat(4,auto);column-gap:12px;padding:12px 14px;border-bottom:1px solid var(--border)}.vocab-table tr:last-child{border-bottom:0}.vocab-table td{grid-column:1;border:0;padding:3px 0;white-space:normal}.vocab-table td:empty{display:none}.vocab-table td[data-label]:before{content:attr(data-label) ": ";color:var(--muted-2);font-weight:600;margin-right:4px}.vocab-table td.num{grid-column:2;grid-row:1 / -1;align-self:center;width:auto;padding:0}.view-toggle{display:none}.item-list,.item-list.as-grid{display:flex;flex-direction:column;gap:12px}.item-list .item,.item-list.as-grid .item{flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:14px 16px}.item .item-info{flex:1 1 0}.item .item-counts{flex:0 0 auto;justify-content:flex-end}.item .item-actions{flex:1 1 100%;flex-wrap:wrap;gap:8px}.item .item-actions>a.btn{flex:1;justify-content:center}.site-header .bar{gap:10px}.mode-nav{order:3;width:100%;justify-content:space-between;margin-bottom:10px}.mode-nav a{flex:1;justify-content:center;padding:7px 6px}.mode-nav a .label{display:none}.site-header .bar{height:auto;flex-wrap:wrap;padding-top:10px}.brand span.brandname{display:none}}.streak-btn[data-astro-cid-3ef6ksr2]{display:inline-flex;align-items:center;gap:5px;height:36px;padding:0 11px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--muted-2);font:inherit;font-weight:700;font-size:.92rem;cursor:pointer;transition:background-color .15s,color .15s,border-color .15s}.streak-btn[data-astro-cid-3ef6ksr2]:hover{background:var(--surface-2);color:var(--fg)}.streak-btn[data-astro-cid-3ef6ksr2].active{color:var(--brand);border-color:color-mix(in srgb,var(--brand) 35%,var(--border));background:var(--brand-soft)}.streak-count[data-astro-cid-3ef6ksr2]{line-height:1}.streak-dialog[data-astro-cid-3ef6ksr2]{width:min(360px,calc(100vw - 32px));max-width:360px;padding:0;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);color:var(--fg);box-shadow:var(--shadow-lg)}.streak-dialog[data-astro-cid-3ef6ksr2]::backdrop{background:#0a0c1480;backdrop-filter:blur(2px)}.streak-pop[data-astro-cid-3ef6ksr2]{position:relative;padding:22px 20px 20px}.streak-close[data-astro-cid-3ef6ksr2]{position:absolute;top:12px;right:12px;display:inline-grid;place-items:center;width:30px;height:30px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--muted-2);cursor:pointer}.streak-close[data-astro-cid-3ef6ksr2]:hover{background:var(--surface-2);color:var(--fg)}.streak-hero[data-astro-cid-3ef6ksr2]{text-align:center;padding:6px 0 4px}.streak-hero[data-astro-cid-3ef6ksr2] .flame[data-astro-cid-3ef6ksr2]{display:inline-grid;place-items:center;width:60px;height:60px;border-radius:50%;background:var(--surface-2);color:var(--muted-2)}.streak-hero[data-astro-cid-3ef6ksr2] .flame[data-astro-cid-3ef6ksr2].on{background:var(--brand-soft);color:var(--brand)}.streak-num[data-astro-cid-3ef6ksr2]{font-size:2.6rem;font-weight:800;line-height:1.05;margin-top:8px;letter-spacing:-.02em}.streak-cap[data-astro-cid-3ef6ksr2]{font-size:.85rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.streak-freezes[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:center;gap:10px;margin:16px 0 6px;padding:9px 12px;border-radius:var(--radius-sm);background:var(--surface-2);font-size:.85rem;color:var(--muted)}.freeze-pips[data-astro-cid-3ef6ksr2]{display:inline-flex;gap:3px}.freeze-pips[data-astro-cid-3ef6ksr2] .pip[data-astro-cid-3ef6ksr2]{color:var(--border-strong)}.freeze-pips[data-astro-cid-3ef6ksr2] .pip[data-astro-cid-3ef6ksr2].available{color:var(--freeze)}.streak-cal[data-astro-cid-3ef6ksr2]{margin-top:14px}.cal-head[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:8px;margin-bottom:10px}.cal-title[data-astro-cid-3ef6ksr2]{flex:1;text-align:center;font-weight:600;font-size:.92rem;text-transform:capitalize}.cal-arrow[data-astro-cid-3ef6ksr2]{display:inline-grid;place-items:center;width:28px;height:28px;flex:none;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--muted-2);cursor:pointer}.cal-arrow[data-astro-cid-3ef6ksr2]:hover{background:var(--surface-2);color:var(--fg)}.cal-arrow[data-astro-cid-3ef6ksr2].disabled{opacity:.35;cursor:default;pointer-events:none}.cal-grid[data-astro-cid-3ef6ksr2]{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal-wd[data-astro-cid-3ef6ksr2]{text-align:center;font-size:.68rem;font-weight:600;color:var(--muted-2);text-transform:uppercase;letter-spacing:.03em;padding-bottom:2px}.cal-cell[data-astro-cid-3ef6ksr2]{display:grid;place-items:center;aspect-ratio:1;border-radius:50%;font-size:.8rem;font-weight:550;color:var(--fg)}button[data-astro-cid-3ef6ksr2].cal-cell{appearance:none;margin:0;padding:0;border:0;background:transparent;color:inherit;font-family:inherit;cursor:pointer}button[data-astro-cid-3ef6ksr2].cal-cell:hover{box-shadow:inset 0 0 0 2px var(--brand)}button[data-astro-cid-3ef6ksr2].cal-cell:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.cal-cell[data-astro-cid-3ef6ksr2].out{color:var(--muted-2);opacity:.45}.cal-cell[data-astro-cid-3ef6ksr2].future{color:var(--muted-2)}.cal-cell[data-astro-cid-3ef6ksr2].learned{background:var(--brand);color:var(--brand-fg);font-weight:700}.cal-cell[data-astro-cid-3ef6ksr2].freeze{background:var(--freeze-soft);color:var(--freeze)}.cal-cell[data-astro-cid-3ef6ksr2].today{box-shadow:inset 0 0 0 2px var(--brand)}.cal-cell[data-astro-cid-3ef6ksr2].today.learned{box-shadow:inset 0 0 0 2px var(--brand-fg)}.cal-legend[data-astro-cid-3ef6ksr2]{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px;margin:14px 0 0;padding:0;font-size:.78rem;color:var(--muted)}.cal-legend[data-astro-cid-3ef6ksr2] li[data-astro-cid-3ef6ksr2]{display:inline-flex;align-items:center;gap:6px}.cal-legend[data-astro-cid-3ef6ksr2] .dot[data-astro-cid-3ef6ksr2]{width:11px;height:11px;border-radius:50%;flex:none}.cal-legend[data-astro-cid-3ef6ksr2] .dot[data-astro-cid-3ef6ksr2].learned{background:var(--brand)}.cal-legend[data-astro-cid-3ef6ksr2] .dot[data-astro-cid-3ef6ksr2].freeze{background:var(--freeze)}.cal-legend[data-astro-cid-3ef6ksr2] .dot[data-astro-cid-3ef6ksr2].today{background:transparent;box-shadow:inset 0 0 0 2px var(--brand)}.streak-mark[data-astro-cid-3ef6ksr2]{margin-top:18px}.streak-done[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:18px;padding:10px;border-radius:var(--radius-sm);background:var(--success-soft);color:var(--success);font-size:.88rem;font-weight:550}.streak-undo-form[data-astro-cid-3ef6ksr2]{text-align:center;margin-top:8px}.streak-undo[data-astro-cid-3ef6ksr2]{border:0;background:transparent;color:var(--muted-2);font:inherit;font-size:.82rem;padding:4px 8px;border-radius:var(--radius-sm);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.streak-undo[data-astro-cid-3ef6ksr2]:hover{color:var(--fg)}
