:root{--bg:#fff;--bg-2:#f5f5f4;--bg-3:#ebebea;--ink:#151516;--ink-2:#55555b;--ink-3:#8b8b91;--line:#e7e7e5;--line-2:#d3d3d1;--accent:#2e5bd8;--accent-ink:#2448b2;--accent-wash:#eef2fd;--warn:#8f5b00;--warn-wash:#fbf3e2;--danger:#c22d2d;--danger-wash:#fceeed;--ok:#1e7a4c;--ok-wash:#e9f5ee;--c-blue:#2e5bd8;--c-blue-w:#eef2fd;--c-green:#1e7a4c;--c-green-w:#e9f5ee;--c-clay:#b4532a;--c-clay-w:#fbeee7;--c-plum:#7a3e9d;--c-plum-w:#f4ecf9;--c-teal:#0f7480;--c-teal-w:#e5f4f5;--c-rose:#b83266;--c-rose-w:#fbeaf1;--on-accent:#fff;--scrim:#14141652;--shadow:0 1px 2px #0000000a, 0 8px 28px #00000014;--shadow-sm:0 1px 2px #0000000f, 0 2px 8px #0000000a;--font:"Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono:"Geist Mono", ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--r-sm:6px;--r:8px;--r-md:10px;--r-lg:14px;--r-xl:16px;--top-h:56px;--side-w:248px;--ctl:32px;--ctl-sm:24px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#141415;--bg-2:#1c1c1e;--bg-3:#27272a;--ink:#ececee;--ink-2:#a7a7ae;--ink-3:#76767d;--line:#29292c;--line-2:#3a3a3e;--accent:#7c9cff;--accent-ink:#a0b6ff;--accent-wash:#1a2142;--warn:#e2ae4a;--warn-wash:#28210f;--danger:#f27373;--danger-wash:#2d1616;--ok:#5bc48d;--ok-wash:#12281c;--c-blue:#7c9cff;--c-blue-w:#1a2142;--c-green:#5bc48d;--c-green-w:#12281c;--c-clay:#f0936a;--c-clay-w:#2e1a12;--c-plum:#c99aeb;--c-plum-w:#251a2e;--c-teal:#5cc6cf;--c-teal-w:#10272a;--c-rose:#f08ab2;--c-rose-w:#2e1520;--on-accent:#0b1026;--scrim:#0000008c;--shadow:0 1px 2px #0000004d, 0 10px 32px #00000073;--shadow-sm:0 1px 2px #0000004d, 0 2px 8px #00000040;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#141415;--bg-2:#1c1c1e;--bg-3:#27272a;--ink:#ececee;--ink-2:#a7a7ae;--ink-3:#76767d;--line:#29292c;--line-2:#3a3a3e;--accent:#7c9cff;--accent-ink:#a0b6ff;--accent-wash:#1a2142;--warn:#e2ae4a;--warn-wash:#28210f;--danger:#f27373;--danger-wash:#2d1616;--ok:#5bc48d;--ok-wash:#12281c;--c-blue:#7c9cff;--c-blue-w:#1a2142;--c-green:#5bc48d;--c-green-w:#12281c;--c-clay:#f0936a;--c-clay-w:#2e1a12;--c-plum:#c99aeb;--c-plum-w:#251a2e;--c-teal:#5cc6cf;--c-teal-w:#10272a;--c-rose:#f08ab2;--c-rose-w:#2e1520;--on-accent:#0b1026;--scrim:#0000008c;--shadow:0 1px 2px #0000004d, 0 10px 32px #00000073;--shadow-sm:0 1px 2px #0000004d, 0 2px 8px #00000040;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:20px}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}[hidden]{display:none!important}.mono{font-family:var(--mono);letter-spacing:-.01em;font-size:.92em}.muted{color:var(--ink-3)}.small{font-size:12px;line-height:16px}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.grow{flex:1}svg.ic{flex:none;width:16px;height:16px}.c-blue{--c:var(--c-blue);--cw:var(--c-blue-w)}.c-green{--c:var(--c-green);--cw:var(--c-green-w)}.c-clay{--c:var(--c-clay);--cw:var(--c-clay-w)}.c-plum{--c:var(--c-plum);--cw:var(--c-plum-w)}.c-teal{--c:var(--c-teal);--cw:var(--c-teal-w)}.c-rose{--c:var(--c-rose);--cw:var(--c-rose-w)}.dot{background:var(--c,var(--ink-3));border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.s-top{z-index:20;height:var(--top-h);background:var(--bg);border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:0 16px;display:flex;position:sticky;top:0}.s-brand{width:calc(var(--side-w) - 16px);letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:8px;font-size:15px;font-weight:650;text-decoration:none;display:flex}.s-brand .wordmark span{color:var(--ink-3);font-weight:500}.wordmark{letter-spacing:-.01em;white-space:nowrap;color:var(--ink);font-weight:650}.wordmark span{color:var(--ink-3);font-weight:500}.s-nav{gap:4px;display:flex}.s-nav a{height:var(--ctl);border-radius:var(--r);color:var(--ink-2);align-items:center;gap:8px;padding:0 12px;text-decoration:none;display:flex}.s-nav a:hover{background:var(--bg-2);color:var(--ink)}.s-nav a[aria-current=page]{color:var(--ink);background:var(--bg-2);font-weight:500}.s-search{width:240px;height:var(--ctl);border-radius:var(--r);background:var(--bg-2);color:var(--ink-3);border:1px solid #0000;align-items:center;gap:8px;padding:0 8px 0 12px;display:flex}.s-search:focus-within{background:var(--bg);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash)}.s-search input{min-width:0;height:30px;color:var(--ink);background:0 0;border:0;outline:0;flex:1}.s-search input::placeholder{color:var(--ink-3)}.kbd{font:500 11px/16px var(--mono);color:var(--ink-3);border:1px solid var(--line-2);white-space:nowrap;border-radius:4px;padding:0 4px}.avatar{width:var(--ctl);height:var(--ctl);background:var(--c-clay-w);color:var(--c-clay);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;font-weight:600;display:grid}.btn{height:var(--ctl);border:1px solid var(--line-2);background:var(--bg);border-radius:var(--r);cursor:pointer;white-space:nowrap;color:var(--ink);justify-content:center;align-items:center;gap:8px;padding:0 12px;font-size:13px;font-weight:500;text-decoration:none;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.btn:hover{background:var(--bg-2)}.btn:disabled{opacity:.5;cursor:default}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn.primary:hover{background:var(--accent-ink);border-color:var(--accent-ink)}.btn.dark{background:var(--ink);border-color:var(--ink);color:var(--bg)}.btn.ghost{color:var(--ink-2);background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--bg-2);color:var(--ink)}.btn.danger{color:var(--danger)}.btn.danger.solid{background:var(--danger);border-color:var(--danger);color:#fff}.btn.icon{width:var(--ctl);padding:0}.btn.sm{height:var(--ctl-sm);border-radius:var(--r-sm);gap:4px;padding:0 8px;font-size:12px}.btn.sm.icon{width:var(--ctl-sm);padding:0}.btn.sm svg.ic{width:14px;height:14px}.btn[aria-pressed=true]{background:var(--bg-3);color:var(--ink)}.btn.ghost[aria-pressed=true]{background:var(--bg-2);color:var(--ink)}.field{align-content:start;gap:8px;margin:0 0 16px;display:grid}.field>span,.lab{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:500;line-height:16px}.field small,.hint{color:var(--ink-3);font-size:12px;line-height:16px}.input,select.input,textarea.input{width:100%;height:var(--ctl);border:1px solid var(--line-2);border-radius:var(--r);background:var(--bg);padding:0 12px}textarea.input{resize:vertical;height:auto;padding:8px 12px;line-height:20px}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash);outline:none}.input.mono{font-family:var(--mono);font-size:12px}.input::placeholder,.inline-input input::placeholder,.chips-box input::placeholder,textarea.input::placeholder{color:var(--ink-3);opacity:1}.inline-input{border:1px solid var(--line-2);border-radius:var(--r);background:var(--bg);height:var(--ctl);align-items:center;display:flex;overflow:hidden}.inline-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash)}.inline-input .pre{color:var(--ink-3);font-family:var(--mono);white-space:nowrap;padding:0 0 0 12px;font-size:12px}.inline-input input{min-width:0;height:30px;font-family:var(--mono);background:0 0;border:0;outline:0;flex:1;padding:0 12px 0 1px;font-size:12px}.seg{background:var(--bg-2);border-radius:var(--r-md);flex:none;gap:2px;padding:2px;display:inline-flex}.seg button{border-radius:var(--r);min-width:28px;height:28px;color:var(--ink-3);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;padding:0 8px;font-size:13px;font-weight:500;display:inline-flex}.seg button:hover{color:var(--ink)}.seg button[aria-pressed=true]{background:var(--bg);color:var(--ink);box-shadow:var(--shadow-sm)}.seg.icons button{width:28px;padding:0}.chip{height:var(--ctl);border:1px solid var(--line-2);background:var(--bg);color:var(--ink-2);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:13px;display:inline-flex}.chip:hover{color:var(--ink);border-color:var(--ink-3)}.chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--bg)}.chip .c{color:var(--warn);font-weight:600}.chip[aria-pressed=true] .c{color:inherit}.tag{border:1px solid var(--line-2);height:24px;color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:0 8px;font-size:12px;display:inline-flex}.tag button{color:var(--ink-3);cursor:pointer;background:0 0;border:0;margin-left:2px;padding:0;line-height:1}.pill{white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:6px;height:24px;padding:0 8px;font-size:12px;font-weight:500;display:inline-flex}.pill svg.ic{width:14px;height:14px}.pill.published{background:var(--ok-wash);color:var(--ok)}.pill.modified{background:var(--warn-wash);color:var(--warn)}.pill.draft{background:var(--bg-2);color:var(--ink-2)}.pill.archived{background:var(--bg-2);color:var(--ink-3)}.tile{border-radius:var(--r);flex:none;place-items:center;width:32px;height:32px;display:grid}.tile.guide{background:var(--accent-wash);color:var(--accent)}.tile.notion{background:var(--bg-3);color:var(--ink)}.tile.sm{border-radius:var(--r-sm);width:24px;height:24px}.tile.sm svg.ic{width:14px;height:14px}.page{max-width:880px;margin:0 auto;padding:32px 24px 96px}.page h1{letter-spacing:-.01em;margin:0;font-size:24px;line-height:32px}.page-head{align-items:center;gap:12px;margin:0 0 24px;display:flex}.page-head p{color:var(--ink-3);margin:4px 0 0}.card{border:1px solid var(--line);border-radius:var(--r-lg);margin:0 0 24px;padding:24px}.card h2{align-items:center;gap:8px;margin:0 0 4px;font-size:15px;line-height:24px;display:flex}.card>p.muted{margin:0 0 16px}.list{margin:0;padding:0;list-style:none}.list>li{border-bottom:1px solid var(--line);align-items:center;gap:12px;min-height:48px;padding:8px 0;display:flex}.list>li:last-child{border-bottom:0}.grid2{grid-template-columns:1fr 1fr;gap:16px;display:grid}.kv{grid-template-columns:160px 1fr;gap:8px 16px;font-size:13px;display:grid}.kv dt{color:var(--ink-3)}.kv dd{font-family:var(--mono);word-break:break-all;margin:0;font-size:12px}.alert{border-radius:var(--r);background:var(--danger-wash);color:var(--danger);margin:0 0 16px;padding:8px 12px;font-size:13px}.alert.ok{background:var(--ok-wash);color:var(--ok)}.alert.warn{background:var(--warn-wash);color:var(--warn)}.swatches{gap:4px;display:flex}.swatches button{background:var(--cw);cursor:pointer;border:2px solid #0000;border-radius:50%;place-items:center;width:24px;height:24px;padding:0;display:grid}.swatches button:after{content:"";background:var(--c);border-radius:50%;width:12px;height:12px}.swatches button[aria-pressed=true]{border-color:var(--c)}.sect-h{flex-wrap:wrap;align-items:baseline;gap:12px;margin:32px 0 12px;display:flex}.sect-h:first-of-type{margin-top:0}.sect-h h2{margin:0;font-size:15px;line-height:24px}.sect-h .muted{font-size:13px}.sect-h .grow+.btn{align-self:center}.tcard{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg);margin:0 0 16px;overflow:hidden}.tcard.dashed{border-style:dashed;border-color:var(--line-2);background:0 0}.trow{border-top:1px solid var(--line);grid-template-columns:24px minmax(0,1fr) auto 24px;align-items:center;gap:12px;min-height:48px;padding:8px 12px 8px 16px;display:grid}.trow:first-child{border-top:0}.trow:hover{background:color-mix(in srgb, var(--bg-2) 55%, transparent)}.trow.head{background:var(--bg-2);min-height:56px}.trow.head:hover{background:var(--bg-2)}.trow.add{grid-template-columns:24px minmax(0,1fr) auto}.trow.add:hover{background:0 0}.trow.add .lead{color:var(--ink-3)}.trow.add .btn{opacity:0;pointer-events:none;transition:opacity .12s}.trow.add:focus-within .btn{opacity:1;pointer-events:auto}.trow.add:has(.qi:not(:placeholder-shown)) .btn{opacity:1;pointer-events:auto}.trow .lead{width:24px;height:24px;color:var(--ink-3);place-items:center;display:grid}.tile.school{background:var(--bg);color:var(--ink-2);border:1px solid var(--line)}.qi-form{min-width:0;display:flex}.qi{width:100%;min-width:0;height:var(--ctl);border-radius:var(--r);color:var(--ink);text-overflow:ellipsis;background:0 0;border:1px solid #0000;margin-left:-8px;padding:0 8px;font-size:14px;transition:background .12s,border-color .12s}.qi.strong{font-size:15px;font-weight:600}.qi:hover{background:var(--bg-2)}.trow.head .qi:hover{background:var(--bg)}.qi:focus{background:var(--bg);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash);outline:none}.qi::placeholder{color:var(--ink-3)}.trow .count{color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap;justify-self:end;align-items:center;gap:2px;font-size:12px;text-decoration:none;display:inline-flex}.trow .count.zero{color:var(--ink-3)}.trow a.count{border-radius:var(--r-sm);height:24px;padding:0 4px 0 8px}.trow a.count:hover{background:var(--bg-2);color:var(--ink)}.trow a.count svg.ic{width:12px;height:12px;color:var(--ink-3)}.trow span.count{padding-right:18px}.trow .menu-wrap .btn{color:var(--ink-3)}.trow:hover .menu-wrap .btn{color:var(--ink-2)}.colordot{cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:24px;height:24px;padding:0;transition:background .12s;display:grid}.colordot .dot{width:10px;height:10px;box-shadow:0 0 0 3px var(--cw)}.colordot:hover{background:var(--cw)}.menu .swatches{gap:6px;padding:4px 8px 8px}.menu .swatches button{background:var(--cw);border:2px solid #0000;border-radius:50%;justify-content:center;width:24px;height:24px;min-height:0;padding:0}.menu .swatches button:hover{background:var(--cw);border-color:color-mix(in srgb, var(--c) 40%, transparent)}.menu .swatches button[aria-pressed=true]{border-color:var(--c)}.menu:has(.swatches){min-width:0}.page.wide{max-width:1040px}.tcard.pad{padding:24px 24px 16px}.form-foot{border-top:1px solid var(--line);align-items:center;gap:8px;margin:0 -24px;padding:16px 24px 0;display:flex}.srow{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;min-height:72px;padding:16px 16px 16px 24px;display:grid}.srow:first-child{border-top:0}.srow .st{font-weight:600}.srow .sh{color:var(--ink-3);max-width:480px;margin-top:2px;font-size:13px;line-height:20px}.seg button svg.ic{width:14px;height:14px}.grid3{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.card-h{align-items:center;gap:8px;margin:0 0 16px;font-size:14px;line-height:20px;display:flex}.check{color:var(--ink-2);align-items:center;gap:8px;font-size:13px;display:flex}.avatar.lg{cursor:default;width:48px;height:48px;font-size:20px}.avatar.sm{cursor:default;width:24px;height:24px;font-size:11px}.trow.user{grid-template-columns:24px minmax(0,1fr) auto 24px}.trow .chips{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}.pill.owner{background:var(--accent-wash);color:var(--accent-ink)}.logout-row{border-top:1px solid var(--line);margin-top:32px;padding-top:16px}@media (max-width:640px){.grid2,.grid3{grid-template-columns:1fr}.srow{grid-template-columns:1fr;gap:12px}}.input.sm,select.input.sm{height:var(--ctl-sm);border-radius:var(--r-sm);width:auto;max-width:280px;padding:0 8px;font-size:12px}.inline-input.sm{height:var(--ctl-sm);border-radius:var(--r-sm)}.inline-input.sm input{height:22px}.trow .slug{text-overflow:ellipsis;white-space:nowrap;color:var(--ink);text-decoration:none;overflow:hidden}.trow a.slug:hover{color:var(--accent-ink);text-underline-offset:3px;text-decoration:underline}.trow .also{font-family:var(--font);color:var(--ink-3);margin-left:6px;font-size:11px}.trow .t{text-overflow:ellipsis;white-space:nowrap;color:var(--ink);text-decoration:none;overflow:hidden}.trow a.t:hover{color:var(--accent-ink)}.trow .r{text-align:right;white-space:nowrap;justify-self:end}.trow .num{font-variant-numeric:tabular-nums}.trow .acts{justify-content:flex-end;gap:4px;display:flex}.trow .lead.warn{color:var(--warn)}.trow .arrow{color:var(--ink-3);display:grid}.trow .del{color:var(--ink-3)}.trow .del:hover{color:var(--danger);background:var(--danger-wash)}.trow.addr{grid-template-columns:24px minmax(160px,1fr) minmax(0,1.3fr) 144px 56px 56px}.trow.thead{background:var(--bg-2);text-transform:uppercase;letter-spacing:.06em;min-height:32px;color:var(--ink-3);padding-top:4px;padding-bottom:4px;font-size:11px;line-height:16px}.trow.thead:hover{background:var(--bg-2)}.trow.redir{grid-template-columns:24px minmax(120px,.8fr) 16px minmax(0,1.4fr) auto 24px}.trow.redir-add{grid-template-columns:24px minmax(0,1fr) auto auto}.trow.redir-add .btn{opacity:1;pointer-events:auto}.trow.miss{grid-template-columns:24px minmax(0,1fr) auto 24px}.miss-fix{align-items:center;gap:8px;display:flex}@media (max-width:760px){.trow.addr{grid-template-columns:24px minmax(0,1fr) 56px}.trow.addr>:nth-child(3),.trow.addr>:nth-child(4),.trow.addr>:nth-child(5){display:none}.trow.redir{grid-template-columns:24px minmax(0,1fr) 24px}.trow.redir>.arrow,.trow.redir>.t,.trow.redir>.r{display:none}.trow.miss,.trow.redir-add{grid-template-columns:24px minmax(0,1fr)}.miss-fix,.trow.redir-add select,.trow.redir-add .btn{grid-column:2}}.empty-note{border:1px dashed var(--line-2);border-radius:var(--r-lg);color:var(--ink-3);text-align:center;padding:16px;font-size:13px}.lib{grid-template-columns:var(--side-w) minmax(0,1fr);min-height:calc(100vh - var(--top-h));display:grid}.side{top:var(--top-h);height:calc(100vh - var(--top-h));border-right:1px solid var(--line);flex-direction:column;align-self:start;gap:2px;padding:16px 8px;display:flex;position:sticky;overflow:auto}.side .h{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;padding:16px 8px 4px;font-size:11px;line-height:16px}.side a,.side button.it{height:var(--ctl);border-radius:var(--r);color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;flex:none;align-items:center;gap:8px;width:100%;padding:0 8px;text-decoration:none;display:flex}.side a:hover,.side button.it:hover{background:var(--bg-2)}.side svg.ic{color:var(--ink-2)}.side [aria-current=true]{color:var(--accent-ink);font-weight:500;background:var(--accent-wash)!important}.side [aria-current=true] svg.ic{color:var(--accent)}.side .n{color:var(--ink-3);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px;font-weight:400}.side .dot{margin:0 4px}.side .label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rail-foot{gap:8px;margin-top:auto;padding-top:24px;display:grid}.side .mini{border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg);height:auto;min-height:56px;color:var(--ink);text-align:left;font:inherit;cursor:pointer;align-items:center;gap:12px;width:100%;padding:8px 12px 8px 8px;text-decoration:none;transition:border-color .12s,background .12s;display:flex}.side .mini:hover{border-color:var(--line-2);background:var(--bg-2)}.side div.mini{cursor:default}.side div.mini:hover{border-color:var(--line);background:var(--bg)}.mini .txt{flex:1;min-width:0;display:grid}.mini .lab{margin:0;font-size:10px;line-height:16px}.mini b{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;line-height:16px;overflow:hidden}.mini .sub{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:16px;overflow:hidden}.side .mini.warm{background:var(--warn-wash);border-color:#0000}.side .mini.warm:hover{border-color:color-mix(in srgb, var(--warn) 35%, transparent)}.mini.warm .lab,.mini.warm .sub{color:var(--warn)}.side .mini.warm .tile,.side .mini.ok .tile{background:var(--bg)}.side .mini.warm svg.ic{color:var(--warn)}.side .mini.ok{background:var(--ok-wash);border-color:#0000;min-height:48px}.mini.ok .sub,.side .mini.ok svg.ic{color:var(--ok)}.mini.ok .sub{white-space:normal}.side .import{border:1px dashed var(--line-2);border-radius:var(--r-md);background:var(--bg-2);width:100%;color:var(--ink);text-align:left;font:inherit;cursor:pointer;align-items:center;gap:12px;padding:12px;transition:border-color .12s,background .12s,color .12s;display:flex}.import .ring{background:var(--bg);border:1px solid var(--line);width:32px;height:32px;color:var(--ink-2);border-radius:50%;flex:none;place-items:center;transition:inherit;display:grid}.import .txt{gap:2px;min-width:0;display:grid}.import b{font-size:13px;font-weight:600;line-height:16px}.import .sub{color:var(--ink-3);font-size:11px;line-height:16px}.side .import:hover,.side .import.over{border-color:var(--accent);background:var(--accent-wash);color:var(--accent-ink)}.side .import:hover .ring,.side .import.over .ring{border-color:var(--accent);color:var(--accent);background:var(--bg)}.side .import:hover svg.ic{color:var(--accent)}.main{min-width:0;padding:24px 32px 96px}.hello{align-items:flex-end;gap:16px;display:flex}.hello h1{letter-spacing:-.01em;align-items:center;gap:12px;margin:0;font-size:24px;font-weight:650;line-height:32px;display:flex}.hello .s{color:var(--ink-3)}.lib-bar{flex-wrap:wrap;align-items:center;gap:8px;margin:24px 0 8px;display:flex}.lib-bar .menu-wrap .chip{padding-right:8px}.ghd{align-items:center;gap:8px;height:32px;margin-top:24px;font-weight:600;display:flex}.ghd .s{color:var(--ink-3);font-weight:400}.ghd svg.ic{color:var(--ink-3)}.cards{grid-template-columns:repeat(auto-fill,minmax(256px,1fr));gap:16px;margin-top:8px;display:grid}.sc{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg);flex-direction:column;transition:box-shadow .15s,transform .15s,border-color .15s;display:flex;position:relative;overflow:hidden}.sc:hover{box-shadow:var(--shadow);border-color:var(--line-2);transform:translateY(-2px)}.sc .cover{background:var(--bg-2);height:136px;color:inherit;flex-direction:column;gap:4px;padding:16px;text-decoration:none;display:flex}.sc .ey{color:var(--ink-3);align-items:center;gap:6px;min-width:0;padding-right:24px;font-size:11px;line-height:16px;display:flex}.sc .ey span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kind{flex:none;width:6px;height:6px;display:inline-block}.kind.guide{background:var(--accent);border-radius:50%}.kind.notion{background:var(--ink);border-radius:1px}.sc .cover b{letter-spacing:-.01em;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:4px;font-size:16px;font-weight:700;line-height:20px;display:-webkit-box;overflow:hidden}.sc .m{color:var(--ink-3);gap:12px;margin-top:auto;font-size:11px;line-height:16px;display:flex}.sc .m span{align-items:center;gap:4px;display:inline-flex}.sc .m svg.ic{width:12px;height:12px}.flag{color:var(--warn);align-items:center;gap:4px;font-size:11px;line-height:16px;display:flex}.flag svg.ic{width:12px;height:12px}.sc .foot{border-top:1px solid var(--line);align-items:center;gap:8px;height:48px;padding:0 8px 0 16px;display:flex}.acts{align-items:center;gap:4px;margin-left:auto;display:flex}.hover-acts{opacity:0;transition:opacity .12s}.sc:hover .hover-acts,.sc:focus-within .hover-acts,.row:hover .hover-acts,.row:focus-within .hover-acts{opacity:1}@media (hover:none){.hover-acts{opacity:1}}.rows{border-top:1px solid var(--line);margin-top:8px}.pick{border:1.5px solid var(--line-2);background:var(--bg);color:#0000;cursor:pointer;border-radius:6px;place-items:center;width:20px;height:20px;padding:0;transition:opacity .12s,background .12s,border-color .12s;display:grid}.pick svg.ic{width:12px;height:12px}.pick:hover{border-color:var(--accent)}.pick[aria-checked=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.sc .pick{z-index:3;opacity:0;position:absolute;top:12px;right:12px}.sc:hover .pick,.sc .pick:focus-visible,.selecting .sc .pick{opacity:1}.sc.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.sc.on .cover{background:var(--accent-wash)}.row .lead{place-items:center;width:24px;height:24px;display:grid;position:relative}.row .lead .pick{opacity:0;z-index:3;position:absolute;inset:2px}.row:hover .lead .pick,.row .lead .pick:focus-visible,.selecting .row .lead .pick{opacity:1}.row:hover .lead .tile,.selecting .row .lead .tile{opacity:0}.row.on,.row.on:hover{background:var(--accent-wash)}.selecting .sc:hover{transform:none}.selbar{z-index:50;border-radius:var(--r-lg);background:var(--bg);border:1px solid var(--line-2);max-width:calc(100vw - 32px);box-shadow:var(--shadow);align-items:center;gap:4px;padding:8px;animation:.16s ease-out rise;display:flex;position:fixed;bottom:24px;left:50%;overflow-x:auto;transform:translate(-50%)}.selbar .n{white-space:nowrap;color:var(--ink-2);padding:0 8px;font-size:13px}.selbar .n b{color:var(--ink);font-variant-numeric:tabular-nums}.selbar .sep{background:var(--line-2);flex:none;width:1px;height:16px;margin:0 4px}.selbar .btn.sm{height:var(--ctl);padding:0 8px;font-size:13px}.selbar .btn.sm.icon{width:var(--ctl);padding:0}.selecting .main{padding-bottom:128px}body:has(.selbar) .toast{bottom:88px}.menu-field{padding:4px}.menu-field .input{height:var(--ctl-sm);border-radius:var(--r-sm);padding:0 8px;font-size:12px}.menu .grow{flex:1;min-width:0}.row{border-bottom:1px solid var(--line);grid-template-columns:24px minmax(0,1fr) 216px 104px 112px;align-items:center;gap:16px;min-height:64px;padding:8px;display:grid;position:relative}.row:hover{background:var(--bg-2)}.row .t{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;text-decoration:none;display:block;overflow:hidden}.row .t:after{content:"";position:absolute;inset:0}.row .l{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.row .w{color:var(--ink-3);white-space:nowrap;font-size:12px}.row>.pill{justify-self:start}.row .acts,.sc .acts{z-index:2;position:relative}.empty{text-align:center;color:var(--ink-2);padding:64px 24px}.empty .art{width:160px;color:var(--ink-3);margin:0 auto 16px}.empty h2{color:var(--ink);margin:0 0 4px;font-size:16px}.empty p{margin:0 0 16px}.dropzone{z-index:70;background:color-mix(in srgb, var(--accent-wash) 85%, transparent);pointer-events:none;place-items:center;display:grid;position:fixed;inset:0}.dropzone>div{border:2px dashed var(--accent);border-radius:var(--r-xl);color:var(--ink-3);background:var(--bg);text-align:center;box-shadow:var(--shadow);justify-items:center;gap:8px;padding:40px 64px;font-size:13px;display:grid}.dropzone b{color:var(--accent-ink);margin-top:8px;font-size:16px;line-height:24px}.dropzone .ring{background:var(--accent-wash);width:56px;height:56px;color:var(--accent);border-radius:50%;place-items:center;display:grid}.views{color:var(--ink-3);font-variant-numeric:tabular-nums;align-items:center;gap:4px;font-size:12px;display:inline-flex}.views svg.ic{width:12px;height:12px}.menu-wrap{display:inline-flex;position:relative}.menu{z-index:65;overscroll-behavior:contain;background:var(--bg);border:1px solid var(--line);border-radius:var(--r-md);min-width:224px;box-shadow:var(--shadow);padding:4px;position:fixed;overflow:auto}.menu button,.menu a{border-radius:var(--r-sm);text-align:left;cursor:pointer;width:100%;min-height:32px;color:var(--ink);background:0 0;border:0;align-items:center;gap:8px;padding:6px 8px;font-size:13px;text-decoration:none;display:flex}.menu button:hover,.menu a:hover{background:var(--bg-2)}.menu button:disabled{opacity:.5;cursor:default}.menu .danger,.menu .danger svg.ic{color:var(--danger)}.menu hr{border:0;border-top:1px solid var(--line);margin:4px 0}.menu small{color:var(--ink-3);font-size:12px;line-height:16px;display:block}.menu svg.ic{color:var(--ink-2)}.menu .lbl{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;padding:8px 8px 4px;font-size:11px}.menu .menu-who{gap:12px;padding:8px}.menu .menu-who small{text-overflow:ellipsis;max-width:200px;overflow:hidden}.menu-theme{justify-content:space-between;align-items:center;gap:16px;padding:4px 4px 4px 8px;font-size:13px;display:flex}.menu .menu-theme .seg button{border-radius:var(--r);justify-content:center;width:28px;height:28px;min-height:0;padding:0}.menu .menu-theme .seg button:hover{background:0 0}.menu .menu-theme .seg button[aria-pressed=true]{background:var(--bg)}.modal-scrim{z-index:60;background:var(--scrim);place-items:center;padding:24px;animation:.12s ease-out fade;display:grid;position:fixed;inset:0}.modal{background:var(--bg);border-radius:var(--r-xl);width:min(520px,100%);max-height:calc(100vh - 48px);box-shadow:var(--shadow);animation:.16s ease-out rise;overflow:auto}.modal.wide{width:min(680px,100%)}.modal-head{border-bottom:1px solid var(--line);align-items:center;gap:8px;height:56px;padding:0 16px 0 24px;display:flex}.modal-head h2{flex:1;align-items:center;gap:8px;margin:0;font-size:15px;line-height:24px;display:flex}.modal-body{padding:24px}.modal-body>p:first-child{margin-top:0}.modal-body>p{color:var(--ink-2)}.modal-foot{border-top:1px solid var(--line);justify-content:flex-end;gap:8px;padding:16px 24px;display:flex}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(8px)scale(.98)}}.drop{border:1.5px dashed var(--line-2);border-radius:var(--r-lg);text-align:center;color:var(--ink-2);cursor:pointer;place-items:center;gap:8px;padding:32px;display:grid}.drop.over,.drop:hover{border-color:var(--accent);background:var(--accent-wash);color:var(--accent-ink)}.results{gap:8px;margin:16px 0 0;padding:0;list-style:none;display:grid}.results li{align-items:flex-start;gap:8px;font-size:13px;display:flex}.results .err{color:var(--danger)}.toast{z-index:80;background:var(--ink);color:var(--bg);border-radius:var(--r-md);min-height:40px;box-shadow:var(--shadow);align-items:center;gap:12px;padding:8px 8px 8px 16px;font-size:13px;animation:.16s ease-out rise;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toast:not(:has(button)){padding-right:16px}.toast.err{background:var(--danger);color:#fff}.toast button{border-radius:var(--r-sm);height:24px;color:inherit;cursor:pointer;background:#ffffff29;border:0;padding:0 8px;font-size:12px;font-weight:500}.login{background:var(--bg-2);place-items:center;min-height:100vh;padding:24px;display:grid}.login form,.login .box{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-xl);width:min(360px,100%);padding:32px}.login h1 .wordmark{font-size:20px}.login h1{margin:0 0 4px;font-size:20px;line-height:28px}.login p{color:var(--ink-2);margin:0 0 24px}.login .btn{width:100%;height:40px}.login .or{color:var(--ink-3);align-items:center;gap:12px;margin:16px 0;font-size:12px;display:flex}.login .or:before,.login .or:after{content:"";border-top:1px solid var(--line);flex:1}.ed{grid-template-rows:var(--top-h) auto minmax(0,1fr) 32px;height:100vh;display:grid;overflow:hidden}.ed-top{border-bottom:1px solid var(--line);align-items:center;gap:8px;min-width:0;padding:0 16px 0 12px;display:flex}.crumb{color:var(--ink-3);white-space:nowrap;align-items:center;gap:4px;min-width:0;display:flex}.crumb svg.ic{width:14px;height:14px}.crumb .dot{margin-right:4px}.crumb span{text-overflow:ellipsis;overflow:hidden}.ed-title{white-space:nowrap;text-overflow:ellipsis;min-width:48px;font-weight:600;overflow:hidden}.saved{width:24px;height:24px;color:var(--ink-3);flex:none;place-items:center;display:grid}.saved.pending{color:var(--ink-3);opacity:.6}.saved.err{color:var(--danger)}.banner{background:var(--warn-wash);min-height:40px;color:var(--warn);border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:4px 16px;font-size:13px;display:flex}.banner.err{background:var(--danger-wash);color:var(--danger)}.banner .btn{height:24px;padding:0 8px;font-size:12px}.ed-body{grid-template-columns:var(--side-w) minmax(0,1fr);min-height:0;display:grid;position:relative}.ed-body.pv-on{grid-template-columns:var(--side-w) minmax(0,1fr) 6px var(--pv-w,44%)}.ed-foot{border-top:1px solid var(--line);color:var(--ink-3);white-space:nowrap;align-items:center;gap:16px;padding:0 16px;font-size:12px;display:flex;overflow:hidden}.ed-foot button{color:var(--warn);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;font-size:12px;display:inline-flex}.ed-foot svg.ic{width:12px;height:12px}.plan{border-right:1px solid var(--line);min-height:0;padding:16px 8px 48px;overflow:auto}.plan .h{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:4px;padding:0 8px 8px;font-size:11px;line-height:16px;display:flex}.plan .h .btn{margin-left:auto}.plan-item{border-radius:var(--r-sm);width:100%;height:28px;color:var(--ink-2);cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:0;align-items:center;gap:8px;padding:0 8px;font-size:13px;display:flex;position:relative}.plan-item:hover{background:var(--bg-2);color:var(--ink)}.plan-item .n{text-align:right;width:16px;color:var(--ink-3);font-variant-numeric:tabular-nums;flex:none;font-size:12px}.plan-item .t{text-overflow:ellipsis;flex:1;overflow:hidden}.plan-item.top{color:var(--ink);margin-top:8px;font-weight:600}.plan-item.top .n{color:var(--accent);font-weight:600}.plan-item.opt .t{font-style:italic}.plan-item[aria-current=true]{background:var(--accent-wash);color:var(--accent-ink)}.plan-item .w{color:var(--warn);display:grid}.plan-item .w svg.ic{width:12px;height:12px}.plan-item .grip{color:var(--ink-3);opacity:0;cursor:grab;display:grid}.plan-item:hover .grip{opacity:1}.plan-item.dragging{opacity:.4}.plan-item.drop-before:before{content:"";background:var(--accent);border-radius:2px;height:2px;position:absolute;top:-2px;left:8px;right:8px}.plan-item.drop-after:before{content:"";background:var(--accent);border-radius:2px;height:2px;position:absolute;bottom:-2px;left:8px;right:8px}.plan .stats{border-top:1px solid var(--line);color:var(--ink-3);gap:4px;margin:24px 8px 0;padding-top:16px;font-size:12px;line-height:16px;display:grid}.doc{min-width:0;min-height:0;display:grid;position:relative}.cm-host{min-height:0;overflow:hidden}.cm-host .cm-editor{height:100%}.gutter{cursor:col-resize;background:var(--bg);border-left:1px solid var(--line)}.gutter:hover,.gutter.on{background:var(--accent-wash)}.pv{background:var(--bg-2);grid-template-rows:40px minmax(0,1fr);min-width:0;min-height:0;display:grid}.pv-bar{color:var(--ink-3);align-items:center;gap:8px;padding:0 8px 0 16px;font-size:12px;display:flex}.pv-stage{min-height:0;position:relative;overflow:hidden}.pv-stage iframe{background:var(--bg);border:0;width:100%;height:100%;position:absolute;inset:0}.pv-stage iframe.hidden{visibility:hidden}.pv-stage.mobile iframe{width:390px;max-width:calc(100% - 24px);height:calc(100% - 32px);box-shadow:0 0 0 1px var(--line-2), var(--shadow);border-radius:22px;top:16px;left:50%;transform:translate(-50%)}.pv-version{background:var(--accent-wash);height:40px;color:var(--accent-ink);align-items:center;gap:8px;padding:0 8px 0 16px;font-size:12px;display:flex}.sheet{z-index:15;background:var(--bg);border-left:1px solid var(--line);width:400px;max-width:100%;box-shadow:var(--shadow);grid-template-rows:56px minmax(0,1fr);animation:.16s ease-out slide;display:grid;position:absolute;top:0;bottom:0;right:0}@keyframes slide{0%{opacity:0;transform:translate(16px)}}.sheet-tabs{border-bottom:1px solid var(--line);align-items:center;gap:4px;padding:0 8px 0 12px;display:flex}.sheet-tabs [role=tab]{border-radius:var(--r);height:32px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:500;display:inline-flex}.sheet-tabs [role=tab]:hover{color:var(--ink)}.sheet-tabs [role=tab][aria-selected=true]{background:var(--bg-2);color:var(--ink)}.sheet-tabs .badge{background:var(--warn-wash);min-width:16px;height:16px;color:var(--warn);text-align:center;border-radius:8px;padding:0 4px;font-size:11px;line-height:16px}.sheet-body{padding:8px 24px 48px;overflow:auto}.sheet-body h3{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;margin:24px 0 8px;font-size:11px;font-weight:500;line-height:16px}.sheet-body h3:first-child{margin-top:16px}.sheet-body .two{grid-template-columns:1fr 1fr;gap:8px;display:grid}.meta-row{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) 24px;align-items:center;gap:8px;margin-bottom:8px;display:grid}.checklist{gap:0;display:grid}.checklist .school{color:var(--ink-3);margin:8px 0 0;font-size:12px}.checklist label{cursor:pointer;align-items:center;gap:8px;height:32px;display:flex}.checklist input{accent-color:var(--accent);margin:0}.chips-box{min-height:var(--ctl);border:1px solid var(--line-2);border-radius:var(--r);flex-wrap:wrap;align-items:center;gap:4px;padding:3px 4px;display:flex}.chips-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash)}.chips-box input{background:0 0;border:0;outline:0;flex:1;min-width:96px;height:24px;padding:0 4px}.url{align-items:center;gap:4px;margin-top:8px;font-size:12px;display:flex}.url a{color:var(--accent-ink);font-family:var(--mono);text-overflow:ellipsis;white-space:nowrap;text-decoration:none;overflow:hidden}.spark{align-items:flex-end;gap:2px;height:40px;margin-top:8px;display:flex}.spark i{background:var(--accent);opacity:.7;border-radius:2px 2px 0 0;flex:1;min-height:2px}.spark i.z{background:var(--line-2);opacity:1}.hist{margin:0;padding:0;list-style:none}.hist li{border-bottom:1px solid var(--line);grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:48px;padding:8px 0;font-size:13px;display:grid}.hist li.on{background:var(--accent-wash);border-radius:var(--r);margin:0 -8px;padding:8px}.hist .num{font-family:var(--mono);color:var(--ink-3);font-size:12px}.hist .note{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hist .sub{color:var(--ink-3);font-size:12px;line-height:16px;display:block}.hist .pub{color:var(--ok)}.warns{gap:4px;margin:0;padding:0;list-style:none;display:grid}.warns button{text-align:left;background:var(--warn-wash);width:100%;color:var(--warn);border-radius:var(--r);cursor:pointer;border:0;gap:8px;padding:8px 12px;font-size:13px;display:flex}.warns button:disabled{cursor:default}.warns svg.ic{margin-top:2px}.help table{border-collapse:collapse;width:100%;font-size:13px}.help td{border-bottom:1px solid var(--line);vertical-align:top;padding:8px 0}.help td:first-child{color:var(--ink-2);width:40%;padding-right:12px}.help code{font-family:var(--mono);white-space:pre-wrap;color:var(--ink);font-size:12px}.help button.ins{text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.help button.ins:hover code{color:var(--accent-ink)}.help p{color:var(--ink-2);font-size:13px}.chg{gap:2px;max-height:240px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.chg li{min-height:28px;color:var(--ink-2);align-items:center;gap:8px;font-size:13px;display:flex}.chg i{border-radius:var(--r-sm);flex:none;place-items:center;width:20px;height:20px;font-size:12px;font-style:normal;font-weight:600;display:grid}.chg .added i{background:var(--ok-wash);color:var(--ok)}.chg .removed i{background:var(--danger-wash);color:var(--danger)}.chg .changed i{background:var(--bg-2);color:var(--ink-2)}.done-art{background:var(--ok-wash);width:48px;height:48px;color:var(--ok);border-radius:50%;place-items:center;margin:0 auto 16px;animation:.3s cubic-bezier(.3,1.6,.5,1) pop;display:grid}.done-art svg.ic{width:24px;height:24px}@keyframes pop{0%{opacity:0;transform:scale(.4)}}.palette{z-index:65;background:var(--bg);border:1px solid var(--line-2);border-radius:var(--r-lg);width:440px;max-width:calc(100vw - 32px);box-shadow:var(--shadow);grid-template-rows:auto minmax(0,1fr) auto;max-height:min(480px,100vh - 32px);animation:.12s ease-out rise;display:grid;position:fixed;overflow:hidden}.palette input{border:0;border-bottom:1px solid var(--line);background:0 0;outline:0;height:48px;padding:0 16px;font-size:14px}.palette .lst{padding:4px;overflow:auto}.palette .sec{color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;padding:12px 12px 4px;font-size:11px;line-height:16px}.palette .it{border-radius:var(--r);cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:24px minmax(0,1fr) 160px;align-items:center;gap:12px;width:100%;min-height:40px;padding:4px 8px;display:grid}.palette .it[aria-selected=true]{background:var(--accent-wash)}.palette .it svg.ic{color:var(--ink-2)}.palette .it small{color:var(--ink-3);font-size:12px;line-height:16px;display:block}.palette .ex{font:11px/16px var(--mono);color:var(--ink-3);background:var(--bg-2);border-radius:var(--r-sm);white-space:pre;text-overflow:ellipsis;max-height:40px;padding:4px 6px;overflow:hidden}.palette .ft{border-top:1px solid var(--line);color:var(--ink-3);justify-content:space-between;gap:8px;padding:8px 12px;font-size:11px;display:flex}.palette .none{text-align:center;color:var(--ink-3);padding:24px}.pages{flex-wrap:wrap;gap:4px;display:flex}.pages button{height:var(--ctl);border-radius:var(--r);border:1px solid var(--line-2);background:var(--bg);color:var(--ink-2);cursor:pointer;padding:0 12px;font-size:13px;font-weight:500}.pages button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.bigloc{grid-template-columns:288px minmax(0,1fr);align-items:start;gap:24px;margin-top:16px;display:grid}.bigloc svg{width:288px;height:180px;display:block}.lz{fill:var(--bg-3)}.lz.on{fill:var(--accent)}.lz-frame{fill:var(--bg-2);stroke:var(--line-2)}.lz-dot{fill:var(--line-2)}.lz-dot.on{fill:var(--accent)}.zz{cursor:pointer;transition:fill .12s}.zz:hover{fill:var(--line-2)}.zz.on:hover{fill:var(--accent-ink)}.zl label{border-radius:var(--r);cursor:pointer;height:32px;color:var(--ink-2);align-items:center;gap:8px;padding:0 8px;display:flex}.zl label:hover{background:var(--bg-2)}.zl input{accent-color:var(--accent);margin:0}.outline-src{font:12px/20px var(--mono);background:var(--bg-2);border-radius:var(--r-md);color:var(--ink-2);white-space:pre;padding:8px 12px;overflow-x:auto}.keycap{border:1.5px dashed var(--line-2);border-radius:var(--r-lg);height:56px;font:600 18px var(--mono);color:var(--ink);cursor:pointer;outline:0;justify-content:center;align-items:center;gap:8px;display:flex}.keycap:focus{border-color:var(--accent);background:var(--accent-wash)}.keycap.empty{font:400 13px var(--font);color:var(--ink-3)}.cm-editor{background:var(--bg);font-size:13px}.cm-editor .cm-scroller{font-family:var(--mono);line-height:24px}.cm-editor .cm-content{caret-color:var(--accent);padding:16px 0 40vh}.cm-editor .cm-line{padding:0 24px 0 8px}.cm-editor .cm-gutters{background:var(--bg);color:var(--ink-3);font-family:var(--mono);border-right:0;font-size:11px}.cm-editor .cm-activeLine{background:color-mix(in srgb, var(--bg-2) 70%, transparent)}.cm-editor .cm-activeLineGutter{color:var(--ink);background:0 0}.cm-editor.cm-focused{outline:none}.cm-editor .cm-selectionBackground,.cm-editor.cm-focused .cm-selectionBackground{background:var(--accent-wash)!important}.cm-editor .cm-cursor{border-left:1.5px solid var(--accent)}.cm-editor .cm-foldGutter .cm-gutterElement{width:20px;color:var(--ink-3);cursor:pointer;place-items:center;display:grid}.cm-editor .cm-foldGutter .cm-gutterElement:hover{color:var(--ink)}.cm-fold-mark{opacity:0;place-items:center;width:20px;height:24px;transition:opacity .12s,transform .12s;display:grid}.cm-fold-mark.closed{opacity:1;transform:rotate(-90deg)}.cm-editor .cm-gutterElement.hot .cm-fold-mark,.cm-editor .cm-foldGutter .cm-gutterElement:hover .cm-fold-mark{opacity:1}.cm-foldPlaceholder,.cm-fold-pill{background:var(--bg-2);height:20px;color:var(--ink-3);font:500 11px/20px var(--font);cursor:pointer;vertical-align:1px;border:0;border-radius:999px;align-items:center;gap:6px;margin:0 4px;padding:0 8px;display:inline-flex}.cm-fold-pill:hover{background:var(--bg-3);color:var(--ink)}.cm-tooltip{border-radius:var(--r-md);box-shadow:var(--shadow);overflow:hidden;border:1px solid var(--line)!important;background:var(--bg)!important}.cm-tooltip-autocomplete ul li{font-family:var(--font);font-size:13px;line-height:24px;padding:4px 12px!important}.cm-tooltip-autocomplete ul li[aria-selected]{background:var(--accent-wash)!important;color:var(--ink)!important}.cm-completionDetail{color:var(--ink-3);margin-left:12px;font-style:normal!important}.cm-completionInfo{font:12px/16px var(--mono);white-space:pre;color:var(--ink-2);padding:8px 12px!important}.cm-panels{background:var(--bg)!important;border-color:var(--line)!important}.cm-diagnostic{font-family:var(--font);font-size:13px}.cm-tooltip.cm-selbar{gap:2px;padding:2px;display:flex;background:var(--ink)!important;border-radius:var(--r)!important;border:0!important}.cm-selbar button{border-radius:var(--r-sm);height:28px;color:var(--bg);font:500 12px var(--font);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0 8px;display:inline-flex}.cm-selbar button:hover{background:color-mix(in srgb, var(--bg) 18%, transparent)}.cm-selbar svg.ic{width:14px;height:14px}.tk-block{color:var(--accent-ink);font-weight:600}.tk-where{color:var(--accent-ink)}.tk-expect{color:var(--ok)}.tk-term{color:var(--accent-ink);background:var(--accent-wash);border-radius:3px}.tk-brace{color:var(--ink-2);background:var(--bg-2);border-radius:3px}.tk-side{color:var(--warn)}.tk-h{color:var(--ink);font-weight:650}.tk-h2{font-size:1.08em}.tk-cond{color:var(--warn);font-weight:500}.tk-fm,.tk-fm *{color:var(--ink-3)!important;font-weight:400!important;font-size:inherit!important}.tk-code{color:var(--ink-2)}.cm-head-wrap{padding:8px 0 16px}.cm-head{border-radius:var(--r-lg);background:var(--bg-2);font-family:var(--font);cursor:default;white-space:normal;align-items:center;gap:16px;margin:0;padding:16px;display:flex}.cm-head .ey{color:var(--ink-3);font-size:12px;line-height:16px}.cm-head .t{letter-spacing:-.01em;color:var(--ink);font-size:24px;font-weight:700;line-height:32px}.cm-head .ld{color:var(--ink-2);margin-top:4px;font-size:14px;line-height:20px}.cm-head .meta{color:var(--ink-3);flex-wrap:wrap;gap:4px 16px;margin-top:8px;font-size:12px;line-height:16px;display:flex}.cm-head>div{flex:1;min-width:0}.live .cm-scroller{font-family:var(--font);padding-left:max(0px,50% - 400px);line-height:24px}.live .cm-content{max-width:776px;padding:24px 0 40vh;font-size:15px}.live .cm-line{padding:0 48px 0 32px}.live .cm-gutters,.live .cm-activeLine{background:0 0}.live .cm-line:has(>br:only-child){line-height:12px}.live .tk-h,.live .tk-h2{font-size:inherit}.live .lv-h2{letter-spacing:-.01em;color:var(--ink);font-size:22px;font-weight:700;line-height:32px;padding-top:24px!important}.live .lv-h3{color:var(--ink);font-size:17px;font-weight:600;line-height:28px;padding-top:16px!important}.live .lv-h4{color:var(--ink);font-size:15px;font-weight:600}.live .lv-h3.lv-step{border-top:1px solid var(--line)}.lv-num{vertical-align:2px;font-variant-numeric:tabular-nums;place-items:center;margin-right:12px;font-weight:600;display:inline-grid}.lv-num.part{color:var(--ink-3);min-width:16px;font-size:22px}.lv-num.step{background:var(--ink);width:24px;height:24px;color:var(--bg);vertical-align:1px;border-radius:50%;font-size:12px;line-height:24px}.lv-num.sec{color:var(--ink-3)}.live .lv-lede{color:var(--ink-2);font-size:16px}.live .lv-mark{color:var(--ink-3);font-family:var(--mono);font-size:12px}.live .lv-cond{color:var(--warn);font-weight:500}.live .lv-expect{color:var(--ok)}.lv-check{vertical-align:-3px;width:20px;color:var(--ok);place-items:center;margin-right:8px;display:inline-grid}.live .lv-chip{font-family:var(--mono);background:var(--bg-2);border-radius:4px;padding:2px 4px;font-size:12.5px}.live .lv-path{background:var(--bg-2);border-radius:4px;padding:2px 6px;font-weight:500}.live .lv-key{font-family:var(--mono);border:1px solid var(--line-2);border-bottom-width:2px;border-radius:4px;padding:0 4px;font-size:12px}.live .lv-term{border-bottom:1.5px dotted var(--accent);color:inherit}.live .lv-en{color:var(--ink-2);font-style:italic}.live .lv-tagm{border:1px solid var(--line-2);color:var(--ink-2);border-radius:999px;padding:1px 8px;font-size:12px}.live .lv-side{color:var(--warn);font-size:13px}.live .lv-code{font-family:var(--mono);background:var(--bg-2);border-radius:4px;padding:2px 4px;font-size:12.5px}.live .lv-fence{font-family:var(--mono);color:var(--ink-2);background:var(--bg-2);font-size:12.5px}.live .lv-table{font-family:var(--mono);color:var(--ink-2);font-size:12.5px}.live .lv-blk{background:var(--blk-bg,var(--bg-2));border-left:3px solid var(--blk-line,var(--line-2))}.live .lv-blk-open{border-top-left-radius:var(--r);border-top-right-radius:var(--r);padding-top:4px!important}.live .lv-blk-close{border-bottom-left-radius:var(--r);border-bottom-right-radius:var(--r);font-size:0;line-height:12px}.lv-kind-attention,.lv-kind-irreversible{--blk-bg:var(--warn-wash);--blk-line:var(--warn)}.lv-kind-irreversible{--blk-bg:var(--danger-wash);--blk-line:var(--danger)}.lv-kind-note,.lv-kind-essentiel{--blk-bg:var(--accent-wash);--blk-line:var(--accent)}.lv-kind-astuce{--blk-bg:var(--ok-wash);--blk-line:var(--ok)}.lv-blk-label{font:600 11px/24px var(--font);text-transform:uppercase;letter-spacing:.06em;color:var(--blk-line,var(--ink-3));align-items:center;gap:8px;display:inline-flex}.lv-blk-label i{text-transform:none;letter-spacing:0;color:var(--ink-2);font-size:13px;font-style:normal;font-weight:400}:is(.live .cm-line:has(>.lv-where),.live .cm-line:has(>.lv-fig),.live .cm-line:has(>.lv-imgw)){padding-top:4px;padding-bottom:4px}.lv-where{vertical-align:top;border:1px solid var(--line);border-radius:var(--r-lg);cursor:pointer;width:100%;font-family:var(--font);white-space:normal;align-items:center;gap:16px;margin:0;padding:8px;transition:border-color .12s;display:inline-flex}.lv-where:hover{border-color:var(--accent)}.lv-where svg{flex:none;width:96px;height:60px}.lv-where .lb{color:var(--ink-3);font-size:12px;line-height:16px}.lv-where .p{color:var(--ink);font-size:14px;font-weight:500}.lv-where .p i{color:var(--ink-3);margin:0 4px;font-style:normal}.lv-where>div{flex:1;min-width:0}.lv-where .btn{flex:none}.lv-img{border-radius:var(--r);border:1px solid var(--line);max-width:100%;max-height:320px;margin:0;display:block}.lv-img-cap{color:var(--ink-3);font-size:12px;line-height:16px;display:block}.live .cm-line.lv-plusline{padding-top:8px;padding-bottom:8px}.live .cm-line{transition:background-color .18s ease-out}.live .cm-line.lv-active:not(.lv-blk):not(.lv-h2):not(.lv-h3):not(.lv-h4):not(.lv-plusline){background:color-mix(in srgb, var(--bg-2) 75%, transparent)}.live .cm-line.lv-active.lv-a1{border-top-left-radius:var(--r);border-top-right-radius:var(--r)}.live .cm-line.lv-active.lv-a2{border-bottom-left-radius:var(--r);border-bottom-right-radius:var(--r)}.live .lv-blk.lv-active{background:color-mix(in srgb, var(--blk-bg,var(--bg-2)) 88%, var(--ink) 4%)}.live .lv-syn{color:var(--ink-3)}.live .lv-blk-close.lv-raw,.live .lv-blk-close.lv-raw .lv-mark{font-size:11px;line-height:12px}.live .cm-line.lv-tr{padding-top:0;padding-bottom:0}.lv-row{vertical-align:top;border-bottom:1px solid var(--line);width:100%;font-family:var(--font);white-space:normal;cursor:text;column-gap:16px;padding:8px 0;font-size:14px;line-height:20px;display:inline-grid}.lv-row.th{color:var(--ink-2);border-bottom:0;padding-bottom:6px;font-size:12px;font-weight:600;line-height:16px}.lv-cell{overflow-wrap:anywhere;min-width:0}.lv-row b{font-weight:650}.live .cm-line.lv-tsep{background:var(--line-2);background-clip:content-box;height:1px;padding-top:0;padding-bottom:0;font-size:0;line-height:1px}.live .lv-figline .cm-foldPlaceholder,.live .lv-figline .cm-fold-pill{display:none}.lv-fig{vertical-align:top;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg);cursor:pointer;width:100%;font-family:var(--font);white-space:normal;align-items:center;gap:12px;margin:0;padding:8px;transition:border-color .12s;display:inline-flex}.lv-fig:hover{border-color:var(--accent)}.lv-fig .sw{border-radius:var(--r-sm);border:1px solid var(--line);flex:none;width:96px;height:40px;display:flex;overflow:hidden}.lv-fig .sw i{flex:1}.lv-fig .tile{background:var(--bg-2);width:40px;height:40px;color:var(--ink-2)}.lv-fig .tile svg.ic{width:16px;height:16px}.lv-fig .tx{flex:1;min-width:0;display:grid}.lv-fig .lb{color:var(--ink-3);font-size:12px;line-height:16px}.lv-fig .cap{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:20px;overflow:hidden}.lv-fig .btn{flex:none}.lv-imgw{vertical-align:top;cursor:pointer;max-width:100%;display:inline-block;position:relative}.lv-img-edit{border-radius:var(--r-sm);border:1px solid var(--line-2);background:var(--bg);height:24px;color:var(--ink);font:500 12px/1 var(--font);opacity:0;align-items:center;gap:4px;padding:0 8px;transition:opacity .12s;display:inline-flex;position:absolute;top:12px;left:8px}.lv-img-edit svg.ic{width:12px;height:12px}.lv-imgw:hover .lv-img-edit{opacity:1}.lv-imgw:hover .lv-img{border-color:var(--accent)}.modal.fig-modal{width:min(960px,100%)}.modal.fig-modal.edit{width:min(1240px,100%)}.fig-modal .modal-body{padding:0}.fig-frame{background:var(--bg);border:0;width:100%;display:block}.fig-edit{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);height:min(70vh,760px);display:grid}.fig-src{border-right:1px solid var(--line);flex-direction:column;min-height:0;padding:16px;display:flex}.fig-src .grow-field{flex-direction:column;flex:1;min-height:0;margin:0;display:flex}.fig-src textarea{resize:none;white-space:pre;tab-size:2;flex:1;min-height:0;font-size:12px;line-height:18px;overflow:auto}.fig-live{min-height:0;overflow:auto}.img-edit{grid-template-columns:240px minmax(0,1fr);gap:24px;display:grid}.img-pv{align-content:start;justify-items:start;gap:8px;margin:0;display:grid}.img-pv img{object-fit:contain;border-radius:var(--r);border:1px solid var(--line);background:var(--bg-2);width:100%;max-height:240px}@media (max-width:760px){.fig-edit{grid-template-columns:1fr;height:auto}.fig-src{border-right:0}.img-edit{grid-template-columns:1fr}}.lv-plus{border:1px solid var(--line-2);background:var(--bg);width:24px;height:24px;color:var(--ink-2);font:inherit;cursor:pointer;z-index:3;border-radius:50%;place-items:center;margin:0;padding:0;line-height:0;transition:color .12s,border-color .12s,background .12s;display:grid;position:absolute;top:8px;left:0}.lv-plus .ic{width:14px;height:14px;display:block}.lv-plus:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-wash)}.lv-hint{color:var(--ink-3);pointer-events:none}@media (max-width:1100px){.ed-body,.ed-body.pv-on{grid-template-columns:minmax(0,1fr)}.ed-body .plan,.ed-body .gutter,.ed-body .pv,.ed-top .crumb{display:none}}@media (max-width:760px){.ed-top .seg button{padding:0 6px}.ed-top .seg button svg.ic+*{display:none}.ed-top .btn.primary{padding:0 8px}}@media (max-width:900px){.lib{grid-template-columns:1fr}.side{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;height:auto;padding:8px;position:static;overflow-x:auto}.side .h,.side .rail-foot{display:none}.side a,.side button.it{flex:none;width:auto}.main{padding:16px 16px 64px}.row{grid-template-columns:24px minmax(0,1fr) auto}.row .w,.row>.pill,.s-search{display:none}.s-brand{width:auto}.s-nav a span{display:none}.sheet{width:100%}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
