:root{--bg: #0b1020;--bg-elev: #131a33;--fg: #e8ecf8;--fg-dim: #9aa3c7;--accent: #7c9cff;--accent-strong: #5b7cff;--danger: #ff6f6f;--ok: #5fd28a;--border: #2a335a;--radius: 10px;--shadow: 0 4px 16px rgba(0, 0, 0, .25);color-scheme:dark light}@media (prefers-color-scheme: light){:root{--bg: #f6f7fc;--bg-elev: #ffffff;--fg: #14182b;--fg-dim: #5a6285;--accent: #3b5bff;--accent-strong: #2540d8;--border: #d8dcec;--shadow: 0 4px 16px rgba(20, 24, 43, .08)}}[data-theme=dark]{--bg: #0b1020;--bg-elev: #131a33;--fg: #e8ecf8;--fg-dim: #9aa3c7;--accent: #7c9cff;--accent-strong: #5b7cff;--border: #2a335a}[data-theme=light]{--bg: #f6f7fc;--bg-elev: #ffffff;--fg: #14182b;--fg-dim: #5a6285;--accent: #3b5bff;--accent-strong: #2540d8;--border: #d8dcec}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--fg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.4;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;background:var(--bg-elev);color:var(--fg);border:1px solid var(--border);border-radius:var(--radius);padding:8px 14px;cursor:pointer;transition:background .12s,border-color .12s}button:hover{border-color:var(--accent)}button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}button.primary{background:var(--accent-strong);color:#fff;border-color:var(--accent-strong)}button.primary:hover{background:var(--accent);border-color:var(--accent)}button.danger{color:var(--danger);border-color:var(--danger)}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{font:inherit;background:var(--bg-elev);color:var(--fg);border:1px solid var(--border);border-radius:var(--radius);padding:6px 10px}input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.layout{display:flex;flex-direction:column;min-height:100vh}.nav{display:flex;gap:16px;align-items:center;padding:12px 20px;background:var(--bg-elev);border-bottom:1px solid var(--border)}.nav .brand{font-weight:700;font-size:1.15rem;letter-spacing:.02em}.nav .spacer{flex:1}.nav a{color:var(--fg-dim);padding:6px 10px;border-radius:var(--radius)}.nav a.active{color:var(--fg);background:var(--bg)}.page{padding:20px;max-width:1100px;margin:0 auto;width:100%;flex:1}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}.chip{display:inline-flex;align-items:center;padding:6px 12px;border:1px solid var(--border);border-radius:999px;cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--bg-elev)}.chip.selected{background:var(--accent-strong);color:#fff;border-color:var(--accent-strong)}.chip:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.field label{font-weight:600}.row{display:flex;gap:8px;flex-wrap:wrap}.muted{color:var(--fg-dim);font-size:.92rem}.block{margin-top:24px;padding-top:16px;border-top:1px solid var(--border)}.plan-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.plan-item{display:grid;grid-template-columns:56px 1fr auto;gap:12px;align-items:center;padding:8px 12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius)}.plan-thumb{width:56px;height:56px;border-radius:var(--radius);background:var(--bg-elev);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--fg-dim)}.plan-name{font-weight:600}.plan-meta{min-width:0}@media (max-width: 600px){.plan-item{grid-template-columns:48px 1fr;grid-template-areas:"thumb meta" "actions actions"}.plan-item .plan-thumb{grid-area:thumb;width:48px;height:48px}.plan-item .plan-meta{grid-area:meta}.plan-item .row{grid-area:actions}}.player{display:grid;grid-template-rows:auto 1fr auto;min-height:calc(100vh - 60px);gap:12px;padding:12px}.player-bar{display:flex;align-items:center;gap:12px;padding:8px 12px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius)}.progress{flex:1;height:8px;background:var(--bg);border-radius:999px;overflow:hidden}.progress-fill{height:100%;background:var(--accent);transition:width .2s linear}.player-stage{display:flex;align-items:center;justify-content:center}.player-center{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.countdown{font-size:8rem;font-weight:800;color:var(--accent)}.big-timer{font-size:5rem;font-weight:800;font-variant-numeric:tabular-nums}.big-counter{font-size:4rem;font-weight:800;font-variant-numeric:tabular-nums}button.big{padding:16px 32px;font-size:1.25rem}.next-up{color:var(--fg-dim)}.player-rest{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(280px,1.2fr);gap:24px;align-items:center;width:100%;max-width:1000px;padding:0 16px}.rest-countdown{min-width:0}.rest-preview{display:grid;grid-template-columns:160px minmax(0,1fr);gap:14px 18px;align-items:start;width:100%;text-align:left;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:16px;max-height:72vh;overflow-y:auto}.rest-preview-header{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:6px 10px;align-items:baseline}.rest-preview-header strong{font-size:1.15rem}.rest-preview-demo{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);min-height:160px;display:flex;align-items:center;justify-content:center}.rest-preview-copy{display:flex;flex-direction:column;gap:14px;min-width:0}.rest-preview-section h3{margin:0 0 6px;font-size:.95rem;color:var(--fg-dim)}.rest-preview-section .how-to-steps,.rest-preview-section .how-to-cues-list{margin-top:0}.rest-preview-list{font-size:.92rem}.rest-preview-list li{margin:2px 0}.player-controls{display:flex;gap:12px;align-items:center;justify-content:center;padding:12px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius)}.next-chip{margin-left:auto}.how-to{margin-top:6px;font-size:.92rem}.how-to>summary{cursor:pointer;color:var(--accent);-webkit-user-select:none;user-select:none}.how-to-steps{margin:6px 0 4px 1.2em;padding:0}.how-to-steps li{margin:2px 0}.how-to-cues{margin:4px 0 0;font-style:italic}.player-cues{max-width:520px}.player-howto{max-width:520px;text-align:left}.player-work{display:grid;grid-template-columns:minmax(280px,1fr) minmax(260px,1fr);gap:24px;align-items:center;width:100%;max-width:1100px;padding:0 16px}.player-anim{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.player-howto-panel{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:16px 20px;text-align:left;max-height:70vh;overflow-y:auto}.player-howto-panel h3{margin:0 0 8px}.player-howto-panel h4{margin:12px 0 4px;font-size:.95rem;color:var(--fg-dim)}.how-to-cues-list{margin:0 0 0 1.2em;padding:0}.how-to-cues-list li{margin:2px 0}@media (max-width: 760px){.player-work{grid-template-columns:1fr}.player-howto-panel{max-height:none}.player-rest{grid-template-columns:1fr}.rest-preview{grid-template-columns:120px minmax(0,1fr);max-height:none}.rest-preview-demo{min-height:120px}}@media (max-width: 520px){.rest-preview{grid-template-columns:1fr}.rest-preview-demo{max-width:220px}}.library{display:grid;grid-template-columns:280px 1fr;gap:16px;align-items:start}.library-tree{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:12px;position:sticky;top:12px;max-height:calc(100vh - 100px);overflow-y:auto}.library-search{width:100%;margin-bottom:8px}.library-groups{list-style:none;padding:0;margin:0}.library-group{margin-bottom:4px}.library-group-header{display:flex;align-items:center;gap:6px;width:100%;background:transparent;border:0;padding:6px 4px;color:var(--fg);text-align:left;cursor:pointer;border-radius:6px}.library-group-header:hover{background:var(--bg)}.library-caret{width:12px;color:var(--fg-dim)}.library-items{list-style:none;padding:2px 0 6px 22px;margin:0;display:flex;flex-direction:column;gap:2px}.library-item{display:block;width:100%;background:transparent;border:0;color:var(--fg-dim);text-align:left;padding:4px 8px;border-radius:6px;cursor:pointer}.library-item:hover{color:var(--fg);background:var(--bg)}.library-item.selected{color:#fff;background:var(--accent-strong)}.library-detail{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:20px;min-height:400px}.library-detail-grid{display:grid;grid-template-columns:minmax(180px,240px) 1fr;gap:24px;align-items:start}.library-anim{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:12px;display:flex;align-items:center;justify-content:center}.library-info h2{margin:16px 0 6px;font-size:1.05rem;color:var(--fg-dim)}.library-row{margin:4px 0}.library-row-label{font-weight:600;color:var(--fg-dim);margin-right:4px}.chip-tag{display:inline-block;font-size:.78rem;padding:2px 8px;border-radius:999px;background:var(--bg);border:1px solid var(--border);color:var(--fg-dim);text-transform:capitalize}@media (max-width: 760px){.library{grid-template-columns:1fr}.library-tree{position:static;max-height:none}.library-detail-grid{grid-template-columns:1fr}}.player-clock{font-variant-numeric:tabular-nums;min-width:95px;text-align:right}
