:root{color-scheme:light dark;--bg: #f7f8fb;--fg: #12172b;--card-bg: #ffffff;--border: #dde1ea;--accent: #2563eb;--muted: #667085;--ok: #0f9d58;--error: #d93025}@media (prefers-color-scheme: dark){:root{--bg: #0b1220;--fg: #e6e9f2;--card-bg: #131b2e;--border: #253150;--muted: #9aa4c0}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.5}.app-shell{max-width:800px;margin:0 auto}.topbar{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid var(--border);flex-wrap:wrap}.topbar .brand{font-weight:700;cursor:pointer}.topbar nav{flex:1}main{padding:1rem}.row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;margin:.5rem 0}.col{display:flex;flex-direction:column;gap:.5rem}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:8px;padding:1rem;margin:1rem 0}.card-ok{border-color:var(--ok)}.card-error{border-color:var(--error)}.muted{color:var(--muted);font-size:.9em}.warn{color:#b45309}button{border:1px solid var(--border);background:var(--card-bg);color:var(--fg);border-radius:6px;padding:.4rem .8rem;cursor:pointer}button.primary,button.active{background:var(--accent);color:#fff;border-color:var(--accent)}input,select,textarea{border:1px solid var(--border);border-radius:6px;padding:.4rem;background:var(--card-bg);color:var(--fg);font:inherit}label{display:block;margin:.5rem 0}pre{background:var(--bg);padding:.5rem;border-radius:6px;overflow-x:auto;white-space:pre-wrap}.pack-list,.sortable{list-style:none;padding:0}.pack-list-item,.schedule-unit{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--border)}.sortable li{display:flex;align-items:center;gap:.5rem}.sortable pre{flex:1}.option{display:flex;align-items:center;gap:.5rem}.badge{display:inline-block;font-size:.75em;text-transform:uppercase;background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:.1rem .4rem;margin-right:.5rem}.help-panel{margin-top:.75rem;padding:.75rem;background:var(--bg);border-radius:6px}.summary{font-weight:600}
