:root{--blue: #3268c4;--ink: #202027;--muted: #6b7489;--line: #e3e7f0}*{box-sizing:border-box}body{margin:0;background:#f5f7fb;color:var(--ink);font:14px var(--font-sans)}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}p{line-height:1.7;color:var(--muted)}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border:0;border-radius:7px;background:var(--blue);color:#fff;font-weight:600;cursor:pointer;transition:filter .2s,transform .2s}button:hover,.button:hover{filter:brightness(.94);transform:translateY(-1px)}.outline{border:1px solid #dadee4;background:#fff;color:#31353e}.link{padding:0;border:0;background:transparent;color:#3f68ad;font-size:11px;font-weight:600}.link:hover{transform:none;text-decoration:underline}.danger{color:#a8475f}:focus-visible{outline:3px solid #7ea3e6;outline-offset:2px}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:16px;height:76px;padding:0 4%;border-bottom:1px solid #e9ecf2;background:#fff}.brand{display:flex;align-items:center;gap:11px}.brandmark{margin-right:9px;font-size:29px;font-weight:800;letter-spacing:-8px;color:#356bc8}.brandmark span{font-size:20px}.brand b{font-size:15px;letter-spacing:1.5px;line-height:1.1}.brand small{display:block;margin-top:6px;font-size:8px;letter-spacing:5px}.demo-label{font-size:10px;letter-spacing:1px;color:#4a73b8}.topbar .demo-label{margin-left:auto}.topbar .button{padding:10px 14px;font-size:12px}.app{display:flex;min-height:calc(100vh - 76px)}aside{display:flex;flex-direction:column;flex-shrink:0;width:240px;padding:25px 15px;border-right:1px solid var(--line);background:#fff}.restaurant-profile{display:flex;align-items:center;gap:10px;padding:0 5px 30px}.restaurant-profile>span,.avatar{padding:11px;border-radius:9px;background:#e2ebf9;color:#3e66a9;font-size:12px;font-weight:700}.restaurant-profile b{font-size:12px}.restaurant-profile small{display:block;margin-top:5px;font-size:10px;color:#7c879b}.nav-caption{margin-bottom:16px;padding:0 15px;font-size:10px;letter-spacing:1.2px;color:#7c879b}aside nav a{display:flex;align-items:center;gap:10px;margin:4px 0;padding:12px 15px;border-radius:7px;color:#67728a;font-size:13px;font-weight:500}aside nav a:hover{background:#f1f5fc}aside nav a[aria-current=page]{background:#e4ebf8;color:#2f5ea9}aside nav svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}aside nav i{margin-left:auto;padding:2px 6px;border-radius:5px;background:#ccdaf2;font-size:11px;font-style:normal}.aside-bottom{margin-top:auto;padding:60px 15px 10px}.aside-bottom p{font-size:11px}.aside-bottom button{width:100%;font-size:11px}.workspace{flex:1;min-width:0;padding:0 35px 30px}.workspace-top{display:flex;align-items:center;justify-content:space-between;height:70px;border-bottom:1px solid #e1e7f0;font-size:11px;color:#7c879b}.workspace-top .avatar{padding:9px;border-radius:50%;font-size:10px}.dashboard-title{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:33px 0 20px}.eyebrow{margin-bottom:10px;font-size:10px;font-weight:700;letter-spacing:1.8px;color:#3d68b4}.dashboard-title h1{margin:0 0 9px;font-size:30px;letter-spacing:-1px}.dashboard-title p{margin:0;font-size:12px}.actions{display:flex;gap:9px}.dashboard-title button{padding:11px 14px;font-size:11px}.demo-banner{display:flex;align-items:center;gap:9px;padding:12px 16px;border:1px solid #dae4f4;border-radius:6px;background:#ecf0f8;font-size:11px;color:#5b6d8b}.filter-row,.floor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:25px 0;font-size:11px;color:#6f7b91}.filter-row input{width:260px}.pill-tabs{display:flex;padding:4px;border-radius:6px;background:#eaedf3}.pill-tabs button{padding:8px 14px;background:transparent;color:#66728a;font-size:11px}.pill-tabs button[aria-pressed=true]{background:#fff;color:#2f5ea9;box-shadow:0 2px 4px #2532480a}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:22px}.kpi{padding:21px;border:1px solid var(--line);border-radius:9px;background:#fff}.kpi>small{font-size:11px;color:#6f7b91}.kpi strong{display:block;margin:14px 0;font-size:28px;letter-spacing:-1px}.secondary .kpi strong{font-size:24px}.kpi>span{font-size:11px;color:#3f8a63}.kpi span small{margin-left:5px;font-size:10px;color:#7c879b}.kpi p{margin:12px 0 0;font-size:10px}.chart-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:22px;margin-bottom:22px}.panel{min-width:0;padding:24px;border:1px solid var(--line);border-radius:9px;background:#fff}.panel h2{margin-bottom:8px;font-size:15px}.panel>p,.panel-title p{font-size:11px}.panel-title{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:18px}.panel-title small{font-size:10px;color:#7c879b}.legend{display:flex;align-items:center;gap:6px;font-size:10px;color:#6f7b91}.dot{display:inline-block;flex-shrink:0;width:7px;height:7px;border-radius:50%;background:#4979cb}.dot.available{background:#7aac91}.dot.reserved{background:#c7a355}.dot.cleaning{background:#99a5b5}.chart{display:flex;gap:12px;height:220px;margin:24px 0 20px}.chart-y{display:flex;flex-direction:column;justify-content:space-between;padding-bottom:24px;font-size:10px;color:#7c879b}.chart-main{position:relative;flex:1}.chart-lines{position:absolute;inset:0 0 25px;display:flex;flex-direction:column;justify-content:space-between}.chart-lines i{width:100%;border-top:1px dashed #e5ebf6}.chart-bars{position:relative;display:flex;align-items:flex-end;justify-content:space-around;gap:13px;height:100%;padding-bottom:25px}.chart-bars>div{position:relative;display:flex;flex:1;flex-direction:column;align-items:center;justify-content:flex-end;height:100%}.chart-bars span{display:block;width:65%;max-width:40px;min-height:10px;height:var(--h, 0);border-radius:4px 4px 0 0;background:linear-gradient(#4b7dd3,#b5cbef)}.chart-bars>div:nth-last-child(2) span{background:linear-gradient(#255cba,#7fa6e8)}.chart-bars small{position:absolute;bottom:-24px;font-size:10px;color:#6f7b91}.donut{width:155px;height:155px;margin:20px auto;padding:18px;border-radius:50%;background:conic-gradient(#2463ce var(--p, 0deg),#eaf1fc 0)}.donut>div{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;border-radius:50%;background:#fff}.donut strong{font-size:29px;letter-spacing:-1px}.donut small{margin-top:6px;font-size:10px;color:#7c879b}.room-stats span{display:flex;justify-content:space-between;padding:7px 0;font-size:11px;color:#6f7b91}.room-stats b{color:#4b5d7d}.pulse-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.pulse,.floor-table{flex-direction:column;border:1px solid #c5d4ee;background:#ebf1fb;color:#3f66a8}.pulse{gap:8px;padding:15px 8px;font-size:12px}.pulse small{font-size:10px}.available{border-color:#cce2d4;background:#f0f8f3;color:#3f7a57}.reserved{border-color:#e7ddc2;background:#fbf8ef;color:#85692b}.cleaning{border-color:#dbe1e8;background:#f1f4f8;color:#5f6d82}.arrival{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid #ebeff6}.arrival:last-child{border:0}.guest-avatar{padding:10px 13px;border-radius:50%;background:#e8eef9;color:#4f6a97;font-size:11px}.arrival b{font-size:12px;color:#4d5b73}.arrival small{display:block;margin-top:6px;font-size:10px;color:#7c879b}.arrival>strong,.arrival>button{margin-left:auto;font-size:11px;color:#4f6a97}.heatmap{margin-top:25px}.heat-row{display:grid;grid-template-columns:28px repeat(6,1fr);gap:6px;align-items:center;margin-bottom:6px}.heat-row small{font-size:10px;color:#6f7b91}.heat-row span{padding:11px 0;border-radius:4px;background:rgba(36,99,206,var(--a, .2));color:#1f4374;font-size:10px;text-align:center}.heat-row span.is-strong{color:#fff}.source{margin-top:25px}.source>div:first-child{display:flex;justify-content:space-between;margin-bottom:10px;font-size:11px;color:#5f6f8c}.track{height:6px;overflow:hidden;border-radius:5px;background:#ecf0f8}.track i{display:block;width:var(--w, 0);height:100%;background:#6c92d3}.metric-pair{display:flex;justify-content:space-between;margin-top:25px;padding-top:20px;border-top:1px solid #e4ebf7}.metric-pair small{display:block;font-size:10px;color:#6f7b91}.metric-pair b{display:block;margin-top:9px;font-size:19px;color:#4a5f86}.insight-note{margin-top:23px;padding:22px;border-radius:8px;background:#e4edfb;color:#3d5f99}.insight-note b{font-size:12px}.insight-note p{margin:10px 0 0;font-size:11px;color:#4a6491}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:11px;white-space:nowrap}th{padding:14px;background:#f6f9fd;color:#5f6f8c;font-size:10px;font-weight:500;text-align:left}td{padding:18px 14px;border-bottom:1px solid #e7edf7;color:#55667f}td:first-child{color:#3e4f6d}.block{display:block;margin-top:6px;font-size:10px;color:#7c879b}.status{padding:5px 9px;border-radius:4px;background:#e4edfb;font-size:10px}.status.waiting{background:#fbf5e9;color:#85692b}.status.seated{background:#edf6ef;color:#3f7a57}.row-actions{display:flex;gap:15px}.empty{padding:35px;font-size:12px;text-align:center}.floor-layout{display:grid;grid-template-columns:1fr 270px;gap:22px}.floor-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px 23px;padding:30px 10px 45px}.floor-table{position:relative;gap:8px;min-height:130px;padding:20px 10px;border-width:2px;border-radius:12px}.floor-table:before,.floor-table:after{content:"";position:absolute;top:-12px;width:30px;height:5px;border-radius:4px;background:#bfd0ec}.floor-table:after{top:auto;bottom:-12px}.floor-table b{font-size:18px}.floor-table span{font-size:11px}.floor-table small,.floor-table em{font-size:10px;font-weight:400}.visual-bottom{display:flex;align-items:center;gap:15px;padding-top:18px;border-top:1px solid #e6ecf6;font-size:10px;color:#6f7b91}.visual-bottom span{display:flex;align-items:center;gap:5px}.floor-summary>strong{display:block;margin-top:25px;font-size:42px;color:#3d68b4}.floor-summary strong small{font-size:17px;color:#8c9bb4}.floor-summary>p{font-size:11px}hr{margin:25px 0;border:0;border-top:1px solid #e4eaf5}.summary-row{display:flex;justify-content:space-between;padding:10px 0;font-size:11px;color:#5f6f8c}.dashboard-foot{margin-top:30px;font-size:10px;color:#7c879b;text-align:center}.modal{width:min(640px,calc(100vw - 30px));max-height:90vh;padding:35px;border:0;border-radius:14px;box-shadow:0 20px 100px #101e3533}.modal::backdrop{background:#141e3078;backdrop-filter:blur(5px)}.modal h2{margin-bottom:25px;font-size:28px}.modal p{font-size:13px}.close{position:absolute;top:16px;right:18px;width:36px;height:36px;padding:0;background:#f1f5fb;color:#4f6a97;font-size:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.full{grid-column:1 / -1}label{display:block;margin-bottom:15px;font-size:11px;color:#4f6385}input,select,textarea{display:block;width:100%;margin-top:8px;padding:12px;border:1px solid #d6dfef;border-radius:6px;background:#f9fbff;color:#3e4f6d;outline:none}.filter-row input{margin-top:0}input:focus,select:focus,textarea:focus{border-color:#6f92cf;box-shadow:0 0 0 3px #e1eaf8}textarea{min-height:75px;resize:vertical}.fine{margin:15px 0 22px;font-size:11px;color:#6f7b91}.message-preview{padding:25px;border-radius:8px;background:#edf3fd;color:#3f5f95;font-size:13px;line-height:1.8}.toast{position:fixed;bottom:25px;left:50%;z-index:110;padding:15px 24px;border-radius:9px;background:#2b3a54;box-shadow:0 10px 30px #00000021;color:#fff;font-size:12px;transform:translate(-50%)}@media (max-width: 1100px){aside{width:190px}.workspace{padding-inline:22px}.floor-layout{grid-template-columns:1fr}.floor-summary{display:none}.dashboard-title .actions{flex-direction:column}.kpi{padding:17px}.kpi strong{font-size:24px}.chart-grid{grid-template-columns:1.5fr 1fr}}@media (max-width: 800px){.topbar{height:64px}.topbar .demo-label{display:none}.topbar .button{margin-left:auto}.app{display:block}aside{width:100%;padding:10px 15px;border-right:0;border-bottom:1px solid #dfe6f2;overflow:auto}aside nav{display:flex;gap:4px}.restaurant-profile,.nav-caption,.aside-bottom,aside nav i{display:none}aside nav a{padding:10px;white-space:nowrap;font-size:11px}.workspace{padding:0 20px 25px}.workspace-top{height:48px}.dashboard-title{padding-top:25px}.dashboard-title h1{font-size:26px}.dashboard-title .actions{flex-flow:row wrap;justify-content:flex-end;gap:6px}.kpi-grid{grid-template-columns:repeat(2,1fr);gap:12px}.chart-grid{grid-template-columns:1fr}.room-stats{display:flex;justify-content:space-around;gap:15px}.filter-row,.floor-toolbar{flex-wrap:wrap}.floor-grid{grid-template-columns:repeat(3,1fr)}.panel{padding:18px}.modal{padding:28px 22px}.modal h2{font-size:25px}}@media (max-width: 480px){.topbar .brand b{font-size:12px}.dashboard-title{align-items:flex-start}.dashboard-title .actions{max-width:140px}.workspace{padding-inline:12px}.pill-tabs button{padding:8px 9px;font-size:10px}.floor-grid{gap:28px 12px;padding-inline:0}.floor-table{min-height:112px;padding:16px 7px}.filter-row input{width:100%}.heat-row{gap:4px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}}
