/* FORCE DEPLOYMENT - GEIST FONT & CALENDAR UX */
:root{
  --black:#000; --charcoal:#0a0a0a; --card:#1a1a1a; --yellow:#F4C430; --green:#4FFF4F; --red:#C41E3A; --text:#DADADA; --muted:#8A8A8A;
}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:linear-gradient(135deg,var(--black),var(--charcoal));color:var(--text);font-family:Inter,ui-sans-serif,system-ui,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";position:relative}
body::before{content:'';position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 50% 50%,rgba(244,196,48,0.03) 0%,transparent 50%);pointer-events:none;z-index:-1}
.wrap{max-width:1200px;margin:32px auto;padding:0 24px}
header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px}
h1{letter-spacing:2px;color:var(--yellow);font-weight:900;font-size:24px;text-transform:uppercase;font-family:'Geist',ui-sans-serif,system-ui}
.tag{color:var(--muted);font-size:12px;font-family:'Geist Mono',Monaco,Consolas,monospace;letter-spacing:0.5px}
.card{background:var(--card);border:1px solid #222;border-radius:10px;padding:16px 16px 12px 16px;box-shadow:0 0 0 1px #111,0 10px 30px rgba(0,0,0,0.5);margin-bottom:16px;position:relative}
.card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--yellow),transparent);opacity:0.3}
h2{margin:0 0 12px 0;color:var(--green);font-size:14px;letter-spacing:1px;text-transform:uppercase}
label{display:block;color:var(--muted);font-size:12px;margin-bottom:6px}
input,select,textarea{width:100%;padding:10px 12px;background:#111;border:1px solid #222;border-radius:8px;color:var(--text);font-family:inherit;font-size:inherit}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--yellow);box-shadow:0 0 0 2px rgba(244,196,48,0.15)}
textarea{resize:vertical;min-height:80px}
.date-inputs{display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px}
.time-inputs{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.grid .full{grid-column:1/-1}
.questions-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.question-block{position:relative}
.question-block label{color:var(--green);font-weight:600;text-transform:uppercase;letter-spacing:1px;font-size:11px}
.week-nav{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.week-nav button{background:#111;color:var(--text);border:1px solid #222;border-radius:8px;padding:8px 12px;cursor:pointer;transition:all 0.2s ease}
.week-nav button:hover{border-color:var(--yellow);box-shadow:0 0 6px rgba(244,196,48,0.15);transform:translateY(-1px);transition:all 0.2s ease}
.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:8px}
.slot{background:linear-gradient(145deg,#1a1a1a,#0a0a0a);color:#FFFFFF;border:2px solid #C41E3A;border-radius:12px;padding:14px 16px;cursor:pointer;transition:all 0.3s ease;font-weight:700;letter-spacing:0.8px;text-align:center;position:relative;box-shadow:0 4px 15px rgba(0,0,0,0.6),inset 0 1px 0 rgba(244,196,48,0.3),inset 0 -1px 0 rgba(196,30,58,0.3);text-shadow:0 2px 4px rgba(0,0,0,0.9);font-size:13px}
.slot::before{content:'';position:absolute;top:-1px;left:-1px;right:-1px;bottom:-1px;background:linear-gradient(45deg,#C41E3A,#F4C430,#C41E3A);border-radius:12px;z-index:-1;opacity:0.7}
.slot::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(244,196,48,0.1) 0%,transparent 50%,rgba(196,30,58,0.1) 100%);border-radius:10px;pointer-events:none}
.slot:hover{border-color:#4FFF4F;transform:translateY(-3px) scale(1.02);box-shadow:0 8px 25px rgba(79,255,79,0.4),0 0 20px rgba(79,255,79,0.3),inset 0 2px 0 rgba(79,255,79,0.4);color:#FFFFFF;animation:hud-pulse 0.3s ease}
.slot:hover::before{background:linear-gradient(45deg,#4FFF4F,#F4C430,#4FFF4F);opacity:0.9}
.slot.selected{border-color:#F4C430;transform:translateY(-2px) scale(1.05);box-shadow:0 10px 30px rgba(244,196,48,0.5),0 0 25px rgba(244,196,48,0.4),inset 0 2px 0 rgba(244,196,48,0.5);color:#FFFFFF;animation:hud-selected 0.5s ease}
.slot.selected::before{background:linear-gradient(45deg,#F4C430,#4FFF4F,#F4C430);opacity:1}
@keyframes hud-pulse{0%{box-shadow:0 4px 15px rgba(0,0,0,0.6)}50%{box-shadow:0 8px 25px rgba(79,255,79,0.4),0 0 20px rgba(79,255,79,0.3)}100%{box-shadow:0 8px 25px rgba(79,255,79,0.4),0 0 20px rgba(79,255,79,0.3)}}
@keyframes hud-selected{0%{transform:translateY(-2px) scale(1.02)}50%{transform:translateY(-2px) scale(1.08)}100%{transform:translateY(-2px) scale(1.05)}}
.actions{display:flex;align-items:center;gap:12px}
.cta{background:var(--green);color:#001d00;border:0;border-radius:10px;padding:12px 16px;font-weight:800;letter-spacing:0.5px;text-transform:uppercase;cursor:pointer;transition:filter 0.2s ease}
.cta:hover{filter:brightness(1.05)}
.status{color:var(--muted);font-size:12px}
#welcome{color:var(--yellow);margin-bottom:4px}

/* Calendar-style time slot layout */
.calendar-container{background:#0f0f0f;border:1px solid #333;border-radius:12px;padding:16px;margin-top:8px}
.calendar-header{display:grid;grid-template-columns:80px repeat(7,1fr);gap:8px;margin-bottom:12px}
.day-header{background:var(--card);color:var(--yellow);text-align:center;padding:8px 4px;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;border-radius:6px;font-family:'Geist',system-ui}
.time-slots-grid{display:grid;grid-template-columns:80px repeat(7,1fr);gap:8px;row-gap:4px}
.time-label{color:var(--muted);font-size:11px;font-weight:600;text-align:right;padding:8px 8px 8px 0;font-family:'Geist Mono',monospace;display:flex;align-items:center;justify-content:flex-end}
.time-slot{background:linear-gradient(145deg,#1a1a1a,#111);border:1px solid #333;border-radius:6px;padding:6px;cursor:pointer;transition:all 0.2s ease;font-size:10px;text-align:center;color:var(--text);min-height:32px;display:flex;align-items:center;justify-content:center;position:relative}
.time-slot:hover{border-color:var(--yellow);background:linear-gradient(145deg,#252525,#1a1a1a);transform:translateY(-1px);box-shadow:0 4px 12px rgba(244,196,48,0.25)}
.time-slot.selected{border-color:var(--yellow);background:linear-gradient(145deg,var(--yellow),#f4c430);color:#000;font-weight:700;transform:translateY(-1px);box-shadow:0 6px 20px rgba(244,196,48,0.4)}
.time-slot.unavailable{opacity:0.3;cursor:not-allowed;background:#0a0a0a;border-color:#222}
.time-slot.unavailable:hover{transform:none;box-shadow:none;border-color:#222}
.day-header.weekend{background:#111;color:var(--muted);opacity:0.5}
.time-slot.weekend{background:#080808;border-color:#1a1a1a;opacity:0.4;cursor:not-allowed}
.time-slot.weekend:hover{transform:none;box-shadow:none;border-color:#1a1a1a}

@media (max-width:900px){.grid{grid-template-columns:1fr 1fr}.slots{grid-template-columns:1fr 1fr}.calendar-header,.time-slots-grid{grid-template-columns:60px repeat(7,1fr)}}
@media (max-width:600px){.grid{grid-template-columns:1fr}.slots{grid-template-columns:1fr}.calendar-header,.time-slots-grid{grid-template-columns:50px repeat(7,minmax(0,1fr))}.day-header,.time-slot{font-size:9px;padding:4px 2px}.time-label{font-size:9px;padding:6px 4px 6px 0}}

