*{box-sizing:border-box}body{margin:0;font-family:system-ui,Arial;background:#f4f6f8;color:#17212b}header{background:#0d2b3d;color:#fff;padding:18px 4%;display:flex;justify-content:space-between}header a,nav a{color:#fff;margin-left:18px;text-decoration:none}main{max-width:1180px;margin:35px auto;padding:20px}.card{background:#fff;border-radius:14px;padding:28px;box-shadow:0 8px 30px #0001}.installer,.login{max-width:650px;margin:60px auto}.wide{max-width:1050px}label{display:block;font-weight:650;margin:12px 0}input,textarea,select{width:100%;padding:12px;border:1px solid #ccd4db;border-radius:8px;margin-top:6px}button,.btn,.cta{display:inline-block;background:#d49a19;color:#fff;border:0;border-radius:8px;padding:13px 20px;text-decoration:none;font-weight:750;cursor:pointer}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:4px 20px}.full{grid-column:1/-1}.check input{width:auto}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.hero{display:grid;grid-template-columns:minmax(320px,1fr) 1fr;gap:55px;align-items:center;min-height:90vh}.poster{width:100%;max-height:75vh;object-fit:contain;border-radius:8px;box-shadow:0 15px 50px #0003}.eventinfo h1{font-family:Georgia,serif;font-size:clamp(42px,6vw,76px);margin:10px 0}.eyebrow{text-transform:uppercase;letter-spacing:2px;color:#b47a00;font-weight:800}.cta{font-size:20px;margin-top:25px}.notice,.alert{padding:15px;border-radius:8px;background:#fff1cf;margin:18px 0}.alert{background:#ffe0e0;color:#8b1515}@media(max-width:760px){.hero,.formgrid{grid-template-columns:1fr}.hero{gap:20px}.eventinfo h1{font-size:42px}}

.secondary{background:#446273}.danger{background:#c93434}.plan-page,.booking-page{max-width:1500px}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:15px}.toolbar select{width:auto;min-width:180px;margin:0}.editor-layout,.booking-layout{display:grid;grid-template-columns:minmax(720px,1fr) 330px;gap:18px}.plan-canvas{height:720px;min-width:720px;position:relative;overflow:auto;border:1px solid #c8d0d7;border-radius:12px;background-color:#e5c79b;background-image:linear-gradient(90deg,#00000008 1px,transparent 1px),linear-gradient(#00000008 1px,transparent 1px);background-size:25px 25px}.stage{position:absolute;top:12px;left:50%;transform:translateX(-50%);background:#3c332b;color:white;padding:10px 55px;border-radius:5px;font-weight:800}.table-object{position:absolute;width:130px;height:130px;touch-action:none;cursor:move;z-index:2}.table-core{position:absolute;width:78px;height:78px;left:26px;top:26px;border-radius:50%;display:grid;place-items:center;background:#82542d;color:white;font-weight:800;box-shadow:0 3px 8px #0004;border:2px solid #543217}.table-object.rect .table-core{width:105px;height:64px;left:12px;top:33px;border-radius:5px}.seat{position:absolute;left:50%;top:50%;margin:-14px;width:28px;height:28px;border:2px solid #fff;border-radius:50%;font-size:10px;font-weight:800;padding:0;color:#13202a;box-shadow:0 1px 4px #0006}.seat.free,.legend i.free{background:#2ec66d}.seat.admin_reserved,.legend i.admin_reserved{background:#f0a020}.seat.blocked,.legend i.blocked{background:#8b9298}.seat.selected,.legend i.selected{background:#2788ff!important}.inspector{padding:20px}.legend{display:flex;gap:16px;flex-wrap:wrap;margin-top:15px}.legend span{display:flex;align-items:center;gap:6px}.legend i{display:inline-block;width:15px;height:15px;border-radius:50%}.hint{color:#66727c;font-size:13px}.area-tabs{display:flex;gap:8px;margin-bottom:14px}.area-tabs a{padding:11px 18px;background:#e5e9ed;border-radius:8px;text-decoration:none;color:#17212b;font-weight:700}.area-tabs a.active{background:#1678c8;color:#fff}.customer .table-object{cursor:default}.customer .seat:not(:disabled){cursor:pointer}.customer .seat:disabled{opacity:.9}.selection{align-self:start}.choice{display:grid;grid-template-columns:1fr 145px;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid #e4e8eb}.choice select{margin:0;padding:8px}button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:1050px){.editor-layout,.booking-layout{grid-template-columns:1fr}.plan-canvas{min-width:700px}.editor-layout>section,.booking-layout>section{overflow:auto}}
.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.room-element{position:absolute;display:grid;place-items:center;background:#3c332b;color:#fff;border:2px solid #201b17;border-radius:6px;font-weight:800;cursor:move;touch-action:none;z-index:1;box-sizing:border-box;text-align:center;padding:4px}.room-element.type-dancefloor{background:#d9d2c5;color:#2a2a2a;border-style:dashed}.room-element.type-bar,.room-element.type-buffet{background:#6b4b32}.room-element.type-entrance,.room-element.type-exit{background:#466c59}.room-element.type-wc{background:#4f6573}.table-object{box-sizing:border-box}.table-object .table-core{position:absolute;inset:0;width:auto!important;height:auto!important;left:0!important;top:0!important;border-radius:8px!important;display:grid;place-items:center}.table-object.round .table-core{border-radius:50%!important}.table-object .seat{left:0;top:0;margin:-14px;transform:none!important}.plan-notice{position:fixed;right:20px;bottom:20px;z-index:9999;max-width:420px;padding:14px 18px;border-radius:10px;background:#8f2d2d;color:#fff;box-shadow:0 8px 30px #0004;font-weight:600}.plan-notice.ok{background:#176b3a}.button-link{display:inline-block;padding:12px 18px;background:#1678c8;color:#fff;text-decoration:none;border-radius:7px}

.preset-row{margin:8px 0 12px}.preset-row button{width:100%}
