:root{color-scheme:dark;--bg:#09090b;--surface:#121316;--line:#282b32;--ink:#f3f3f5;--muted:#a0a3ad;--accent:#ffffff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:16px}header{border-bottom:1px solid var(--line);padding:22px 5vw;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;gap:16px;align-items:center;text-decoration:none;color:var(--ink);font-size:16px;letter-spacing:3px;font-weight:700}.brand img{width:120px;height:56px;object-fit:contain;background:#000;border-radius:8px}.brand small{display:block;font-size:9px;letter-spacing:2px;color:var(--muted);margin-top:6px}main{max-width:1180px;margin:0 auto;padding:52px 28px;min-height:75vh}h1{font-size:clamp(32px,5vw,54px);letter-spacing:-2px;line-height:1.05;margin:14px 0 20px}h2{font-size:22px;letter-spacing:-.5px;margin-top:0}h3{margin:0 0 8px}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--accent);font-weight:700}.muted,small{color:var(--muted)}.intro{max-width:570px;line-height:1.6}.panel{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:26px;margin:24px 0}.narrow{max-width:480px;margin:30px auto}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:18px}.cards .panel{margin:0}.cardhead,.toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.cardhead .button{margin-top:18px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.metric{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:22px}.metric strong{display:block;font-size:36px;font-variant-numeric:tabular-nums;margin-top:6px}.metric span{font-size:12px;color:var(--muted)}button,.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid var(--line);border-radius:10px;background:#1d1f24;color:var(--ink);font-size:14px;font-weight:650;cursor:pointer;text-decoration:none;gap:8px}button.primary,.button.primary{background:var(--accent);border-color:var(--accent);color:#111}button:disabled{opacity:.45;cursor:wait}button:hover,.button:hover{filter:brightness(1.12)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}label{display:block;font-size:13px;color:var(--muted);margin:18px 0 7px}input,select,textarea{background:#090a0d;border:1px solid var(--line);border-radius:8px;color:var(--ink);font:inherit;padding:12px;width:100%;min-height:46px}textarea{resize:vertical;min-height:100px}form button{margin-top:20px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.toolbar input{max-width:400px}.actions{display:flex;gap:8px;flex-wrap:wrap}.pill{display:inline-block;font-size:11px;letter-spacing:.5px;border:1px solid var(--line);border-radius:30px;padding:5px 9px;color:var(--muted)}.pill.ok{color:var(--accent);border-color:#627b2f}.guest{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:18px 0}.guest:last-child{border-bottom:0}.guest p{margin:5px 0;color:var(--muted);font-size:13px}.guest strong{font-size:17px}.guest button{flex-shrink:0}.notice{padding:14px;border-left:3px solid var(--accent);background:#181d11;border-radius:0 8px 8px 0;margin:20px 0;line-height:1.6;font-size:14px}.error{color:#ff9fa2}.empty{text-align:center;padding:36px;color:var(--muted)}.back{color:var(--muted);font-size:14px;text-decoration:none}.live{font-size:12px;color:var(--muted)}.live::before{content:'●';color:var(--accent);margin-right:7px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);max-width:90vw;background:#24272e;padding:14px 22px;border:1px solid var(--line);border-radius:12px;display:none;box-shadow:0 10px 30px #0008;z-index:10}footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:24px 5vw;font-size:12px;color:var(--muted)}details{margin:24px 0}summary{cursor:pointer;padding:12px 0;font-weight:650}code{overflow-wrap:anywhere}#account{display:flex;gap:12px;align-items:center;font-size:13px}.space{margin-top:24px}.pager{display:flex;justify-content:space-between;align-items:center;margin-top:20px}.full{grid-column:1/-1}@media(max-width:650px){header{padding:16px}.brand{gap:10px;font-size:13px}.brand img{width:90px;height:40px}.brand small{font-size:8px}main{padding:30px 16px}h1{letter-spacing:-1px}.panel{padding:20px}.grid{grid-template-columns:1fr}.metrics{grid-template-columns:1fr 1fr}.metric:last-child{grid-column:1/-1}.metric{padding:16px}.guest{align-items:flex-start;gap:12px}.guest button{padding:10px 12px}.toolbar input{max-width:none}.toolbar>*{width:100%}.toolbar .actions>*{flex:1}#account .username{display:none}footer span{display:none}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}

/* AVASONIC source styles and computed live reference, 2026-10-14. */
body{color:#f5f5f5;background:#09090b}
.shell{display:flex;min-height:100vh}
.sidebar{width:234px;flex-shrink:0;border-right:1px solid #202229;padding:32px 20px;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;background:#09090b}
.brand{display:block;font-size:35px;letter-spacing:-1.8px;font-weight:900}
.brand-mark{position:relative;max-width:100%;width:194px;height:62px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:transparent}
.brand-mark img{position:absolute;left:50%;top:50%;width:265%;max-width:none;height:auto;transform:translate(-50%,-67.2%);object-fit:contain;border-radius:0}
.brand span{display:block;padding-left:8px;margin-top:12px;font-weight:400;font-size:12px;color:#a0a3ad;letter-spacing:2px}
.navlabel{margin:50px 12px 18px}
.sidebar nav{display:grid;gap:8px}
.sidebar nav button{justify-content:flex-start;background:transparent;border:0;padding:14px 12px;color:#a0a3ad;border-radius:12px;min-height:44px}
.sidebar nav button.selected{background:#27292e;color:#fff;font-weight:700}
.sidebar-foot{margin-top:auto;padding:24px 12px 0;border-top:1px solid #282b32;font-size:11px;letter-spacing:1.6px;color:#a0a3ad}
.workspace{margin-left:234px;min-width:0;flex:1;background:#09090b}
.workspace>header{height:64px;padding:0 38px;border-bottom:1px solid #282b32;font-size:14px;color:#a0a3ad;background:rgba(13,15,20,.86);backdrop-filter:blur(24px);gap:16px;justify-content:flex-start}
.workspace>header>span{margin-right:auto}
.workspace>header b{margin:0 14px;color:#566168}
.workspace>main{padding:36px 38px 60px;max-width:1600px;margin:auto;min-height:calc(100vh - 64px)}
.public-brand{display:none}
.is-public .sidebar{display:none}
.is-public .workspace{margin-left:0}
.is-public .public-brand{display:block;margin-right:auto}
.is-public #breadcrumb{display:none}
.is-public .workspace>main{max-width:940px}
.is-public h1{text-align:center;margin:24px 0}
h1{font-size:32px;font-weight:400;line-height:1.12;letter-spacing:-1px;margin:15px 0 28px}
h2{font-size:20px;font-weight:400;letter-spacing:-.4px}
.eyebrow{font-size:10px;letter-spacing:1px;font-weight:600;color:#a0a3ad;line-height:1.5}
.panel{border:1px solid #282b32;border-radius:16px;background:#121316;padding:20px}
.metric{padding:20px;border:1px solid #282b32;border-radius:16px;background:#121316}
.metric strong{font-size:clamp(24px,2.25vw,34px);letter-spacing:-1px;margin:12px 0 8px}
.metric span{font-size:11px;text-transform:uppercase;letter-spacing:.7px}
button,.button{min-height:44px;border-radius:10px;background:#1c1c1c;font-size:13px;font-weight:400;padding:11px 16px}
button.primary,.button.primary{background:#fff;border-color:#fff;color:#090909;font-weight:700}
button.primary:hover,.button.primary:hover{background:#d8d8d8;border-color:#d8d8d8;filter:none}
input,select,textarea{border-radius:10px;background:#1c1c1c;border-color:#3a4044;min-height:44px}
.pill{background:#1b1e24;border:0;color:#c2c6d0;border-radius:999px;font-size:10px}
.pill.ok{background:#334923;color:#d3f792;border:0}
.notice{background:#17191f;border-left-color:#fff;color:#a0a3ad}
.narrow{max-width:460px;margin:30px auto}
.toolbar{margin:20px 0 26px}
.cards .panel{padding:20px}
.guest strong{font-size:16px}
.guest p{font-size:12px}
.back,button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#60dca3}
@media(max-width:700px){
 .shell{display:block}
 .sidebar{position:static;inset:auto;width:100%;padding:14px 16px 10px;border:0;border-bottom:1px solid #282b32}
 .sidebar .brand-mark{width:164px;height:46px}
 .sidebar .brand span{padding-left:0;margin-top:5px;font-size:9px;letter-spacing:1.6px}
 .navlabel,.sidebar-foot{display:none}
 .sidebar nav{display:flex;overflow-x:auto;margin-top:14px}
 .sidebar nav button{flex-shrink:0;font-size:12px;padding:10px 14px;white-space:nowrap}
 .workspace{margin-left:0}
 .workspace>header{height:auto;min-height:56px;padding:6px 16px;background:#0d0f14;backdrop-filter:none;font-size:12px}
 .workspace>main{padding:24px 16px 40px;min-height:calc(100vh - 56px)}
 h1{font-size:25px;letter-spacing:-1px;margin:0 0 20px}
 .metrics{gap:10px;margin:0 0 22px}
 .metric{padding:14px;border-radius:14px}
 .metric strong{font-size:24px;margin:8px 0 4px}
 .metric span{font-size:10px}
 .panel{padding:16px}
 .toolbar{margin:14px 0 20px}
 .public-brand .brand-mark{width:164px;height:46px}
}

/* Horarios 0.1.0: menú, ahora/sigue, línea de tiempo y vista compartida. */
body.is-event .back-link{background:transparent;border:0;padding:0;min-height:44px;color:#a0a3ad;font-size:14px}
body.is-event .back-link:hover{color:#fff;filter:none}
.more-menu{position:relative}
.more-menu>summary{list-style:none;display:inline-flex;align-items:center;min-height:44px;padding:11px 16px;border:1px solid #282b32;border-radius:10px;background:#1c1c1c;font-size:13px;cursor:pointer;user-select:none;white-space:nowrap}
.more-menu>summary::-webkit-details-marker{display:none}
.more-menu[open]>summary{background:#27292e;border-color:#3a3d45}
.more-items{position:absolute;top:calc(100% + 6px);left:0;z-index:20;display:grid;gap:2px;min-width:250px;padding:6px;border:1px solid #3a3d45;border-radius:12px;background:#17191f;box-shadow:0 12px 32px #000a}
.more-items>button{justify-content:flex-start;background:transparent;border:0;border-radius:8px;font-size:14px;width:100%}
.more-items>button:hover{background:#27292e;filter:none}
button.danger{color:#ff9fa2;border-color:#5a2a2c}
.toolbar.actions{justify-content:flex-start}
.check{display:flex;align-items:center;gap:10px;margin-top:18px}
.check input{width:22px;min-height:22px;height:22px;margin:0;accent-color:#fff}
.check label{margin:0;color:var(--ink);font-size:14px}
.small-note{font-size:12px;margin-top:18px}
.preview{margin:14px 0;padding-left:18px;line-height:1.8;font-size:14px;color:var(--muted)}
.pastebox textarea,.panel textarea{margin:12px 0}

/* Ahora / Sigue */
.now{display:grid;grid-template-columns:1.4fr 1fr;gap:0;padding:0;overflow:hidden;margin:0 0 20px}
.now>div{padding:22px;display:grid;gap:6px;align-content:start}
.now strong{font-size:clamp(22px,3vw,34px);font-weight:600;letter-spacing:-.8px;line-height:1.1}
.now .count{font-size:clamp(34px,5vw,56px);font-variant-numeric:tabular-nums;letter-spacing:-1.5px;color:#d3f792;line-height:1}
.now-main.over .count{color:#ff9fa2}
.now-main.idle{color:var(--muted);font-size:18px;align-content:center}
.now-next{border-left:1px solid var(--line);background:#0f1013}
.now-next strong{font-size:clamp(18px,2.2vw,24px)}
.now button.big{min-height:56px;font-size:16px;margin-top:10px;justify-self:start;padding:12px 26px}
.now-main:only-child{grid-column:1/-1}

/* Línea de tiempo */
.timeline{list-style:none;margin:0;padding:6px 20px}
.slot{display:grid;grid-template-columns:86px 1fr auto;gap:18px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}
.slot:last-of-type{border-bottom:0}
.when{display:grid;gap:2px;font-variant-numeric:tabular-nums}
.when strong{font-size:22px;font-weight:600;letter-spacing:-.5px}
.when s{font-size:12px;color:var(--muted)}
.late{color:#e8d48b;font-size:12px}
.late.early{color:#9fe870}
.what strong{font-size:17px;font-weight:600}
.meta{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:6px;font-size:12px;color:var(--muted)}
.note{margin:8px 0 0;font-size:13px;color:#e8d48b;white-space:pre-wrap}
.slot.st-done,.slot.st-passed{opacity:.45}
.slot.st-live{background:linear-gradient(90deg,#1a2412,transparent 70%);margin:0 -20px;padding:16px 20px;border-left:3px solid #9fe870}
.slot.st-live .when strong{color:#d3f792}
.slot.k-cambio .what strong,.slot.k-llegada .what strong,.slot.k-prueba .what strong{font-weight:400;color:#c2c6d0}
.pill.k-set{background:#2a2340;color:#d6c8ff}
.pill.k-cambio{background:#1b1e24;color:#a0a3ad}
.pill.k-puertas{background:#173040;color:#a8dcff}
.pill.k-llegada,.pill.k-prueba,.pill.k-otro{background:#2b2618;color:#e8d48b}
.slot-form{margin:8px 0 16px;list-style:none}
.slot-form h2{margin-bottom:0}
.slot-form>button{margin-right:8px}
.empty{list-style:none}
.live.offline::before{color:#ff9fa2}

/* Enlace compartido: legible de lejos en backstage. */
body.is-share .workspace>main{max-width:860px}
body.is-share .when strong{font-size:26px}
body.is-share .what strong{font-size:20px}
body.is-share .slot{grid-template-columns:96px 1fr}

@media(max-width:700px){
 .now{grid-template-columns:1fr}
 .now-next{border-left:0;border-top:1px solid var(--line)}
 .now>div{padding:18px}
 .timeline{padding:4px 14px}
 .slot{grid-template-columns:64px 1fr;gap:12px}
 .slot .actions{grid-column:1/-1;justify-content:flex-start}
 .slot.st-live{margin:0 -14px;padding:16px 14px}
 .when strong{font-size:19px}
 body.is-share .slot{grid-template-columns:72px 1fr}
 body.is-share .when strong{font-size:21px}
 .now button.big{width:100%;justify-self:stretch}
 .toolbar.actions{display:grid;grid-template-columns:1fr 1fr}
 .toolbar.actions>:first-child{grid-column:1/-1}
 .more-menu>summary{width:100%;justify-content:center}
 .more-items{left:auto;right:0}
}
@media print{body{background:#fff;color:#000}.sidebar,header,.toolbar,.actions,.now button,.back-link{display:none!important}.workspace{margin:0}.panel,.slot.st-live{background:#fff;border-color:#ccc}.slot.st-done,.slot.st-passed{opacity:1}}
