:root{--usafa-blue: #003594;--usafa-blue-dark: #002566;--accent: #4a90d9;--bg: #f4f6fb;--card: #ffffff;--text: #17233b;--muted: #5b6b85;--danger: #b3261e;--border: #d8e0ee;font-family:Segoe UI,system-ui,-apple-system,sans-serif}@media(prefers-color-scheme:dark){:root{--bg: #10182a;--card: #1a2540;--text: #e8edf7;--muted: #9fb0cc;--border: #2c3b60;--danger: #ff8a80}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);line-height:1.5}.page{max-width:860px;margin:0 auto;padding:1.5rem 1rem 3rem}.hero h1{color:var(--usafa-blue);margin-bottom:.25rem}@media(prefers-color-scheme:dark){.hero h1{color:#8fb4ff}}.disclaimer{font-size:.9rem;color:var(--muted)}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1.25rem;margin:1rem 0;box-shadow:0 1px 3px #0a193c14}h2{font-size:1.15rem;margin-top:.5rem}.field-row{display:flex;flex-wrap:wrap;gap:1rem;margin:.75rem 0}.field-row label{display:flex;flex-direction:column;gap:.3rem;font-weight:600;flex:1 1 220px}input[type=text],select{padding:.55rem .7rem;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);font-size:1rem;font-weight:400}fieldset{border:1px solid var(--border);border-radius:10px;margin:.75rem 0;padding:.75rem 1rem}legend{font-weight:600;padding:0 .4rem}.daytype{display:flex;gap:1.25rem;align-items:center;flex:1 1 220px;margin:0}.radio{display:flex;gap:.4rem;align-items:center;font-weight:500}.period-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.6rem}.period{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;border:1px solid var(--border);border-radius:10px;padding:.6rem .7rem;cursor:pointer;position:relative}.period input{position:absolute;top:.6rem;right:.6rem}.period.selected{border-color:var(--usafa-blue);outline:2px solid var(--accent)}.period-name{font-weight:700}.period-time{font-variant-numeric:tabular-nums;color:var(--muted);font-size:.9rem}button.primary{background:var(--usafa-blue);border:none;color:#fff;font-size:1rem;font-weight:600;border-radius:10px;padding:.7rem 1.2rem;cursor:pointer}button.primary:hover:not(:disabled){background:var(--usafa-blue-dark)}button.primary:disabled{opacity:.5;cursor:not-allowed}button.link{background:none;border:none;color:var(--usafa-blue);cursor:pointer;font-size:.95rem;padding:.2rem .4rem;text-decoration:underline}@media(prefers-color-scheme:dark){button.link{color:#8fb4ff}}button.link.danger{color:var(--danger)}.cart-list{list-style:none;margin:0;padding:0}.cart-item{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.6rem 0;border-bottom:1px solid var(--border)}.cart-actions{display:flex;gap:.25rem;flex-shrink:0}.checkbox-option{display:flex;align-items:baseline;gap:.5rem;margin:.75rem 0;cursor:pointer}.import-tips{margin:0;padding-left:1.2rem}.import-tips li{margin-bottom:.5rem}.muted{color:var(--muted)}.editing-badge{color:var(--usafa-blue);font-style:italic;font-size:.85rem}@media(prefers-color-scheme:dark){.editing-badge{color:#8fb4ff}}.small{font-size:.85rem}.error{color:var(--danger);font-weight:600}.turnstile-box{min-height:66px}.footer{margin-top:2rem;border-top:1px solid var(--border);padding-top:1rem}a{color:var(--usafa-blue)}@media(prefers-color-scheme:dark){a{color:#8fb4ff}}
