:root{color-scheme:dark;--bg:#0c1320;--panel:#151f30;--panel2:#1b293c;--line:#29374a;--ink:#eff4fa;--muted:#9daebf;--accent:#5ca8fb;--accent2:#9ccbff;--green:#54d4a3;--red:#ff8798;--amber:#ffd387;--radius:16px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-size:14px}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}.hidden{display:none!important}a{color:var(--accent2);text-decoration:none}a:hover{text-decoration:underline}.layout{min-height:100vh;display:flex}.sidebar{width:252px;background:#0d1726;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:28px 15px;position:sticky;top:0;height:100vh;flex-shrink:0}.sidebar-brand{display:flex;gap:11px;align-items:center;padding:3px 8px 30px}.sidebar-brand b{font-size:17px;letter-spacing:-.5px}.sidebar-brand small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.brandmark{font-weight:900;width:44px;height:44px;background:linear-gradient(145deg,#7cc2ff,#4673ef);border-radius:13px;display:flex;align-items:center;justify-content:center;color:#0a1a34;font-size:26px;flex-shrink:0}.brandmark span{font-size:7px;color:#fff;align-self:flex-start;margin-top:10px}.nav{display:grid;gap:8px}.nav button{background:none;border:0;color:#a9b6c6;text-align:left;border-radius:11px;padding:13px 12px;display:flex;gap:12px;align-items:center;font-weight:550}.nav button span{font-size:20px;width:24px;text-align:center}.nav button.selected,.nav button:hover{color:#fff;background:#213653}.nav em{margin-left:auto;background:#456d9f;color:white;border-radius:99px;font-size:10px;font-style:normal;padding:1px 7px;display:none}.sidebar-bottom{margin-top:auto;padding:18px 8px;border-top:1px solid var(--line);display:grid;grid-template-columns:12px 1fr;column-gap:8px;align-items:center}.sidebar-bottom span{font-size:12px;font-weight:650}.sidebar-bottom small{grid-column:2;color:var(--muted);font-size:11px}.status-dot,.dot{width:8px;height:8px;display:inline-block;border-radius:50%;background:var(--green)}.main-wrap{flex:1;min-width:0}.topbar{height:73px;border-bottom:1px solid var(--line);padding:0 34px;display:flex;align-items:center;justify-content:space-between;background:rgba(13,22,36,.7)}.crumb,.small-caps{font-size:10px;letter-spacing:2px;font-weight:700;color:#8195aa}.crumb span{color:#cbd8e7}.account{display:flex;align-items:center;gap:20px;color:var(--muted);font-size:12px}.account a{color:#c3d8f3}.main{padding:37px;max-width:1520px;margin:0 auto}.heading{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:27px}.eyebrow{color:var(--accent2);font-size:11px;letter-spacing:2px;font-weight:800;text-transform:uppercase}.heading h1{font-size:31px;letter-spacing:-1px;margin:6px 0}.subtext{color:var(--muted);line-height:1.6;margin:7px 0 0}.btn{background:#24364e;border:1px solid #3b5271;color:#e9f1fb;padding:9px 14px;border-radius:9px;font-size:12px;font-weight:700;transition:background .15s}.btn:hover{background:#345071;text-decoration:none}.btn.primary{background:#4c96eb;color:#04182e;border:1px solid #62b3ff}.btn.primary:hover{background:#79bbff}.btn.quiet{background:none;border-color:var(--line);color:var(--muted)}.btn.danger{color:#ffb1bf;border-color:#684457;background:#342438}.btn.small{padding:6px 9px;font-size:11px}.btn.full{width:100%;padding:13px}.btn:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:25px}.metric{background:linear-gradient(145deg,#1a293e,#151f30);border:1px solid #2d4058;border-radius:var(--radius);padding:23px}.metric .label{font-size:12px;color:#b0c1d2}.metric strong{display:block;margin:18px 0 7px;font-size:34px;letter-spacing:-1.5px}.metric .fine{color:var(--muted);font-size:11px}.metric .fine.good{color:var(--green)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:25px;margin-bottom:21px}.panel-title{margin:0 0 17px;font-size:17px;letter-spacing:-.4px}.panel-sub{font-size:12px;color:var(--muted);margin:-11px 0 18px}.stack{display:grid;gap:15px}.cols{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-row{display:flex;gap:9px;flex-wrap:wrap;align-items:end}.form-row label{flex:1;min-width:180px}label{display:block;color:#b9c8d8;font-size:12px;font-weight:600}.form-row label input{margin-top:7px}input,select{background:#101d2e;border:1px solid #35495f;border-radius:9px;color:white;padding:10px 12px;min-height:38px}input[type=file]{width:100%;border-style:dashed;padding:15px;background:#101d2c}.form-row input,.form-row select{width:100%}input[type=number]{width:76px;min-width:60px;padding:8px}.muted{color:var(--muted)}.mini{font-size:11px}.tablewrap{width:100%;overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{color:#90a3b7;text-transform:uppercase;font-size:10px;letter-spacing:1px;padding:12px 12px;border-bottom:1px solid #354153}td{padding:14px 12px;border-bottom:1px solid #253348;color:#dfecfa;font-size:12px}tr:last-child td{border-bottom:none}.td-name{font-size:13px;font-weight:650}.td-secondary{display:block;color:var(--muted);font-size:10px;margin-top:4px}.actions{display:flex;gap:6px;align-items:center;justify-content:flex-end}.actions select{font-size:11px;max-width:185px;padding:7px 8px;height:32px;min-height:32px}.pill{padding:4px 8px;border-radius:99px;font-size:11px;display:inline-block;font-weight:650;border:1px solid #3a4b5c;color:#aebbd0}.pill.online{border-color:#356b5f;background:#17372f;color:#7be3bf}.pill.pending{border-color:#88683b;background:#392d1e;color:#f8d29b}.pill.offline{border-color:#536077;color:#a9b7c9}.pill.error{border-color:#904a56;background:#39232d;color:#ff9caa}.code{background:#2c4158;color:#d1e9ff;padding:6px 8px;border-radius:6px;font-family:ui-monospace,monospace;font-weight:800;letter-spacing:1.5px}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:15px}.media-card{border:1px solid #34455a;background:#121d2e;border-radius:11px;overflow:hidden}.media-art{height:130px;background:#0b1524;display:flex;align-items:center;justify-content:center}.media-art img,.media-art video{width:100%;height:100%;object-fit:contain}.media-meta{padding:12px}.media-meta strong{display:block;font-size:12px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.media-meta small{display:block;color:var(--muted);margin:6px 0 10px}.empty{padding:33px;border:1px dashed #3b4d63;border-radius:12px;text-align:center;color:#a3b4c7;font-size:13px}.history-row{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid #2b3a4e}.history-row:last-child{border-bottom:0}.event-icon{height:32px;width:32px;display:grid;place-items:center;background:#283c52;border-radius:9px;color:#abd3fc}.history-body{flex:1}.history-body b{font-size:12px}.history-body p{color:#9eafc0;font-size:11px;margin:5px 0;line-height:1.4}.history-time{color:#879bb0;font-size:11px;white-space:nowrap}.playlist-item{display:flex;gap:12px;align-items:center;background:#121e30;border:1px solid #314259;border-radius:11px;padding:10px;margin:9px 0}.playlist-item img,.playlist-item video{width:86px;height:54px;object-fit:contain;background:#020912;border-radius:6px}.playlist-item .detail{min-width:0;flex:1}.playlist-item .detail b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.playlist-item .detail small{color:var(--muted);font-size:11px}.duration{display:flex;gap:5px;align-items:center;font-size:11px;color:var(--muted)}.playlist-actions{display:flex;gap:5px}.playlist-actions .btn{padding:7px 8px}.select-group{font-size:13px;min-width:200px}.warn{color:var(--amber)}.error{color:var(--red);font-size:12px}.toast{position:fixed;bottom:25px;right:28px;padding:13px 17px;border:1px solid #5372a1;background:#213a57;color:#d8edff;border-radius:12px;box-shadow:0 18px 38px #0005;z-index:99;max-width:430px}.toast.bad{border-color:#8f4a57;background:#502d3d;color:#ffe1e6}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 65% 5%,#193756 0%,#0c1320 47%)}.login-card{max-width:430px;width:100%;padding:42px;background:#151f30;border:1px solid #31425a;border-radius:20px;box-shadow:0 30px 100px #0007}.login-card .brandmark{margin-bottom:23px}.login-card h1{font-size:34px;letter-spacing:-1px;margin:10px 0}.login-card p{color:var(--muted);line-height:1.5}.login-card form{margin-top:27px;display:grid;gap:19px}.login-card label input{display:block;width:100%;margin-top:8px}.login-card .error{margin-top:16px}.help{font-size:12px;line-height:1.6;color:#93a9bf}.badge-blue{color:var(--accent2)}.inline-note{border-left:3px solid #548cdc;background:#142539;color:#aacbe7;padding:12px 15px;border-radius:5px;font-size:12px;line-height:1.6}.divider{border:none;border-top:1px solid #304054;margin:20px 0}.wrap-text{white-space:normal;min-width:130px;max-width:250px}.footer-note{font-size:11px;color:#7f92a7;text-align:right;margin-top:22px}@media(max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}.cols{grid-template-columns:1fr}.sidebar{width:220px}.main{padding:22px}.topbar{padding:0 20px}}@media(max-width:700px){.layout{display:block}.sidebar{position:static;width:100%;height:auto;padding:13px}.sidebar-brand{padding-bottom:12px}.nav{grid-template-columns:repeat(3,1fr);gap:5px}.nav button{padding:8px;font-size:10px;display:block}.nav button span{display:none}.sidebar-bottom{display:none}.topbar{height:auto;min-height:65px;gap:9px;padding:12px;flex-wrap:wrap}.account{gap:9px}.account span{display:none}.main{padding:15px}.heading h1{font-size:24px}.heading{align-items:start}.cards{gap:9px}.metric{padding:15px}.metric strong{font-size:27px}.panel{padding:16px}.playlist-item{flex-wrap:wrap}}

.revision{border:1px solid #31435a;background:#111d30;border-radius:10px;margin:9px 0;padding:14px 16px}.revision summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer}.revision summary strong{font-size:12px}.revision ol{color:#ccdaea;line-height:1.8;padding-left:20px;margin-bottom:2px}.revision li{font-size:12px}

/* v0.2.0: less navigation, presentation-first workflow. */
.nav button {line-height:1.35;}
.nav button:focus-visible {outline:2px solid #94caff;outline-offset:2px;}
.account #history-link.selected{background:#294461;color:#fff;}
.btn-large{padding:13px 20px;font-size:13px;}
.presentation-card{
 display:flex;align-items:center;gap:18px;padding:18px 8px;border-bottom:1px solid #293a50;
}
.presentation-card:last-child{border-bottom:0;}
.presentation-mark{height:54px;width:54px;display:grid;place-items:center;flex:0 0 auto;
 background:linear-gradient(145deg,#234567,#192f49);border:1px solid #395b7c;
 border-radius:14px;font-size:27px;color:#98cbff;}
.presentation-content{min-width:0;flex:1;}
.presentation-name{font-size:17px;font-weight:750;letter-spacing:-.3px;margin-bottom:7px;overflow-wrap:anywhere;}
.presentation-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:end;}
.group-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;}
.group-tag{display:inline-block;border:1px solid #305975;background:#162e44;border-radius:7px;padding:5px 9px;font-size:11px;color:#bde3ff;}
.step-strip{display:flex;flex-wrap:wrap;align-items:center;gap:13px;color:#bdcee0;background:#13283a;
 border:1px solid #2c4b63;padding:15px 19px;border-radius:14px;margin-bottom:22px;font-size:12px;}
.step-strip b{background:#347bbd;color:white;border-radius:99px;padding:4px 8px;margin-right:7px;}
.panel-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:17px;}
.panel-heading .panel-title{margin:0;}
.presentation-name-input{display:block;width:100%;max-width:690px;margin-top:11px;font-size:17px;padding:14px 16px;}
.label-big{font-size:13px;color:#dbeaff;}
.editor-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:19px;}
.editor-grid>.panel{min-width:0;}
.asset-choices{display:grid;gap:8px;max-height:550px;overflow-y:auto;padding:5px 5px 5px 0;margin-top:12px;}
.pick-asset{width:100%;display:flex;align-items:center;gap:11px;text-align:left;
 padding:7px;background:#111f31;border:1px solid #2f445a;border-radius:10px;color:#f0f6ff;}
.pick-asset:hover{border-color:#5da4e3;background:#17304a;}
.pick-preview{width:72px;height:50px;background:#060e18;border-radius:7px;overflow:hidden;flex:0 0 72px;}
.pick-preview img,.pick-preview video{width:100%;height:100%;object-fit:contain;}
.pick-text{min-width:0;flex:1;}
.pick-text b{font-size:11px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.pick-text small{font-size:10px;display:block;color:#8eafcb;margin-top:5px;}
.pick-plus{font-size:22px;font-weight:600;color:#8fc5ff;margin-right:5px;}
.search-input{width:100%;max-width:300px;}
#asset-search{max-width:none;}
.item-thumb{width:90px!important;height:58px!important;flex:0 0 90px;}
.group-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:10px;}
.check-card{display:flex;align-items:center;gap:11px;padding:15px;border-radius:12px;
 background:#112237;border:1px solid #334b64;cursor:pointer;color:#edf5ff;}
.check-card:has(input:checked){background:#173956;border-color:#4f9be4;}
.check-card input{width:17px;height:17px;min-height:17px;accent-color:#62b2fb;flex:0 0 17px;}
.check-card strong{display:block;font-size:13px;}
.check-card small{display:block;font-size:11px;font-weight:400;color:#a6bbcd;margin-top:6px;}
.editor-footer{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:40px;}
.day-section{margin-top:27px;padding-top:16px;border-top:1px solid #30425a;}
.day-section:first-child{margin-top:0;padding-top:0;border:0;}
.day-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px;}
.day-heading h2{margin:0;font-size:15px;font-weight:750;text-transform:capitalize;}
.group-rows{margin-top:18px;}
.group-row{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #27394b;padding:13px 2px;}
.group-row b{font-size:13px;}
.group-row small{display:block;color:var(--muted);margin-top:6px;font-size:11px;}
@media(max-width:1100px){.editor-grid{grid-template-columns:1fr;}.asset-choices{grid-template-columns:repeat(2,minmax(0,1fr));max-height:320px;}}
@media(max-width:700px){.nav{grid-template-columns:repeat(3,1fr)}.presentation-card{align-items:flex-start;flex-wrap:wrap;}.presentation-mark{display:none;}.presentation-actions{width:100%;justify-content:start;}.step-strip{gap:8px;}.step-strip span:nth-child(even){display:none;}.asset-choices{grid-template-columns:1fr;}.check-card{padding:12px;}.group-row{flex-wrap:wrap;}.panel-heading{flex-wrap:wrap;}.day-heading{align-items:start;}}
