:root{--bg:#fff;--ink:#000;--ink-2:#525252;--ink-3:#737373;--ink-4:#a3a3a3;--line:#e5e5e5;--line-2:#f0f0f0;--tint:#fafafa;--ok:#059669;--warn:#dc2626;--sans:"Helvetica Neue", Helvetica, Arial, sans-serif;font-family:var(--sans);color:var(--ink);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{background:var(--bg);margin:0;padding:0}body{color:var(--ink);font-size:14px;line-height:1.5}button{cursor:pointer;color:inherit;background:0 0;border:none;padding:0;font-family:inherit}input,textarea{color:var(--ink);background:var(--bg);border:1px solid var(--line);-webkit-appearance:none;border-radius:0;outline:none;width:100%;padding:12px 14px;font-family:inherit;font-size:14px}input:focus,textarea:focus{border-color:var(--ink)}textarea{resize:vertical;min-height:80px;font-family:inherit}.uppercase{text-transform:uppercase;letter-spacing:.5px;font-weight:900}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.sk{background:linear-gradient(90deg,#f4f4f4 0%,#fafafa 50%,#f4f4f4 100%) 0 0/200% 100%;animation:1.4s linear infinite shimmer}.app{max-width:760px;margin:0 auto;padding:40px 24px 60px}@media (width<=600px){.app{padding:24px 16px 40px}}.brand{letter-spacing:1px;text-transform:uppercase;color:var(--ink);align-items:center;gap:10px;margin-bottom:28px;font-size:9px;font-weight:900;display:flex}.brand .dot{background:var(--ink);width:6px;height:6px}.title{letter-spacing:-.6px;margin:0 0 6px;font-size:28px;font-weight:700;line-height:1.15}.subtitle{color:var(--ink-3);margin:0 0 28px;font-size:13px}.meta{border:1px solid var(--line);letter-spacing:.4px;text-transform:uppercase;color:var(--ink-2);flex-wrap:wrap;gap:18px;margin-bottom:28px;padding:14px 18px;font-size:11px;display:flex}.meta strong{color:var(--ink);font-weight:900}.section-label{letter-spacing:1px;text-transform:uppercase;color:var(--ink-4);margin:0 0 12px;font-size:9px;font-weight:900}.dates{grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:28px;display:grid}@media (width<=600px){.dates{grid-template-columns:repeat(5,1fr)}}.date{border:1px solid var(--line);background:var(--bg);text-align:center;flex-direction:column;align-items:center;padding:10px 4px;transition:border-color .1s,background .1s;display:flex}.date:not(:disabled):hover{border-color:var(--ink)}.date.selected{background:var(--ink);color:#fff;border-color:var(--ink)}.date:disabled{opacity:.3;cursor:not-allowed}.date .dow{letter-spacing:.6px;text-transform:uppercase;margin-bottom:4px;font-size:9px;font-weight:900}.date .num{letter-spacing:-.5px;font-size:18px;font-weight:700}.date .mon{letter-spacing:.5px;text-transform:uppercase;color:var(--ink-3);margin-top:2px;font-size:8px}.date.selected .mon{color:#fff;opacity:.7}.slots{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}@media (width<=600px){.slots{grid-template-columns:repeat(3,1fr)}}.slot{border:1px solid var(--line);text-align:center;letter-spacing:.3px;background:var(--bg);font-variant-numeric:tabular-nums;padding:12px 8px;font-size:12px;font-weight:700}.slot:hover{border-color:var(--ink)}.form{margin-top:12px}.form-row{margin-bottom:14px}.label{letter-spacing:.8px;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px;font-size:9px;font-weight:900;display:block}.optional{color:var(--ink-4);font-weight:400}.btn-row{gap:8px;margin-top:22px;display:flex}.btn{letter-spacing:1px;text-transform:uppercase;background:var(--ink);color:#fff;border:1px solid var(--ink);flex:1;padding:14px 22px;font-size:11px;font-weight:900}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.ghost{background:var(--bg);color:var(--ink);flex:none}.back{letter-spacing:.8px;text-transform:uppercase;color:var(--ink-3);margin-bottom:14px;font-size:10px;font-weight:900;display:inline-block}.back:hover{color:var(--ink)}.confirmed{text-align:center;padding:32px 0}.confirmed .check{border:2px solid var(--ok);width:56px;height:56px;color:var(--ok);border-radius:50%;justify-content:center;align-items:center;margin-bottom:18px;font-size:28px;display:inline-flex}.confirmed h2{letter-spacing:-.4px;margin:0 0 8px;font-size:22px;font-weight:700}.confirmed p{color:var(--ink-3)}.detail-row{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:12px 0;font-size:13px;display:flex}.detail-row:last-child{border-bottom:none}.detail-row .k{letter-spacing:1px;text-transform:uppercase;color:var(--ink-3);flex:none;font-size:9px;font-weight:900}.detail-row .v{color:var(--ink);text-align:right;word-break:break-word;font-weight:500}.detail-row .v a{color:var(--ink)}.detail-card{border:1px solid var(--line);text-align:left;margin:22px 0;padding:4px 18px}.error{border:1px solid var(--warn);color:var(--warn);margin-top:14px;padding:10px 14px;font-size:12px}.empty{border:1px solid var(--line);text-align:center;color:var(--ink-3);padding:28px 16px;font-size:12px}.divider{background:var(--line);height:1px;margin:28px 0}
