@import url('https://fonts.googleapis.com/css2?family=Belleza&family=Cinzel:wght@400;500;600&family=Roboto:wght@400;500;600;700&display=swap');
:root{--bg:#101b12;--surface:#19271b;--surface2:#203423;--gold:#ffdf58;--text:#f3f2f0;--muted:#acb7ac;--line:#ffffff20;--green:#8fc9a2;--red:#f2a291;font-family:Roboto,Arial,sans-serif;color:var(--text);background:var(--bg);font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}a{color:inherit;text-underline-offset:4px}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:4px}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Belleza,Georgia,serif;font-weight:400}h3{font-size:16px;font-weight:500}p{line-height:1.65}h1{font-size:48px;line-height:1.08}h2{font-size:38px;margin-bottom:12px}.eyebrow{font-size:10px;letter-spacing:2.8px;font-weight:600;line-height:1.5}.gold{color:var(--gold)}.muted,.optional{color:var(--muted)}.site-header{height:105px;margin:auto;padding:12px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);background:#101b12}.brand{display:flex;align-items:center;height:80px}.brand img{width:154px;height:80px;object-fit:contain}.back-link{font-family:Cinzel,Georgia,serif;font-size:12px;letter-spacing:1px;text-decoration:none}.back-link span{margin-left:22px;color:var(--gold);font-size:20px}.reservation-layout{display:grid;grid-template-columns:46% 54%;max-width:1600px;margin:auto}.atmosphere{position:relative;min-height:930px;overflow:hidden}.atmosphere>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:50% 50%}.photo-shade{position:absolute;inset:0;background:linear-gradient(180deg,#06150910 10%,#09180d22 30%,#09180de6 95%)}.atmosphere-copy{position:absolute;bottom:0;left:0;right:0;padding:64px 11% 30px}.atmosphere h1{font-size:clamp(42px,4.5vw,70px);margin:24px 0;color:#fffbea}.atmosphere-copy>p:not(.eyebrow){font-size:16px;color:#e4e9e0;line-height:1.8}.photo-footer{display:flex;justify-content:space-between;border-top:1px solid #ffffff50;margin-top:70px;padding-top:22px;gap:12px;font-size:9px;letter-spacing:2px}.booking-panel{padding:45px 9% 35px}.booking-panel h2{font-size:45px}.intro{font-size:14px;margin-bottom:30px}.section-title{display:flex;align-items:center;gap:12px;margin:27px 0 16px}.section-title span{font-family:Cinzel,serif;font-size:11px;color:var(--gold);border:1px solid #ffdf5850;border-radius:50%;width:27px;height:27px;display:grid;place-items:center}.section-title h3{margin:0}.fields{display:grid;gap:16px}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.two{grid-template-columns:repeat(2,minmax(0,1fr))}label{display:block;font-size:12px;line-height:1.4;margin-bottom:16px;color:#e1e7dd}input,select,textarea{width:100%;min-height:45px;background:#ffffff04;color:var(--text);border:1px solid #ffffff30;border-radius:4px;padding:12px;margin-top:8px;font-size:14px}input::placeholder,textarea::placeholder{color:#8a978b}select{padding-right:22px}select option{background:#19271b}textarea{resize:vertical;min-height:63px}.optional{font-size:11px;margin-left:5px}.zone-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.zone-option{position:relative;border:1px solid #ffffff25;border-radius:5px;padding:16px 10px 12px;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;min-height:132px;margin:0;background:#ffffff03}.zone-option:has(input:checked){border-color:var(--gold);background:#ffdf5809}.zone-option:has(input:disabled){opacity:.45;cursor:not-allowed}.zone-option input{position:absolute;right:10px;top:10px;width:13px;height:13px;min-height:0;margin:0;accent-color:var(--gold)}.zone-option strong{font-size:12px;font-weight:500}.zone-option small{font-size:10px;color:var(--muted);margin-top:6px}.zone-option em{font-size:9px;font-style:normal;color:var(--green);margin-top:14px}.zone-icon{font-size:25px;color:var(--gold);height:40px}.check{display:flex;gap:10px;align-items:flex-start;font-size:11px;line-height:1.7;margin:16px 0}.check input{width:15px;height:15px;min-height:0;margin:2px 0;accent-color:var(--gold)}.primary{border:1px solid var(--gold);background:var(--gold);color:#162211;min-height:47px;padding:13px 22px;font-size:12px;font-family:Cinzel,Georgia,serif;font-weight:600;letter-spacing:.5px;border-radius:3px;display:inline-flex;align-items:center;justify-content:space-between;gap:20px}.primary:hover{background:#ffe981}.full{width:100%}.primary span{font-size:20px}.form-footnote{font-size:10px;color:var(--muted);line-height:1.8;margin:14px 0 0}.site-footer{display:flex;gap:25px;justify-content:center;border-top:1px solid var(--line);padding:25px;font-size:10px;color:var(--muted)}.site-footer span{margin-right:auto}.site-footer a{text-decoration:none}.message{color:var(--red);font-size:13px;margin:12px 0;min-height:0}.message:empty{display:none}.demo-banner{background:#ffdf5820;border-bottom:1px solid #ffdf5840;color:#ffdf58;font-size:11px;padding:10px 5%;text-align:center;line-height:1.6}.success{padding:70px 0}.success h2{margin:25px 0}.success p{color:var(--muted);font-size:15px}.success-mark{display:grid;place-items:center;width:65px;height:65px;border:1px solid var(--gold);border-radius:50%;font-size:30px;color:var(--gold);margin-bottom:35px}.confirmation-code{font-family:Cinzel,serif;font-size:25px;letter-spacing:4px;border:1px dashed #ffdf5870;padding:24px;margin:25px 0;color:var(--gold)}.header-actions{display:flex;align-items:center;gap:16px}.header-actions .eyebrow{margin:0}.quiet{background:#ffffff05;border:1px solid var(--line);border-radius:4px;color:var(--text);padding:11px 16px;min-height:42px;font-size:12px}.quiet:hover{background:#ffffff12}.login-card{max-width:440px;margin:65px auto;padding:36px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.login-card h1{font-size:38px}.login-card>p{font-size:13px}.login-card form{margin:28px 0}.small-link{font-size:12px;color:var(--muted)}.dashboard{padding:35px 4% 50px;max-width:1700px;margin:auto}.dashboard-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.dashboard-heading h1{font-size:36px;margin-bottom:24px}.toolbar{display:flex;align-items:center;gap:18px;margin:10px 0 25px}.toolbar label{margin:0;width:170px}.toolbar .quiet{margin-top:23px}.sync{font-size:11px;color:var(--muted);margin-left:auto}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:25px}.stats article{border:1px solid var(--line);background:var(--surface);padding:20px;border-radius:6px;display:flex;flex-direction:column;gap:12px}.stats span{font-size:11px;color:var(--muted)}.stats strong{font-family:Belleza,serif;font-size:36px;font-weight:400}.stats article:nth-child(3) strong{color:var(--gold)}.operations{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;align-items:start}.surface{background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:24px;min-width:0}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:22px}.panel-heading h2{font-size:27px;margin:0}.panel-heading .muted{font-size:11px}.tabs{display:flex;border-bottom:1px solid var(--line);gap:12px;margin-bottom:24px}.tabs button{border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);padding:10px 2px 14px;font-size:12px}.tabs button.active{color:var(--gold);border-bottom-color:var(--gold)}.map-wrap{overflow:auto}.floorplan{position:relative;height:350px;min-width:410px;border:3px double #ffffff35;background:linear-gradient(90deg,#ffffff03 1px,transparent 1px),linear-gradient(#ffffff03 1px,transparent 1px);background-size:25px 25px;border-radius:3px;margin:12px 6px 18px}.floor-table{position:absolute;transform:translate(-50%,-50%);width:53px;height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#baddc5;background:#294532;border:1px solid #82bc9460;border-radius:7px;z-index:1;padding:0}.floor-table:before,.floor-table:after{content:'';position:absolute;width:30px;height:5px;background:#577360;border-radius:3px;left:10px;top:-8px}.floor-table:after{top:auto;bottom:-8px}.floor-table small{font-size:9px}.floor-table strong{font-size:12px;font-weight:500}.floor-table.round{border-radius:50%;width:36px;height:36px}.floor-table.round:before,.floor-table.round:after{width:5px;height:16px;left:-8px;top:9px}.floor-table.round:after{left:auto;right:-8px}.floor-table.booth{border-radius:3px;width:54px;height:51px}.floor-table.booth:before,.floor-table.booth:after{width:56px;height:9px;left:-2px;top:-13px}.floor-table.booth:after{top:auto;bottom:-13px}.floor-table.confirmed{background:#59512b;border-color:#dec570;color:#ffdf85}.floor-table.pending{background:#60432d;border-color:#e7a66a;color:#f8c394}.floor-table.arrived{background:#314d61;border-color:#8ab8d5;color:#b0d8ee}.floor-table:hover{outline:2px solid var(--gold);outline-offset:5px}.map-fixture{position:absolute;left:34%;top:74%;width:30%;height:12%;border:1px solid #ffffff35;display:grid;place-items:center;font-size:10px;letter-spacing:3px;color:var(--muted)}.map-entry{position:absolute;bottom:-10px;left:45%;background:var(--surface);padding:3px 10px;font-size:8px;letter-spacing:2px;color:var(--muted)}.legend{display:flex;flex-wrap:wrap;gap:14px;font-size:10px;color:var(--muted)}.legend span{display:flex;align-items:center;gap:5px}.legend i{width:7px;height:7px;border-radius:50%;display:inline-block}.free-dot{background:#8fc9a2}.confirmed-dot{background:#dec570}.pending-dot{background:#e7a66a}.arrived-dot{background:#8ab8d5}.plan-note{font-size:10px;color:var(--muted);margin:20px 0 0;line-height:1.8}.count{border:1px solid var(--line);padding:4px 8px;border-radius:4px;font-size:12px;color:var(--gold)}.list-controls{display:grid;grid-template-columns:1.2fr 1fr;gap:10px;margin-bottom:20px}.list-controls input,.list-controls select{margin:0;font-size:11px;min-width:0}.reservation-list{display:flex;flex-direction:column;gap:12px;max-height:650px;overflow:auto}.reservation-card{padding:17px;background:#ffffff03;border:1px solid var(--line);border-radius:5px;width:100%;text-align:left;color:var(--text)}.reservation-card:hover{border-color:#ffdf5880}.reservation-card .row{display:flex;justify-content:space-between;gap:12px;align-items:center}.reservation-card strong{font-size:14px}.reservation-card p{font-size:11px;color:var(--muted);margin:9px 0 0}.reservation-card .time{font-family:Belleza,serif;font-size:23px;color:var(--gold)}.badge{font-size:9px;border-radius:20px;padding:5px 9px;display:inline-block;background:#ffffff12;white-space:nowrap}.badge.pending{background:#e7a66a20;color:#f8c394}.badge.confirmed{background:#ffdf5820;color:#ffdf85}.badge.arrived{background:#8ab8d520;color:#b0d8ee}.empty{padding:65px 12px;text-align:center;color:var(--muted);font-size:14px;line-height:1.8;border:1px dashed var(--line);border-radius:5px}.empty span{display:block;font-size:35px;color:var(--gold);margin-bottom:12px}dialog{background:var(--surface);color:var(--text);border:1px solid #ffffff30;border-radius:8px;padding:28px;width:min(600px,calc(100% - 30px));max-height:90vh}dialog::backdrop{background:#030b07bb;backdrop-filter:blur(4px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.dialog-heading h2{font-size:30px;margin:0}.close{background:none;border:0;color:var(--text);font-size:30px;line-height:1;padding:4px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:25px 0}.detail-grid small{display:block;color:var(--muted);font-size:11px;margin-bottom:6px}.detail-grid p{margin:0;font-size:14px;overflow-wrap:anywhere}.action-row{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.table-choices{display:flex;flex-wrap:wrap;gap:8px}.table-choice{position:relative;display:inline-flex;align-items:center;gap:6px;background:#ffffff05;border:1px solid var(--line);border-radius:4px;padding:9px;margin:0;cursor:pointer}.table-choice:has(input:checked){border-color:var(--gold);color:var(--gold)}.table-choice input{width:14px;min-height:0;margin:0;accent-color:var(--gold)}.table-choice:has(input:disabled){opacity:.35}.config-note{background:#ffdf580b;border-left:2px solid #ffdf5880;padding:15px;color:#dbcf9e;font-size:12px;line-height:1.7}#settings-dialog h3{margin-top:30px}#settings-dialog .muted{font-size:12px}#table-form button{align-self:center;margin-top:8px}.legal{max-width:750px;margin:60px auto;padding:0 25px}.legal p{color:var(--muted);font-size:15px}
@media(min-width:1500px){.booking-panel{padding-top:60px}.atmosphere{min-height:1000px}}@media(max-width:1100px){.booking-panel{padding:35px 6%}.zone-options{gap:6px}.zone-option{padding:15px 8px}.zone-option small{font-size:9px}.operations{grid-template-columns:1fr 1fr}.surface{padding:18px}.floorplan{height:320px}.dashboard{padding:30px 3%}.dashboard-heading h1{font-size:30px}}@media(max-width:820px){.site-header{height:80px;padding:8px 5%}.brand,.brand img{height:63px;width:122px}.reservation-layout{grid-template-columns:1fr}.atmosphere{min-height:280px}.atmosphere-copy{padding:25px 6%;bottom:0}.atmosphere h1{font-size:38px;margin:10px 0}.atmosphere-copy>p:not(.eyebrow),.photo-footer{display:none}.atmosphere-copy .eyebrow{font-size:9px;margin:0}.atmosphere>img{object-position:center 44%}.booking-panel{padding:32px 6%}.booking-panel h2{font-size:38px}.operations{grid-template-columns:1fr}.stats{gap:10px}.stats article{padding:15px}.stats span{font-size:10px}.dashboard-heading{align-items:flex-start}.dashboard-heading .primary{font-size:10px;padding:10px 12px;white-space:nowrap}.floorplan{height:360px}.dashboard-heading h1{font-size:29px}.toolbar{flex-wrap:wrap}.sync{width:100%;margin:0}.dashboard .eyebrow{font-size:9px}.header-actions{gap:8px}.header-actions .quiet{font-size:10px;padding:8px}.header-actions>.eyebrow{display:none}}@media(max-width:480px){.back-link{font-size:9px}.back-link span{margin-left:8px}.fields{gap:10px}.three{grid-template-columns:1.2fr 1fr 1fr}.fields input,.fields select{padding:10px 7px;font-size:12px}.zone-option strong{font-size:10px}.zone-option small{font-size:9px}.zone-option em{font-size:9px}.zone-icon{font-size:23px}.zone-option{min-height:125px}.booking-panel .two{grid-template-columns:1fr}.booking-panel .two label{margin-bottom:5px}.booking-panel .two{margin-bottom:16px}.site-footer{padding:22px 5%;gap:15px;font-size:9px}.stats{grid-template-columns:1fr 1fr}.dashboard-heading{display:block}.dashboard-heading>.primary{margin-bottom:12px}.toolbar{gap:10px}.toolbar label{width:calc(50% - 5px)}.toolbar .quiet{margin:0}.login-card{margin:30px 16px;padding:28px}.floorplan{min-width:370px}.floor-table{width:45px}.floor-table:before,.floor-table:after{left:7px}.floor-table.booth{width:44px}.floor-table.booth:before,.floor-table.booth:after{width:46px}.surface{padding:14px}.list-controls{grid-template-columns:1fr}.tabs{gap:15px}.tabs button{font-size:10px}.detail-grid{gap:12px}dialog{padding:20px}.zone-option input{right:7px}}
