:root{--bg:#fff;--bg-raised:#f7f4f0;--bg-card:#f2ede8;--border:#e5dfd8;--text:#7a726a;--text-h:#1a1714;--accent:#e8502a;--accent-dim:#e8502a1a;--accent-border:#e8502a4d;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}*,:before,:after{box-sizing:border-box}body{background:var(--bg);margin:0}#root{width:100%;min-height:100svh}h1,h2,h3{color:var(--text-h);margin:0}p{margin:0}ul{margin:0;padding:0}input,select,button{font-family:inherit}.app{width:100%;max-width:560px;margin:0 auto;padding:0 0 60px}.app-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:clamp(14px,4vw,28px) clamp(12px,4vw,20px) clamp(12px,3vw,20px);display:flex}.app-title{flex-direction:column;gap:2px;display:flex}.app-byline{color:var(--text);opacity:.4;letter-spacing:.01em;margin:0;font-size:10px}.app-header h1{color:var(--accent);letter-spacing:-.02em;margin:0;font-family:Fraunces,Georgia,serif;font-size:clamp(20px,5.5vw,28px);font-weight:900}.progress{color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-border);white-space:nowrap;border-radius:20px;padding:3px 10px;font-size:clamp(11px,3vw,13px);font-weight:700}section{border-bottom:1px solid var(--border);padding:clamp(12px,3.5vw,20px) clamp(12px,4vw,20px)}section h2{color:var(--text-h);letter-spacing:-.01em;margin:0 0 12px;font-family:Fraunces,Georgia,serif;font-size:clamp(15px,4vw,18px);font-weight:700}.add-row{align-items:stretch;gap:6px;display:flex}.time-select{border:1.5px solid var(--border);background:var(--bg);color:var(--text-h);appearance:none;text-align:center;border-radius:8px;flex:none;width:clamp(72px,19vw,88px);padding:11px 6px;font-size:clamp(14px,3.8vw,16px);font-weight:600}.time-select:focus{border-color:var(--accent);outline:none}.tables-input{border:1.5px solid var(--border);background:var(--bg);min-width:0;color:var(--text-h);border-radius:8px;outline:none;flex:1;padding:11px 10px;font-size:clamp(14px,3.8vw,16px)}.tables-input::placeholder{color:var(--text);opacity:.7}.tables-input:focus{border-color:var(--accent)}.btn-add{background:var(--accent);color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;white-space:nowrap;border:none;border-radius:8px;flex:none;padding:11px clamp(12px,3.5vw,18px);font-size:clamp(13px,3.5vw,14px);font-weight:700}.btn-add:active{background:#c42}.error{color:var(--accent);margin:8px 0 0;font-size:13px}.import-msg{color:var(--text);opacity:1;margin:8px 0 0;font-size:13px;transition:opacity 1s}.import-msg.fading{opacity:0}.booking-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.booking-item{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;align-items:center;gap:8px;padding:10px 12px;display:flex}.booking-time{color:var(--accent);white-space:nowrap;font-size:clamp(13px,3.5vw,15px);font-weight:700}.booking-tables{color:var(--text-h);flex:1;min-width:0;font-size:clamp(13px,3.5vw,14px)}.btn-remove{color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;opacity:.5;background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:22px;line-height:1}.btn-remove:active{opacity:1;color:var(--accent)}.section-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.section-header h2{margin:0}.hide-seat-toggle{color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.hide-seat-toggle input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.btn-clear{color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-shrink:0;padding:4px 0;font-size:13px;font-weight:600}.btn-clear:active{color:var(--accent)}.checklist{flex-direction:column;gap:5px;margin:0;padding:0;list-style:none;display:flex}.checklist-item{border:1.5px solid var(--border);background:var(--bg);cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border-radius:10px;align-items:center;gap:8px;padding:clamp(10px,3vw,14px) clamp(10px,3vw,12px);transition:opacity .15s;display:flex}.checklist-item.done{opacity:.35}.check-box{border:1.5px solid var(--border);color:#fff;background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:800;transition:background .15s,border-color .15s;display:flex}.checklist-item.done .check-box{background:var(--accent);border-color:var(--accent)}.event-time{color:var(--text-h);white-space:nowrap;flex-shrink:0;width:clamp(58px,15vw,68px);font-size:clamp(14px,3.8vw,16px);font-weight:700}.event-action{text-align:center;border-radius:5px;flex-shrink:0;padding:4px 8px;font-size:clamp(10px,2.5vw,11px);font-weight:700}.label-warn{color:#b45309;background:#d977061f;border:1px solid #d977064d}.label-wipe{color:#dc2626;background:#dc26261a;border:1px solid #dc262647}.label-seat{color:#16a34a;background:#16a34a1a;border:1px solid #16a34a47}.event-tables{color:var(--text-h);flex:1;min-width:0;font-size:clamp(13px,3.5vw,14px)}.btn-csv{border:1.5px solid var(--border);color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;white-space:nowrap;background:0 0;border-radius:7px;padding:5px 10px;font-size:13px;font-weight:600}.btn-csv:active{border-color:var(--accent);color:var(--accent)}.csv-zone{border:2px dashed var(--border);text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:10px;margin-top:10px;padding:28px 16px;transition:border-color .15s,background .15s}.csv-zone:active,.csv-zone.drag-over{border-color:var(--accent);background:var(--accent-dim)}.csv-zone-label{color:var(--text);pointer-events:none;font-size:clamp(13px,3.5vw,15px)}.empty-state{text-align:center;color:var(--text);padding:48px 20px;font-size:clamp(13px,3.5vw,15px)}
