:root{--bg:#f6f7f9;--card:#fff;--text:#14161a;--muted:#6a7280;--line:#e3e6eb;--hover:#f0f2f5;--accent:#4f46e5;--accent-text:#fff;--danger:#b42318;--danger-bg:#fee4e2;--ok:#067647;--ok-bg:#dcfae6;--warn:#93370d;--warn-bg:#fef0c7;--info:#175cd3;--info-bg:#d1e9ff;--radius:12px;--shadow:0 4px 12px #4f46e52e;--shadow-lg:0 12px 32px #0f172a2e;--t-indigo-bg:#e0e7ff;--t-indigo-fg:#4338ca;--t-sky-bg:#e0f2fe;--t-sky-fg:#0369a1;--t-violet-bg:#ede9fe;--t-violet-fg:#6d28d9;--t-amber-bg:#fef3c7;--t-amber-fg:#b45309;--t-rose-bg:#ffe4e6;--t-rose-fg:#be123c;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#0e1013;--card:#171a1f;--text:#eceef2;--muted:#98a1b0;--line:#262b33;--hover:#1e2229;--accent:#6366f1;--danger:#fda29b;--danger-bg:#3a1613;--ok:#75e0a7;--ok-bg:#0f2a1e;--warn:#fec84b;--warn-bg:#3a2a0a;--info:#84caff;--info-bg:#10243d;--t-indigo-bg:#1e1b4b;--t-indigo-fg:#a5b4fc;--t-sky-bg:#082f49;--t-sky-fg:#7dd3fc;--t-violet-bg:#2e1065;--t-violet-fg:#c4b5fd;--t-amber-bg:#422006;--t-amber-fg:#fcd34d;--t-rose-bg:#4c0519;--t-rose-fg:#fda4af;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){--bg:#0e1013;--card:#171a1f;--text:#eceef2;--muted:#98a1b0;--line:#262b33;--hover:#1e2229;--accent:#6366f1;--danger:#fda29b;--danger-bg:#3a1613;--ok:#75e0a7;--ok-bg:#0f2a1e;--warn:#fec84b;--warn-bg:#3a2a0a;--info:#84caff;--info-bg:#10243d;--t-indigo-bg:#1e1b4b;--t-indigo-fg:#a5b4fc;--t-sky-bg:#082f49;--t-sky-fg:#7dd3fc;--t-violet-bg:#2e1065;--t-violet-fg:#c4b5fd;--t-amber-bg:#422006;--t-amber-fg:#fcd34d;--t-rose-bg:#4c0519;--t-rose-fg:#fda4af;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font:15px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1{margin:0;font-size:22px}h2{margin:0 0 10px;font-size:16px}.muted{color:var(--muted)}.small{font-size:13px}.spacer{flex:1}.num{text-align:right}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px}label{gap:6px;font-size:14px;font-weight:500;display:grid}label.check{align-items:center;gap:8px;font-weight:400;display:flex}input,select,textarea{border:1px solid var(--line);background:var(--bg);color:var(--text);font:inherit;border-radius:8px;width:100%;min-width:0;padding:9px 11px}input[type=checkbox]{width:auto}textarea{resize:vertical}input:disabled,select:disabled,textarea:disabled{opacity:.65}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}button,.btn{background:var(--accent);color:var(--accent-text);font:inherit;cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:8px;padding:9px 14px;font-weight:600;display:inline-block}.btn:hover{text-decoration:none}button:disabled{opacity:.55;cursor:default}button.ghost{color:var(--text);border-color:var(--line);background:0 0}button.ghost:hover:not(:disabled){background:var(--hover)}button.danger{background:var(--danger);color:#fff}.danger-text{color:var(--danger)!important}.error{background:var(--danger-bg);color:var(--danger);border-radius:8px;margin:0 0 12px;padding:10px 12px;font-size:14px}.notice{background:var(--info-bg);color:var(--info);border-radius:8px;margin:0 0 12px;padding:10px 12px;font-size:14px}.center{place-items:center;min-height:100vh;padding:16px;display:grid}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;gap:14px;width:100%;max-width:380px;padding:28px;display:grid}.card.wide{max-width:560px;max-height:92vh;overflow:auto}.app{--side-w:248px;grid-template-columns:var(--side-w) minmax(0, 1fr);min-height:100vh;transition:grid-template-columns .2s;display:grid}.app.collapsed{--side-w:72px}.side{background:var(--card);border-right:1px solid var(--line);z-index:40;flex-direction:column;gap:8px;height:100vh;padding:16px 12px;display:flex;position:sticky;top:0;overflow:hidden auto}.side-head{align-items:center;gap:12px;padding:4px 6px 12px;display:flex}.logo{color:#fff;width:40px;height:40px;box-shadow:var(--shadow);background:linear-gradient(135deg,#4f46e5,#7c3aed);border-radius:12px;flex:none;place-items:center;display:grid}.brand-text{white-space:nowrap;line-height:1.2;display:grid}.brand-text strong{letter-spacing:.22em;font-size:13px}.brand-text span{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:11px}.side nav{flex:1;align-content:start;gap:14px;display:grid}.nav-group{gap:2px;display:grid}.nav-label{text-transform:uppercase;letter-spacing:.14em;color:var(--muted);white-space:nowrap;height:24px;padding:4px 12px;font-size:11px;font-weight:700;overflow:hidden}.side nav a,.collapse-btn{border-radius:var(--radius);color:var(--muted);white-space:nowrap;align-items:center;gap:12px;padding:10px 12px;font-weight:500;display:flex}.side nav a svg,.collapse-btn svg{flex:none}.side nav a:hover,.collapse-btn:hover:not(:disabled){background:var(--hover);color:var(--text);text-decoration:none}.side nav a.active{background:var(--accent);color:var(--accent-text);box-shadow:var(--shadow);font-weight:600}.collapse-btn{background:0 0;border:0;width:100%;font-size:13px}.app.collapsed .nav-text,.app.collapsed .brand-text{display:none}.app.collapsed .nav-label{border-top:1px solid var(--line);height:8px;margin:4px 8px 0;padding:4px 0;font-size:0}.app.collapsed .nav-group:first-child .nav-label{border-top:0}.app.collapsed .side nav a,.app.collapsed .collapse-btn{justify-content:center;padding:10px 0}.app.collapsed .side-head{justify-content:center;padding:4px 0 12px}.app .drawer-close,.app .menu-btn,.app .scrim{display:none}.main{flex-direction:column;min-width:0;display:flex}.topbar{z-index:30;background:color-mix(in srgb, var(--card) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);align-items:center;gap:12px;height:64px;padding:0 24px;display:flex;position:sticky;top:0}.page-title{min-width:0;line-height:1.25;display:grid}.page-title strong{white-space:nowrap;text-overflow:ellipsis;font-size:17px;overflow:hidden}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-size:11px;font-weight:700}.icon-btn{background:var(--hover);width:38px;height:38px;color:var(--text);border-radius:var(--radius);border:0;place-items:center;padding:0;display:inline-grid}.icon-btn:hover:not(:disabled){background:var(--line)}.user{position:relative}.user-btn{background:var(--hover);color:var(--text);border:0;border-radius:999px;align-items:center;gap:10px;padding:4px 10px 4px 4px;font-weight:400;display:flex}.user-btn:hover{background:var(--line)}.avatar{background:var(--accent);width:32px;height:32px;color:var(--accent-text);border-radius:50%;place-items:center;font-size:14px;font-weight:700;display:grid}.user-text{text-align:left;font-size:13px;line-height:1.2;display:grid}.user-text span{color:var(--muted);font-size:12px}.menu{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);min-width:260px;box-shadow:var(--shadow-lg);z-index:60;gap:2px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.menu-head{border-bottom:1px solid var(--line);margin-bottom:4px;padding:8px 10px 10px;display:grid}.menu a,.menu button{color:var(--text);text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;width:100%;padding:9px 10px;font-weight:500;display:flex}.menu a:hover,.menu button:hover{background:var(--hover);text-decoration:none}.content{width:100%;min-width:0;max-width:1400px;padding:24px 24px 90px}.page-head{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.back{font-size:14px}@media (width<=900px){.app,.app.collapsed{--side-w:0px;grid-template-columns:minmax(0,1fr)}.side{width:280px;max-width:86vw;box-shadow:var(--shadow-lg);transition:transform .25s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.app.drawer-open .side{transform:none}.app.collapsed .nav-text,.app.collapsed .brand-text{display:revert}.app.collapsed .brand-text{display:grid}.app.collapsed .nav-label{border:0;height:24px;margin:0;padding:4px 12px;font-size:11px}.app.collapsed .side nav a,.app.collapsed .collapse-btn{justify-content:flex-start;padding:10px 12px}.app.collapsed .side-head{justify-content:flex-start;padding:4px 6px 12px}.collapse-btn{display:none}.app .drawer-close{margin-left:auto;display:inline-grid}.app .menu-btn{display:inline-grid}.app .scrim{z-index:35;opacity:0;pointer-events:none;background:#00000073;transition:opacity .25s;display:block;position:fixed;inset:0}.app.drawer-open .scrim{opacity:1;pointer-events:auto}.topbar{padding:0 12px}.user-text{display:none}.user-btn{padding:4px}.user-btn svg{display:none}.content{padding:16px 12px 90px}}.stats{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin-top:16px;display:grid}.stat{background:var(--card);border:1px solid var(--line);color:var(--text);border-radius:12px;padding:16px;display:block}a.stat:hover{border-color:var(--accent);text-decoration:none}.stat-value{font-size:28px;font-weight:700;line-height:1.2}.filters{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.filters input[type=search]{flex:240px;width:auto}.filters select{width:auto}.bulkbar{background:var(--card);border:1px solid var(--accent);z-index:5;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;padding:10px 12px;display:flex;position:sticky;top:76px}.bulkbar select{width:auto}.selectall{margin-bottom:10px}.empty{text-align:center;padding:40px 0}.grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;display:grid}.wcard{background:var(--card);border:1px solid var(--line);border-radius:12px;flex-direction:column;display:flex;position:relative;overflow:hidden}.wcard.selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.wcard .pick{z-index:2;width:18px;height:18px;position:absolute;top:8px;left:8px}.thumb{aspect-ratio:9/16;background:var(--hover);display:block;position:relative}.thumb img{object-fit:cover;width:100%;height:100%;display:block}.noimg{height:100%;color:var(--muted);place-items:center;font-size:13px;display:grid}.star{color:#f5b301;text-shadow:0 1px 2px #00000080;font-size:18px;position:absolute;top:6px;right:8px}.meta{gap:4px;padding:10px;display:grid}.title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.clip{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.badges{flex-wrap:wrap;gap:4px;display:flex}.badge{background:var(--hover);color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:1px 8px;font-size:12px;font-weight:500}.badge.s-published{background:var(--ok-bg);color:var(--ok);border-color:#0000}.badge.s-draft,.badge.s-archived{background:var(--hover)}.badge.s-scheduled,.badge.s-review{background:var(--info-bg);color:var(--info);border-color:#0000}.badge.a-paid{background:var(--warn-bg);color:var(--warn);border-color:#0000}.pager{justify-content:center;align-items:center;gap:14px;margin:22px 0;display:flex}.tablewrap{background:var(--card);border:1px solid var(--line);border-radius:12px;overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:10px 12px}th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:12px;font-weight:600}tr:last-child td{border-bottom:0}td.cov{width:52px}td.cov img{object-fit:cover;background:var(--hover);border-radius:8px;width:40px;height:40px;display:block}td.actions{white-space:nowrap;text-align:right}.modal{z-index:50;background:#00000080;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.row{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.row>label{flex:140px}.row.end{justify-content:flex-end}.editor{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:16px;display:grid}@media (width<=1000px){.editor{grid-template-columns:1fr}}.col{gap:16px;display:grid}.panel{background:var(--card);border:1px solid var(--line);border-radius:12px;align-content:start;gap:12px;padding:16px;display:grid}.panel h2{margin:0}.assets{gap:12px;display:grid}.asset{grid-template-columns:72px 1fr;align-items:center;gap:12px;display:grid}.aimg{aspect-ratio:9/16;background:var(--hover);border:1px solid var(--line);border-radius:8px;place-items:center;width:72px;display:grid;overflow:hidden}.aimg img{object-fit:cover;width:100%;height:100%}.preset{border-bottom:1px dashed var(--line);gap:8px;padding-bottom:8px;display:grid}.stack{gap:8px;display:grid}.sched{grid-template-columns:1fr auto;gap:8px;display:grid}.checklist{gap:6px;max-height:260px;display:grid;overflow:auto}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{background:var(--hover);border:1px solid var(--line);border-radius:999px;align-items:center;gap:4px;padding:2px 4px 2px 10px;font-size:13px;display:inline-flex}.chip button{color:var(--muted);background:0 0;border:0;padding:0 6px;font-size:16px;line-height:1}.savebar{left:var(--side-w,0px);background:var(--card);border-top:1px solid var(--line);z-index:10;align-items:center;gap:10px;padding:12px 24px;transition:left .2s;display:flex;position:fixed;bottom:0;right:0}@media (width<=900px){.savebar{padding:12px}}.stats{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));margin-top:0}.stat{align-content:start;gap:2px;display:grid;box-shadow:0 1px 2px #0f172a0a}a.stat{transition:border-color .15s,transform .15s}a.stat:hover{transform:translateY(-2px)}.stat.skeleton{background:linear-gradient(90deg, var(--card), var(--hover), var(--card));background-size:200% 100%;min-height:120px;animation:1.2s infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.badge-ico{border-radius:12px;place-items:center;width:40px;height:40px;margin-bottom:8px;display:grid}.badge-ico.sm{border-radius:10px;width:32px;height:32px;margin:0}.t-indigo{background:var(--t-indigo-bg);color:var(--t-indigo-fg)}.t-sky{background:var(--t-sky-bg);color:var(--t-sky-fg)}.t-violet{background:var(--t-violet-bg);color:var(--t-violet-fg)}.t-amber{background:var(--t-amber-bg);color:var(--t-amber-fg)}.t-rose{background:var(--t-rose-bg);color:var(--t-rose-fg)}.seg{background:var(--hover);border-radius:999px;height:6px;margin-top:8px;display:flex;overflow:hidden}.seg i{display:block}.btn{align-items:center;gap:6px;display:inline-flex}.btn.ghost-btn{color:var(--text);border-color:var(--line);background:0 0}.btn.ghost-btn:hover{background:var(--hover)}.panel.strip{margin-top:16px}.two{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.two.one{grid-template-columns:1fr}@media (width<=900px){.two{grid-template-columns:1fr}}.panel-head{align-items:center;gap:10px;display:flex}.panel-head h2{font-size:15px}.thumbs{scroll-snap-type:x proximity;grid-auto-columns:120px;grid-auto-flow:column;gap:12px;padding-bottom:6px;display:grid;overflow-x:auto}.tcard{color:var(--text);scroll-snap-align:start;gap:4px;min-width:0;display:grid}.tcard:hover{text-decoration:none}.tcard>:first-child,.mini{aspect-ratio:9/16;background:var(--hover);border:1px solid var(--line);border-radius:10px;place-items:center;display:grid;overflow:hidden}.tcard img,.mini img{object-fit:cover;width:100%;height:100%;display:block}.tcard:hover>:first-child{border-color:var(--accent)}.tname{font-size:13px;font-weight:600;display:block}.rows{margin:0;padding:0;list-style:none;display:grid}.row-link{color:var(--text);border-bottom:1px solid var(--line);border-radius:8px;align-items:center;gap:12px;min-width:0;padding:9px 6px;display:flex}.rows li:last-child .row-link{border-bottom:0}a.row-link:hover{background:var(--hover);text-decoration:none}.row-link .grow{flex:1;min-width:0;display:grid}.when{white-space:nowrap}.mini{border-radius:6px;flex:none;width:34px}.empty-s{text-align:center;margin:0;padding:18px 0}.seg-tabs{background:var(--hover);border-radius:10px;gap:2px;margin-bottom:12px;padding:3px;display:inline-flex}.seg-tabs button{color:var(--muted);background:0 0;border-radius:8px;align-items:center;gap:6px;padding:6px 14px;font-weight:600;display:inline-flex}.seg-tabs button.on{background:var(--card);color:var(--text);box-shadow:0 1px 2px #0f172a1f}.toolbar{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;padding:10px;display:flex}.toolbar select{width:auto}.searchbox{flex:240px;align-items:center;display:flex;position:relative}.searchbox svg{color:var(--muted);pointer-events:none;position:absolute;left:11px}.searchbox input{padding-left:34px}.chip-toggle{color:var(--text);border-color:var(--line);background:0 0;align-items:center;gap:6px;display:inline-flex}.chip-toggle:hover{background:var(--hover)}.chip-toggle.on{background:var(--warn-bg);color:var(--warn);border-color:#0000}.toolbar button.ghost{align-items:center;gap:4px;display:inline-flex}.bulkbar{box-shadow:var(--shadow-lg)}.bulkbar button{align-items:center;gap:6px;display:inline-flex}.bulk-sep{background:var(--line);align-self:stretch;width:1px;margin:0 2px}.grid{grid-template-columns:repeat(auto-fill,minmax(176px,1fr))}@media (width<=480px){.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}.wcard{transition:transform .15s,box-shadow .15s,border-color .15s}.wcard:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0f172a1f}.wcard.selected{transform:none}.wcard .pick{opacity:0;width:20px;height:20px;accent-color:var(--accent);transition:opacity .12s}.wcard:hover .pick,.wcard .pick:checked,.grid.selecting .pick,.wcard .pick:focus-visible{opacity:1}@media (hover:none){.wcard .pick{opacity:1}}.thumb{overflow:hidden}.thumb img{transition:transform .25s}.wcard:hover .thumb img{transform:scale(1.04)}.noimg{align-content:center;justify-items:center;gap:6px;display:grid}.star{filter:drop-shadow(0 1px 2px #0009);display:grid;top:8px;right:8px}.status-pill{text-transform:capitalize;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172ab8;border-radius:999px;padding:2px 9px;font-size:11px;font-weight:700;position:absolute;bottom:8px;left:8px}.status-pill.s-published{background:#067647e0}.status-pill.s-scheduled,.status-pill.s-review{background:#175cd3e0}.access-pill{text-transform:capitalize;color:#fff;background:#93370de6;border-radius:999px;align-items:center;gap:3px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;bottom:8px;right:8px}.stat-line{justify-content:space-between;align-items:center;display:flex}.stat-line span{align-items:center;gap:4px;display:inline-flex}.wcard.skeleton .thumb,.sk-line{background:linear-gradient(90deg, var(--hover), var(--line), var(--hover));background-size:200% 100%;animation:1.2s infinite shimmer}.sk-line{border-radius:6px;height:12px}.sk-line.short{width:55%}.empty-state{text-align:center;color:var(--muted);background:var(--card);border:1px dashed var(--line);border-radius:var(--radius);justify-items:center;gap:6px;padding:56px 16px;display:grid}.empty-state strong{color:var(--text);font-size:16px}.empty-state button{margin-top:8px}.pager{flex-wrap:wrap;justify-content:flex-start;gap:8px}.pages{align-items:center;gap:4px;display:inline-flex}.pages button{min-width:36px;padding:7px 8px}.back{color:var(--muted);align-items:center;gap:4px;display:inline-flex}.back:hover{color:var(--text);text-decoration:none}.editor-title{margin-top:-6px}.badge.big{text-transform:capitalize;padding:3px 12px;font-size:13px}.panel h2{align-items:center;gap:8px;font-size:15px;display:flex}.panel h2 svg{color:var(--accent);flex:none}.panel h2 .muted{margin-left:auto;font-weight:400}.col.side2{align-self:start;max-height:calc(100vh - 160px);padding-right:2px;position:sticky;top:80px;overflow-y:auto}@media (width<=1000px){.col.side2{max-height:none;position:static;overflow:visible}}label.switch{border:1px solid var(--line);background:var(--bg);border-radius:10px;padding:10px 12px}label.switch svg{color:#f5b301}.asset{border:1px solid var(--line);background:var(--bg);border-radius:10px;grid-template-columns:64px 1fr;padding:10px}.aimg{width:64px;color:var(--muted)}.inputwrap{align-items:center;display:flex;position:relative}.inputwrap input{padding-right:34px}.clear-x{width:24px;height:24px;color:var(--muted);background:0 0;border:0;border-radius:6px;place-items:center;padding:4px;display:grid;position:absolute;right:6px}.clear-x:hover{background:var(--hover);color:var(--text)}.preset{border:1px solid var(--line);background:var(--bg);border-radius:10px;padding:12px}.preset textarea.invalid{border-color:var(--danger)}.field-error{color:var(--danger)}.add-btn,.preset .row button{align-items:center;gap:5px;display:inline-flex}.add-btn{justify-self:start}.preview-panel .phone{aspect-ratio:9/19;background:var(--hover);width:min(190px,60%);box-shadow:var(--shadow-lg);border:6px solid #1f2430;border-radius:28px;place-items:center;margin:0 auto;display:grid;overflow:hidden}.phone img{object-fit:cover;width:100%;height:100%;display:block}.phone .noimg{text-align:center;padding:8px}.mini-stats{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.mini-stats div{text-align:center;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:8px 4px;display:grid}.mini-stats strong{font-size:16px}.savebar{box-shadow:0 -4px 16px #0f172a14}.savebar button{align-items:center;gap:6px;display:inline-flex}.save-state.dirty{color:var(--warn);font-weight:600}.save-state.dirty:before{content:"";background:#f59e0b;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}input,select,textarea{transition:border-color .12s,box-shadow .12s}input:hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 40%, var(--line))}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 25%, transparent);outline:none}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.7}label{color:var(--text)}.btn-ico{align-items:center;gap:6px;display:inline-flex}button.icon-only{place-items:center;padding:8px;display:inline-grid}button.danger:hover:not(:disabled),button:not(.ghost):not(.danger):hover:not(:disabled){filter:brightness(1.08)}.modal{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#080a0f8c;animation:.15s fade}.modal.confirm-layer{z-index:60}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:translateY(8px)scale(.98)}}.dialog{background:var(--card);border:1px solid var(--line);width:100%;max-width:440px;max-height:min(92vh,860px);box-shadow:var(--shadow-lg);border-radius:16px;flex-direction:column;animation:.18s pop;display:flex;overflow:hidden}.dialog.wide{max-width:600px}.dialog-head{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:14px 16px 14px 20px;display:flex}.dialog-head h2{flex:1;margin:0;font-size:17px}.dialog-body{padding:18px 20px;overflow-y:auto}.dialog-foot{border-top:1px solid var(--line);background:color-mix(in srgb, var(--bg) 60%, var(--card));justify-content:flex-end;gap:8px;padding:12px 20px;display:flex}.form-grid{gap:14px;display:grid}.form-grid .error{margin:0}.confirm-body{align-items:flex-start;gap:14px;padding:22px 22px 8px;display:flex}.confirm-body h2{margin:2px 0 6px;font-size:17px}.confirm-msg{font-size:14px}.confirm-ico{background:var(--warn-bg);width:40px;height:40px;color:var(--warn);border-radius:50%;flex:none;place-items:center;display:grid}.confirm-ico.danger{background:var(--danger-bg);color:var(--danger)}@media (width<=600px){.modal{align-items:end;padding:0}.dialog,.dialog.wide{border-radius:16px 16px 0 0;max-width:none;max-height:94vh}}.toasts{z-index:70;pointer-events:none;gap:8px;width:min(380px,100vw - 32px);display:grid;position:fixed;bottom:16px;right:16px}.toast{pointer-events:auto;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-lg);border-radius:12px;align-items:flex-start;gap:10px;padding:11px 12px;font-size:14px;animation:.2s pop;display:flex}.toast span{flex:1;padding-top:1px}.toast button{color:var(--muted);background:0 0;border:0;padding:2px;display:grid}.toast.t-success svg:first-child{color:var(--ok)}.toast.t-error{border-color:var(--danger)}.toast.t-error svg:first-child{color:var(--danger)}.toast.t-info svg:first-child{color:var(--info)}@media (width<=900px){.toasts{bottom:76px}}tbody tr{transition:background .12s}tbody tr:hover{background:var(--hover)}th{background:color-mix(in srgb, var(--bg) 55%, var(--card));white-space:nowrap}td.cov img,.cov-empty{border-radius:8px;width:40px;height:40px}.cov-empty{background:var(--hover);color:var(--muted);place-items:center;display:grid}.star-inline{color:#f5b301;vertical-align:-2px;margin-left:6px}td.actions{text-align:right;white-space:nowrap}td.actions button+button{margin-left:6px}td.actions button{padding:6px 10px;font-size:13px}.table-skel{gap:14px;padding:18px;display:grid}.table-skel .sk-line{height:18px}.login-page{background:radial-gradient(1000px 500px at 50% -10%, color-mix(in srgb, var(--accent) 22%, transparent), transparent), var(--bg)}.login-wrap{justify-items:center;gap:22px;width:100%;max-width:400px;display:grid}.login-brand{align-items:center;gap:14px;display:flex}.login-brand strong{letter-spacing:.28em;font-size:15px;display:block}.login-brand span{color:var(--muted);text-transform:uppercase;letter-spacing:.14em;font-size:11px}.logo.big{border-radius:16px;width:52px;height:52px}.login-wrap .card{max-width:none;box-shadow:var(--shadow-lg)}.login-wrap .card h1{font-size:24px}.login-wrap .card .muted{margin:-6px 0 4px}.login-wrap .card button[type=submit],.login-wrap .card>button:last-child{padding:11px 14px}.who{align-items:center;gap:14px;display:flex}.who>div{justify-items:start;gap:2px;display:grid}.avatar.big{width:52px;height:52px;font-size:20px}.checks{color:var(--muted);flex-wrap:wrap;gap:6px 16px;display:flex}.checks span{align-items:center;gap:4px;display:inline-flex}.checks span svg{opacity:.35}.checks span.ok{color:var(--ok)}.checks span.ok svg{opacity:1}.error.warn-inline{align-items:center;gap:8px;margin:0;display:flex}.activity-filters{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:14px;padding:12px}.badge.fail{background:var(--danger-bg);color:var(--danger);border-color:#0000}.content .panel{box-shadow:0 1px 2px #0f172a0a}@media (width<=480px){.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat{padding:12px}.stat-value{font-size:22px}}.theme-switch{background:var(--hover);border-radius:10px;gap:2px;padding:3px;display:inline-flex}.theme-switch button{color:var(--muted);background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:5px 10px;font-size:13px;font-weight:600;display:inline-flex}.theme-switch button:hover{color:var(--text)}.theme-switch button.on{background:var(--card);color:var(--text);box-shadow:0 1px 2px #0f172a26}.theme-switch.compact button{padding:6px 8px}.menu-theme{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;margin-bottom:4px;padding:8px 10px;display:flex}.login-page{position:relative}.login-theme{position:absolute;top:16px;right:16px}:root:not([data-theme=dark]) .logo{box-shadow:0 4px 12px #4f46e54d}
