:root{--bg:#070a0f;--text:#eaf2ff;--muted:#9bb0c7;--line:rgba(70,120,170,.28);--panel:rgba(10,16,27,.92)}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;
background:radial-gradient(1200px 800px at 10% -10%, rgba(95,181,255,.18), transparent 60%),radial-gradient(1200px 800px at 90% 10%, rgba(53,208,127,.10), transparent 55%),var(--bg);
background-repeat:no-repeat;background-attachment:fixed;background-size:cover;
color:var(--text);font-family:system-ui}
a{color:inherit;text-decoration:none}
.topbar{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line);background:rgba(7,10,15,.86);backdrop-filter:blur(10px)}
.brand{display:flex;align-items:center;gap:12px}.mark{width:34px;height:34px;border-radius:12px;background:linear-gradient(135deg, rgba(95,181,255,.9), rgba(53,208,127,.75))}
.title{font-weight:900}.sub{color:var(--muted);font-size:12px}
.nav a{color:var(--muted);padding:8px 10px;border-radius:12px;border:1px solid transparent}.nav a:hover{color:var(--text);border-color:rgba(255,255,255,.08);background:rgba(255,255,255,.03)}
.wrap{flex:1;max-width:1150px;margin:0 auto;padding:18px;width:100%}
.grid{display:grid;grid-template-columns:1fr;gap:14px}@media(min-width:980px){.grid{grid-template-columns:1.2fr .8fr}}
.pill{background:linear-gradient(180deg, rgba(12,20,34,.92), rgba(10,16,27,.92));border:1px solid rgba(95,181,255,.20);border-radius:22px;padding:16px;box-shadow:0 0 0 1px rgba(255,255,255,.04) inset,0 18px 50px rgba(0,0,0,.45),0 0 30px rgba(80,160,255,.18)}
.head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}
.head h1{margin:0;font-size:22px}.head h2{margin:0;font-size:18px}
.muted{color:var(--muted)}
.form label{display:block;margin:10px 0 6px;color:var(--muted);font-size:13px}
.form input,.form select,.form textarea{width:100%;padding:10px 12px;border-radius:14px;border:1px solid rgba(95,181,255,.18);background:rgba(6,10,16,.75);color:var(--text);outline:none}
.row2{display:grid;grid-template-columns:1fr;gap:12px}@media(min-width:820px){.row2{grid-template-columns:1fr 1fr}}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:14px;border:1px solid rgba(95,181,255,.26);background:rgba(18,35,56,.85);color:var(--text);font-weight:900;cursor:pointer}
.btn.ghost{background:rgba(255,255,255,.03);border-color:rgba(255,255,255,.10);color:var(--muted)}
.list{display:flex;flex-direction:column;gap:10px}
.row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:rgba(5,8,13,.55)}
.rtitle{font-weight:900}.rsub{color:var(--muted);font-size:13px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chip{padding:6px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.10);background:rgba(16,24,36,.9);color:var(--muted);font-size:12px;font-weight:900}
.chip.offered{border-color:rgba(255,176,46,.35);color:rgba(255,176,46,.95)}
.chip.confirmed{border-color:rgba(53,208,127,.35);color:rgba(53,208,127,.95)}
.chip.cancelled{border-color:rgba(255,77,77,.35);color:rgba(255,77,77,.95)}
.filters{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0 14px}
.f{padding:7px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.02);color:var(--muted);font-weight:900;font-size:12px}
.f.on{border-color:rgba(95,181,255,.30);color:var(--text);background:rgba(95,181,255,.08)}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}@media(min-width:820px){.stats{grid-template-columns:1fr 1fr 1fr}}
.stat{border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:12px;background:rgba(5,8,13,.55)}.slabel{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.sval{font-size:22px;font-weight:900;margin-top:6px}
.kv{display:grid;grid-template-columns:1fr;gap:10px;margin-top:8px}@media(min-width:820px){.kv{grid-template-columns:1fr 1fr}}
.k{border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:12px;background:rgba(5,8,13,.55)}.klabel{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.kval{margin-top:6px;font-weight:800}
.notes{margin-top:12px;border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:12px;background:rgba(5,8,13,.55)}
.flash{margin:0 0 14px;padding:12px 14px;border-radius:16px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.03);font-weight:800}
.flash.good{border-color:rgba(53,208,127,.35)}.flash.bad{border-color:rgba(255,77,77,.35)}

/* Utilities for the unified edit page */
.divider{height:1px;background:rgba(255,255,255,.10);margin:18px 0;border:0}
.grid2{display:grid;grid-template-columns:1fr;gap:14px}@media(min-width:980px){.grid2{grid-template-columns:1fr 1fr}}
.h2{margin:0 0 10px;font-size:16px}
.table{width:100%;border-collapse:separate;border-spacing:0 8px}
.table th{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:rgba(255,255,255,.65);text-align:left;padding:0 10px}
.table td{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);padding:10px;border-left:none;border-right:none}
.table tr td:first-child{border-left:1px solid rgba(255,255,255,.08);border-top-left-radius:14px;border-bottom-left-radius:14px}
.table tr td:last-child{border-right:1px solid rgba(255,255,255,.08);border-top-right-radius:14px;border-bottom-right-radius:14px}
.footer{padding:18px;text-align:center;color:var(--muted);border-top:1px solid rgba(255,255,255,.06);margin-top:20px}
.tiny{font-size:12px;color:var(--muted)}
.hr{height:1px;background:rgba(255,255,255,.08);margin:14px 0}
.tag{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.02);color:var(--muted);font-weight:900;font-size:12px}
.tag.ok{border-color:rgba(53,208,127,.35);color:rgba(53,208,127,.95)}
.tag.warn{border-color:rgba(255,176,46,.35);color:rgba(255,176,46,.95)}
.tag.bad{border-color:rgba(255,77,77,.35);color:rgba(255,77,77,.95)}
.sect{margin:16px 0 8px;color:var(--muted);font-size:12px;letter-spacing:.18em;text-transform:uppercase}
