:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#152238;background:#f4f7f8;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit}a:hover{color:#087b79}.skip{position:absolute;top:-100px;left:1rem;padding:.7rem 1rem;background:#fff;z-index:20}.skip:focus{top:1rem}.layout{min-height:100vh;display:grid;grid-template-columns:238px minmax(0,1fr)}.side{background:#fff;border-right:1px solid #e3e9ee;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow:auto;z-index:5}.brand{display:flex;gap:.8rem;align-items:center;padding:1.55rem 1.3rem 2.3rem;text-decoration:none;font-size:1.18rem;font-weight:800;letter-spacing:-.05em}.brand small{display:block;color:#8491a4;font-size:.62rem;letter-spacing:.15em;margin-top:.2rem}.mark{width:35px;height:35px;display:grid;place-items:center;background:#102a37;color:#fff;border-radius:11px;font-size:1.5rem}.mark span{color:#47dcc9}nav{padding:0 .8rem}.nav-label{color:#9aa7b7;font-size:.68rem;letter-spacing:.14em;font-weight:800;padding:1.25rem .65rem .5rem}nav button{display:flex;align-items:center;gap:.85rem;width:100%;border:0;background:none;color:#55657b;padding:.8rem .85rem;text-align:left;border-radius:10px;font-weight:600;font-size:.88rem}nav button::first-letter{font-size:1.2rem}nav button:hover{background:#f0f7f7;color:#087c77}nav button[aria-current]{background:#dcf4f0;color:#00796d;font-weight:800}.side-bottom{border-top:1px solid #edf0f4;margin:auto .85rem 1rem;padding:1rem .55rem;color:#54657b;font-size:.77rem;line-height:1.5}.side-bottom strong{color:#173c42}.side-bottom p{margin:.25rem 0 .8rem}.side-bottom a{text-decoration:none;color:#087d77;font-weight:700}.main-wrap{min-width:0;display:flex;flex-direction:column}.topbar{height:66px;background:#fff;border-bottom:1px solid #e5eaf0;display:flex;justify-content:space-between;align-items:center;padding:0 clamp(1rem,3vw,3rem);gap:1rem}.top-start,.top-end{display:flex;align-items:center;gap:1.3rem}.top-start button{display:none}.breadcrumb{color:#8492a4;letter-spacing:.12em;font-size:.69rem;font-weight:800}.breadcrumb span{color:#183c44}.live-dot{background:#e5f8f2;color:#007d68;padding:.5rem .7rem;border-radius:99px;letter-spacing:.08em;font-size:.66rem;font-weight:800}.live-dot::first-letter{font-size:.6rem}#clock{font-size:.82rem;color:#8190a3}.avatar{background:#142c3c;color:#fff;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-weight:700}.reset-btn{border:1px solid #dbe5eb;background:#fff;border-radius:8px;padding:.45rem .75rem;color:#46576b;font-size:.75rem;font-weight:700}.reset-btn:hover{border-color:#21a99c}.demo-ribbon{background:#eaf4f4;color:#386268;border-bottom:1px solid #d3e9e7;padding:.7rem clamp(1rem,3vw,3rem);font-size:.76rem;line-height:1.5}.demo-ribbon strong{color:#007e73;letter-spacing:.07em}#workspace{width:100%;max-width:1650px;margin:0 auto;padding:clamp(1.5rem,3vw,3rem);flex:1}.page-head{display:flex;justify-content:space-between;align-items:end;gap:1.5rem;margin-bottom:2rem}.kicker{color:#008c83;font-weight:900;letter-spacing:.17em;font-size:.66rem;margin:0 0 .65rem}.page-head h1{font-size:clamp(1.8rem,3vw,2.65rem);letter-spacing:-.05em;line-height:1.13;margin:0 0 .55rem;color:#122237}.page-head p:not(.kicker){margin:0;color:#65748a;font-size:.92rem;max-width:55ch;line-height:1.5}h2{letter-spacing:-.035em;font-size:1.17rem;margin:0}h3{font-size:1rem}.btn{border:1px solid #dce5e9;background:#fff;border-radius:9px;color:#294353;font-weight:750;padding:.7rem 1rem;white-space:nowrap;transition:background .15s,transform .15s}.btn:not(:disabled):hover{transform:translateY(-1px);border-color:#0ea698}.btn.primary{background:#0c9388;border-color:#0c9388;color:#fff;box-shadow:0 5px 14px #0a9f8c26}.btn.primary:not(:disabled):hover{background:#087b72}.btn.full{width:100%}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1.2rem}.metric{background:#fff;border:1px solid #e4eaef;border-radius:15px;padding:1.2rem;min-height:155px;display:flex;flex-direction:column;box-shadow:0 3px 12px #24435406}.metric-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;font-size:1.3rem;background:#dbf6ef;color:#078c79;margin-bottom:.7rem}.metric-icon.orange{background:#fff0dc;color:#d5851e}.metric-icon.blue{background:#e9f1ff;color:#4e76d6}.metric-icon.purple{background:#eeeafa;color:#8063c5}.metric-label{color:#78869a;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.metric strong{font-size:1.75rem;line-height:1.35;letter-spacing:-.05em}.metric small{font-size:.73rem;color:#8190a2}.panel{background:#fff;border:1px solid #e4eaef;border-radius:16px;padding:1.45rem;box-shadow:0 4px 18px #24435408;min-width:0}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.2rem}.panel-head .kicker{margin-bottom:.25rem}.two-cols{display:grid;grid-template-columns:1.1fr 1fr;gap:1.2rem;margin-bottom:1.2rem}.steps{display:grid;gap:.6rem;margin-bottom:1.3rem}.steps>div{display:flex;align-items:center;gap:1rem;padding:.7rem .8rem;background:#f7f9fa;border-radius:10px}.steps i{width:34px;height:34px;flex:none;display:grid;place-items:center;border-radius:9px;background:#e3f6f2;color:#008578;font-style:normal;font-weight:800;font-size:.72rem}.steps strong,.steps small,.guest-row small,.room-card small,.booking small,.folio-link small{display:block}.steps small,.guest-row small,.booking small,.folio-link small{font-size:.76rem;color:#8795a8;margin-top:.2rem}.guest-row{display:flex;align-items:center;gap:.7rem;border-bottom:1px solid #eef1f4;padding:.85rem 0}.guest-row:last-child{border:0}.guest-row>div{flex:1}.guest-avatar{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:#dcefeb;color:#008779;font-weight:800}.badge{display:inline-block;background:#ddf8ef;color:#00805d;font-size:.67rem;letter-spacing:.03em;font-weight:800;border-radius:99px;padding:.32rem .56rem;text-transform:capitalize;white-space:nowrap}.badge.purple{background:#eeeafe;color:#6653b3}.badge.orange{background:#fff1dd;color:#a85d0d}.badge.blue{background:#e5f0ff;color:#4e70bc}.badge.gray{background:#ecf0f3;color:#64748b}.ticket{display:flex;align-items:center;gap:1rem;padding:1rem 0;border-top:1px solid #edf1f4}.ticket-mark{background:#e7f6f3;padding:.75rem;border-radius:9px;color:#008d83}.ticket-copy{flex:1;min-width:130px}.ticket-copy strong,.ticket-copy small,.ticket-meta strong{display:block}.ticket-copy small{font-size:.75rem;color:#8997a7;margin-top:.3rem}.ticket-meta{text-align:right}.ticket-meta strong{margin-top:.3rem}.ticket-actions{min-width:155px;text-align:right}.ticket-actions .btn{font-size:.73rem;padding:.55rem .75rem}.room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.room-card{border:1px solid #e5ecf0;background:#fbfcfd;border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.35rem}.room-card strong{font-size:1.35rem}.room-card small{color:#79899a}.room-card>span:last-of-type{color:#077e76;font-weight:700;font-size:.82rem}.room-card .btn{margin-top:.5rem;font-size:.72rem;padding:.4rem}.room-top{display:flex;justify-content:space-between;align-items:center;color:#0d9688}.booking{display:flex;justify-content:space-between;gap:.7rem;border-bottom:1px solid #edf1f4;padding:.85rem 0}.booking-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:.35rem}.booking-actions .btn{font-size:.7rem;padding:.42rem .55rem}.form{margin-top:1.4rem;background:#f4f8f8;border:1px solid #e3eceb;border-radius:12px;padding:1rem}.form h3{margin:0}.form p{color:#778699;font-size:.77rem}.form label,.basket label{display:block;color:#526173;font-size:.73rem;font-weight:800;margin:.85rem 0 .4rem}.form input,.form select,.basket select{width:100%;border:1px solid #dae3e8;border-radius:8px;padding:.7rem;color:#203048;background:#fff;min-width:0}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.form .btn{margin-top:1rem}.calendar-scroll{overflow-x:auto}.calendar{width:100%;min-width:800px;border-collapse:collapse;text-align:left}.calendar th,.calendar td{padding:1rem .55rem;border-bottom:1px solid #edf0f3;min-width:95px}.calendar thead th{color:#8996a8;font-size:.72rem;letter-spacing:.09em}.calendar tbody th{width:150px}.calendar tbody th small{display:block;font-weight:400;color:#8895a8;margin-top:.25rem}.cal-booked,.cal-free{display:block;border-radius:7px;padding:.6rem .4rem;font-size:.7rem;text-align:center}.cal-booked{background:#e9e6fc;color:#6652b3;font-weight:800}.cal-booked.active{background:#d8f4ed;color:#007f74}.cal-free{color:#acb5c0}.panel-note{color:#8290a1;font-size:.76rem;margin:1.15rem 0 0;line-height:1.5}.pos-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:1.2rem;align-items:start}.chips{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0 1.3rem}.chip{border:1px solid #e1e7ee;background:#fff;color:#5c6b7c;border-radius:99px;padding:.48rem .8rem;font-weight:700;font-size:.76rem}.chip.chosen{background:#123445;border-color:#123445;color:#fff}.menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.menu-card{border:1px solid #e8edf0;border-radius:12px;padding:1rem;min-width:0}.food-icon{background:#e4f5f1;color:#049482;border-radius:12px;font-size:1.7rem;width:49px;height:49px;display:grid;place-items:center;margin-bottom:.7rem}.menu-card:nth-child(2n) .food-icon{background:#f2eaf5;color:#985db2}.menu-card:nth-child(3n) .food-icon{background:#fff1dd;color:#d38424}.menu-card small{color:#8190a2}.menu-card h3{margin:.25rem 0 .9rem}.menu-card-bottom,.basket-lines>div,.basket-bottom>div,.line,.report-line,.breakdown>div:not(.track){display:flex;justify-content:space-between;align-items:center;gap:.4rem}.qty{display:flex;align-items:center;gap:.6rem}.qty button{border:1px solid #dde6e9;background:#f8fbfb;color:#078d83;border-radius:7px;width:27px;height:27px;font-size:1.2rem;line-height:1}.basket{position:sticky;top:1rem}.basket-lines{min-height:210px;padding:1rem 0}.basket-lines>div{padding:.5rem 0;border-bottom:1px solid #f1f3f5;font-size:.8rem}.basket-bottom{border-top:1px solid #e6ebef;padding-top:1rem}.basket-bottom strong{font-size:1.35rem;color:#068e82}.basket-bottom p{font-size:.75rem;color:#8a97a7;line-height:1.5}.empty{text-align:center;color:#a2b0bc;padding:2rem 1rem}.empty span{font-size:2rem}.folio-layout{display:grid;grid-template-columns:minmax(210px,310px) minmax(0,1fr);gap:1.2rem;align-items:start}.folio-link{display:flex;justify-content:space-between;align-items:center;text-align:left;gap:.6rem;padding:.85rem;width:100%;border:1px solid #e5eaee;border-radius:9px;background:#fff;margin-top:.6rem}.folio-link.selected{background:#eff8f7;border-color:#1bb3a2;color:#017e73}.folio-hero{border-radius:13px;background:linear-gradient(120deg,#112a3c,#214d55);color:#fff;padding:1.4rem;margin-bottom:1.6rem}.folio-hero p{font-size:.75rem;color:#a4dfd7;font-weight:800;letter-spacing:.07em}.folio-hero h2{font-size:1.9rem}.folio-hero small{color:#c4dcdf}.folio-due{margin-top:1.5rem;display:flex;justify-content:space-between;align-items:end;gap:1rem}.folio-due strong{color:#6ee4cc;font-size:1.7rem}.line{border-bottom:1px solid #eff2f3;padding:.9rem 0;font-size:.82rem}.line span{color:#637285}.line.summary{font-weight:800}.line.final{font-weight:800;border:0}.line.final strong{color:#008e7f;font-size:1.2rem}.folio-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.8rem}.stock-row{display:grid;grid-template-columns:1.2fr 1fr 85px 85px 90px;align-items:center;gap:1rem;padding:1rem 0;border-bottom:1px solid #edf1f3;font-size:.8rem}.stock-row small{display:block;color:#94a1b0;margin-top:.2rem}.stock-row .btn{font-size:.7rem;padding:.5rem}.stock-bar,.track{width:100%;height:7px;appearance:none;border:0;border-radius:99px;background:#eaf0f2;overflow:hidden}.stock-bar::-webkit-progress-bar,.track::-webkit-progress-bar{background:#eaf0f2;border-radius:99px}.stock-bar::-webkit-progress-value,.track::-webkit-progress-value{background:#20af9d;border-radius:99px}.stock-bar::-moz-progress-bar,.track::-moz-progress-bar{background:#20af9d;border-radius:99px}.track.blue::-webkit-progress-value{background:#708ee3}.track.blue::-moz-progress-bar{background:#708ee3}.breakdown{display:grid;gap:.9rem;padding:1rem 0}.breakdown>div:not(.track),.report-line{padding:.45rem 0}.breakdown span,.report-line span{color:#617184}.disclaimer{margin-top:1.5rem;color:#8794a2;font-size:.8rem}.footer{border-top:1px solid #e1e8ec;padding:1.15rem clamp(1rem,3vw,3rem);color:#8a97a7;font-size:.73rem;display:flex;justify-content:space-between;gap:1rem}.footer a{color:#008d80}.footer span{text-align:right}#toast{position:fixed;bottom:1.5rem;right:1.5rem;max-width:min(380px,calc(100vw - 3rem));background:#142f3b;color:#fff;border-radius:10px;padding:.8rem 1.2rem;box-shadow:0 10px 30px #172e3a50;opacity:0;pointer-events:none;transform:translateY(12px);transition:.2s;z-index:10}#toast.show{opacity:1;transform:translateY(0)}#toast.error{background:#9b3b31}:focus-visible{outline:3px solid #f7ac57;outline-offset:2px}@media(max-width:1100px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.two-cols,.pos-layout{grid-template-columns:1fr}.basket{position:static}.room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.layout{display:block}.side{position:fixed;transform:translateX(-102%);transition:transform .2s;width:245px;box-shadow:4px 0 20px #162b3b19}.nav-open .side{transform:translateX(0)}.top-start button{display:block;border:0;background:transparent;font-size:1.3rem;color:#15303a}.topbar{padding:0 1rem}.top-end{gap:.65rem}.live-dot span,#clock{display:none}.demo-ribbon{padding:.7rem 1rem}#workspace{padding:1.5rem 1rem}.page-head{align-items:start;flex-direction:column}.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ticket{flex-wrap:wrap}.ticket-actions{width:100%;text-align:left}.folio-layout{grid-template-columns:1fr}.stock-row{grid-template-columns:1fr 90px;gap:.4rem}.stock-row .stock-bar{grid-column:1/-1;grid-row:2}.stock-row .badge{grid-column:1}.footer{flex-direction:column}.footer span{text-align:left}}@media(max-width:440px){.metrics{gap:.6rem}.metric{padding:.85rem;min-height:140px}.metric strong{font-size:1.35rem}.metric-label{font-size:.63rem}.panel{padding:1rem}.room-grid,.menu-grid{grid-template-columns:1fr 1fr}.room-card{padding:.7rem}.booking{flex-direction:column}.booking-actions{justify-content:flex-start}.form-pair{grid-template-columns:1fr}.reset-btn{font-size:.7rem}.top-end{gap:.4rem}.footer{font-size:.68rem}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
