:root{color-scheme:light;font-family:Space Grotesk,Segoe UI,sans-serif;line-height:1.5;font-weight:400;--bg: #0e1116;--bg-soft: #141a22;--surface: #1b2430;--surface-strong: #202b39;--text: #f7f8fb;--muted: #b7c0cb;--accent: #ff7a59;--accent-2: #2dd4bf;--accent-3: #f5c542;--danger: #ff5d5d;--success: #22c55e;--border: rgba(247, 248, 251, .1);--shadow: 0 20px 50px rgba(0, 0, 0, .35)}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;background:radial-gradient(circle at 10% 10%,rgba(255,122,89,.18),transparent 40%),radial-gradient(circle at 85% 15%,rgba(45,212,191,.18),transparent 45%),linear-gradient(160deg,#0b0f14,#121822 40%,#0d1015);color:var(--text)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.08) 1px,transparent 1px);background-size:80px 80px;opacity:.15}a{color:inherit;text-decoration:none}button{font-family:inherit}img{max-width:100%}.container{width:min(1200px,92vw);margin:0 auto}.section{padding:96px 0}.nav{position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0c1016b3;border-bottom:1px solid var(--border)}.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:18px 0}.brand{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:700;letter-spacing:.4px}.brand-badge{width:36px;height:36px;border-radius:12px;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 8px 24px #ff7a5966}.nav-links{display:flex;align-items:center;gap:20px;font-size:15px;color:var(--muted)}.nav-links a{transition:color .2s ease}.nav-links a:hover{color:var(--text)}.nav-actions{display:flex;align-items:center;gap:12px}.badge{padding:6px 12px;border-radius:999px;background:#ff7a5929;color:var(--accent);font-size:12px;font-weight:600}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:999px;border:1px solid transparent;background:var(--surface);color:var(--text);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border .2s ease}.button:hover{transform:translateY(-1px);box-shadow:0 12px 30px #0003}.button.primary{background:linear-gradient(135deg,var(--accent),#ff9b76);color:#0b0f14;border:none}.button.ghost{background:transparent;border-color:var(--border);color:var(--text)}.hero{display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:center;padding-top:48px}.hero-title{font-family:Fraunces,serif;font-size:clamp(2.6rem,3vw + 2rem,4.5rem);line-height:1.05}.hero-subtitle{margin-top:16px;color:var(--muted);font-size:1.1rem}.hero-card{padding:28px;border-radius:24px;background:linear-gradient(160deg,#ffffff14,#ffffff05);border:1px solid var(--border);box-shadow:var(--shadow)}.grid{display:grid;gap:24px}.grid.cols-3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.grid.split{grid-template-columns:1fr 1.2fr}.grid.split-wide{grid-template-columns:1.4fr 1fr}.card{padding:24px;border-radius:20px;background:var(--surface);border:1px solid var(--border);box-shadow:0 18px 40px #00000040}.card h3{margin-bottom:10px}.card p{color:var(--muted)}.panel{padding:24px;border-radius:18px;background:var(--surface-strong);border:1px solid var(--border)}.form{display:grid;gap:16px}.input,select,textarea{width:100%;padding:12px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.15);background:#0a0c10a6;color:var(--text)}.input:focus,select:focus,textarea:focus{outline:2px solid rgba(255,122,89,.4);border-color:#ff7a5999}.label{font-size:.85rem;color:var(--muted)}.table{width:100%;border-collapse:collapse;font-size:.95rem}.table th,.table td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--border)}.tag{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:#2dd4bf26;color:var(--accent-2);font-size:12px;font-weight:600}.stack{display:grid;gap:12px}.notice{padding:12px 16px;border-radius:12px;background:#ff7a5926;border:1px solid rgba(255,122,89,.35);color:var(--text)}.fade-up{animation:fadeUp .8s ease both}.schedule-grid{display:grid;grid-template-columns:80px repeat(7,minmax(90px,1fr));gap:8px;overflow-x:auto}.schedule-row{display:contents}.schedule-cell{border-radius:10px;padding:10px;border:1px solid var(--border);background:#0a0c108c;color:var(--muted);text-align:center;font-size:.85rem}.schedule-cell.header{background:#ffffff0f;color:var(--text);font-weight:600}.schedule-cell.time{background:#ffffff0a;font-weight:600}.schedule-cell.slot{cursor:pointer;transition:all .2s ease;text-align:left;display:flex;flex-direction:column;justify-content:center;gap:4px}.schedule-cell.slot .slot-title{font-weight:600;color:var(--text)}.schedule-cell.slot .slot-sub{font-size:.75rem;color:var(--muted)}.schedule-cell.slot.booked{border-color:#2dd4bf73}.schedule-cell.slot:hover{border-color:#ffffff59;color:var(--text)}.schedule-cell.slot.selected{background:#ff7a5938;border-color:#ff7a5980;color:var(--text)}.schedule-cell.slot.dragging{opacity:.6}.schedule-cell.slot.drag-over{outline:2px dashed rgba(255,255,255,.5);outline-offset:2px}.schedule-cell.slot.locked{background:#2dd4bf2e;border-color:#2dd4bf66;color:var(--text);cursor:not-allowed}@media print{body{background:#fff;color:#111}body:before{display:none}.nav,.no-print,.button,.notice{display:none!important}.section{padding:16px 0}.panel{background:transparent;border:none;box-shadow:none;padding:0}.schedule-cell{background:#fff;color:#111;border:1px solid #ccc}.schedule-cell.header{background:#f2f2f2}}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 900px){.nav-links{display:none}.nav-inner{flex-wrap:wrap;gap:12px}.nav-actions{width:100%;justify-content:flex-end;flex-wrap:wrap}.hero{padding-top:24px}.section{padding:72px 0}.grid.split,.grid.split-wide{grid-template-columns:1fr}}@media (max-width: 720px){.section{padding:56px 0}.panel,.card{padding:18px}.brand{font-size:18px}.nav-actions{justify-content:flex-start}.table{display:block;overflow-x:auto;white-space:nowrap}}
