:root { --bg:#0c0d0f; --card:#222326; --card2:#2a2b2f; --gold:#e2bd62; --gold2:#ad8135; --cream:#fbf5eb; --muted:#bbb8b2; --danger:#e47664; }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; background:radial-gradient(circle at 50% -10%,#34302b 0,var(--bg) 48%); color:var(--cream); font-family:Arial,Helvetica,sans-serif; }
.shell { width:min(1040px,calc(100% - 32px)); margin:0 auto; padding:38px 0 54px; }
.brand { display:flex; justify-content:center; margin:0 auto 26px; }
.brand img { width:182px; height:auto; border-radius:18px; }
.eyebrow { color:var(--gold); font-size:12px; letter-spacing:.16em; font-weight:800; text-transform:uppercase; margin-bottom:11px; }
h1 { margin:0; font-size:clamp(29px,5vw,49px); line-height:1.06; letter-spacing:.01em; color:var(--gold); text-align:center; }
.lead { max-width:580px; margin:19px auto 36px; color:#e5e0d7; text-align:center; line-height:1.55; }
.grid { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(290px,.85fr); gap:22px; align-items:stretch; }
.card { padding:28px; min-height:410px; background:linear-gradient(145deg,#242528,#1e1f22); border:1px solid rgba(226,189,98,.52); border-radius:19px; box-shadow:0 18px 45px rgba(0,0,0,.34); }
h2 { margin:0 0 18px; font-size:25px; }
.date-tabs,.slots { display:flex; flex-wrap:wrap; gap:9px; }
.date-tab,.slot { border:1px solid rgba(226,189,98,.6); border-radius:12px; background:transparent; color:var(--cream); cursor:pointer; font:inherit; transition:.18s ease; }
.date-tab { min-width:100px; padding:10px 9px; font-size:13px; }
.date-tab strong { display:block; margin-top:3px; font-size:15px; }
.date-tab.active,.date-tab:hover { background:rgba(226,189,98,.16); border-color:var(--gold); }
.slots { margin-top:23px; }
.slot { width:calc(25% - 7px); padding:15px 9px; background:var(--cream); color:#161616; border:none; font-size:18px; font-weight:800; }
.slot:hover,.slot.active { transform:translateY(-2px); background:var(--gold); }
.hint,.status { margin-top:17px; color:var(--muted); font-size:14px; line-height:1.5; }
.notice { min-height:58px; padding:15px; background:#303135; border-radius:10px; color:#eee8dd; line-height:1.45; }
.field { display:block; margin-top:14px; color:#ded9cf; font-size:13px; font-weight:700; }
input,select { width:100%; margin-top:7px; padding:13px 14px; border:1px solid #77726a; border-radius:10px; background:#f9f3e8; color:#181818; font:inherit; }
.button { width:100%; margin-top:19px; padding:15px; border:none; border-radius:10px; cursor:pointer; background:linear-gradient(135deg,var(--gold),var(--gold2)); color:#171513; font:inherit; font-weight:800; font-size:16px; }
.button:disabled { opacity:.45; cursor:not-allowed; }
.admin-link { display:inline-block; margin-top:25px; color:var(--gold); font-size:14px; }
.success { color:#94e29c; }.error { color:var(--danger); }.empty { padding:26px 0; color:var(--muted); }
.topline { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:24px; }.topline h1{text-align:left;font-size:34px}.topline a{color:var(--gold)}
.list { margin-top:24px; display:grid; gap:10px; }.list-item { border:1px solid #514e48; border-radius:11px; padding:14px; background:#292a2d; }.list-item b{color:var(--gold)}
@media (max-width:760px){.shell{width:min(100% - 24px,540px);padding-top:25px}.grid{grid-template-columns:1fr}.card{min-height:0;padding:22px}.slot{width:calc(50% - 5px)}.date-tab{flex:1;min-width:82px}.topline{align-items:flex-start;flex-direction:column}.topline h1{text-align:left}.brand img{width:150px}}
