:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#182b43;background:#f4f5f7;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;background:#fff;color:inherit;border:1px solid #dce2ea;border-radius:9px;padding:10px 14px;font-weight:600;transition:background .15s}button:hover{background:#eef3f9}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #79a7f7;outline-offset:3px}button:disabled{opacity:.45;cursor:default}a{color:#386bd0}h1,h2,h3,p{margin-top:0}h1{font-size:28px;margin-bottom:0;letter-spacing:-.9px}h2{font-size:22px;letter-spacing:-.5px;margin-bottom:8px}h3{font-size:16px;margin-bottom:12px}p{color:#708092;line-height:1.6;margin-bottom:16px}small{font-size:12px;color:#8190a1;display:block;line-height:1.5}input,select{min-width:0;background:#fff;border:1px solid #dce2ea;border-radius:8px;padding:11px 12px;color:#253a53}hr{border:0;border-top:1px solid #e7eaf0;margin:24px 0}.app{display:flex;min-height:100vh}.sidebar{width:222px;flex-shrink:0;background:#14273e;color:#c5d0de;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:5;padding:27px 20px}.logo{display:flex;align-items:center;text-decoration:none;color:white;font-size:25px;font-weight:700;letter-spacing:-1px;gap:7px}.logo-dot{color:#94b9ff}.brand-mark{display:inline-flex;align-items:center;justify-content:center;border-radius:11px;background:#497cda;color:#fff;width:36px;height:36px;font-size:30px;font-weight:700;line-height:1}.venue-name{border-top:1px solid #2a3d53;margin:27px 0 20px;padding:20px 2px 3px}.venue-name small{color:#8497ae;letter-spacing:1.2px;font-size:9px;margin-bottom:8px}.venue-name strong{font-size:12px;line-height:1.6;display:block}.sidebar nav{display:grid;gap:5px}.sidebar nav button{background:none;border:none;text-align:left;color:#a8bacd;display:flex;align-items:center;gap:12px;padding:12px;font-size:13px;font-weight:500}.sidebar nav button span{font-size:20px;width:20px;line-height:1}.sidebar nav button:hover{background:#20384f}.sidebar nav .active{background:#2e527e;color:#fff}.sidebar nav em{margin-left:auto;font-size:11px;background:#416796;border-radius:5px;padding:2px 6px;font-style:normal}.sidebar-bottom{margin-top:auto;padding-top:35px}.sidebar-bottom p{font-size:11px;margin:16px 0;color:#8b9eb5}.sidebar-bottom button{background:none;border:none;color:#a8bacd;padding-left:0;font-size:12px}.pill{display:inline-block;border-radius:6px;padding:7px 10px;background:#253e56;color:#aec8e6;font-size:10px;font-weight:600}.amber{color:#956922;background:#fcf2d9}main{margin-left:222px;width:calc(100% - 222px);min-height:100vh;display:flex;flex-direction:column}.top{padding:24px 32px;display:flex;align-items:center;justify-content:space-between;gap:15px;background:white;border-bottom:1px solid #e7ebf0}.top small{letter-spacing:1.2px;font-size:9px;margin-bottom:5px}.top-actions{display:flex;align-items:center;gap:16px}.top-actions select{font-size:12px;padding:8px}.connection{font-size:11px;color:#549881}.connection.offline{color:#c58b29}.avatar{background:#e3ecfa;color:#446caa;border-radius:50%;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;font-weight:600;flex-shrink:0}.development{background:#f9f0dd;border-bottom:1px solid #efe3c9;padding:10px 32px;font-size:11px;color:#8b794f;display:flex;align-items:center;gap:10px}.development>span{font-size:8px;font-weight:700;letter-spacing:1px;background:#ebddb7;padding:4px 6px;border-radius:4px;flex-shrink:0}.development button{padding:5px 8px;border-color:#e8d6ac;background:#fff8e7;font-size:10px;margin-left:auto;white-space:nowrap}.notice{background:#e7f0ff;border-bottom:1px solid #cfdef8;padding:12px 32px;color:#41638f;display:flex;align-items:center;justify-content:space-between;font-size:13px}.notice button{padding:0 4px;border:none;background:transparent;font-size:20px}.till-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;flex:1}.products{padding:29px 30px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}.section-head p{margin-bottom:0;font-size:12px}.section-head h2{font-size:19px}.section-head h3{margin-bottom:0}.search{width:200px;font-size:12px;background:#fff}.segmented{display:flex;gap:6px;margin-bottom:24px;flex-wrap:wrap}.segmented button{background:none;border-color:transparent;color:#7c8a9b;padding:9px 17px;font-size:12px}.segmented .selected{background:white;border-color:#dae2ed;color:#3569bf;box-shadow:0 2px 3px #1c334408}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.product{min-height:147px;border:1px solid #e2e7ed;text-align:left;padding:18px;position:relative;display:flex;flex-direction:column}.product-symbol{font-size:25px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#f7eddf;border-radius:10px;margin-bottom:14px;color:#b58959}.beer .product-symbol{background:#fff1ca;color:#c9942a}.wine .product-symbol{background:#f9e6e9;color:#c77e92}.water .product-symbol{background:#e4f2f7;color:#62a6c0}.food .product-symbol{background:#ecf3e4;color:#86a956}.product strong{font-size:12px;margin-bottom:2px}.product small{font-size:10px}.product b{margin-top:10px;font-size:13px}.product-add{position:absolute;right:17px;bottom:16px;border:1px solid #e0e6ee;border-radius:7px;padding:2px 7px;font-size:19px;font-weight:400;color:#7f97b5}.queue-card{margin-top:25px;background:#e9eef5;border:1px dashed #ccd8e8;border-radius:10px;padding:18px;font-size:12px;color:#607795}.queue-card p{font-size:11px;margin:7px 0 0}.order-panel{background:#fff;border-left:1px solid #e2e7ed;padding:26px 22px;display:flex;flex-direction:column;min-height:680px}.order-panel h2{font-size:16px;margin:0}.order-panel .section-head{margin-bottom:23px}.text-button{border:none;background:none;padding:6px;color:#4775b7;font-size:11px}.field{display:grid;gap:7px;margin-bottom:16px}.field>span{font-size:11px;color:#7a899b}.tab-info{background:#f3f6fa;border-radius:9px;padding:14px;margin:5px 0 18px}.tab-info strong{display:block;font-size:13px;margin-bottom:5px}.tab-info small{font-size:10px}.tab-info button{padding:6px 0 0}.basket{flex:1}.basket-line{display:flex;align-items:center;gap:10px;padding:14px 0;border-bottom:1px solid #eef1f5}.basket-line>div:first-child{flex:1;min-width:0}.basket-line strong{display:block;font-size:11px}.basket-line input{border:none;padding:5px 0;font-size:10px;width:100%;background:none}.basket-line b{font-size:11px}.stepper{display:flex;align-items:center;border:1px solid #dce3ec;border-radius:7px;gap:7px;font-size:11px;background:white}.stepper button{border:none;padding:5px 7px;background:none;font-size:16px;font-weight:400}.total{display:flex;justify-content:space-between;align-items:center;padding:18px 0;font-size:13px}.total strong{font-size:22px}.primary{background:#3974d4;color:white;border-color:#3974d4;padding:13px 17px}.primary:hover{background:#2d62b8}.secondary{background:white;color:#547298;border-color:#d5dfed;font-size:12px}.full{width:100%;margin-bottom:10px}.mini-total{display:flex;justify-content:space-between;border-top:1px dashed #dce3ed;margin-top:14px;padding:16px 0;font-size:12px}.empty{text-align:center;padding:65px 25px;color:#7e91a9}.empty span{font-size:40px;color:#bdcadb;display:block;margin-bottom:18px}.empty h3{font-size:14px;color:#8294ac}.empty p{font-size:12px}.compact{padding:35px 10px}.content{padding:30px 32px;flex:1}.tab-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.tab-card{text-align:left;padding:21px;border-color:#e0e7ef;min-height:195px}.tab-card h3{font-size:17px;margin:20px 0 7px}.tab-card p{font-size:11px;margin-bottom:10px}.tab-card footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #edf0f4;margin-top:18px;padding-top:15px}.tab-card footer strong{font-size:20px}.status{border-radius:4px;background:#edf1f7;color:#788aa4;font-size:10px;padding:4px 8px;text-transform:capitalize;display:inline-block}.status.open,.status.approved{background:#e5f3eb;color:#529072}.status.closed{background:#e7edf6;color:#6983a6}.status.parked,.status.declined{background:#fcf0d9;color:#a88e51}.status.cancelled{background:#f7e9e8;color:#b47f7b}.table-pills{display:flex;gap:5px}.table-pills span{padding:4px 6px;background:#eaf0f9;border-radius:4px;color:#6282b0;font-size:10px}.plan-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px}.plan-toolbar .segmented{margin-bottom:17px}.plan-toolbar>span{font-size:11px;color:#8191a6}.blue{color:#5b87cc}.plan-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:22px}.floor-wrapper{background:#fdfbf7;border:1px solid #e1e3e8;border-radius:13px;overflow:hidden;align-self:start}.floor{position:relative;aspect-ratio:8/5;background-image:radial-gradient(#d7dadc .8px,transparent .8px);background-size:20px 20px;user-select:none;touch-action:none}.plan-table{position:absolute;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:5px;border:2px solid #d4dce5;background:#fff;overflow:hidden}.plan-table strong{font-size:14px;margin-bottom:3px}.plan-table small{font-size:8px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.plan-table b{font-size:9px;margin-top:3px}.plan-table.round{border-radius:50%}.plan-table.occupied{background:#dce9fb;border-color:#95b5e7;color:#4e7abc}.plan-table.focused{border-color:#386ece;box-shadow:0 0 0 4px #719add33}.fixture{position:absolute;background:#e7dfd2;color:#9b8a74;border-radius:5px;font-size:10px;display:flex;align-items:center;justify-content:center;letter-spacing:2px;border:1px solid #d9cebd}.floor-label{position:absolute;bottom:15px;left:22px;font-size:9px;letter-spacing:2px;color:#b0a593}.panel{background:white;border:1px solid #e3e8ef;border-radius:11px;padding:24px;margin-bottom:24px}.table-inspector{padding:22px}.table-inspector h2{font-size:27px;margin:8px 0}.table-inspector p{font-size:11px}.eyebrow{letter-spacing:1.4px;font-size:10px;color:#7790b2;font-weight:700}.booking-snippet{border-top:1px solid #e8ecf3;padding:13px 0}.booking-snippet strong{display:block;font-size:11px;margin-bottom:5px}.booking-snippet small{font-size:10px;margin-bottom:10px}.list{background:white;border:1px solid #e2e8f0;border-radius:10px;padding:0 24px}.list-row{display:flex;align-items:center;gap:17px;padding:19px 0;border-bottom:1px solid #eef1f6}.list-row:last-child{border-bottom:none}.list-row strong{font-size:12px}.list-row p{font-size:11px;margin:5px 0 0}.grow{flex:1;min-width:0}.date-block{background:#eaf0f9;color:#607fae;min-width:47px;border-radius:8px;text-align:center;padding:7px;font-size:22px;font-weight:600}.date-block small{font-size:9px;text-transform:uppercase}.bo-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:11px}th{color:#8797ac;font-weight:500;border-bottom:1px solid #e3e9f2;padding:12px 10px}td{padding:16px 10px;border-bottom:1px solid #eff2f7}td small{font-size:9px;margin-top:5px}td strong{font-size:11px}.hint{font-size:11px;color:#91a0b3;margin:14px 0;line-height:1.7}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:25px}.metrics>div{background:white;border:1px solid #e3e8ef;padding:24px;border-radius:10px}.metrics strong{display:block;font-size:29px;margin-top:10px;color:#416b9e}.event-dot{height:9px;width:9px;border-radius:50%;background:#9bb9e1;flex-shrink:0}.evidence-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:25px}.evidence-grid .panel{margin-bottom:0}.evidence-grid h3{margin:12px 0}.evidence-grid p{font-size:12px}.evidence-grid+.panel{margin-top:25px}.main-footer{margin-top:auto;padding:19px 32px;border-top:1px solid #e1e7f0;font-size:11px;color:#7b8da4;display:flex;gap:17px;align-items:center}.main-footer span{color:#9aabbd;font-size:10px}.main-footer small{margin-left:auto;font-size:9px}.veil{position:fixed;inset:0;background:#10253966;backdrop-filter:blur(3px);z-index:20;display:flex;align-items:center;justify-content:center;padding:25px}.sheet{background:#fff;border-radius:15px;box-shadow:0 20px 80px #0f2a4744;width:650px;max-width:100%;max-height:90vh;overflow:auto;padding:27px 30px}.sheet>header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e8edf4;padding-bottom:15px;margin-bottom:25px}.sheet>header h2{font-size:18px;margin:0}.sheet>header button{border:none;background:#f2f5fa;width:30px;height:30px;padding:0;font-size:21px;color:#8799b0}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.checks{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:15px 0 24px}.checks label,.check{font-size:12px;display:flex;align-items:center;gap:8px;color:#697d96}.check{margin:20px 0}.checks input,.check input{width:16px;height:16px;accent-color:#477eda}.action-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.detail-items{max-height:320px;overflow:auto}.voided{text-decoration:line-through;color:#aeb9c6}.bill{background:#f6f8fb;border-radius:10px;padding:15px 22px;margin:20px 0}.bill>div{display:flex;justify-content:space-between;font-size:12px;margin:8px 0}.bill .total{padding-top:10px;border-top:1px solid #dfe6f0;margin-top:15px}.pay-total{text-align:center;background:#f3f7fd;border-radius:11px;padding:23px;margin-bottom:19px}.pay-total small{font-size:10px;letter-spacing:1px}.pay-total strong{display:block;font-size:38px;color:#3e71b9;margin-top:8px}.payment-part{display:grid;grid-template-columns:1fr .8fr 1fr 25px;gap:10px;align-items:center;border-bottom:1px solid #edf1f7;margin-top:15px}.payment-part .field{margin-bottom:15px}.payment-part button{border:none;padding:4px;background:#f6f8fc}.payment-part small{font-size:9px}.receipt{max-width:400px;margin:auto;font-family:monospace;font-size:12px}.receipt h2,.receipt h3,.receipt p{text-align:center}.receipt>div{display:flex;justify-content:space-between;margin:13px 0}.login{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;background:#fff}.login-art{background:#162c45;color:white;padding:70px 10%;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.login-art .eyebrow{color:#87aad9;letter-spacing:4px;margin-bottom:40px}.login-art h1{font-size:clamp(40px,5vw,72px);line-height:1.15;letter-spacing:-3px;margin-bottom:28px}.login-art p{color:#a8bcd4;font-size:15px}.login-art .pill{align-self:start;margin-top:42px}.illustration{display:flex;gap:20px;transform:rotate(-8deg);margin-top:25px}.illustration>div{display:grid;place-content:center;text-align:center;border:2px solid #668bb9;border-radius:22px;background:#2b4e75;width:95px;height:95px;color:#a6c5ea;font-size:26px;box-shadow:7px 7px 0 #101d32}.illustration>div:nth-child(2){border-radius:50%;margin-top:35px}.illustration small{font-size:8px;letter-spacing:2px;color:#8caacb}.login-form{width:370px;max-width:85%;align-self:center;justify-self:center}.login-form .brand-mark{margin-bottom:25px}.login-form h2{font-size:26px}.login-form p{font-size:12px;margin-bottom:32px}.login-form button{width:100%;margin-top:8px}.login-form>small{font-size:10px;margin-top:25px}.login-form .error{color:#b25353;margin-top:18px}.loading{display:grid;place-content:center;text-align:center;height:100vh;gap:20px}.loading .brand-mark{margin:auto}
@media(min-width:1500px){.product-grid{grid-template-columns:repeat(4,1fr)}.till-layout{grid-template-columns:minmax(0,1fr) 370px}.product{min-height:170px}.tab-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:1100px){.sidebar{width:185px;padding:24px 14px}main{margin-left:185px;width:calc(100% - 185px)}.top,.content{padding:24px}.products{padding:24px 20px}.till-layout{grid-template-columns:minmax(0,1fr) 295px}.product-grid{grid-template-columns:repeat(2,1fr);gap:10px}.section-head{flex-wrap:wrap}.search{width:100%}.bo-grid,.plan-layout{grid-template-columns:1fr}.tab-grid{grid-template-columns:repeat(2,1fr)}.top-actions .connection{display:none}.development{padding:10px 24px;font-size:9px}.order-panel{padding:24px 17px}}

@media print{body{background:#fff}.app>aside,.app>main{display:none}.veil{position:static;background:none;display:block;padding:0}.sheet{box-shadow:none;border-radius:0;padding:0;width:auto;max-height:none}.sheet>header,.sheet button{display:none}.receipt{max-width:80mm;margin:0}.receipt div{break-inside:avoid}}

.plan-table.booking-current{background:#f6d8d7;color:#ad6864}.plan-table.booking-soon{background:#fce6c7;color:#af823e}.plan-table.booking-later{background:#dfeedd;color:#6b9862}.plan-table.booking-{background:#fff;color:#6d7f94}

.download-card{display:flex;gap:30px;padding:35px;max-width:800px}.download-card>.brand-mark{width:64px;height:64px;font-size:48px;flex-shrink:0}.download-link{display:inline-block;text-decoration:none;border-radius:8px;margin:8px 0 14px}.download-card p{font-size:13px}.download-card .hint{font-size:11px}
.register-shell{background:#303b40;color:#eef2f4}.register-shell>.sidebar{display:none}.register-shell>main{margin-left:0;width:100%;background:#303b40}.register-shell .top{background:#283239;border-bottom:1px solid #445159;padding:10px 22px;min-height:60px}.register-shell .top h1{font-size:18px;color:#dbe5ec}.register-shell .top small{font-size:8px;color:#85939c;margin-bottom:3px}.register-shell .top-actions select{background:#36444d;border-color:#4c5d67;color:#dce5ea}.register-shell .top .avatar{display:none}.register-shell .development{padding:7px 20px;background:#3b4142;color:#c9c4a8;border-color:#50534c;font-size:9px}.register-shell .development>span{background:#535449;color:#e2d8ac}.register-shell .development button{background:#4b5048;border-color:#747866;color:#e1decb}.register-shell .notice{background:#334859;border-color:#4b677b;color:#cedeed;padding:9px 20px;font-size:11px}.register-shell .main-footer{display:none}.classic-register{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(250px,1fr);grid-template-rows:1fr 45px;gap:0 18px;padding:16px 16px 0;min-height:calc(100dvh - 95px);flex:1;position:relative;background:#303b40}.classic-products{padding:0 8px 30px 0}.classic-groups{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;max-width:700px;margin-bottom:7px}.classic-groups button{border:none;border-radius:0;background:#315994;color:#e8eef6;font-weight:400;min-height:57px;font-size:14px;text-transform:uppercase}.classic-groups button:nth-child(odd){background:#b9752c}.classic-groups button.chosen{background:#dd9337;box-shadow:inset 0 -3px #efb963}.classic-subgroups{display:grid;grid-template-columns:repeat(4,1fr);max-width:700px;gap:7px;margin-bottom:55px}.classic-subgroups button{border:none;border-radius:0;background:#4f88b5;color:#e5f1fa;min-height:55px;font-weight:400;font-size:14px}.classic-subgroups button.chosen{background:#ce8639;color:#fff4dd}.classic-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;max-width:700px;align-content:start}.classic-product-grid button{border:0;border-radius:0;min-height:58px;padding:7px 9px;background:#f2f1bd;color:#454839;font-weight:400;font-size:13px;box-shadow:none}.classic-product-grid button:hover{background:#ffffd8}.classic-product-grid small{display:none}.classic-search{display:block;width:100%;max-width:700px;margin-top:-35px;margin-bottom:18px;background:#46555d;border-color:#697881;color:#fff;border-radius:0}.classic-order{display:flex;flex-direction:column;min-width:0;padding:0 6px 26px}.classic-user{text-align:right;color:#93a0a5;font-size:11px}.classic-order-total{text-align:right;display:block;color:#e3e8ea;font-size:38px;font-weight:400;margin:7px 0 15px}.classic-order-lines{flex:1;min-height:260px;overflow:auto}.classic-order-lines>button{width:100%;display:flex;justify-content:space-between;text-align:left;gap:12px;padding:12px 3px;border:none;border-top:1px solid #4a565d;border-radius:0;background:none;color:#d4dce0;font-weight:400;font-size:12px}.classic-order-lines>button.chosen{background:#48585f}.classic-order-lines small{font-size:10px;color:#9dafb9}.classic-order-lines b{font-weight:400;white-space:nowrap}.classic-order-lines .classic-linked{margin-top:16px;background:#394c56;font-size:11px;padding:12px;display:block}.classic-order-lines .classic-linked small{margin-top:5px}.classic-controls{display:grid;gap:7px;margin-top:30px}.classic-three{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.classic-two{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.classic-controls button{border:none;border-radius:0;background:#c3c8cb;color:#616a70;font-size:12px;font-weight:400;min-height:59px;padding:9px 5px}.classic-controls .classic-green{background:#4d8835;color:#d9edcb}.classic-controls .classic-green:hover{background:#60a83f}.classic-navigation{grid-column:1/-1;margin:0 -16px;display:flex;align-items:center;justify-content:space-around;border-top:1px solid #445059;background:#263039;overflow-x:auto;min-width:0}.classic-navigation button{white-space:nowrap;border:none;border-radius:0;background:none;color:#9facb6;font-size:11px;font-weight:400;padding:10px 8px;min-height:42px}.classic-navigation button.chosen{color:#91bce2;background:#2c3d4d}.classic-navigation button:disabled{opacity:.35}.register-tab-list{display:grid;gap:10px;margin-bottom:25px}.register-tab-list>button{text-align:left;padding:14px}.register-tab-list strong{display:block;font-size:13px}.register-tab-list small{margin-top:6px}.dialog-note{padding:12px;background:#fff0d4;color:#937339;border-radius:8px;font-size:12px}.register-shell .sheet{color:#1d334b}.register-shell .sheet input{color:#253a53}
@media(min-width:1500px){.classic-register{grid-template-columns:minmax(0,2.4fr) minmax(300px,1fr)}.classic-groups,.classic-subgroups,.classic-product-grid{max-width:900px}.classic-product-grid button{min-height:76px;font-size:16px}.classic-groups button,.classic-subgroups button{min-height:65px}}


.ticket-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.ticket{border:1px solid #dce3ed;border-radius:10px;overflow:hidden;background:white}.ticket>header{padding:20px;background:#d59646;color:white}.ticket.WITH-BAR>header,.ticket.WITH-KITCHEN>header{background:#8564a6}.ticket.READY-BAR>header,.ticket.READY-KITCHEN>header{background:#5a9a80}.ticket.COMPLETE>header{background:#8498ac}.ticket>header strong{display:block;font-size:15px;margin-bottom:7px}.ticket>header small{color:#f3e9dc;font-size:10px}.ticket>header b{display:block;margin-top:10px;font-size:12px}.ticket-items{padding:17px}.ticket-items button{display:block;text-align:left;width:100%;background:none;border:none;border-bottom:1px solid #e9eef5;border-radius:0;padding:13px 8px}.ticket-items button strong{font-size:12px}.ticket-items button small{font-size:10px;margin-top:4px}.ticket-items button.current{background:#eff7ed}.ticket-items button.away{text-decoration:line-through;opacity:.5}.ticket>footer{padding:16px}@media(max-width:1100px){.ticket-grid{grid-template-columns:repeat(2,1fr)}}
/* Shared POS shell reconstructed from documented layouts; Barology-owned styling. */
.register-shell .shared-navigation{grid-column:1/-1;margin:0;position:sticky;bottom:0;z-index:4;min-height:48px;flex-shrink:0}.classic-register>.shared-navigation{margin:0 -16px}.register-shell .content{padding:18px 22px}.register-shell .section-head h2{color:#e5eaf0;font-size:20px}.register-shell p,.register-shell small{color:#aebac3}.register-shell .panel,.register-shell .list{border-color:#56636c;border-radius:2px;background:#37454e;color:#edf0f2}.register-shell .segmented{background:#26343e;border:1px solid #546570;border-radius:2px}.register-shell .segmented button{background:transparent;color:#c8d5df;border-radius:0}.register-shell .segmented button.selected{background:#5486aa;color:#fff;box-shadow:none}.register-shell .secondary{background:#c5cbd0;color:#35434e;border-radius:1px;border:0}.register-shell .primary{background:#578c3e;border-color:#578c3e;border-radius:1px;color:#fff}.register-shell .text-button{color:#a2c5e3}.register-shell .list-row{border-color:#52616b}.register-shell .table-inspector{min-width:0}.register-shell .table-inspector .tab-info{padding:15px 0}.register-shell .field input,.register-shell .field select{background:#26343e;border-color:#62737e;color:#fff}.register-shell .floor-wrapper{border-radius:0;border-color:#748188}.register-shell .plan-table{border-radius:3px}.register-shell .plan-table.round{border-radius:50%}.register-shell .fixture{border-radius:0}.register-shell .sheet{background:#34434d;color:#eef2f5;border:1px solid #697b86;border-radius:3px}.register-shell .sheet>header{border-color:#61727e}.register-shell .sheet>header button{background:#516571;color:white;border-radius:1px}.register-shell .sheet .field input,.register-shell .sheet .field select{background:#25343e;color:#fff;border-color:#637784}.register-shell .sheet .field span,.register-shell .sheet .check,.register-shell .sheet .checks label{color:#ced8df}.register-shell .sheet .bill{background:#26343e;color:#e4edf1;border-radius:1px}.register-shell .sheet .status{color:#34434d}.register-shell .sheet .hint{color:#b2c2ca}.register-shell .sheet .dialog-note{color:#6d4c13;background:#ffdf9b;border-radius:0}.danger{background:#a74943;color:white;border-color:#a74943;border-radius:1px;padding:12px 15px}.register-shell .ticket{background:#354650;border-radius:1px;border-color:#647580}.register-shell .ticket-items button{color:#e5edf2;border-color:#5a6974}.register-shell .ticket-items button.current{background:#45544b}.register-shell .ticket-items button.voided{text-decoration:line-through;opacity:.4}.register-shell .sheet .receipt p,.register-shell .sheet .receipt small{color:inherit}
.classic-summary{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(390px,1.2fr);gap:18px;padding:16px;flex:1;min-height:calc(100dvh - 149px)}.summary-tabs{display:flex;flex-direction:column;border:1px solid #576771;background:#293842;min-width:0}.summary-toolbar{display:flex;justify-content:space-between;align-items:center;padding:14px;background:#374953}.summary-toolbar h2{margin:0;font-size:19px}.summary-toolbar .primary{padding:11px 16px}.summary-filter{display:flex;background:#24313b}.summary-filter button{flex:1;background:none;border:none;border-bottom:3px solid transparent;border-radius:0;color:#aabcce;font-weight:400;padding:14px 9px}.summary-filter button.chosen{border-bottom-color:#87b5d8;background:#365467;color:white}.summary-search{display:flex;gap:8px;padding:12px}.summary-search input,.summary-search select{background:#1c2a33;border:1px solid #546977;color:#e4e9ee;border-radius:1px;padding:10px;min-width:0}.summary-search input{flex:1;width:50%}.summary-search select{font-size:11px;width:120px}.summary-columns{display:flex;justify-content:space-between;padding:12px 18px;background:#405460;font-size:11px;color:#d7e2e9}.summary-tab-list{flex:1;overflow:auto}.summary-tab{display:flex;justify-content:space-between;gap:20px;align-items:center;width:100%;text-align:left;background:none;color:#e1e9ee;border:0;border-bottom:1px solid #50636f;border-radius:0;padding:16px 18px;font-weight:400}.summary-tab:hover,.summary-tab.chosen{background:#496f88;box-shadow:inset 4px 0 #9fcae9}.summary-tab strong{font-size:15px;display:block}.summary-tab small{font-size:10px;margin-top:7px;color:#b0c2cf}.summary-tab b{font-size:20px;font-weight:400;white-space:nowrap}.summary-tab.chosen small{color:#d4e2ec}.summary-tabs>footer{border-top:1px solid #677c8a;padding:14px 18px;font-size:12px;color:#bacbd5}.summary-detail{background:#394952;border:1px solid #5a6c78;min-width:0;padding:18px}.summary-empty{padding:45px 20px;text-align:center;color:#bbc9d3}.summary-empty h2,.summary-empty h3{color:#dce6ed}.summary-empty p{font-size:12px}.tab-panel>header{display:flex;justify-content:space-between;gap:15px;align-items:start;padding-bottom:18px}.tab-panel h2{font-size:22px;margin:0 0 10px}.tab-panel header small{font-size:11px;line-height:1.7}.tab-items-head{display:flex;justify-content:space-between;padding:12px 8px;background:#293a44;border-top:1px solid #627985;color:#d0dbe2;font-size:12px}.tab-items-head input{margin-right:10px}.tab-panel .detail-items{min-height:110px;max-height:calc(100dvh - 590px);overflow:auto}.tab-panel .list-row{padding:14px 8px;font-size:12px}.tab-panel .list-row input{accent-color:#87b5dc;width:17px;height:17px}.tab-panel .item-selected{background:#4b6b7e}.tab-panel .bill{background:#263841;color:#d7e4ea;border-radius:0;padding:13px 17px;margin:14px 0}.tab-panel .bill .total{border-color:#58717f;padding:10px 0 0}.tab-panel .bill .total strong{font-size:25px;font-weight:400}.tab-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.tab-action-grid button{border:0;border-radius:0;min-height:49px;background:#bcc7ce;color:#334651;font-size:11px;font-weight:400;padding:9px 7px}.tab-action-grid .primary{background:#52883b;color:white}.tab-action-grid .danger{background:#a74943;color:white}.tab-payments{margin-top:20px;border-top:1px solid #597382;padding-top:14px;font-size:12px}.tab-payments summary{cursor:pointer}.register-shell .sheet .tab-panel h2{color:#f2f6f9}.sheet:has(.payment-layout){width:960px}.sheet:has(.tab-panel){width:750px}.payment-heading{display:flex;justify-content:space-between;align-items:center;padding:5px 0 20px}.payment-heading small{font-size:13px}.payment-heading h2{font-size:19px;margin:8px 0 0;font-weight:400}.payment-heading>strong{font-size:38px;font-weight:400}.payment-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:22px}.payment-methods{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:10px}.payment-methods button{background:#c4cbd0;color:#3e505c;border:0;border-radius:1px;min-height:49px;font-weight:400}.payment-methods button.chosen{background:#5d90b1;color:white}.payment-part{grid-template-columns:1fr .8fr 1fr 22px;padding:10px 7px;margin:0;border:1px solid transparent;border-bottom-color:#637c89}.payment-part.focused{border:1px solid #7fb2d2;background:#3e5260}.payment-part .field{margin:0}.payment-part .field input,.payment-part .field select{padding:8px;font-size:12px;min-width:0;width:100%}.payment-part .field span{font-size:9px}.payment-part>button{background:none;color:#b0bac4}.payment-layout .secondary.full{margin:10px 0 16px}.payment-keypad button{border:0;border-radius:1px;background:#c3cbd0;color:#304751;min-height:48px;font-size:22px;font-weight:400}.cash-keys{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-bottom:8px}.cash-keys button{background:#558743;color:#f0f7ea;font-size:17px}.number-keys{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.keypad-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-top:6px}.keypad-actions button{font-size:12px;background:#8396a4;color:#fff}.equal-split{display:flex;align-items:center;gap:8px;font-size:12px;flex-wrap:wrap}.equal-split>span{margin-right:auto}.equal-split>button{padding:9px;background:#aab9c3;border:0;border-radius:1px;font-size:12px}.payment-balance{display:flex;justify-content:space-between;background:#253844;color:#e7eff3;padding:18px;margin-top:18px;font-size:15px}.payment-balance b{margin-left:12px;font-weight:400;font-size:22px}.payment-layout .field span{color:inherit}


@media print{.register-shell .sheet,.register-shell .sheet .receipt{background:white;color:black}.register-shell .sheet .receipt p{color:black}.sheet .tab-panel,.sheet .dialog-note{display:none}}
.register-shell .plan-table{color:#405766}.register-shell .plan-table small{color:#697e8c}.register-shell .plan-table.occupied{color:#416ead}.register-shell .plan-table.occupied small{color:#587bac}.register-shell .table-inspector .tab-info{background:#273842;border:1px solid #617786;border-radius:0;padding:15px;color:#edf3f7}.register-shell .table-inspector .tab-info strong{color:#edf3f7}.register-shell .plan-table.booking-current{color:#914b47}.register-shell .plan-table.booking-soon{color:#866223}.register-shell .plan-table.booking-later{color:#4b7745}
.payment-totals{display:flex;justify-content:space-between;gap:15px;padding:12px 0;margin-bottom:12px;border-top:1px solid #607b8a;border-bottom:1px solid #607b8a;font-size:11px}.payment-totals b{display:block;font-size:21px;font-weight:400;margin-top:6px}.committed-payments{max-height:150px;overflow:auto;margin-bottom:14px;background:#263c48;padding:5px 14px;color:#e7eff3}.committed-payments>div{display:flex;justify-content:space-between;gap:18px;font-size:12px;padding:10px 0;border-bottom:1px solid #597383}.committed-payments b{margin-left:auto}.committed-payments small{font-size:10px}.payment-finish{display:grid;grid-template-columns:2fr 1fr;gap:8px}.payment-finish button{min-height:55px;border-radius:1px}.payment-finish .primary{font-weight:400}.payment-finish .secondary{font-weight:400}.register-shell .tab-items-head .status{color:#35434d}
.payment-tools{display:flex;gap:8px;margin-bottom:12px}.payment-tools button{background:#9eafbc;color:#263d4d;border:0;border-radius:1px;font-size:12px;font-weight:400;padding:11px 18px}.classic-user>small{font-size:12px;margin:6px 0;color:#d1e4f3}.register-shell .receipt>div{color:#e6eef3}@media print{.register-shell .receipt>div{color:black}}
.register-shell>main{height:100dvh;overflow:hidden}.register-shell .classic-summary{min-height:0;height:auto;overflow:hidden;flex:1}.register-shell .summary-tabs,.register-shell .summary-tab-list{min-height:0}.register-shell .summary-detail{overflow:auto}.register-shell .content{overflow:auto;min-height:0}.register-shell .classic-register{min-height:0;overflow:auto}.sheet:has(.payment-layout){display:flex;flex-direction:column;overflow:hidden;max-height:94dvh;padding:18px 24px}.sheet:has(.payment-layout)>header{margin-bottom:12px;padding-bottom:12px;flex-shrink:0}.sheet:has(.payment-layout)>.payment-layout{flex:1;min-height:140px;overflow:auto}.sheet:has(.payment-layout)>.payment-heading,.sheet:has(.payment-layout)>.payment-tools,.sheet:has(.payment-layout)>.payment-totals,.sheet:has(.payment-layout)>.committed-payments,.sheet:has(.payment-layout)>.payment-balance,.sheet:has(.payment-layout)>form,.sheet:has(.payment-layout)>.hint{flex-shrink:0}.sheet:has(.payment-layout)>.committed-payments{max-height:80px}.sheet:has(.payment-layout)>.payment-heading{padding:0 0 10px}.sheet:has(.payment-layout)>.payment-totals{padding:9px 0}.sheet:has(.payment-layout)>.payment-balance{padding:12px 16px;margin-top:12px}.sheet:has(.payment-layout)>form .check{margin:12px 0}.sheet:has(.payment-layout)>.hint{margin:10px 0 0;font-size:10px}.sheet:has(.payment-layout) .payment-keypad button{min-height:41px}.sheet:has(.payment-layout) .payment-finish button{min-height:47px}
.register-shell .classic-register{grid-template-rows:minmax(0,1fr) 48px;overflow:hidden}.register-shell .classic-products{min-height:0;overflow:auto}.register-shell .classic-order{min-height:0;padding-bottom:14px}.register-shell .classic-order-lines{min-height:100px}.register-shell .classic-controls{margin-top:15px}.register-shell .classic-order-total{margin-bottom:10px}
.sidebar{overflow-y:auto;overscroll-behavior:contain;flex-shrink:0}.sidebar nav,.sidebar .logo,.sidebar .venue-name,.sidebar .sidebar-bottom{flex-shrink:0}
.bo-navigation{display:flex;gap:4px;flex-wrap:wrap;border-bottom:2px solid #d5e0ec;margin:-5px 0 26px;padding-bottom:10px}.bo-navigation button{border:0;border-radius:3px;background:#e8eef5;color:#526d8c;padding:12px 14px;font-size:12px;font-weight:500}.bo-navigation button.active{background:#356ca8;color:white}.backoffice .bo-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid #e1e7ef}.bo-row>.field{min-width:150px;flex:1;margin:0}.bo-row>strong{min-width:180px;flex:1;font-size:13px}.bo-row>button{flex:0;align-self:center}.bo-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.bo-actions .field{margin-bottom:0}.bo-editor{border-top:4px solid #3974a9;box-shadow:0 7px 23px #28577c11}.bo-editor>header{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:1px solid #dce5ef;margin-bottom:20px}.bo-editor>header h3{margin:0}.bo-editor form>h4{padding-top:20px;margin-top:20px;border-top:1px solid #e2e9f0}.bo-editor .primary{margin-top:17px}.office-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px}.membership-office .card{background:white;border:1px solid #e1e7ed;border-radius:8px;padding:24px;min-width:0;overflow:auto}.membership-office .toolbar{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.membership-office .toolbar .field{min-width:180px;flex:1}.membership-office .toolbar button{margin-top:6px}.membership-office fieldset{border:1px solid #d8e3ec;border-radius:4px;padding:12px;margin:18px 0}.membership-office legend{font-size:12px;color:#557192}.membership-office article{padding:12px 0;border-bottom:1px solid #dce4ed}.membership-office form{margin-bottom:20px}.membership-office h4{font-size:15px;margin:28px 0 15px}.stock-office .negative,.backoffice .negative{color:#b44742}.stock-office .positive,.backoffice .positive{color:#328363}.stock-count-sheet .count-input{background:#fffbcf;min-width:105px}.stock-count-sheet input{max-width:180px;padding:9px}.stock-count-sheet table{min-width:700px}.stock-count-sheet .bo-actions{margin:20px 0}.stock-count-sheet .segmented{margin-bottom:12px}.receipt-correction td{background:#eef8ee;color:#437d54}.member-tab-banner{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:12px 0;font-size:12px}.member-tab-banner>small{margin-left:auto}.register-shell .member-tab-banner button{background:#b7c8d3;border:0;border-radius:0;color:#334856;font-size:11px}.register-shell .tab-panel>.panel{padding:12px;background:#304550;margin:8px 0 13px}.register-shell .tab-panel>.panel h3{font-size:14px;margin-bottom:10px}.register-shell .tab-panel>.panel .list-row{padding:9px 0}.classic-product-grid .quick-stock-count{display:block;width:max-content;margin:6px auto 0;background:#899673;color:#fff;font-size:10px;border-radius:3px;padding:2px 6px}.classic-product-grid button:disabled{background:#aaa99c;opacity:.6}.payment-tools{flex-wrap:wrap}.payment-tools button{padding:10px 12px;font-size:11px}.stock-office>.segmented{flex-wrap:wrap;overflow:auto}.stock-office .table-scroll td button{margin:3px;font-size:11px;padding:8px}.stock-office .table-scroll th{white-space:nowrap}
@media(max-width:1100px){.office-grid{grid-template-columns:1fr}.backoffice .bo-row>.field{min-width:130px}.bo-navigation{gap:5px}.bo-navigation button{padding:10px 12px}}


.catalogue-office fieldset,.sheet fieldset{border:1px solid #d8e3ec;padding:16px;margin:16px 0;border-radius:4px}.catalogue-office legend,.sheet legend{font-size:12px;color:#587394}.finance-office .metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}.finance-office .metric{padding:18px;border-radius:5px;background:#eef3f8}.finance-office .metric small{display:block;font-size:11px;color:#637c97}.finance-office .metric strong{display:block;margin-top:8px;font-size:23px}.catalogue-office table button{margin:3px}.finance-office .bo-actions{margin-top:18px}.catalogue-office>.section-head,.finance-office>.section-head{margin-bottom:22px}

.service-office fieldset{border:1px solid #d8e3ec;border-radius:6px;padding:16px;margin:20px 0}.service-office legend{font-size:12px;color:#587394}.service-office .table-scroll table{min-width:650px}.service-office .table-scroll td{vertical-align:top}.service-office .table-scroll td:first-child{min-width:130px}.service-office .table-scroll td:last-child{min-width:175px}
.workforce-office .card{background:white;border:1px solid #e1e7ed;border-radius:8px;padding:24px;min-width:0;overflow:auto;margin:20px 0}.workforce-office .actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:16px 0}.workforce-office .metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.workforce-office .card table{min-width:580px}.workforce-office .card td{vertical-align:top}.workforce-office .card td button{margin:4px}.workforce-office .card form+form{border-top:1px solid #e3e8ef;margin-top:24px;padding-top:24px}.workforce-office pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:480px}.workforce-office .segmented{margin-top:24px}.workforce-office>.section-head{flex-wrap:wrap}



.sales-office .panel{border-radius:4px;border-top:3px solid #4388a0}.sales-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:20px 0}.sales-metric{background:#fffbea;border:1px solid #e7e1c9;padding:16px 12px;border-radius:3px;min-width:0}.sales-metric strong{font-size:19px;color:#405261;display:block;margin-top:8px;overflow-wrap:anywhere}.sales-metric small{font-size:10px}.sales-filters fieldset{border:0;padding:0;margin:14px 0}.sales-filters legend{font-size:11px;color:#708092}.sales-filters .segmented{margin:8px 0 16px}.sales-filters .segmented button{background:#e6ebed;border:0;border-radius:3px}.sales-filters .segmented .selected{background:#378998;color:white}.sales-report-toolbar{display:flex;gap:18px;align-items:center;justify-content:space-between;margin-bottom:20px}.sales-report-toolbar>.field{flex:1;margin:0}.sales-table{min-width:760px}.sales-table th{font-size:10px;text-transform:uppercase;white-space:nowrap}.sales-table th:not(:first-child),.sales-table td:not(:first-child){text-align:right}.sales-table tbody tr:nth-child(even){background:#f6f8f9}.sales-table td{padding:11px}.sales-office [role=dialog] button{margin:5px}
@media(max-width:1100px){.sales-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}

.settings-office .card{background:#fff;border:1px solid #e0e6eb;border-top:3px solid #4388a0;border-radius:4px;padding:24px;min-width:0;overflow:auto;margin:18px 0}.settings-office textarea{width:100%;min-width:0;font:inherit;border:1px solid #dce2ea;border-radius:6px;padding:12px;color:#253a53}.settings-office pre{white-space:pre-wrap;overflow-wrap:anywhere}.settings-office .receipt-preview{font-family:ui-monospace,monospace;text-align:center;line-height:1.8}.settings-office .card table{min-width:450px}
.app:not(.register-shell)>.sidebar{width:68px;padding:24px 12px;background:#25343b}.app:not(.register-shell)>.sidebar .logo{font-size:0;gap:0;justify-content:center}.app:not(.register-shell)>.sidebar .logo-dot,.app:not(.register-shell)>.sidebar .venue-name,.app:not(.register-shell)>.sidebar .sidebar-bottom{display:none}.app:not(.register-shell)>.sidebar nav{margin-top:32px}.app:not(.register-shell)>.sidebar nav button{font-size:0;padding:12px 10px;position:relative}.app:not(.register-shell)>.sidebar nav button span{font-size:22px}.app:not(.register-shell)>.sidebar nav em{position:absolute;top:0;right:0}.app:not(.register-shell)>main{margin-left:68px;width:calc(100% - 68px)}


.classic-groups,.classic-subgroups,.classic-product-grid{max-width:none}.classic-summary{grid-template-columns:minmax(250px,.9fr) minmax(0,2fr)}.register-shell .top{min-height:36px;padding:5px 16px}.register-shell .top h1{font-size:14px}.register-shell .top>div>small{display:none}.register-shell .top-actions select{padding:4px 7px;font-size:11px}.register-shell .top-actions .avatar{width:26px;height:26px}.register-shell .development{padding:5px 16px;font-size:10px}.register-shell .development button{padding:3px 6px;font-size:9px}
.summary-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding-bottom:16px;border-bottom:1px solid #667681;margin-bottom:18px}.summary-actions button{border-radius:0;border:0;text-transform:uppercase;font-size:11px;min-height:40px;background:#a9bdca;color:#263e4e}.summary-actions button.primary{background:#77986e;color:#fff}.summary-large-balance{text-align:center;padding:8px 0 20px}.summary-large-balance strong{font-weight:400;font-size:64px;color:#edf3f5;display:block;line-height:1.1}.summary-large-balance small{font-size:11px;text-transform:uppercase}.summary-add-row{text-align:right;margin-bottom:12px}.summary-add-row button{border-radius:0;font-size:12px;text-transform:uppercase}.summary-detail .tab-panel>header{padding-bottom:5px}.summary-detail .tab-panel>header h2{font-weight:400}
.rota-week-grid{margin:20px 0;border:1px solid #d6e2e4;background:white}.rota-department{border-bottom:1px solid #dce7e8}.rota-department>summary{padding:14px;background:#e1ecec;color:#395965;cursor:pointer;font-size:13px;font-weight:600}.rota-grid-scroll{overflow-x:auto}.rota-grid-table{min-width:980px;table-layout:fixed}.rota-grid-table th{background:#eff4f5;text-transform:uppercase;font-size:10px;text-align:center}.rota-grid-table th:first-child{width:150px;text-align:left}.rota-grid-table th:last-child{width:70px}.rota-grid-table td{padding:7px;border-right:1px solid #e5ebed;vertical-align:top}.rota-grid-caption{padding:10px;color:#718c94;font-size:11px}.rota-staff-name{font-size:12px;font-weight:600;padding:14px!important;background:#f7fafb}.rota-day-cell{height:95px}.rota-shift-tile{background:#e0f0ed;border-left:3px solid #64a898;padding:5px;margin-bottom:6px}.rota-shift-tile button{border:0;border-radius:2px;background:transparent;padding:4px;font-size:10px}.rota-shift-edit{display:block;width:100%;text-align:left;color:#345e58}.rota-shift-info{font-size:10px;color:#678980;display:block;padding:0 4px}.rota-shift-sick,.rota-shift-noShow{background:#f8e5df;border-left-color:#d79b7d}.rota-shift-unavailable{background:#eaedf1;border-left-color:#a8b6c4}.rota-add-shift{display:block;width:24px;height:24px;padding:1px;margin:5px auto;background:#6d9d94;color:white;border:0;border-radius:3px}.rota-row-total,.rota-all-total{background:#f2f6f6;font-weight:600;text-align:center}.rota-layout-toggle{margin:12px 0}.rota-shift-editor{border-top:3px solid #579b9b!important}


.register-shell .floor-wrapper{background:#303336;border-color:#67727a;border-radius:0}.register-shell .floor{background:#303336;background-image:none}.register-shell .plan-table{background:transparent;color:#f2f5f5;border:2px solid #dbe2e3;border-radius:5px}.register-shell .plan-table.round{border-radius:50%}.register-shell .plan-table.occupied{background:#334959;border-color:#4b9cda;color:#edf6ff}.register-shell .plan-table small{color:#d0dce0}.register-shell .floor .fixture{background:transparent;color:#dce5e7;border:1px solid #89969a;border-radius:0}.register-shell .plan-table:hover{background:#435057}.register-shell .ticket{background:#f1f4dc;color:#314348;border-color:#788485;border-radius:0}.register-shell .ticket-items button{background:#f1f4dc;color:#314348;border-bottom:1px solid #c6d0ba;border-radius:0}.register-shell .ticket-items button small{color:#697d67}.register-shell .ticket>header{background:#c98d43;color:white}.register-shell .ticket.WITH-BAR>header,.register-shell .ticket.WITH-KITCHEN>header{background:#8665a1}.register-shell .ticket.READY-BAR>header,.register-shell .ticket.READY-KITCHEN>header{background:#629278}.register-shell .ticket>footer{background:#e2e8ce}.register-shell .ticket>footer .primary{background:#6d9462;color:#fff;border:0;border-radius:0}.register-shell .ticket>footer .text-button{color:#465d67}

.sheet:has(.payment-reference-layout){width:calc(100vw - 32px);max-width:1400px;height:calc(100dvh - 32px);max-height:calc(100dvh - 32px);border-radius:0;background:#303b40;color:#edf1f2}.sheet:has(.payment-reference-layout)>header{border-color:#62727b}.sheet:has(.payment-reference-layout)>header h2{color:#d9e6eb}.sheet:has(.payment-reference-layout)>.payment-reference-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:24px;overflow:hidden;min-height:0}.payment-reference-main,.payment-reference-bill{overflow:auto;min-width:0;min-height:0;padding-right:6px}.payment-reference-bill{background:#3c4c56;border:1px solid #6c7e88;padding:18px}.payment-reference-bill .payment-heading{border-bottom:1px solid #70818b;padding-bottom:20px}.payment-reference-bill .payment-heading>strong{font-size:44px;font-weight:400}.payment-reference-items{margin:20px 0}.payment-reference-line,.payment-reference-adjustments>div{display:flex;gap:14px;justify-content:space-between;padding:10px 0;border-bottom:1px solid #60727d;font-size:13px}.payment-reference-tenders .committed-payments{background:#273b44;border:0}.payment-reference-main .payment-keypad{display:block;max-width:620px;margin:20px auto}.payment-reference-main .number-keys{grid-template-columns:repeat(3,minmax(0,1fr))}.payment-reference-main .number-keys button{min-height:60px;font-size:24px;border-radius:0;background:#b6c5ce;color:#2e414b}.payment-reference-main .cash-keys button,.payment-reference-main .payment-methods button{border-radius:0;background:#538cba;color:white;border:0}.payment-reference-main .payment-finish button{border-radius:0}.payment-reference-main .payment-finish .primary{background:#73976a;border:0}.payment-reference-main .equal-split button{background:#c48649;color:white;border:0;border-radius:0}.payment-reference-bill .payment-balance{display:block}.payment-reference-bill .payment-balance>span{display:flex;justify-content:space-between;padding:8px 0}.payment-reference-bill .payment-balance>span:last-child{color:#abd59b}.payment-reference-bill .check{font-size:12px;color:#dce9ec}.payment-entry-hint{font-size:11px;color:#b7c9d3}



.payment-reference-main .cash-keys,.payment-reference-main .keypad-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.payment-reference-main .payment-keypad{margin:12px auto}.payment-reference-main .number-keys button{min-height:48px}.payment-reference-main>form{position:sticky;bottom:0;z-index:2;background:#303b40;padding:8px 0 0}.payment-reference-main .payment-finish{margin-top:8px}.payment-reference-bill-heading{padding-bottom:18px;border-bottom:1px solid #70818b}.payment-reference-bill-heading strong{font-size:44px;font-weight:400;display:block;line-height:1.2}.payment-reference-bill-heading small{margin-bottom:8px}.payment-reference-bill-heading span{font-size:12px;color:#b9ccd4}

.register-shell .stamp-tab-panel button{background:#a9bdca;color:#263e4e;border:0;border-radius:1px}.register-shell .stamp-tab-panel button:hover{background:#bdd0dc}.register-shell .stamp-tab-panel .primary{background:#73976a;color:#fff}.register-shell .stamp-tab-panel .primary:hover{background:#628359}

.backoffice .bo-navigation button.active,.backoffice .bo-navigation button.active:hover{background:#356ca8;color:#fff}

.manager-approval-veil{z-index:200}.approval-action{display:grid;grid-template-columns:1fr 2fr;gap:8px;padding:14px;background:#e8eef5;color:#243a50}.approval-action dd{margin:0}.till-service-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:15px}.till-service-actions button{background:#a9bdca;color:#263e4e;border-radius:1px}.service-id-accepted{border-left:4px solid #70a061!important}.service-id-failed,.service-id-refused{border-left:4px solid #bc735d!important}.register-shell .tab-service button,.register-shell .till-tab-service button{background:#a9bdca;color:#263e4e}

.booking-state-requested{background:#dce8fa;color:#2f5b91}.booking-state-confirmed{background:#dfefdc;color:#3c6833}.booking-state-arrived{background:#f6e6cd;color:#886121}.booking-state-ended,.booking-state-cancelled,.booking-state-declined{background:#e4e6e8;color:#59616a}.booking-state-noShow{background:#f6dcdb;color:#9c413e}.booking-calendar{overflow:auto}.booking-timeline-axis,.booking-timeline-row{min-width:850px}.booking-office .panel{min-width:0}.booking-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:end;margin:16px 0}.booking-toolbar .field{margin:0}.booking-editor{border-top:4px solid #538ba8}.register-shell .booking-office button{background:#a9bdca;color:#263e4e}.register-shell .booking-office .primary{background:#73976a;color:white}.register-shell .booking-office td,.register-shell .booking-office th{border-color:#5a6e79}.register-shell .booking-office th{background:#324a58;color:#e6eef2}

.booking-office .booking-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.booking-timeline-row{border-bottom:1px solid #d9e1e6}.booking-timeline-group{background:#3b505d;color:white;padding:8px 12px}.register-shell .booking-office .booking-metrics>div{background:#374953;color:#edf1f2}.register-shell .booking-office .booking-metrics strong{color:#eef4f5}

.floorplan-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.floorplan-area-tabs{display:flex;gap:5px;flex-wrap:wrap}.floorplan-canvas{background:#303336;color:#eef2f3;border:1px solid #72818a;overflow:hidden;touch-action:none}.floorplan-canvas svg,.floor .fixture svg{width:100%;height:100%;display:block}.floorplan-form{border-top:3px solid #558ca7}.floorplan-form .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.floorplan-office .panel{min-width:0}.floorplan-history pre{white-space:pre-wrap}.floor .fixture:has(svg){padding:0;border:0}

.register-shell .floor .fixture:has(svg){border:0;padding:0}

.booking-timeline-axis{font-size:11px;padding-bottom:6px}.booking-timeline-row>div:first-child{padding:10px 8px}.booking-time-block{height:36px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid #b8c7ce;border-radius:2px;padding:4px 8px;text-align:left}.booking-now-line{border-left:2px solid #bd4a45;pointer-events:none}.register-shell .booking-office .booking-time-block.booking-state-confirmed{background:#b6cda9;color:#263c28}

.misc-sale-entry{padding:28px 18px;max-width:900px}.misc-categories{display:flex;gap:10px;margin:20px 0}.misc-categories button{background:#568bb5;color:white;border:0;border-radius:1px;min-width:130px;min-height:68px}.misc-categories button.chosen{background:#bd772d}.misc-entry-fields{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px}.register-shell .misc-entry-fields input,.register-shell .misc-entry-fields select{border-radius:1px;background:#d8dfe2;color:#253b49;min-height:58px}.misc-sale-entry>.classic-green{display:block;min-width:140px;min-height:65px;margin:0 0 12px auto;font-size:24px}.misc-sale-entry .hint{margin-top:20px}

.register-shell .misc-sale-entry>.classic-green{background:#4d8835;color:#fff;border:0;border-radius:0}.register-shell .misc-categories button.chosen{background:#bd772d;color:white}

/* Main Barology is a desktop/iPad workspace; the phone app is separate. */
body,.app{min-width:1024px}.veil{overflow:auto}.sheet{min-width:600px;flex-shrink:0;margin:auto}.sheet:has(.payment-reference-layout){min-width:900px}.register-shell .misc-sale-entry>.classic-green{background:#4d8835;color:#fff;border:0;border-radius:0}

@media print{body,.app,.veil,.sheet{min-width:0}.sheet{margin:0}}

/* Separate applications retain the desktop/iPad workspace. */
.classic-navigation a{display:flex;align-items:center;justify-content:center;color:inherit;text-decoration:none;padding:12px 16px;background:#344b62;border:1px solid #56718a;font-size:14px;font-weight:700}.sidebar .separate-app-link{display:block;padding:12px 16px;color:#c8d9e9;text-decoration:none}.login-form>a{margin-bottom:14px;color:#315b8b}

.order-mode-switch{display:flex;gap:5px;margin:0 0 8px}.order-mode-switch button{flex:1;padding:10px;background:#a9bdca;color:#263e4e;border:0;border-radius:0}.order-mode-switch button.chosen{background:#396e9d;color:white}.round-note,.ticket-round-note{padding:10px;background:#fff7ca;color:#263e4e;white-space:pre-wrap;overflow-wrap:anywhere}.round-note p{margin-bottom:0}.ticket-order-mode{display:block;padding:7px;color:#355f81}

.ordering-office fieldset{border:1px solid #d9e2ec;border-radius:10px;margin:16px 0;padding:16px}.ordering-office legend{padding:0 6px;font-weight:600;color:#1e334c}

/* Venue stocktake configuration and printable count sheets. */
.stock-audits-office>.actions{margin:16px 0}.stock-audit-config fieldset{margin:20px 0}.stock-audits-office .stock-count-sheet small{display:block}.stock-audits-office .stock-count-sheet textarea{min-height:90px}.stock-audits-office .stock-count-sheet td input{max-width:140px}.stock-audits-office .stock-count-sheet .table-scroll{max-width:100%;overflow:auto}.stock-audits-office .stock-count-sheet table{min-width:900px}
@media print{body:has(.stock-audits-office) .sidebar,body:has(.stock-audits-office) .top,body:has(.stock-audits-office) .development,body:has(.stock-audits-office) .bo-navigation,body:has(.stock-audits-office) .page-footer,body:has(.stock-audits-office) .stock-audits-office>.actions,body:has(.stock-audits-office) .stock-audits-office>.table-scroll,body:has(.stock-audits-office) .stock-audits-office button,body:has(.stock-audits-office) .stock-audits-office .segmented,body:has(.stock-audits-office) .stock-audit-config{display:none!important}body:has(.stock-audits-office) .app,body:has(.stock-audits-office) main{display:block!important;min-width:0!important;margin:0!important}body:has(.stock-audits-office) .table-scroll{overflow:visible!important}body:has(.stock-audits-office) .stock-count-sheet table{min-width:0!important;font-size:9pt}body:has(.stock-audits-office) .stock-count-sheet input{border:0!important;color:#000!important}body:has(.stock-audits-office) .stock-count-sheet td{padding:5px!important}body:has(.stock-audits-office) .panel{box-shadow:none!important;break-inside:auto}body:has(.stock-audits-office) .stock-count-sheet tr{break-inside:avoid}}
.stock-audits-office .actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.stock-audits-office>.table-scroll td{vertical-align:top}

.offline-workspace{margin-left:0;padding:28px 32px;max-width:1500px;min-width:1024px;margin-right:auto}.offline-workspace .product-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.offline-workspace article>p{overflow-wrap:anywhere}
.offline-workspace{width:100%}.offline-workspace p,.offline-workspace small{color:#52616b}

@media print{body:has(.tip-payouts-office) .sidebar,body:has(.tip-payouts-office) .top,body:has(.tip-payouts-office) .bo-navigation,body:has(.tip-payouts-office) .development,.tip-payouts-office button,.tip-payouts-office form,.tip-payouts-office input,.tip-payouts-office select{display:none!important}.tip-payouts-office[data-print-target="payout"]>:not(.tip-payout-record),.tip-payouts-office[data-print-target="employee"]>:not(.employee-tip-record){display:none!important}.tip-payout-record,.employee-tip-record{border:0;padding:0}.tip-payouts-office table{font-size:10pt}}
.download-checksum{overflow-wrap:anywhere;max-width:620px}

.tip-payouts-office p,.tip-payouts-office .hint,.tip-payouts-office small,.tip-payouts-office th,.tip-payouts-office .field>span{color:#52616b}
@media print{.backoffice-app:is(:has(.sales-office),:has(.loyalty-transactions-report),:has(.historical-preview)),.backoffice-app:is(:has(.sales-office),:has(.loyalty-transactions-report),:has(.historical-preview))>main{display:block!important;min-width:0!important;width:100%!important;margin:0!important}.backoffice-app:is(:has(.sales-office),:has(.loyalty-transactions-report),:has(.historical-preview)) :is(.sidebar,.top,.development,.bo-navigation,.main-footer,.notice,button,form,.sales-report-toolbar){display:none!important}.backoffice-app:is(:has(.sales-office),:has(.loyalty-transactions-report),:has(.historical-preview)) .content{padding:0!important}.backoffice-app .membership-office:has(.loyalty-transactions-report)>:not(.loyalty-transactions-report),.backoffice-app .till-service-office:has(.historical-preview)>:not(section:has(.historical-preview)),.backoffice-app .till-service-office .panel:has(>.historical-preview)>:not(.historical-preview){display:none!important}.backoffice-app .sales-office .table-scroll{overflow:visible!important}.backoffice-app .sales-office table{min-width:0!important;table-layout:fixed;font-size:9pt}.backoffice-app .sales-office :is(th,td){white-space:normal!important;overflow-wrap:anywhere;padding:5px!important}.backoffice-app .loyalty-transactions-report table{font-size:9pt;table-layout:fixed}.backoffice-app .historical-preview{display:block!important;color:#000;max-width:80mm;margin:0 auto;border:0!important;padding:0!important}.backoffice-app .historical-preview .hint{display:none!important}.backoffice-app .sales-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.backoffice-app .loyalty-transactions-report{border:0;padding:0}.backoffice-app:is(:has(.sales-office),:has(.loyalty-transactions-report)) tr{break-inside:avoid}}

.tip-payouts-office .metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:16px 0}.tip-payouts-office .metric{padding:18px;background:white;border:1px solid #d7dfe6;border-radius:8px}.tip-payouts-office .metric strong{display:block;font-size:24px;margin-top:8px}

.tip-report-details table{min-width:1900px}.tip-reports-office p,.tip-reports-office small,.tip-reports-office th,.tip-reports-office .field>span{color:#52616b}
@media print{body:has(.tip-report-result) .sidebar,body:has(.tip-report-result) .top,body:has(.tip-report-result) .development,body:has(.tip-report-result) .bo-navigation,body:has(.tip-report-result) .main-footer,body:has(.tip-report-result) .notice,body:has(.tip-report-result) form,body:has(.tip-report-result) button{display:none!important}body:has(.tip-report-result) main{margin:0!important;width:100%!important}body:has(.tip-report-result) .content{padding:0!important}}
.stock-reports-office .stock-report-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:20px 0;align-items:end}.stock-reports-office .stock-report-filters .field{margin:0}.stock-reports-office .summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:20px 0}.stock-reports-office .summary-grid .panel{margin:0}.stock-reports-office .summary-grid strong{display:block;font-size:24px;margin-top:8px}.stock-reports-office .actions:not(.stock-report-filters),.tip-reports-office .actions{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.stock-reports-office p,.stock-reports-office small,.stock-reports-office th,.stock-reports-office .field>span{color:#52616b}
@media(max-width:1100px){.stock-reports-office .stock-report-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media print{body:has(.tip-report-result) .app,body:has(.tip-report-result) .app>main,body:has(.tip-payouts-office) .app,body:has(.tip-payouts-office) .app>main{display:block!important;min-width:0!important;width:100%!important;margin:0!important}body:has(.tip-report-result) .table-scroll,body:has(.tip-payouts-office) .table-scroll{overflow:visible!important}body:has(.tip-report-result) .tip-reports-office>:not(.tip-report-result){display:none!important}.tip-report-result{padding:0!important;border:0!important}.tip-report-result table,.tip-payouts-office table{min-width:0!important;width:100%!important;table-layout:fixed;font-size:7pt!important}.tip-report-result th,.tip-report-result td,.tip-payouts-office th,.tip-payouts-office td{padding:4px!important;overflow-wrap:anywhere;white-space:normal!important}.tip-report-result tr,.tip-payouts-office tr{break-inside:avoid}.tip-report-result .panel,.tip-payouts-office .panel{break-inside:auto}body:has(.tip-payouts-office) .main-footer,body:has(.tip-payouts-office) .notice{display:none!important}body:has(.tip-payouts-office) .content{padding:0!important}}

@media print{.backoffice-app .page-footer{display:none!important}}
.stock-period-reports-office .summary-grid,.batch-reports-office .summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:20px 0}.stock-period-reports-office .summary-grid .panel,.batch-reports-office .summary-grid .panel{margin:0}.stock-period-reports-office .summary-grid strong,.batch-reports-office .summary-grid strong{display:block;font-size:23px;margin-top:8px}.stock-period-filters,.batch-reports-office .actions:has(.field){display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:20px 0;align-items:end}.stock-period-filters .field,.batch-reports-office .actions .field{margin:0}.stock-period-bars svg{width:100%;max-width:960px;display:block}.stock-period-bars figcaption{font-size:12px;color:#52616b}.stock-period-report-actions,.purchasing-reports-office .actions,.batch-reports-office .actions:not(:has(.field)){display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.purchasing-report-details table{min-width:1500px}.stock-period-reports-office p,.stock-period-reports-office small,.stock-period-reports-office th,.purchasing-reports-office p,.purchasing-reports-office small,.purchasing-reports-office th,.batch-reports-office p,.batch-reports-office small,.batch-reports-office th{color:#52616b}
@media(max-width:1100px){.stock-period-filters,.batch-reports-office .actions:has(.field){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media print{.backoffice-app:is(:has(.stock-period-print),:has(.purchasing-report-result)),.backoffice-app:is(:has(.stock-period-print),:has(.purchasing-report-result))>main{display:block!important;width:100%!important;min-width:0!important;margin:0!important}.backoffice-app:is(:has(.stock-period-print),:has(.purchasing-report-result)) :is(.sidebar,.top,.development,.bo-navigation,.page-footer,.notice,button,form){display:none!important}.backoffice-app:is(:has(.stock-period-print),:has(.purchasing-report-result)) .content{padding:0!important}.stock-period-reports-office>:not(.stock-period-print),.purchasing-reports-office>:not(.purchasing-report-result){display:none!important}.stock-period-print,.purchasing-report-result{padding:0!important;border:0!important}.stock-period-print .table-scroll,.purchasing-report-result .table-scroll{overflow:visible!important}.stock-period-print table,.purchasing-report-result table{min-width:0!important;width:100%!important;table-layout:fixed;font-size:7pt}.stock-period-print :is(th,td),.purchasing-report-result :is(th,td){padding:4px!important;overflow-wrap:anywhere;white-space:normal!important}.stock-period-print tr,.purchasing-report-result tr{break-inside:avoid}.stock-period-bars{margin:10px 0;break-inside:avoid}}
/* Independent staff access keeps the desktop / landscape workspace. */
.staff-portal-app{min-width:1024px;min-height:100vh;background:#f1f4f7;color:#24374b}.staff-portal-header{display:flex;align-items:center;justify-content:space-between;background:#15273e;color:#fff;padding:20px 30px;gap:20px}.staff-portal-header h1{font-size:24px;margin:0}.staff-portal-header p{color:#d1e4f3;margin:5px 0}.staff-portal-login{max-width:520px;margin:64px auto;padding:30px;background:white;border-radius:8px;box-shadow:0 6px 24px #17314b17}.staff-portal-content{max-width:1500px;margin:0 auto;padding:24px 30px}.staff-portal-navigation{display:flex;gap:10px;margin-bottom:20px}.staff-portal-navigation button.active{background:#15273e;color:#fff}.staff-leave-editor{display:grid;gap:12px}.staff-leave-day{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;align-items:end}.staff-shift-cancelled{opacity:.65;text-decoration:line-through}.staff-portal-app .panel{min-width:0}.staff-portal-app table{width:100%}.staff-portal-office .bo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-portal-office input[type=checkbox]{width:auto;margin-right:8px}.staff-portal-office label{display:block;margin:12px 0}.leave-reports-office form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:end}.leave-report-details table{min-width:1000px}.leave-report-postings table{min-width:760px}.leave-report-result{min-width:0}.leave-report-result .table-scroll{max-width:100%;overflow-x:auto}
@media print{.backoffice-app:has(.leave-report-result),.backoffice-app:has(.leave-report-result)>main{display:block!important;width:100%!important;min-width:0!important;margin:0!important}.backoffice-app:has(.leave-report-result) :is(.sidebar,.top,.development,.bo-navigation,.page-footer,.notice,button,form){display:none!important}.backoffice-app:has(.leave-report-result) .content{padding:0!important}.leave-reports-office>:not(.leave-report-result){display:none!important}.leave-report-result{padding:0!important;border:0!important}.leave-report-result .table-scroll{overflow:visible!important}.leave-report-result table{min-width:0!important;width:100%!important;table-layout:fixed;font-size:7pt}.leave-report-result :is(th,td){padding:4px!important;overflow-wrap:anywhere;white-space:normal!important}.leave-report-result tr{break-inside:avoid}}
.leave-reports-office :is(p,small,.hint){color:#52616b}.leave-reports-office .actions{display:flex;gap:8px;flex-wrap:wrap}.leave-reports-office .summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.staff-portal-app :is(.hint,small){color:#52616b}.staff-portal-app .staff-portal-header small{color:#d1e4f3}
.staff-portal-app{margin:0;width:100%;display:block}.staff-portal-app .staff-leave-day{padding:12px;border:1px solid #dce2ea;border-radius:8px}.public-bookings-office .check input{width:auto}.public-bookings .session-actions{display:flex;gap:10px}.public-bookings .error{padding:14px;background:#fff0ec;color:#8b3525;border:1px solid #e9b5a7;border-radius:8px}.public-bookings>footer{padding:22px 0;color:#52616b;font-size:12px}.public-bookings-office .check{display:flex;gap:8px;align-items:center;margin:12px 0}.public-bookings-office .panel{margin-bottom:16px}.public-bookings-office :is(p,small,.hint){color:#52616b}
@media print{.leave-report-result>[role=status]{display:none!important}}
.leave-reports-office th{color:#52616b}.staff-portal-header button{color:#24374b}
.leave-reports-office>form{display:block}.leave-reports-office>form>.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.staff-portal-app :is(p,small,th){color:#52616b}.staff-portal-app .staff-portal-header :is(p,small){color:#d1e4f3}.staff-portal-app :is(th,td){font-size:12px;overflow-wrap:anywhere}
.till-product-key{position:relative;min-width:0}.classic-product-grid .product-order-key{height:100%;width:100%;padding-right:28px}.classic-product-grid .product-info-key{position:absolute;right:2px;top:2px;min-height:28px;height:28px;width:28px;padding:2px;background:transparent;color:#364832;border:0;font-size:19px;font-weight:600}.classic-product-grid .product-info-key:hover{background:#e5e4a2}.product-information-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:20px}.product-information-office .card{padding:20px;border:1px solid #dce2ea;border-radius:8px;background:#fff;min-width:0}.product-information-office label{display:grid;gap:7px;margin:12px 0}.product-information-office label.check{display:flex;align-items:center;gap:8px}.product-information-office .check input{width:auto}.product-information-office textarea{width:100%;min-height:90px;font:inherit;color:#253a53;padding:12px;border:1px solid #dce2ea;border-radius:8px}.product-information-office :is(p,small,th){color:#52616b}.product-information-card{color:#24374b}.product-information-card :is(p,li,dt,dd){color:#52616b;overflow-wrap:anywhere}.product-information-card .product-information-plain{white-space:pre-wrap}.product-information-card .info-review-pending{padding:10px;background:#fff0d3;color:#73510b}.product-information-card .info-review-complete{padding:10px;background:#e4f2e6;color:#285d30}.product-information-card dl{display:grid;grid-template-columns:120px 1fr;gap:7px}.product-information-card dt{font-weight:600}.product-information-card dd{margin:0}.product-information-card section{margin:18px 0}.till-option-information{margin:8px 0}.till-option-information>.till-information-loader{padding:14px;border:1px solid #dce2ea;background:#f8fafc}.till-information-loader:focus{outline:none}.register-shell .sheet:has(.till-information-loader){background:#fff;color:#24374b}
.sales-exceptions-office :is(p,small,th),.preparation-times-office :is(p,small,th){color:#52616b}.sales-exceptions-office .actions,.preparation-times-office .actions{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.sales-exceptions-office .summary-grid,.preparation-times-office .summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sales-exceptions-office>form>.form-grid,.preparation-times-office>form>.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sales-exceptions-details table{min-width:1050px}.sales-exceptions-result,.preparation-times-office{min-width:0}.preparation-times-office .table-scroll{max-width:100%;overflow-x:auto}.preparation-times-office table{min-width:1000px}
@media print{.backoffice-app:has(.sales-exceptions-result),.backoffice-app:has(.sales-exceptions-result)>main{display:block!important;width:100%!important;min-width:0!important;margin:0!important}.backoffice-app:has(.sales-exceptions-result) :is(.sidebar,.top,.development,.bo-navigation,.page-footer,.notice,button,form){display:none!important}.backoffice-app:has(.sales-exceptions-result) .content{padding:0!important}.sales-exceptions-office>:not(.sales-exceptions-result){display:none!important}.sales-exceptions-result{padding:0!important;border:0!important}.sales-exceptions-result>.table-scroll{overflow:visible!important}.sales-exceptions-result table{min-width:0!important;width:100%!important;table-layout:fixed;font-size:7pt}.sales-exceptions-result :is(th,td){padding:4px!important;overflow-wrap:anywhere;white-space:normal!important}.sales-exceptions-result tr{break-inside:avoid}}
.register-shell .sheet .product-information-card :is(h2,h3){color:#24374b}@media print{.sales-exceptions-result>[role=status]{display:none!important}}

.till-stock-actions{color:#24374b;margin:16px 0;padding:12px;border-top:1px solid #cad4db}.till-stock-actions form,.till-waste-form{display:grid;gap:12px}.till-stock-actions label,.till-waste-form label{display:grid;gap:5px}.register-shell .sheet .till-waste-form h2{color:#24374b}.till-stock-actions select,.till-stock-actions input,.till-waste-form select,.till-waste-form input{min-height:42px;max-width:100%;padding:9px;border:1px solid #99aab6;border-radius:6px;color:#24374b;background:#fff}
.recipe-lookup-office,.discount-reports-office,.wastage-office{min-width:0;color:#24374b}.recipe-lookup-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.recipe-lookup-filters label{display:grid;gap:5px}.recipe-lookup-filters :is(input,select){max-width:100%;min-height:40px;padding:8px;border:1px solid #b7c6d1;border-radius:6px;background:#fff;color:#24374b}.recipe-lookup-office .actions,.discount-reports-office .actions,.wastage-office .actions{display:flex;flex-wrap:wrap;gap:9px;margin:12px 0}.recipe-lookup-office .summary-grid,.discount-reports-office .summary-grid,.wastage-office .summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.recipe-lookup-office .summary-grid>*,.discount-reports-office .summary-grid>*,.wastage-office .summary-grid>*{padding:12px;background:#edf3f7;border:1px solid #ccdae3;border-radius:8px}.recipe-lookup-office :is(p,small,th),.discount-reports-office :is(p,small,th),.wastage-office :is(p,small,th){color:#52616b}.recipe-lookup-office table small,.discount-reports-office table small{display:block}.recipe-lookup-office>form,.discount-reports-office>form{display:block}.recipe-usage-panel{min-width:0;margin:12px 0}.recipe-usage-panel .table-scroll{max-height:260px;overflow:auto}.discount-report-details table{min-width:1080px}.wastage-office>.form-grid,.wastage-office .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media print{.backoffice-app:is(:has(.recipe-lookup-result),:has(.discount-reports-result)),.backoffice-app:is(:has(.recipe-lookup-result),:has(.discount-reports-result))>main{display:block!important;width:100%!important;min-width:0!important;margin:0!important}.backoffice-app:is(:has(.recipe-lookup-result),:has(.discount-reports-result)) :is(.sidebar,.top,.development,.bo-navigation,.page-footer,.notice,button,form){display:none!important}.backoffice-app:is(:has(.recipe-lookup-result),:has(.discount-reports-result)) .content{padding:0!important}.recipe-lookup-office>:not(.recipe-lookup-result),.discount-reports-office>:not(.discount-reports-result){display:none!important}.recipe-lookup-result,.discount-reports-result{padding:0!important;border:0!important}.recipe-lookup-result .table-scroll,.discount-reports-result .table-scroll{overflow:visible!important}.recipe-lookup-result table,.discount-reports-result table{min-width:0!important;width:100%!important;table-layout:fixed;font-size:7pt}.recipe-lookup-result :is(th,td),.discount-reports-result :is(th,td){padding:4px!important;overflow-wrap:anywhere;white-space:normal!important}.recipe-lookup-result tr,.discount-reports-result tr{break-inside:avoid}.recipe-lookup-result>[role=status],.discount-reports-result>[role=status]{display:none!important}}
.register-shell .sheet:has(.till-waste-form){background:#fff;color:#24374b}.register-shell .sheet .till-waste-form :is(h2,label){color:#24374b}.register-shell .sheet .till-waste-form p{color:#52616b}.register-shell .sheet .till-waste-form>button{background:#246b42;color:#fff;border:1px solid #205d3a;min-height:42px}.register-shell .sheet .till-waste-form>button:disabled{opacity:.5}
.session-policy-office form{display:grid;grid-template-columns:1fr;gap:12px;max-width:720px}.loyalty-reports-office{min-width:0;color:#24374b}.loyalty-report-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.loyalty-report-filters label{display:grid;gap:5px}.loyalty-report-filters :is(input,select){min-height:40px;padding:8px;max-width:100%;border:1px solid #b7c6d1;border-radius:6px;color:#24374b;background:white}.loyalty-reports-office .actions,.loyalty-stamp-selectors{display:flex;flex-wrap:wrap;gap:9px;margin:12px 0}.loyalty-reports-office .summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.loyalty-reports-office .summary-grid>*{padding:12px;background:#edf3f7;border:1px solid #ccdae3;border-radius:8px}.loyalty-reports-office :is(p,small,th){color:#52616b}.loyalty-report-bars{display:grid;gap:8px}.loyalty-report-bar{display:flex;align-items:center;gap:8px}.loyalty-report-bar>span{min-width:130px}.loyalty-report-bar>i{display:block;background:#346caa;min-width:2px;height:18px}
@media print{.backoffice-app:has(.loyalty-report-result),.backoffice-app:has(.loyalty-report-result)>main{display:block!important;width:100%!important;min-width:0!important;margin:0!important}.backoffice-app:has(.loyalty-report-result) :is(.sidebar,.top,.development,.bo-navigation,.page-footer,.notice,button,form){display:none!important}.backoffice-app:has(.loyalty-report-result) .content{padding:0!important}.loyalty-reports-office>:not(.loyalty-report-result){display:none!important}.loyalty-report-result{padding:0!important;border:0!important}.loyalty-report-result .table-scroll{overflow:visible!important}.loyalty-report-result table{min-width:0!important;width:100%!important;table-layout:fixed;font-size:7pt}.loyalty-report-result :is(th,td){padding:4px!important;overflow-wrap:anywhere;white-space:normal!important}.loyalty-report-result tr{break-inside:avoid}.loyalty-report-result>[role=status]{display:none!important}}
.tab-history-office,.leave-policies-office{min-width:0;color:#24374b}.tab-history-office :is(p,small,th),.leave-policies-office :is(p,small,th){color:#52616b}.tab-history-office>form,.leave-policies-office>form{display:block}.tab-history-office .form-grid,.leave-policies-office .form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.tab-history-office .actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.tab-history-office .summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.tab-history-office .summary-grid>*{padding:12px;background:#edf3f7;border:1px solid #ccdae3;border-radius:8px}.tab-history-office table small,.leave-policies-office table small{display:block}.tab-history-office .historical-preview>button{display:none}.tab-history-details table{min-width:1000px}.tab-history-snapshot-picker{margin:16px 0}.leave-policy-review{border:2px solid #347653;background:#f4fbf6}.leave-policies-office .actions{display:flex;flex-wrap:wrap;gap:8px}
@media print{.backoffice-app:has(.tab-history-office),.backoffice-app:has(.tab-history-office)>main{display:block!important;width:100%!important;min-width:0!important;margin:0!important}.backoffice-app:has(.tab-history-office) :is(.sidebar,.top,.development,.bo-navigation,.page-footer,.notice,button,form){display:none!important}.backoffice-app:has(.tab-history-office) .content{padding:0!important}.tab-history-office[data-print-target=list]>:not(.tab-history-result){display:none!important}.tab-history-office:is([data-print-target=current],[data-print-target=saved])>:not(.tab-history-detail){display:none!important}.tab-history-office[data-print-target=current] .tab-history-detail>:not(.tab-history-current-receipt),.tab-history-office[data-print-target=saved] .tab-history-detail>:not(.tab-history-saved-receipt){display:none!important}.tab-history-office :is(.tab-history-result,.tab-history-detail){padding:0!important;border:0!important}.tab-history-office .table-scroll{overflow:visible!important}.tab-history-office table{min-width:0!important;width:100%!important;table-layout:fixed;font-size:7pt}.tab-history-office :is(th,td){padding:4px!important;overflow-wrap:anywhere;white-space:normal!important}.tab-history-office tr{break-inside:avoid}.tab-history-result>[role=status]{display:none!important}}
.tab-history-office .historical-preview .bill{display:block}.tab-history-office .historical-preview .bill>div{display:flex;justify-content:space-between;gap:12px}.tab-history-office .historical-preview p{overflow-wrap:anywhere}.tab-history-office .historical-preview .list-row{gap:12px;align-items:flex-start}.tab-history-office .historical-preview .list-row b,.tab-history-office .historical-preview .bill b{flex-shrink:0}@media print{.backoffice-app .tab-history-office .historical-preview .hint{display:block!important;font-size:9pt;color:#222!important}}
.tab-history-office .historical-preview>div:not(.bill){display:block}

.preparation-label-office{color:#24374b}.preparation-label-office :is(p,small){color:#52616b}.preparation-label-office form{display:block}.preparation-label-office .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.preparation-label-office .actions{display:flex;gap:8px;flex-wrap:wrap}.preparation-label-office details small{display:block}.historical-preview>div{display:block}.historical-preview .bill>div{display:flex;justify-content:space-between;gap:12px}.historical-preview .list-row{gap:12px;align-items:flex-start}.historical-preview .list-row b,.historical-preview .bill b{flex-shrink:0}.historical-preview p{overflow-wrap:anywhere}

.cashup-notes-policy form{display:block}.cashup-notes-policy .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cashup-note-history{white-space:pre-wrap;overflow-wrap:anywhere;max-width:48ch}.cashup-note-history small{display:block}.finance-office :is(p,small){color:#52616b}
.price-list-export-office{min-width:0;color:#24374b}.price-list-export-office :is(p,small,th){color:#52616b}.price-list-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.price-list-filters label{display:flex;flex-direction:column;gap:6px;font-size:12px}.price-list-fields{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0;border:1px solid #ccdae3;padding:16px}.price-list-fields label{display:flex;align-items:center;gap:6px;font-size:12px}.price-list-fields input{width:auto}.price-list-export-office .actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.price-list-result{min-width:0}.price-list-result th,.price-list-result td{white-space:normal;overflow-wrap:anywhere}
@media print{.backoffice-app:has(.price-list-export-office),.backoffice-app:has(.price-list-export-office)>main{display:block!important;min-width:0!important;width:100%!important;margin:0!important}.backoffice-app:has(.price-list-export-office) :is(.sidebar,.top,.development,.bo-navigation,.main-footer,.notice,button,form,.price-list-filters,.price-list-fields,.actions){display:none!important}.backoffice-app:has(.price-list-export-office) .content{padding:0!important}.price-list-export-office>.price-list-result{display:block!important}.price-list-export-office>.price-list-result~*{display:none!important}.price-list-result .table-scroll{overflow:visible!important}.price-list-result table{table-layout:fixed;min-width:0!important;width:100%;font-size:8pt}.price-list-result :is(th,td){padding:4px!important;white-space:normal!important;overflow-wrap:anywhere}.price-list-result tr{break-inside:avoid}}
.payment-reports-office{min-width:0;color:#24374b}.payment-reports-office :is(p,small,th){color:#52616b}.payment-reports-office>form{display:block}.payment-reports-office .form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.payment-reports-office .summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.payment-reports-office .summary-grid>*{padding:12px;background:#edf3f7;border:1px solid #ccdae3;border-radius:8px}.payment-reports-office .actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.payment-reports-office table small{display:block}.payment-report-details table{min-width:1050px}
@media print{.backoffice-app:has(.payment-reports-office),.backoffice-app:has(.payment-reports-office)>main{display:block!important;min-width:0!important;width:100%!important;margin:0!important}.backoffice-app:has(.payment-reports-office) :is(.sidebar,.top,.development,.bo-navigation,.main-footer,.notice,button,form,.actions,[role=status]){display:none!important}.backoffice-app:has(.payment-reports-office) .content{padding:0!important}.payment-reports-office>:not(.payment-report-result){display:none!important}.payment-reports-office .table-scroll{overflow:visible!important}.payment-reports-office table{table-layout:fixed;min-width:0!important;width:100%;font-size:7pt}.payment-reports-office :is(th,td){padding:4px!important;white-space:normal!important;overflow-wrap:anywhere}.payment-reports-office tr{break-inside:avoid}}

.register-shell .ticket-items button.current{background:#dfe9c7;color:#20362c}.register-shell .ticket-items button small{color:#415841}.register-shell .ticket-items button:is(.away,.voided,:disabled){opacity:1;color:#415841}.register-shell .ticket-items button.voided{text-decoration:line-through}.register-shell .queue-waste-open{background:#e4edf3;color:#243e50;border:1px solid #9cb3c2}
@media print{.payment-report-result{padding:0!important;border:0!important;border-radius:0!important;overflow:visible!important;break-inside:auto!important}.payment-reports-office table{border-collapse:collapse}.payment-reports-office thead{display:table-header-group!important}.payment-reports-office tbody{display:table-row-group!important}.payment-reports-office tr{page-break-inside:avoid!important;break-inside:avoid!important}.payment-reports-office :is(.table-scroll,.payment-report-details){overflow:visible!important;max-height:none!important;break-inside:auto!important}}

.tab-lifecycle-history{margin:20px 0;padding:16px;border:1px solid #ccdae3;border-radius:8px}.tab-lifecycle-history table{min-width:850px}.tab-lifecycle-history small{display:block}.tab-lifecycle-history :is(td,th){overflow-wrap:anywhere;white-space:normal}

.cashup-reports-office{min-width:0;color:#24374b}.cashup-reports-office :is(p,small,th){color:#52616b}.cashup-reports-office>form{display:block}.cashup-reports-office .form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.cashup-reports-office .summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.cashup-reports-office .summary-grid>*{padding:12px;background:#edf3f7;border:1px solid #ccdae3;border-radius:8px}.cashup-reports-office .actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.cashup-reports-office table small{display:block}.cashup-report-details table{min-width:1100px}.cashup-variance-chart{margin:16px 0;min-width:0}.cashup-variance-chart svg{width:100%;height:auto;max-width:900px;display:block}.cashup-variance-chart figcaption{color:#24374b;font-weight:600}
@media print{.backoffice-app:has(.cashup-reports-office),.backoffice-app:has(.cashup-reports-office)>main{display:block!important;min-width:0!important;width:100%!important;margin:0!important}.backoffice-app:has(.cashup-reports-office) :is(.sidebar,.top,.development,.bo-navigation,.main-footer,.notice,button,form,.actions,[role=status]){display:none!important}.backoffice-app:has(.cashup-reports-office) .content{padding:0!important}.cashup-reports-office>:not(.cashup-report-result){display:none!important}.cashup-report-result{padding:0!important;border:0!important;border-radius:0!important;overflow:visible!important;break-inside:auto!important}.cashup-reports-office .table-scroll{overflow:visible!important;max-height:none!important;break-inside:auto!important}.cashup-reports-office table{table-layout:fixed;min-width:0!important;width:100%;font-size:7pt;border-collapse:collapse}.cashup-reports-office :is(th,td){padding:4px!important;white-space:normal!important;overflow-wrap:anywhere}.cashup-reports-office thead{display:table-header-group!important}.cashup-reports-office tbody{display:table-row-group!important}.cashup-reports-office tr{page-break-inside:avoid!important;break-inside:avoid!important}.cashup-variance-chart{break-inside:avoid;page-break-inside:avoid}}

.register-shell .timed-till-activity{margin:12px 0;padding:12px;border:1px solid #91b1c6;background:#263d4b;color:#edf4f8}.timed-till-activity small{display:block}.register-shell .timed-till-activity :is(p,small){color:#d4e2eb}.register-shell .timed-till-activity button{background:#d8e7c8;color:#263c28;border:1px solid #89a280}

.timed-products-office .timed-activity-filters,.timed-products-office .form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.timed-products-office label{display:grid;gap:6px}.timed-products-office .office-tabs{display:flex;gap:8px;margin:12px 0}.timed-products-office .timed-review-sheet{padding:18px;background:#f5f7fa;border:1px solid #c9d3df}.leave-accrual-office{min-width:0}.leave-accrual-office td,.leave-accrual-review{overflow-wrap:anywhere}

.custom-tenders-office .form-grid,.sales-graphs-office>form .form-grid,.booking-reports-office>form .form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.custom-tenders-office{min-width:0}.custom-tenders-office td{overflow-wrap:anywhere}.booking-report-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sales-graphs-office,.booking-reports-office,.management-planning-office{min-width:0}.sales-graphs-office svg,.booking-reports-office svg{max-width:100%;height:auto}.booking-reports-office table{min-width:1000px}.sales-graphs-office .table-scroll,.booking-reports-office .table-scroll{overflow-x:auto}.payment-methods{max-height:172px;overflow-y:auto}.custom-tenders-office form{margin-top:18px}
@media print{body:has(.sales-graphs-result) .sidebar,body:has(.sales-graphs-result) .top,body:has(.sales-graphs-result) .bo-navigation,body:has(.sales-graphs-result) .development,body:has(.sales-graphs-result) .notice,body:has(.sales-graphs-result) .page-footer,body:has(.sales-graphs-result) .sales-graphs-office>form,body:has(.booking-report-result) .sidebar,body:has(.booking-report-result) .top,body:has(.booking-report-result) .bo-navigation,body:has(.booking-report-result) .development,body:has(.booking-report-result) .notice,body:has(.booking-report-result) .page-footer,body:has(.booking-report-result) .booking-reports-office>form{display:none!important}.sales-graphs-result,.booking-report-result{box-shadow:none!important;border:0!important;padding:0!important}.sales-graphs-result table,.booking-report-result table{min-width:0!important;width:100%!important;font-size:7pt;table-layout:fixed}.sales-graphs-result td,.sales-graphs-result th,.booking-report-result td,.booking-report-result th{white-space:normal!important;overflow-wrap:anywhere;padding:4px!important}.sales-graphs-result thead,.booking-report-result thead{display:table-header-group}.sales-graphs-result tr,.booking-report-result tr{break-inside:avoid}.sales-graphs-result button,.booking-report-result button{display:none!important}}

.sales-graphs-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sales-graphs-filters label{display:grid;gap:6px}.sales-graphs-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sales-graphs-result,.sales-graphs-chart{min-width:0}.booking-reports-office .table-wrap{overflow-x:auto}.management-planning-office .summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}

.booking-reports-office p,.booking-reports-office small,.booking-reports-office th,.booking-reports-office td,.sales-graphs-office p,.sales-graphs-office small,.sales-graphs-office th,.sales-graphs-office td,.management-planning-office p,.management-planning-office small,.management-planning-office th,.management-planning-office td,.custom-tenders-office p,.custom-tenders-office small{color:#30435b}.booking-report-summary .metric-card,.sales-graphs-summary>div,.management-planning-office .summary-grid>div{background:#f3f7fb;border:1px solid #c8d4e1;border-radius:7px;padding:14px}.booking-report-summary .metric-card span,.booking-report-summary .metric-card strong,.booking-report-summary .metric-card small,.sales-graphs-summary span,.sales-graphs-summary strong,.sales-graphs-summary small{display:block;margin:4px 0}.management-planning-office svg{max-width:100%;height:auto}

.sales-graphs-summary>article{display:grid;gap:5px;background:#f3f7fb;border:1px solid #c8d4e1;border-radius:7px;padding:14px}.sales-graphs-summary article strong,.sales-graphs-summary article span,.sales-graphs-summary article small{display:block;margin:0}
@media print{.backoffice-app:has(.sales-graphs-result),.backoffice-app:has(.booking-report-result),.backoffice-app:has(.sales-graphs-result)>main,.backoffice-app:has(.booking-report-result)>main,.backoffice-app:has(.sales-graphs-result) .content.backoffice,.backoffice-app:has(.booking-report-result) .content.backoffice,.sales-graphs-office,.booking-reports-office,.sales-graphs-result,.booking-report-result{display:block!important;position:static!important;width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:0!important;height:auto!important;max-height:none!important;overflow:visible!important}.sales-graphs-office>*:not(.sales-graphs-result),.booking-reports-office>*:not(.booking-report-result){display:none!important}.sales-graphs-result .table-scroll,.booking-report-result .table-wrap{overflow:visible!important;max-height:none!important}.sales-graphs-result [role=status],.booking-report-result [role=status],.sales-graphs-actions,.booking-report-actions{display:none!important}.sales-graphs-summary{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))}.sales-graphs-summary>article{padding:8px!important;break-inside:avoid}.sales-graphs-result svg{max-width:100%!important;max-height:190px!important}.sales-graphs-result figure{break-inside:avoid}.sales-graphs-result table,.booking-report-result table{min-width:0!important}}

.own-media-office{min-width:0}.own-media-office .form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.own-media-office :is(p,small,td,th){color:#30435b}.own-media-office .own-media-choices{display:grid;gap:10px;margin:15px 0}.own-media-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.own-media-gallery figure{margin:0;min-width:0;display:grid;gap:6px}.own-media-gallery img{width:100%;max-height:256px;object-fit:contain;background:#eef2f7}.own-media-gallery figure.expanded{grid-column:1/-1}.own-media-gallery figure.expanded img{max-height:640px}.own-media-preview section{white-space:normal}.own-media-logo figure{margin:0}.own-media-logo img{display:block;max-width:100%;max-height:100px;object-fit:contain}.own-media-logo small{display:none}.own-logo-preview{max-width:180px}.top>.own-logo-preview{flex:0 0 40px;max-width:40px;margin-right:12px}.brand-mark .own-logo-preview{width:36px;height:36px}.brand-mark .own-media-logo img{width:36px;height:36px}.historical-preview .own-logo-preview,.receipt>.own-logo-preview{margin:0 auto 10px}.own-media-office textarea{width:100%;min-width:0}
@media print{.own-media-gallery button{display:none!important}.receipt .own-media-logo img{max-height:24mm!important;max-width:60mm!important}.historical-preview .own-logo-preview{display:block!important}}
/* Barology 1.17: table-adjacent actions, based on public table-plan layouts. */
.register-shell .till-plan-view .plan-layout{display:block}.register-shell .till-plan-view .section-head{margin-bottom:10px}.register-shell .till-plan-view .section-head h2{font-size:17px;margin:0 0 4px}.register-shell .till-plan-view .section-head p{font-size:12px;margin:0}.register-shell .till-plan-view .plan-toolbar{margin-bottom:12px}.register-shell .till-plan-view .floor-wrapper{background:#303336}.register-shell .till-plan-view .floor{width:min(100%,calc((100dvh - 235px)*1.6));margin:auto;border:0}.register-shell .plan-table-popover{position:fixed;z-index:9;width:286px;max-height:calc(100dvh - 130px);overflow:auto;padding:0;border:1px solid #717b81;border-radius:9px;background:#30383d;box-shadow:0 8px 24px #0006;outline:none}.register-shell .plan-table-popover header{padding:13px 15px 11px;border-bottom:1px solid #647078;min-height:76px}.register-shell .plan-table-popover header small{display:inline-block;font-size:12px;color:#e5ecee}.register-shell .plan-table-popover h2{font-size:16px;color:#fff;line-height:1.4;margin:7px 20px 0 0}.register-shell .plan-table-popover .plan-popover-close{position:absolute;right:4px;top:3px;border:0;background:transparent;color:#fff;width:28px;min-height:28px;font-size:20px;padding:0}.register-shell .plan-opened-time{background:transparent;border:0;color:#fff;text-decoration:underline;font-size:12px;padding:0 8px;min-height:22px}.register-shell .plan-popover-content{padding:0 14px 12px}.register-shell .plan-popover-content .tab-info{padding:8px 0;background:transparent;border:0;margin:0}.register-shell .plan-popover-content .tab-info>strong,.register-shell .plan-popover-content .tab-info>small:first-of-type{display:none}.register-shell .plan-popover-content>button{display:block;width:100%;margin:0;padding:10px 0;min-height:38px;border:0;border-top:1px solid #59656d;border-radius:0;text-align:left;background:transparent;color:#fff;font-size:13px}.register-shell .plan-popover-content>button::after{content:'';float:right;color:#b9d4e5;width:5px;height:5px;margin:5px 2px 0 0;border-top:1px solid;border-right:1px solid;transform:rotate(45deg)}.register-shell .plan-popover-content>button:hover{background:#3b4c57}.register-shell .plan-popover-content h3{font-size:12px;margin:12px 0 5px;color:#cad8e0}.register-shell .plan-popover-content .booking-snippet{padding:8px 0;border-color:#59656d}.register-shell .plan-popover-content .booking-snippet small{color:#d5e0e6}.register-shell .plan-tab-selector{padding:8px 14px;margin:0;color:#e5ecee}.register-shell .plan-tab-selector select{width:100%;min-height:32px}.register-shell .plan-table-popover:focus-visible,.register-shell .plan-table-popover button:focus-visible{outline:2px solid #9ed5ff;outline-offset:-2px}
.register-shell .till-plan-view .plan-table{overflow:visible}.register-shell .till-plan-view .plan-capacity{position:absolute;right:0;top:-10px;border:2px solid #dce3e7;background:#303336;color:#fff;min-width:25px;height:25px;border-radius:50%;font-size:10px;line-height:21px;font-style:normal}.register-shell .till-plan-view .occupied .plan-capacity{border-color:#61b6ee}
/* Barology 1.18: Summary location filters and explicit close confirmation. */
.register-shell .summary-location-filter{position:relative;background:#2d3c46;border-bottom:1px solid #576771;padding:8px 12px;font-size:12px}.register-shell .summary-location-filter>summary{cursor:pointer;color:#edf2f6;min-height:24px;line-height:24px}.register-shell .summary-location-filter[open]{z-index:5}.register-shell .summary-location-options{position:absolute;left:calc(100% - 20px);top:0;width:285px;max-height:calc(100dvh - 230px);overflow:auto;background:#303d46;border:1px solid #667983;border-radius:8px;padding:10px 15px;box-shadow:0 8px 24px #0006}.register-shell .summary-location-filter label{display:block;margin:8px 0;color:#e4ebf0}.register-shell .summary-location-filter select{display:block;width:100%;margin-top:4px;min-height:33px;border-radius:2px}.register-shell .summary-location-options>button{border:1px solid #8d9da7;border-radius:2px;background:transparent;color:#f1f5f7;padding:7px 10px;margin:3px 0 5px}.register-shell .summary-location-filter p{color:#f6d5a4}.register-shell .summary-tab.closed-unpaid strong{color:#ffaaa0}.register-shell .summary-tab.chosen.closed-unpaid strong{color:#a12621}.register-shell .summary-actions>.summary-close-action{background:#862d28;color:#fff}.register-shell .summary-close-dialog{border:0;border-radius:10px;padding:0;width:350px;max-width:calc(100vw - 40px);background:#e3e6e8;color:#243740;box-shadow:0 12px 35px #0006}.register-shell .summary-close-dialog::backdrop{background:#101b22a8}.register-shell .summary-close-dialog h3{font-size:17px;margin:18px 20px 6px;text-align:center;color:#243740}.register-shell .summary-close-dialog p{font-size:13px;line-height:1.5;margin:8px 20px 18px;color:#243740;text-align:center}.register-shell .summary-close-dialog [role=alert]{color:#8c231c;font-weight:600}.register-shell .summary-close-dialog>div{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #b9c3c9}.register-shell .summary-close-dialog button{border:0;border-radius:0;background:transparent;color:#1669a6;min-height:44px;padding:12px 8px}.register-shell .summary-close-dialog button:first-child{color:#a23028;border-right:1px solid #b9c3c9}.register-shell .summary-close-dialog button:focus-visible{outline:2px solid #277cad;outline-offset:-3px}

.register-shell .summary-tab.chosen.closed-unpaid{background:#d2d8dc;color:#283f4c}.register-shell .summary-tab.chosen.closed-unpaid small{color:#344f60}.register-shell .summary-tab.chosen.closed-unpaid>b{color:#283f4c}
/* Barology 1.19: Summary existing-member shortcut, without loading a member directory. */
.register-shell .summary-toolbar{gap:8px;flex-wrap:wrap}.register-shell .summary-toolbar h2{font-size:17px}.register-shell .summary-open-actions{display:flex;gap:6px}.register-shell .summary-open-actions button{padding:9px 10px;min-height:38px;font-size:12px}.register-shell .summary-open-actions [data-summary-member]{border:0;border-radius:1px;background:#d5dde2;color:#263f4d}.register-shell .summary-member-picker>p{font-size:13px;line-height:1.5}.register-shell .summary-member-picker .summary-member-warning{color:#f4ce9b;font-size:13px}.register-shell .summary-member-picker a{color:#bdddf6}.register-shell .summary-member-picker select{width:100%;min-height:38px}.register-shell .summary-member-picker [role=alert]{border-left:3px solid #efaf9c;padding:8px 10px;background:#4a3333;color:#ffe3db}
/* Barology 1.20: bounded Till member creation, based on public member-form rows. */
.till-member-create{max-width:600px;margin:0 auto}.till-member-create h3{text-align:center;margin:6px 0 12px}.till-member-create p{font-size:13px;line-height:1.45;color:#d4dfe5}.till-member-create .field{display:grid;grid-template-columns:145px minmax(0,1fr);gap:9px;align-items:center;margin:6px 0}.till-member-create .field>span{font-size:12px;text-align:right}.till-member-create :is(input,select){width:100%;min-width:0;height:44px;padding:5px 9px;border-radius:1px;font-size:13px}.till-member-create>.secondary,.till-member-create form>.primary{margin-top:12px}.till-member-create [role=alert]{background:#74252c;color:#fff;padding:10px;border:1px solid #d6a0a3}.till-member-create-pending{padding:12px;border:1px solid #9caeb9;background:#273842}.till-member-create-pending [role=status]{color:#f0f4f6}
.till-member-create button{min-height:44px}

/* Till-only draft browsing and ordering controls. */
.till-category-navigation .classic-groups,.till-category-navigation .classic-subgroups{margin-bottom:7px}.till-category-navigation{margin-bottom:30px}.till-category-navigation button{overflow-wrap:anywhere;min-height:55px}.till-category-pages{display:flex;align-items:center;justify-content:center;gap:14px;margin:5px 0 10px;color:#e4edf2;font-size:12px}.till-category-pages button{min-width:48px;min-height:44px;background:#4f7896;color:#fff;border:1px solid #91a7b7;border-radius:0;font-size:23px;padding:4px}.till-category-navigation button[aria-pressed=true]{outline:2px solid #e4edf2;outline-offset:-3px}
.till-basket-row{border-bottom:1px solid #627581;touch-action:pan-y;min-width:0}.classic-order-lines .till-basket-row .till-basket-select{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;width:100%;min-height:52px;text-align:left;background:transparent;color:#edf3f6;border:0;border-radius:0;padding:9px 4px;font-size:13px}.till-basket-select>span{min-width:0;overflow-wrap:anywhere}.till-basket-select b{white-space:nowrap;font-size:13px;flex-shrink:0}.till-basket-select small{display:block!important;color:#d2e2eb!important;font-size:12px!important;line-height:1.5;margin-top:3px}.till-basket-note{font-style:italic}.till-basket-row.chosen{background:#415761}.till-basket-row-actions{display:flex;justify-content:flex-end;gap:5px;padding:0 4px 5px}.classic-order-lines .till-basket-row-actions button{min-height:44px;min-width:58px;padding:8px;background:#bac9d3;color:#243b49;border:0;border-radius:0;font-size:12px;width:auto}.classic-order-lines .till-basket-row-actions .till-basket-delete{background:#8b3531;color:#fff}.till-basket-row-actions.revealed{padding:5px;background:#23323c}.till-basket-rows:empty::after{content:'Choose products to start an order';display:block;color:#cfdae0;font-size:13px;text-align:center;padding:35px 10px}
.till-add-tab-chooser :is(p,label){color:inherit}.till-add-tab-list{max-height:35dvh;overflow:auto}.till-add-tab-list>button{display:flex;justify-content:space-between;gap:12px;width:100%;min-height:52px;border:0;border-bottom:1px solid #697b85;border-radius:0;background:#3b515e;color:#edf4f7;text-align:left;padding:12px}.till-add-tab-list>button span{overflow-wrap:anywhere;min-width:0}.till-add-tab-list>button b{white-space:nowrap}.till-add-tab-list>button.chosen{background:#d4e1e8;color:#243b49;outline:2px solid #8fb2cd;outline-offset:-2px}.till-add-tab-confirm{padding:14px;margin:12px 0;background:#293e4a;border:1px solid #7e9aab}.till-add-tab-confirm strong{font-size:19px;color:#fff}.till-add-tab-confirm p{color:#dbe8ef;font-size:13px}.till-add-tab-chooser>button{min-height:48px}.till-add-tab-chooser [role=alert]{color:#ffd1bc}.register-shell .till-order-options{color:#ecf2f6}.register-shell .till-order-options h3{margin:10px 0 17px}.register-shell .till-order-options .field{min-width:0}.register-shell .till-order-options .field span,.register-shell .till-order-options legend{color:#d5e4ed!important;font-size:12px}.register-shell .till-order-options fieldset{padding:12px;margin:14px 0;border-color:#90a3b0}.register-shell .till-order-options .bo-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #6a7e8a}.register-shell .till-order-options .bo-row>strong{flex:1;min-width:130px;font-size:14px;overflow-wrap:anywhere}.register-shell .till-order-options .bo-row>strong small{display:block;color:#ffd1bc}.register-shell .till-order-options .check{display:flex;align-items:center;gap:12px;min-height:48px;padding:8px 10px;margin:6px 0;border:1px solid #718c9e;background:#314b5a;color:#eff5f7}.register-shell .till-order-options .check:has(input:checked){background:#506f4c;border-color:#b4d2a8}.register-shell .till-order-options .check input{width:22px;height:22px;flex-shrink:0;margin:0}.register-shell .till-order-options .field input,.register-shell .till-order-options .field select{min-height:46px}.till-option-stepper{display:flex;gap:8px;align-items:flex-end;min-width:0}.till-option-stepper>.field{margin:0;flex:1;min-width:0}.till-option-stepper .field input{text-align:center;max-width:100%;width:100%}.till-option-stepper>button{width:48px;min-width:48px;height:46px;min-height:46px;padding:4px;background:#b8ccd8;color:#203c50;border:0;border-radius:0;font-size:24px;flex-shrink:0}.till-option-stepper>button:disabled{opacity:.4}.register-shell .till-order-options .bo-row>.till-option-stepper{width:270px;max-width:100%}.register-shell .till-order-options>.till-option-stepper{max-width:300px}.register-shell .till-order-options-footer{position:sticky;bottom:-27px;background:#283e4b;border-top:1px solid #94abba;padding:12px;margin:16px -8px -4px;z-index:2}.register-shell .till-order-options-footer>strong{display:block;font-size:22px;color:#fff;margin-bottom:8px}.register-shell .till-order-options-footer .hint{color:#ffe3b4;margin:5px 0 10px}.register-shell .till-order-options-footer .primary{min-height:48px}.register-shell .till-order-options>.hint{color:#d2dfe8;font-size:12px;line-height:1.5}.register-shell .till-order-options .panel{padding:12px;background:#293f4c;border:1px solid #7691a0;color:#edf3f6}.register-shell .till-order-options .till-option-information>button{min-height:44px}.register-shell .till-order-options-body>.till-option-stepper{max-width:310px}.register-shell .till-order-options .till-order-options-body>.field:first-child{margin-top:0}
.register-shell .sheet .till-add-tab-list>button.chosen{background:#d4e1e8;color:#243b49}.register-shell .sheet .till-add-tab-list>button.chosen :is(span,b){color:#243b49}
.offline-workspace .till-order-options :is(.field span,legend,.hint){color:#52616b}
.register-shell .sheet:has(.till-order-options){scroll-padding-top:95px;scroll-padding-bottom:170px}.register-shell .sheet .till-order-options :is(input,select,textarea):focus{scroll-margin-bottom:160px}

/* Own-brand Till booking presentation from public list/grid references. */
.till-bookings>.section-head{align-items:center;margin-bottom:10px}.till-bookings>.section-head h2{margin:0;font-size:19px}.till-bookings>.section-head p{margin:3px 0;font-size:12px}.till-bookings>.bo-row{display:grid;grid-template-columns:180px minmax(180px,1fr) 240px;gap:12px;padding:10px;background:#2d3b43;border:1px solid #53646e}.till-bookings>.bo-row .field{margin:0}.till-booking-view-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:10px 0}.till-booking-view-toolbar>span{font-size:12px;color:#bdcbd3}.till-booking-workspace{display:grid;grid-template-columns:minmax(290px,33%) minmax(0,1fr);gap:10px;min-height:420px}.till-booking-overview,.till-booking-detail{min-width:0;background:#253138;border:1px solid #52636d}.till-booking-list{max-height:calc(100vh - 330px);overflow:auto}.till-booking-row{width:100%;display:grid;grid-template-columns:24px minmax(0,1fr) 15px;gap:9px;align-items:center;text-align:left;border:0;border-bottom:1px solid #43525c;border-radius:0;background:#34434b;color:#e7edf1;padding:13px 10px;min-height:64px}.till-booking-row:nth-child(even){background:#2e3c44}.till-booking-row.selected{background:#c7cdd1;color:#24343d}.till-booking-row strong{display:block;font-size:14px;overflow-wrap:anywhere}.till-booking-row small{display:block;font-size:11px;margin-top:5px;color:inherit}.till-booking-state{font-size:22px;color:#7cc591}.till-booking-row.state-requested .till-booking-state{color:#f3b153}.till-booking-detail{padding:12px;max-height:calc(100vh - 275px);overflow:auto}.till-booking-detail>.panel{background:transparent;border:0;box-shadow:none;padding:4px}.till-booking-empty{min-height:300px;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#becbd3;text-align:center}.till-booking-empty h3{font-size:25px}.till-booking-workspace.grid-view{display:block}.till-booking-workspace.grid-view .till-booking-detail{margin-top:10px;max-height:none}.till-booking-workspace.grid-view .till-booking-empty{min-height:90px}.till-booking-grid-scroll{overflow:auto;max-height:calc(100vh - 285px);padding:8px}.till-booking-grid{min-width:1380px}.till-booking-grid-header,.till-booking-grid-row{display:grid;grid-template-columns:130px minmax(0,1fr)}.till-booking-grid-header{height:38px;background:#263239;position:sticky;top:-8px;z-index:4}.till-booking-grid-header>span{font-size:12px;padding:8px}.till-booking-grid-header>div{position:relative}.till-booking-grid-header small{position:absolute;font-size:10px;white-space:nowrap;top:8px}.till-booking-grid-row>strong{padding:12px 8px;font-size:12px;border-bottom:1px solid #687780}.till-booking-grid-track{position:relative;border-bottom:1px solid #687780;background-image:linear-gradient(to right,#687780 1px,transparent 1px);background-repeat:repeat}.till-booking-block{position:absolute;min-height:44px;max-height:44px;overflow:hidden;padding:4px 6px;border:1px solid #37b949;border-radius:2px;text-align:left;background:#12682b;color:#fff;z-index:2;min-width:0}.till-booking-block.state-requested{background:#855118;border-color:#efaa45}.till-booking-block.state-ended,.till-booking-block.state-cancelled,.till-booking-block.state-declined,.till-booking-block.state-noShow{background:#677177;border-color:#a4afb5}.till-booking-block.selected{outline:2px solid #fff;outline-offset:-3px}.till-booking-block small,.till-booking-block strong{display:block;white-space:nowrap;font-size:10px;overflow:hidden;text-overflow:ellipsis}.till-booking-block strong{font-size:12px;margin-top:2px}.till-booking-area{margin:0;padding:9px;background:#263239;color:#cbd6dd;font-size:13px}.till-booking-now{position:absolute;top:0;bottom:0;width:2px;background:#ff5555;z-index:3;pointer-events:none}.till-bookings :is(button,input,select):focus-visible{outline:3px solid #f4cd6e;outline-offset:2px}
.till-booking-unloaded{position:absolute;top:0;bottom:0;background:repeating-linear-gradient(135deg,#19252caa 0,#19252caa 6px,#a0acb12b 6px,#a0acb12b 7px);pointer-events:none;z-index:1}
.plan-view-bookings{margin:8px 0}.till-table-bookings .field{display:flex;align-items:center;gap:8px;margin:10px 0}.till-table-bookings .field>span{font-size:11px;min-width:62px}.till-table-bookings input{min-width:0;font-size:12px;padding:6px}.till-table-bookings p{font-size:11px;line-height:1.4}.till-table-bookings-scroll{max-height:310px;overflow:auto;border:1px solid #72818b;padding:8px 0;position:relative}.till-table-bookings-track{position:relative;min-width:260px}.till-table-bookings-hour{position:absolute;left:0;right:0;border-top:1px solid #65757e}.till-table-bookings-hour>span{display:block;width:65px;background:#2d3d46;font-size:9px;padding:3px 2px}.till-table-bookings-now{position:absolute;left:66px;right:0;height:2px;background:#77b7ff;z-index:3;pointer-events:none}.till-table-booking-block{position:absolute;display:flex;flex-direction:column;align-items:flex-start;gap:5px;background:#214a2c;border:1px solid #53bf67;border-radius:2px;padding:6px;overflow:hidden;text-align:left;color:#eaf5ed}.till-table-booking-block.state-requested{background:#694823;border-color:#e3a345}.till-table-booking-block strong,.till-table-booking-block span{font-size:11px;overflow-wrap:anywhere}.till-table-booking-block small{font-size:10px}.till-table-booking-block.selected{outline:2px solid #f4d373;outline-offset:-3px}

.till-table-bookings{padding:8px 10px}.till-table-booking-block{min-height:44px}.till-booking-grid-scroll>.hint{position:sticky;left:0}
.till-table-booking-selected{margin:8px 0;padding:8px;border:1px solid #c4a85b;background:#263740}.till-table-booking-selected>strong{font-size:12px;color:#fff;overflow-wrap:anywhere}.till-table-booking-selected p{margin:5px 0 0;color:#d8e4ea}
.register-shell .till-bookings .till-booking-row{background:#34434b;color:#e7edf1}.register-shell .till-bookings .till-booking-row:nth-child(even){background:#2e3c44}.register-shell .till-bookings .till-booking-row.selected{background:#c7cdd1;color:#24343d}.register-shell .till-bookings .till-booking-grid-scroll{max-height:max(190px,calc(100dvh - 445px))}.till-booking-grid-header small{font-size:9px}
.till-booking-grid-row>strong,.till-booking-grid-header>span{position:sticky;left:0;background:#263239;z-index:4}.till-booking-grid-header>span{z-index:5}
.till-booking-workspace.list-view{min-height:0}.till-booking-workspace.list-view .till-booking-list,.till-booking-workspace.list-view .till-booking-detail{max-height:max(190px,calc(100dvh - 435px))}
.till-booking-grid-header{z-index:7}.till-booking-grid-header>span{z-index:8}

/* Daily booking controls share the register touch scale. */
.register-shell .till-bookings>.bo-row{grid-template-columns:280px minmax(180px,1fr) 240px auto;align-items:end}
.register-shell .till-bookings .booking-editor .checks>label{min-height:48px;display:flex;align-items:center;gap:8px;padding:8px;border:1px solid #687780;border-radius:4px}
.register-shell .till-bookings .booking-editor .checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}
@media(max-width:1100px){.register-shell .till-bookings>.bo-row{grid-template-columns:280px minmax(150px,1fr) 220px}.register-shell .till-bookings>.bo-row>button{grid-column:2/-1}}

.register-shell .till-booking-grid-row>strong:has(.till-booking-table-create){padding:0 4px}
.register-shell .till-booking-table-create{min-height:48px;width:100%;display:flex;align-items:center;justify-content:space-between;gap:6px;padding:6px;font-size:12px}
.register-shell .till-booking-table-create small{font-size:10px}

.till-booking-date-controls{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;gap:6px}.till-booking-date-controls input{min-width:0;width:100%}

/* Till-only modal mechanics. Keep each existing scene's layout and colours. */
.till-dialog-sheet:focus{outline:none}.till-dialog-sheet>header>button[aria-label="Close dialog"]{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.till-dialog-sheet[aria-busy="true"]>header>button{cursor:wait}.register-shell .sheet fieldset.payment-reference-main{border:0;margin:0;padding:0 6px 0 0;border-radius:0;min-width:0}.payment-reference-main:disabled .payment-tools button,.payment-reference-main:disabled .payment-methods button,.payment-reference-main:disabled .payment-keypad button{cursor:wait}.manager-approval-veil .sheet:focus{outline:none}.manager-approval-veil .sheet>header>button{min-width:44px;min-height:44px}

/* Reference payment geometry: calculator keys and shortcuts share rows; the
   commit controls sit outside the scrolling editor, never over its keys. */
.register-shell .payment-reference-layout .payment-reference-main{display:flex;flex-direction:column;overflow:hidden}.register-shell .payment-entry-scroll{min-height:0;flex:1;overflow:auto;padding-right:2px}.register-shell .payment-reference-main .payment-heading{padding:0;min-height:52px}.register-shell .payment-reference-main .payment-heading h2{font-size:15px;margin:2px 0}.register-shell .payment-reference-main .payment-heading>strong{font-size:48px;line-height:1.1}.register-shell .payment-reference-main .payment-entry-hint{margin:4px 0 6px;line-height:1.3}.register-shell .payment-reference-main .payment-tools{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 6px}.register-shell .payment-reference-main .payment-tools button{min-height:44px;min-width:44px}.register-shell .payment-reference-main .equal-split{margin:0 0 6px;min-height:44px}.register-shell .payment-reference-main .equal-split>button{min-height:44px;min-width:44px}.register-shell .payment-reference-main .payment-methods{margin:0 0 6px}.register-shell .payment-reference-main .payment-methods button{min-height:44px}.register-shell .payment-reference-main .payment-keypad{display:grid;grid-template-columns:minmax(0,3fr) minmax(86px,1fr);gap:6px;margin:0 0 8px;max-width:none}.register-shell .payment-reference-main .payment-keypad .number-keys{grid-column:1;grid-row:1;gap:6px}.register-shell .payment-reference-main .payment-keypad .cash-keys{grid-column:2;grid-row:1;display:grid;grid-template-columns:1fr;grid-template-rows:repeat(3,minmax(44px,1fr));gap:6px;margin:0;padding-bottom:50px}.register-shell .payment-reference-main .payment-keypad .keypad-actions{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0}.register-shell .payment-reference-main .payment-keypad button{min-height:44px}.register-shell .payment-reference-main .payment-keypad .number-keys button{min-height:44px}.register-shell .payment-reference-main .payment-part>button{min-width:44px;min-height:44px;padding:4px}.register-shell .payment-reference-main .payment-part{grid-template-columns:minmax(0,1fr) minmax(0,.8fr) minmax(0,1fr) 44px}.register-shell .payment-reference-main .payment-part .field :is(input,select,button){min-height:44px}.register-shell .payment-reference-main .payment-reference-tenders>.full{min-height:44px}.register-shell .payment-reference-main>.payment-reference-finish{position:static;flex-shrink:0;background:#303b40;margin:0;padding:8px 0 0}.register-shell .payment-reference-finish .check{margin:4px 0 8px;min-height:24px}.register-shell .payment-reference-main>.hint{flex-shrink:0;font-size:10px;line-height:1.3;margin:6px 0 0}.register-shell .payment-reference-main .payment-finish button{min-height:48px}.register-shell .payment-reference-bill .check{min-height:44px;align-items:center}
/* Small payment labels need full contrast; source-reference navy tenders,
   dark shortcut/orange text and strong green remain distinct by function. */
.register-shell .payment-reference-main .payment-methods button{background:#0b4e81;color:#fff}.register-shell .payment-reference-main .payment-methods button:hover{background:#075382}.register-shell .payment-reference-main .payment-methods button.chosen{background:#063454;color:#fff;box-shadow:inset 0 0 0 2px #c2dded}.register-shell .payment-reference-main .payment-keypad .cash-keys button{background:#4295bf;color:#071b26}.register-shell .payment-reference-main .payment-keypad .cash-keys button:hover{background:#6baacc}.register-shell .payment-reference-main .equal-split>button{background:#d58b2a;color:#192b35}.register-shell .payment-reference-main .equal-split>button:hover{background:#e0a553}.register-shell .payment-reference-main .payment-keypad .keypad-actions button{background:#b6c5ce;color:#263c48}.register-shell .payment-reference-main .payment-keypad .keypad-actions button:hover{background:#c9d5dc}.register-shell .payment-reference-main .payment-finish .primary{background:#39782d;color:#fff}.register-shell .payment-reference-main .payment-finish .primary:hover{background:#2f6525}

.register-shell .sheet:has(.till-information-layout){width:900px}.till-information-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:20px}.till-information-summary{min-width:0;border-right:1px solid #677b88;padding-right:18px}.till-information-summary h2{font-size:24px;overflow-wrap:anywhere}.till-information-summary h3{font-size:16px}.till-information-summary .product-information-allergens{background:#273b47;border:1px solid #708b9b;padding:12px;margin:12px 0}.till-information-summary :is(p,li){color:#ecf2f6;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.till-information-summary ul{padding-left:20px}.till-information-summary .info-review-pending{color:#ffe1a4}.till-information-summary .till-stock-actions{margin:12px 0}.till-information-summary :is(input,select){width:100%;min-height:44px}.till-information-summary button{min-height:44px}.till-information-content{min-width:0}.till-information-tabs{display:flex;border-bottom:1px solid #9aabb6;margin-bottom:18px;gap:8px}.till-information-tabs button{min-height:48px;flex:1;border-radius:0;background:#526b7a;border:1px solid #a3b6c2;color:#f1f6f9}.till-information-tabs button[aria-selected=true]{background:#c5d4dd;color:#213c4b;border-bottom:4px solid #dfa244}.till-information-content [role=tabpanel]{min-height:200px;overflow-wrap:anywhere}.till-information-content :is(p,dt,dd){font-size:14px;line-height:1.6;color:#e1ebf2;overflow-wrap:anywhere}.register-shell .till-product-key .product-info-key{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;padding:0;background:#f5f2bcdd;color:#263a42}.register-shell .till-product-key .product-order-key{padding-right:40px}
.register-shell .sheet .till-information-layout{background:#2d3d47;color:#eef4f7}.register-shell .sheet .till-information-layout h2,.register-shell .sheet .till-information-layout h3{color:#eef4f7}.register-shell .sheet:has(.till-information-layout){background:#2d3d47}.register-shell .sheet:has(.till-information-layout)>header h2{color:#eef4f7}
.register-shell .sheet .till-information-layout .info-review-pending{background:#564623;color:#ffe3ac;border-color:#9c8249}.register-shell .sheet .till-information-layout .info-review-complete{background:#28513a;color:#e2f3ea;border-color:#79a588}

/* The Till is a landscape touch workspace. Mobile remains a separate app. */
:where(.register-shell,.offline-workspace,.login) button,:where(.register-shell,.offline-workspace,.login) a[href],:where(.register-shell,.offline-workspace,.login) summary{touch-action:manipulation;-webkit-tap-highlight-color:#9fc9ea55}
.register-shell button,.offline-workspace button,.login button{min-height:44px;min-width:44px}.register-shell :is(input:not([type=checkbox]):not([type=radio]),select,textarea),.offline-workspace :is(input:not([type=checkbox]):not([type=radio]),select,textarea),.login :is(input,select){min-height:44px;font-size:16px}.register-shell :is(label.check,label:has(>input[type=checkbox]),label:has(>input[type=radio])),.offline-workspace label:has(>input[type=checkbox]){min-height:44px;cursor:pointer}.register-shell input:is([type=checkbox],[type=radio]){width:24px;height:24px;min-width:24px;min-height:24px;flex-shrink:0}.register-shell :is(summary,.download-link){min-height:44px;display:flex;align-items:center}.register-shell :is(.classic-order-lines,.summary-tab-list,.summary-detail,.content,.sheet,.till-booking-grid-scroll,.till-table-bookings-scroll,.payment-entry-scroll,.payment-reference-items){overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scroll-padding:12px;touch-action:pan-x pan-y}.register-shell :is(.till-basket-row,.till-basket-select){touch-action:pan-y}.register-shell .floor{touch-action:pan-y}.register-shell .till-plan-view .floor{width:min(100%,var(--till-plan-width,calc((100dvh - 280px)*1.6)))}.till-table-touch-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.register-shell .till-table-touch-list>button{min-height:72px;display:flex;flex-direction:column;gap:6px;text-align:left;justify-content:center;overflow-wrap:anywhere}.till-table-touch-list small{color:inherit}.register-shell .till-plan-view .plan-toolbar{flex-wrap:wrap}.register-shell .till-plan-view .plan-toolbar .segmented{margin-bottom:0}
.till-dialog-veil,.manager-approval-veil{top:var(--till-visible-top,0px);height:var(--till-visible-height,100dvh);bottom:auto;padding:12px}.till-dialog-sheet,.manager-approval-veil .sheet{max-height:calc(var(--till-visible-height,100dvh) - 24px)!important;scroll-padding-bottom:24px}.till-dialog-sheet>header{position:sticky;top:-27px;background:inherit;z-index:6}.register-shell .sheet input:focus,.register-shell .sheet select:focus,.register-shell .sheet textarea:focus{scroll-margin-top:85px;scroll-margin-bottom:70px}.register-shell .notice>button{flex-shrink:0}.register-shell .till-plan-view .plan-toolbar>button{min-height:44px}
@media(pointer:coarse){.register-shell button:hover,.offline-workspace button:hover{filter:none}.register-shell button:active,.offline-workspace button:active{filter:brightness(1.15)}}
/* Preserve the true duration of short timeline blocks; List view supplies full-sized targets. */
.register-shell .till-booking-block{min-width:0}
.register-shell .product-order-key span{overflow-wrap:anywhere;line-height:1.3}.register-shell .product-order-key{overflow-wrap:anywhere}
/* Enforce the touch baseline over older scene-specific compact rules. */
:is(.register-shell,.offline-workspace,.login) button{min-height:44px!important;min-width:44px!important}.register-shell .till-booking-block{min-width:0!important}.register-shell .till-touch-checkbox{display:flex;align-items:center;justify-content:center;min-width:44px;width:44px;height:44px;flex-shrink:0;margin:0}.register-shell .till-touch-select-all{display:flex;align-items:center;gap:8px;min-height:44px}
:is(.register-shell,.offline-workspace,.login) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){min-height:44px!important;font-size:16px!important}

/* Compact landscape order header, informed by the supplied till photographs. */
.till-ordering-shell .top{gap:12px;padding:4px 16px;min-height:52px}.till-ordering-shell .top>.till-view-title{order:0;flex:0 1 140px;min-width:80px}.till-ordering-shell .top>div>small{display:block;color:#d5dee3;font-size:10px;line-height:1.25;max-height:26px;overflow:hidden;overflow-wrap:anywhere;margin:0}.till-ordering-shell .top h1{font-size:12px;margin:2px 0 0}.till-ordering-shell .top>.top-actions{order:2;flex:0 0 auto;min-width:0}.till-ordering-shell .top>.development{order:1;flex:1;min-width:0;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px 7px;min-height:44px;margin:0;padding:0;border:0;background:transparent;line-height:1.2}.till-ordering-shell .top>.development button{font-size:10px;padding:4px 7px;flex:0 0 auto}.till-ordering-shell .top>.development>span{font-size:8px}.till-ordering-shell .top>.own-logo-preview{order:-1;flex:0 0 60px;min-width:0;max-width:60px}.till-ordering-shell .top .own-logo-preview img{max-height:36px;width:auto;max-width:60px}

.till-ordering-shell .classic-groups button{background:#315994}.till-ordering-shell .classic-groups button.chosen{background:#dd9337}

.sheet:has(.till-plan-editor){width:min(1000px,96vw);max-width:1000px}.till-plan-editor{min-width:0}.till-plan-editor-scroll{width:806px;max-width:100%;background:#171c20;overflow:auto;max-height:52vh;border:3px solid #dc8f22}.till-plan-editor-canvas{position:relative;width:800px;height:500px;background:#171c20}.till-plan-editor-table{position:absolute;touch-action:none;padding:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:44px;min-height:44px;background:#d9f2ff;color:#172b3b;border:2px solid #7cb8d1;font:14px Helvetica,Arial,sans-serif}.till-plan-editor-table[aria-pressed=true]{outline:3px solid #e9a83c;outline-offset:2px}.register-shell .till-dialog-sheet .till-plan-editor .till-plan-editor-table.round{border-radius:50%!important}.till-plan-editor-table small{display:block;font-size:11px;color:#324f61;line-height:1.2}.till-plan-editor-table span{display:block;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.till-plan-editor-fixture{position:absolute;background:#414a52;color:#fff;pointer-events:none;text-align:center;font-size:12px}.till-plan-editor-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0}.till-plan-editor-controls label{display:grid;gap:4px}.till-plan-editor-controls button,.till-plan-editor-controls select{min-width:44px;min-height:44px}.till-plan-editor [role=alert]{color:#ffdb9a}.till-plan-editor .actions{display:flex;gap:12px;flex-wrap:wrap}

/* Staff landscape Till only. Eight category keys and twelve product keys are independent page capacities. */
.register-shell .till-category-navigation{margin-bottom:7px;min-width:0}.register-shell .till-main-category-row{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:7px;margin-bottom:7px}.register-shell .till-main-category-row>.till-paging{min-width:0}.register-shell .till-main-category-row>.till-note-key{align-self:start;min-height:57px;border:0;border-radius:0;background:#315994;color:#eff5fb;font-weight:400}.register-shell .till-main-category-row .classic-groups{grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.register-shell .till-category-navigation .classic-subgroups{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,minmax(55px,auto));margin:0}
.register-shell .till-paging{min-width:0;max-width:100%;margin:0}.register-shell .till-page-viewport{display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x pan-y pinch-zoom;min-width:0;width:100%;isolation:isolate}.register-shell .till-page-viewport::-webkit-scrollbar{display:none}.register-shell .till-swipe-page{flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;padding:2px;box-sizing:border-box}.register-shell .till-swipe-page>div{max-width:none;width:100%;min-width:0}.register-shell .till-swipe-page .classic-product-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(3,minmax(66px,auto));gap:7px;align-content:start}.register-shell .till-paging .product-order-key{min-height:66px;padding-right:48px}.register-shell .till-page-viewport :is(button,.till-product-key){touch-action:pan-x pan-y pinch-zoom}.register-shell .till-page-viewport:focus-visible{outline:2px solid #d4eaff;outline-offset:2px}.register-shell .till-page-controls{display:flex;gap:4px;align-items:center;justify-content:space-between;min-height:44px;color:#e0edf5;margin:3px 0 5px}.register-shell .till-page-controls button{flex-shrink:0;min-width:44px;min-height:44px;width:44px;height:44px;border:0;border-radius:0;padding:0;background:#315f83;color:#fff;font-size:25px}.register-shell .till-page-controls button:disabled{opacity:.45}.register-shell .till-page-dots{display:flex;justify-content:center;align-items:center;gap:0;min-width:0;overflow-x:auto;touch-action:pan-x}.register-shell .till-page-dots button{display:grid;place-items:center;background:transparent}.register-shell .till-page-dots button>span{width:9px;height:9px;border-radius:50%;border:1px solid #c5dae8;background:#7a909e}.register-shell .till-page-dots button[aria-current=page]>span{background:#84c4f0;border:2px solid #ecf6ff;width:12px;height:12px}.register-shell .till-page-status{font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}.register-shell .till-paging-main .till-page-controls{margin-bottom:0}.register-shell .classic-search{margin:4px 0 8px}.register-shell .till-swipe-page{position:relative}.register-shell .till-page-empty{position:absolute;top:10px;left:12px;right:12px;color:#d5e3eb;margin:0;padding:12px;font-size:14px}.register-shell .till-paging-products{position:relative}
/* Readable labels at touch sizes; retain blue keys and orange selection. */
.register-shell .till-paging .classic-subgroups button{background:#386f96;color:#eff6fb}.register-shell .till-paging :is(.classic-subgroups,.classic-groups) button.chosen{background:#e3a75a;color:#20323e}.register-shell .till-page-controls button:focus-visible{outline:2px solid #fff;outline-offset:-3px}

/* Barology staff workspace: one touch system across register, dialogs and operational views. */
:is(.register-shell,.offline-workspace){--till-font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",sans-serif;--till-canvas:#26292d;--till-panel:#303439;--till-rule:#50565d;--till-text:#f1f5f9;--till-muted:#cbd5e1;--till-green:#18783b;--till-purple:#3a3f45;--till-cyan:#3a3f45;--till-paper:#3a3f45;--till-key-radius:5px;font-family:var(--till-font-family);font-variant-numeric:tabular-nums}
.register-shell{background:var(--till-canvas);color:var(--till-text);font-size:15px;line-height:1.4}
.register-shell :is(button,input,select,textarea),.offline-workspace :is(button,input,select,textarea){font-family:var(--till-font-family)!important;font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:0}
.register-shell :is(button,a[href],summary),.offline-workspace :is(button,a[href],summary){min-height:48px!important;min-width:48px!important;touch-action:manipulation;-webkit-user-select:none;user-select:none;transition:background-color 75ms,filter 75ms,transform 75ms}
.register-shell button:active:not(:disabled){filter:brightness(.9)!important;transform:none}
.register-shell :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #93c5fd;outline-offset:2px}
.register-shell :is(input:not([type=checkbox]):not([type=radio]),select,textarea),.offline-workspace :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px!important;min-height:48px!important;user-select:text}
.register-shell label:has(>input[type=checkbox]),.register-shell label:has(>input[type=radio]){min-height:48px!important;min-width:48px!important}
.register-shell :is(button,a.primary,a.secondary){border-radius:5px!important;box-shadow:none;font-size:14px;line-height:1.35}
.register-shell>main,.register-shell .content,.register-shell .classic-register{background:var(--till-canvas)}
.register-shell .top{height:56px!important;min-height:56px!important;padding:4px 16px;gap:14px;background:#26292d!important;border-bottom:1px solid var(--till-rule)}
.register-shell .top h1{font-size:15px;color:#f1f5f9;font-weight:600}
.register-shell .top>.till-view-title>small,.register-shell .till-session-status{font-size:12px;color:#cbd5e1;letter-spacing:.02em}
.register-shell .till-session-toggle{width:48px;height:48px;background:#3a3f45;color:#f1f5f9;border:1px solid var(--till-rule);font-size:24px}
.register-shell .top .development{background:transparent;color:#cbd5e1;font-size:11px;line-height:1.4}
.register-shell .notice{background:#343f4a;border:1px solid #4e7197;color:#e0f2fe;font-size:14px;line-height:1.5}
.register-shell .notice>button{color:#e0f2fe;background:transparent}
/* A stable65/35 register with product pages growing into the available vertical space. */
.register-shell.till-ordering-shell>main{height:100dvh;min-height:768px;display:flex;flex-direction:column;overflow:auto}
.register-shell .till-register-view{grid-template-columns:minmax(0,1.85fr) minmax(320px,1fr);grid-template-rows:minmax(0,1fr) auto;flex:1;min-height:0;gap:16px;padding:16px 16px 0}
.register-shell .classic-products{display:flex;flex-direction:column;min-height:0;padding:0;gap:10px}
.register-shell .till-category-navigation{flex:0 0 auto;margin:0}
.register-shell .till-category-navigation :is(.classic-groups,.classic-subgroups){gap:8px}
.register-shell .till-main-category-row{gap:8px;margin-bottom:8px}
.register-shell .till-category-navigation :is(.classic-groups,.classic-subgroups) button,.register-shell .till-note-key{height:60px;min-height:60px;background:#3a3f45!important;color:#f1f5f9!important;border:1px solid #626a73;border-top:3px solid #93c5fd;border-radius:5px!important;font-size:15px;font-weight:500}
.register-shell .till-main-category-row .classic-groups button:nth-child(2){border-top-color:#f0b582}
.register-shell .till-main-category-row .classic-groups button:nth-child(3){border-top-color:#b7a5ed}
.register-shell .till-main-category-row>.till-note-key{height:60px;min-height:60px;color:#f1f5f9;background:#3a3f45;border-top-color:#94a3b8}
.register-shell .till-category-navigation .classic-subgroups{grid-template-rows:repeat(2,minmax(56px,auto))}
.register-shell .till-category-navigation .classic-subgroups button{min-height:56px;height:auto;font-size:14px;border-top-width:1px}
.register-shell .till-category-navigation button.chosen{background:#375d77!important;box-shadow:inset 0 0 0 2px #93c5fd;color:#fff!important}
.register-shell .till-paging-products{flex:0 0 auto;min-height:0;display:flex;flex-direction:column}
.register-shell .till-paging-products>.till-page-viewport{flex:0 0 auto;align-items:start;min-height:0}
.register-shell .till-paging-products .till-swipe-page{display:flex;flex-direction:column}
.register-shell .till-paging-products .classic-product-grid{flex:0 0 auto;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(3,minmax(76px,max-content));align-content:start;gap:8px;margin:0}
.register-shell .till-product-key{display:flex;min-height:76px;border-radius:5px}
.register-shell .till-paging .product-order-key{height:100%;min-height:76px;width:100%;padding:12px 52px 12px 12px!important;border-radius:5px!important;background:#3a3f45!important;color:#f1f5f9!important;border:1px solid #626a73;font-size:15px;text-align:left!important;font-weight:500}
.register-shell .product-order-key>span{line-height:1.4}
.register-shell .product-order-key>small{display:inline-block;margin-top:8px;padding:3px 7px;background:#292d32;border:1px solid #626a73;border-radius:6px;color:#dbeafe!important;font-size:13px;font-weight:500}
.register-shell .classic-product-grid .product-info-key{width:48px;height:48px;min-height:48px;min-width:48px;right:2px;top:2px;background:transparent;color:#cbd5e1!important;font-size:18px;border-radius:5px!important;font-family:var(--till-font-family)!important}
.register-shell .till-page-controls{min-height:48px;margin:4px 0;color:#cbd5e1;gap:4px}
.register-shell .till-page-controls button{width:48px;height:48px;color:#cbd5e1;background:transparent}
.register-shell .till-page-dots button>span{background:#475569;border-color:#64748b}
.register-shell .till-page-dots button[aria-current=page]>span{background:#93c5fd;border-color:#dbeafe}
.register-shell .till-page-status,.register-shell .till-page-empty{color:#cbd5e1;font-size:13px}
/* Receipt and action panel: readable lines above a single consistent command cluster. */
.register-shell .classic-order{background:#303439;border:1px solid #50565d;border-radius:6px;padding:16px;display:flex;flex-direction:column;min-width:0;min-height:0}
.register-shell .classic-user{font-size:13px;color:#cbd5e1}
.register-shell .classic-order-total{font-size:36px;line-height:1.2;color:#f8fafc;margin:8px 0 16px;font-weight:600}
.register-shell .classic-order-lines{flex:1;overflow:auto;min-height:120px;color:#e2e8f0;margin-bottom:14px}
.register-shell .till-basket-row{border-color:#50565d}
.register-shell .till-basket-row.chosen{background:#375d77;border-radius:5px}
.register-shell .till-basket-select{color:#f1f5f9!important;font-size:15px;padding:12px 8px}
.register-shell .till-basket-select :is(small,b){color:#cbd5e1!important}
.register-shell .till-basket-select small{margin-top:5px;font-size:13px}
.register-shell .till-basket-delete{background:#542b36!important;color:#ffe4e6!important}
.register-shell .classic-controls{margin-top:auto;display:grid;gap:8px}
.register-shell .classic-controls :is(.classic-three,.classic-two){gap:8px}
.register-shell .classic-controls button{background:#41474e;color:#f1f5f9;border:1px solid #656d75;min-height:52px!important;font-size:14px;border-radius:5px!important}
.register-shell .classic-controls>.classic-two:last-child{grid-template-columns:1fr;gap:8px}
.register-shell .classic-controls>.classic-two:last-child button{min-height:56px!important;background:#22653a;color:#ecfdf5;border-color:#419b5c;font-weight:600}
.register-shell .classic-controls>.classic-two:last-child button:last-child{background:#18783b;color:#fff;border-color:#48a667}
/* Equal dock cells; original view grants and callbacks remain in the caller. */
.register-shell .bottom-dock-nav{display:flex;align-items:stretch;gap:4px;padding:8px max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:#212428;border-top:1px solid #50565d;grid-column:1/-1;margin:0 -16px;min-height:72px}
.register-shell .bottom-dock-nav :is(button,a){flex:1 1 0;min-width:64px!important;min-height:56px!important;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:5px 4px;color:#cbd5e1;background:transparent;border:1px solid transparent;font-size:12px!important;text-decoration:none;text-align:center;border-radius:5px!important;position:relative}
.register-shell .bottom-dock-nav button.chosen{background:#375d77;color:#eff6ff;border-color:#5c8cbe}
.register-shell .dock-icon{display:block;position:relative;line-height:0}
.register-shell .bottom-dock-nav :is(.dock-icon>em,em){position:absolute;right:-12px;top:-7px;min-width:20px;height:20px;border-radius:6px;background:#be123c;color:#fff;font:700 10px/20px var(--till-font-family);text-align:center;padding:0 5px;margin:0;transform:none}
.register-shell .dock-label{font-size:12px;line-height:1.25;white-space:nowrap}
.register-shell .bottom-dock-nav .dock-logout{flex:0 0 76px;margin-left:4px;border-left-color:#50565d}
/* Shared dark cards and dialogs cover every Till menu, rather than one showcase screen. */
.register-shell :is(.panel,.sheet,.card,.tab-panel,.summary-detail,.till-booking-overview,.till-booking-detail){background:#303439!important;color:#f1f5f9!important;border:1px solid #50565d;border-radius:6px;box-shadow:none}
.register-shell .sheet{padding:24px;max-height:calc(var(--till-visible-height,100dvh) - 24px)}
.register-shell .sheet>header{background:#303439!important;border-bottom:1px solid #50565d;padding-bottom:12px}
.register-shell :is(h2,h3,h4,legend,dt,dd){color:#f1f5f9!important;font-family:var(--till-font-family);letter-spacing:0;font-weight:600}
.register-shell .sheet :is(p,small,.hint,label,.field>span,li),.register-shell .content :is(p,small,.hint,label,.field>span,li){color:#cbd5e1!important;font-family:var(--till-font-family);font-size:14px;line-height:1.5}
.register-shell .sheet :is(button,.download-link),.register-shell .content button{background:#41474e;color:#f1f5f9;border:1px solid #656d75;font-weight:500;font-size:14px}
.register-shell .sheet :is(button,.download-link).primary,.register-shell .content button.primary,.register-shell .payment-reference-finish .primary{background:#18783b;color:#fff;border-color:#48a667;font-weight:600}
.register-shell .sheet :is(button,.download-link).secondary{background:#41474e;color:#f1f5f9;border-color:#656d75}
.register-shell .sheet :is(button,a):is(.chosen,.selected),.register-shell .content button:is(.chosen,.selected){background:#375d77;color:#fff;border-color:#93c5fd}
.register-shell .sheet :is(input:not([type=checkbox]):not([type=radio]),select,textarea){background:#292d32!important;color:#f1f5f9!important;border:1px solid #707981}
.register-shell .sheet :is(input:disabled,select:disabled,textarea:disabled){color:#94a3b8!important;background:#182236!important}
.register-shell .sheet :is(th,td){border-color:#50565d;color:#e2e8f0;background:transparent}
.register-shell .sheet :is(.hint,[role=alert]){color:#fcd7b6!important}
.register-shell .sheet a:not(.primary){color:#bfdbfe}
.register-shell .sheet :is(.field,.form-grid,.bo-row){min-width:0}
.register-shell .sheet .till-add-tab-list>button.chosen,.register-shell .sheet .till-add-tab-list>button.chosen :is(span,b){background:#375d77;color:#fff!important}
.register-shell .sheet .till-order-options :is(.panel,.check){background:#1d2c42!important;color:#f1f5f9!important;border-color:#707981}
.register-shell .sheet .till-order-options .check:has(input:checked){background:#375d77!important;border-color:#93c5fd}
.register-shell .sheet .till-order-options-footer{background:#303439;border-color:#707981;bottom:-24px}
.register-shell .sheet .till-more-menu :is(button,.download-link){background:#41474e;color:#f1f5f9}
/* Payment calculator and receipt retain their existing commit/uncertain-result behavior. */
.register-shell .sheet:has(.payment-reference-layout){width:min(1120px,96vw)!important;min-width:900px;padding:20px}
.register-shell .payment-reference-layout{grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr);gap:20px;background:#303439;color:#f1f5f9}
.register-shell .payment-reference-main{background:#303439;border:0;min-width:0}
.register-shell .payment-heading strong{font-size:32px;color:#f1f5f9;font-weight:600}
.register-shell .payment-heading h2{font-size:21px}
.register-shell .payment-keypad{gap:10px}
.register-shell .payment-methods{gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}
.register-shell .payment-methods button{min-height:52px!important;background:#41474e;color:#f1f5f9;font-size:14px}
.register-shell .payment-methods button.chosen{background:#375d77;color:#fff;border-color:#93c5fd}
.register-shell :is(.number-keys,.keypad-actions,.cash-keys){gap:8px}
.register-shell :is(.number-keys,.keypad-actions,.cash-keys) button{min-height:52px!important;background:#41474e;color:#f1f5f9;border:1px solid #707981;border-radius:5px!important;font-size:20px}
.register-shell .cash-keys button{font-size:16px;color:#dbeafe}
.register-shell .payment-reference-bill{background:#292d32;border:1px solid #626a73;border-radius:6px;padding:16px;color:#f1f5f9}
.register-shell .payment-reference-bill-heading{border-bottom:1px solid #50565d;padding-bottom:16px}
.register-shell .payment-reference-bill-heading>strong{font-size:32px;color:#f8fafc}
.register-shell .payment-reference-items{border-color:#50565d}
.register-shell .payment-reference-line{border-color:#50565d;padding:12px 0;color:#f1f5f9}
.register-shell .payment-reference-line :is(small,b){color:#cbd5e1!important}
.register-shell :is(.payment-balance,.payment-reference-finish,.payment-reference-adjustments,.payment-totals){background:transparent;color:#f1f5f9;border-color:#50565d}
.register-shell .payment-balance strong{color:#f8fafc}
.register-shell .payment-part,.register-shell .payment-part.focused{background:#1d2c42;border-color:#707981;color:#e2e8f0}
/* Preparation cards and bookings share the same status and note vocabulary. */
.register-shell .ticket-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px}
.register-shell .kds-ticket{position:relative;background:#303439;border:1px solid #656d75;border-radius:6px;overflow:hidden;color:#f1f5f9}
.register-shell .kds-ticket>header{background:#3b4148!important;color:#f1f5f9;border-bottom:1px solid #656d75;padding:16px 98px 16px 16px}
.register-shell .kds-ticket>header strong{font-size:18px;color:#f8fafc}
.register-shell .kds-ticket>header b{position:static;display:inline-block;margin-top:8px;background:#3b2f1d;color:#fde68a;padding:4px 9px;border-radius:5px;font-size:13px}
.register-shell .kds-ticket-age{position:absolute;right:12px;top:16px;z-index:1;padding:5px 8px;border:1px solid #6a5732;border-radius:5px;background:#332b1e;color:#fde68a;font-size:12px;font-weight:600}
.register-shell .ticket-items button{background:#303439;color:#f1f5f9;border:0;border-bottom:1px solid #50565d;border-radius:0!important;padding:14px 16px;text-align:left;font-size:15px}
.register-shell .ticket-items button.away{background:#203b4c;color:#e0f2fe}
.register-shell .ticket-items :is(.ticket-round-note,.ticket-order-mode){display:block;background:#3c2332;color:#ffe4e6!important;border:1px solid #85536c;border-radius:5px;padding:8px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.5;letter-spacing:.02em;margin:12px}
.register-shell .kds-ticket>footer{background:#303439;padding:12px;display:grid;gap:8px}
.register-shell .ticket-items small{color:#cbd5e1!important}
.register-shell .till-booking-row{background:#343a41;color:#f1f5f9;border-color:#50565d;border-radius:0!important;font-size:15px}
.register-shell .till-booking-row.chosen{background:#375d77;color:#fff;border-left-color:#93c5fd}
.register-shell .till-booking-row :is(small,strong),.register-shell .till-booking-detail :is(small,p,dt,dd){color:#cbd5e1!important}
.register-shell .booking-state{display:inline-block;background:#375d77;color:#e0f2fe;padding:4px 9px;border-radius:5px;font-size:13px}
.register-shell .summary-tab{background:#363b41;color:#f1f5f9;border:1px solid #656d75;border-radius:5px}
.register-shell .summary-tab :is(strong,b,small),.register-shell .detail-items :is(strong,b,small){color:#e2e8f0!important}
.register-shell .summary-tab.chosen{background:#375d77;border-color:#93c5fd}
.register-shell .summary-toolbar,.register-shell .summary-actions{gap:8px}
.register-shell .summary-actions button{min-height:52px!important}
@media(min-width:1600px){.register-shell .till-register-view{gap:24px;padding:24px 24px 0}.register-shell .bottom-dock-nav{margin:0 -24px}.register-shell .classic-order{padding:24px}.register-shell .product-order-key{font-size:18px}.register-shell .till-category-navigation :is(.classic-groups,.classic-subgroups) button{font-size:17px}}
@media(prefers-reduced-motion:reduce){.register-shell :is(button,a[href]){transition:none!important}.register-shell button:active:not(:disabled){transform:none}}
.register-shell button,.register-shell a[href]{font-weight:500!important}
.register-shell :is(.sheet,.content) button.primary,.register-shell .classic-controls>.classic-two:last-child button{font-weight:600!important}

.register-shell .till-category-navigation .classic-subgroups:not(:has(>button:nth-child(5))){grid-template-rows:minmax(56px,auto)}
.register-shell .product-order-key>span{display:block}
.register-shell dialog{background:#303439;color:#f1f5f9;border:1px solid #707981;border-radius:6px}
.register-shell dialog::backdrop{background:#26292dbb;backdrop-filter:blur(4px)}
.register-shell dialog :is(p,small,label){color:#cbd5e1}
.register-shell dialog button{background:#41474e;color:#f1f5f9;border-color:#707981}
.register-shell .sheet .payment-reference-layout :is(.payment-methods,.number-keys,.keypad-actions,.cash-keys,.equal-split,.payment-tools) button{background:#41474e!important;color:#f1f5f9!important;border:1px solid #707981!important}
.register-shell .sheet .payment-reference-layout .payment-methods button.chosen{background:#375d77!important;border-color:#93c5fd!important}
.register-shell .sheet .payment-reference-layout .number-keys button{font-size:20px!important}
.register-shell .sheet .payment-reference-layout .cash-keys button{font-size:16px!important;color:#dbeafe!important}
.register-shell .payment-reference-main>.payment-reference-finish,.register-shell .payment-reference-main>form{background:#303439;border-color:#50565d}
.register-shell .classic-receipt-context{margin:6px 0 0;line-height:1.4}
.register-shell .classic-receipt-context>strong{display:block;font-size:17px;color:#f8fafc}
.register-shell .classic-receipt-context small{font-size:13px;color:#cbd5e1}
.register-shell .classic-controls .pay-preview{margin-left:8px;font-variant-numeric:tabular-nums}
/* Do not enlarge the visual duration of a short reservation to meet its hit-target size. */
.register-shell .till-bookings .till-booking-block{min-width:0!important;min-height:48px!important;height:48px}
.register-shell .till-bookings div.till-booking-block{background:#375d77;color:#e0f2fe;overflow:hidden;border:1px solid #6d91b8}
.register-shell dialog.summary-close-dialog{background:#303439!important;color:#f1f5f9!important;border-color:#707981}
.register-shell dialog.summary-close-dialog :is(p,small){color:#cbd5e1!important}
.register-shell dialog.summary-close-dialog button{background:#41474e!important;color:#f1f5f9!important;border-color:#707981}
.register-shell a[href]{display:inline-flex;align-items:center;color:#bfdbfe;max-width:100%;overflow-wrap:anywhere}
.register-shell .content a[href],.register-shell .sheet a[href]:not(.primary){color:#bfdbfe!important}
/* Authoritative defaults prevent old per-screen colours from leaking into operational menus. */
.register-shell button:where(:not(.primary):not(.classic-green)){background-color:#41474e!important;color:#f1f5f9!important}
.register-shell button:is(.primary,.classic-green){background-color:#18783b!important;color:#fff!important}
.register-shell button:is(.chosen,.selected,[aria-selected=true],[aria-pressed=true],[aria-current=page]){background-color:#375d77!important;color:#fff!important;border-color:#93c5fd!important}
.register-shell .classic-controls>.classic-two:last-child>button:first-child{background-color:#22653a!important}
.register-shell .bottom-dock-nav button:not(.chosen){background:transparent!important;color:#cbd5e1!important}
.register-shell button.danger{background:#7f1d1d!important;color:#fee2e2!important;border-color:#fca5a5}
.register-shell .plan-toolbar :is(button,a[href]){background:#41474e!important;color:#f1f5f9!important;border-color:#707981}
.register-shell .misc-sale-entry button.classic-green{background:#18783b!important;color:#fff!important}
.register-shell button.plan-table:is(.occupied,.selected){border-color:#93c5fd!important;box-shadow:inset 0 0 0 2px #93c5fd}
.register-shell button.plan-table.booking-current{border-color:#fbbf24!important;box-shadow:inset 0 0 0 2px #fbbf24}
.register-shell button.plan-table.booking-soon{border-color:#f0b582!important;box-shadow:inset 0 0 0 2px #f0b582}
.register-shell button.plan-table.booking-later{border-color:#a5b4fc!important}

/* Shared informational surfaces also occur outside the main till sheet. */
.register-shell a.download-link{background:#41474e!important;color:#f1f5f9!important;border:1px solid #707981;padding:12px 16px}
.register-shell .approval-action{background:#1e3046;color:#f1f5f9;border:1px solid #656d75}
.register-shell .dialog-note{background:#21374c!important;color:#e2e8f0!important;border:1px solid #707981;font-size:14px}

/* Till entry screens share the staff type and touch contract; office sign-in is separate. */
.till-login{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",sans-serif;background:#26292d;color:#f1f5f9;font-variant-numeric:tabular-nums}
.till-login .login-form{background:#303439;color:#f1f5f9}
.till-login .login-art{background:#343f4a;color:#f1f5f9}
.till-login :is(h1,h2,p,small,.field>span){color:#e2e8f0}
.till-login :is(button,a[href],input){font-family:inherit;min-height:48px!important;min-width:48px!important;touch-action:manipulation;border-radius:5px;font-size:16px}
.till-login :is(button,input){background:#41474e;color:#f1f5f9;border:1px solid #707981}
.till-login button.primary{background:#18783b;color:#fff}
.till-login a[href]{display:inline-flex;align-items:center;color:#bfdbfe}
.till-login .segmented button.selected{background:#375d77;color:#fff}
.till-login .error{color:#fecaca}

.login.till-login .login-form input{min-height:48px!important;font-size:16px!important}

@media print{.register-shell .sheet,.register-shell .sheet .receipt{background:#fff!important;color:#000!important}.register-shell .sheet .receipt :is(h2,h3,h4,p,small,dt,dd,span,strong,b,td,th){color:#000!important;background:transparent!important}}
/* On compact landscape screens show the complete keypad before secondary tools. */
@media(max-height:900px){
.register-shell .payment-entry-scroll{display:flex;flex-direction:column}
.register-shell .payment-entry-scroll>*{flex-shrink:0}
.register-shell .payment-entry-scroll>.payment-heading{order:0}
.register-shell .payment-entry-scroll>.payment-methods{order:1}
.register-shell .payment-entry-scroll>.payment-keypad{order:2}
.register-shell .payment-entry-scroll>.payment-entry-hint{order:3}
.register-shell .payment-entry-scroll>.payment-tools{order:4}
.register-shell .payment-entry-scroll>.equal-split{order:5}
.register-shell .payment-entry-scroll>.payment-reference-tenders{order:6}
.register-shell .payment-reference-main .payment-keypad :is(.number-keys,.cash-keys,.keypad-actions) button,.register-shell .payment-methods button{min-height:48px!important;height:48px;padding:8px}
}
.register-shell .sheet .segmented{background:#363b41;color:#e2e8f0;border-color:#707981}
.register-shell .sheet .segmented>span{color:#e2e8f0;font-size:14px;padding:8px}
.till-release-notice{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 16px;background:#183c55;color:#f1f5f9;border-bottom:1px solid #93c5fd}
.till-release-notice button{flex-shrink:0}

.register-shell .segmented{background:#363b41;color:#e2e8f0;border-color:#707981}
.register-shell .floor{background:#303439;border-color:#707981}
/* The lazy offline workspace is a complete staff screen, not a back-office page. */
.offline-workspace{min-height:100dvh;padding:24px;background:#26292d;color:#e2e8f0;font-size:15px;line-height:1.5}
.offline-workspace :is(h1,h2,h3,h4,strong){color:#f1f5f9;font-family:var(--till-font-family);letter-spacing:0}
.offline-workspace :is(p,small,label){color:#cbd5e1;font-size:14px}
.offline-workspace .panel{background:#303439;border:1px solid #50565d;border-radius:6px;padding:24px;margin:16px 0;min-width:0}
.offline-workspace button{background:#41474e;color:#f1f5f9;border:1px solid #707981;border-radius:5px;padding:12px 16px;font-size:14px;font-weight:500}
.offline-workspace button.primary{background:#18783b;color:#fff;border-color:#48a667}
.offline-workspace button:active:not(:disabled){filter:brightness(.9)}
.offline-workspace button:disabled{opacity:.55}
.offline-workspace :is(input:not([type=checkbox]),select,textarea){background:#292d32;color:#f1f5f9;border:1px solid #707981;border-radius:5px;padding:10px;max-width:100%}
.offline-workspace .panel>label{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px;margin:8px 16px 12px 0;min-height:48px}
.offline-workspace textarea{min-width:280px;min-height:80px;vertical-align:middle}
.offline-workspace .product-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px;margin:12px 0}
.offline-workspace .product-grid button{min-height:80px;text-align:left}
.offline-workspace .product-grid small{display:block;margin-top:6px;color:#dbeafe}
.offline-workspace [role=alert]{color:#fed7aa}
.offline-workspace :is(button,input,textarea,select):focus-visible{outline:3px solid #93c5fd;outline-offset:2px}
.register-shell .sheet .development{display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:#363b41;color:#e2e8f0;font-size:14px;border-color:#707981;padding:12px}
.register-shell .sheet .development>span{font-size:11px;background:#41474e;color:#cbd5e1}
.till-loading,.offline-opening{min-height:100dvh;margin:0;padding:24px;background:#26292d;color:#f1f5f9;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}

.offline-workspace{width:100%;max-width:none;box-sizing:border-box}
body:has(.offline-workspace){background:#26292d}

.register-shell .floor-wrapper{background:#292d32;border-color:#707981}

/* Classic register vocabulary: compact colour-coded keys and a flat receipt pad. */
.register-shell .till-category-navigation :is(.classic-groups,.classic-subgroups) button,.register-shell .till-note-key{border:1px solid #6b87a0;background:#17638c!important;color:#fff!important;border-radius:5px!important;height:60px;min-height:60px;font-size:15px;font-weight:600!important}
.register-shell .till-main-category-row .classic-groups button,.register-shell .till-main-category-row>.till-note-key{background:#65478b!important;border-color:#8c72ae}
.register-shell .till-category-navigation button.chosen{background:#e9b84b!important;color:#23272b!important;border-color:#ffda7d!important;box-shadow:inset 0 0 0 1px #ffda7d}
.register-shell .till-paging .product-order-key{background:#f1efdf!important;color:#262a2e!important;border:1px solid #b6b6a9;font-size:15px;line-height:1.25;font-weight:500!important;padding:10px 52px 10px 12px!important;display:flex;flex-direction:column;justify-content:center}
.register-shell .product-order-key>small{background:transparent;border:0;padding:0;margin-top:4px;color:#535952!important;font-size:13px;border-radius:0}
.register-shell .classic-product-grid .product-info-key{background:#f1efdf!important;color:#515752!important;border:0;border-radius:0!important}
.register-shell .classic-order{background:transparent;border:0;border-left:1px solid #50565d;border-radius:0;padding:8px 8px 8px 20px}
.register-shell .classic-order-total{font-size:36px;font-weight:400;margin:8px 0 16px}
.register-shell .classic-controls>.classic-two:last-child{grid-template-columns:1fr 1fr}
.register-shell .classic-controls button:not(.classic-green){background:#e1e3e5!important;color:#30353a!important;border-color:#b7bdc2}
.register-shell .classic-controls>.classic-two:last-child button{min-height:60px!important}
.register-shell .till-page-controls{justify-content:space-between}
.register-shell .bottom-dock-nav button.chosen{background:#354b5c!important;border-color:#7d9bae!important;color:#fff!important}
.register-shell .sheet>header h2{font-size:21px;font-weight:600;letter-spacing:0}
.register-shell .till-more-menu{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.register-shell .till-more-section{min-width:0}
.register-shell .till-more-section h3{font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#cbd5e1;margin:0 0 10px}
.register-shell .till-more-section .action-grid{grid-template-columns:1fr 1fr;gap:8px}
.register-shell .till-more-section .till-service-actions{margin:8px 0 0}
.register-shell .till-more-section :is(button,a){width:100%;min-height:52px!important;text-align:center;justify-content:center}
.register-shell .payment-history-filters{display:grid;grid-template-columns:minmax(240px,1fr) 220px;gap:16px;margin:16px 0}
.register-shell .payment-history-filters label{display:flex;flex-direction:column;gap:6px;color:#cbd5e1}
.register-shell .payment-history-filters input{width:100%}
.register-shell .payment-history-count{color:#cbd5e1;font-size:14px}
.offline-workspace .product-grid button{background:#f1efdf;color:#262a2e;border-color:#b6b6a9;border-radius:5px}
.offline-workspace .product-grid small{color:#535952}
@media(max-width:1100px){.register-shell .till-register-view{gap:12px;padding:12px 12px 0}.register-shell .bottom-dock-nav{margin:0 -12px}.register-shell .classic-order{padding-left:14px}.register-shell .till-more-menu{gap:16px}}

.register-shell .payment-history-count{display:flex;gap:16px;align-items:center;min-height:48px}
.register-shell .payment-history-count button{margin-left:8px}

.register-shell .till-back-menu{margin:0 0 16px}

.register-shell .top>.till-view-title>small{display:block!important}

.register-shell th{color:#cbd5e1!important;font-size:13px;font-weight:500}

.register-shell .product-order-key>span{overflow-wrap:anywhere}

/* Secondary register screens use the same neutral surfaces as the catalogue. */
.register-shell .sheet .till-information-layout{background:#303439;color:#f1f5f9}
.register-shell .till-information-summary{border-color:#50565d}
.register-shell .till-information-summary .product-information-allergens{background:#292d32;border:1px solid #626a73;border-radius:5px}
.register-shell .till-information-content [role=tabpanel]{background:#292d32;padding:16px;border:1px solid #50565d;border-radius:0 0 5px 5px}
.register-shell .till-information-tabs{margin-bottom:0;border-color:#50565d}
.register-shell .till-product-search{margin:0 0 4px;padding:12px;background:#303439;border:1px solid #626a73;border-radius:5px}
.register-shell .till-product-search>label{display:block;font-size:14px;color:#e2e8f0;margin-bottom:8px}
.register-shell .till-search-controls{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px}
.register-shell .till-search-controls input{min-width:0;width:100%;margin:0}
.register-shell .till-search-controls button{padding:8px 12px}
.register-shell #till-search-toggle{display:flex;align-items:center;justify-content:center}

.register-shell .venue-message{display:grid;grid-template-columns:110px 100px minmax(0,1fr) 200px;gap:12px;align-items:start;padding:16px 14px;margin-bottom:1px;border-bottom:1px solid #626a73;background:#f1efdf;color:#30353a}
.register-shell .venue-message.message-acknowledged{background:#292d32;color:#cbd5e1}
.register-shell .till-message-inbox .venue-message :is(p,small,strong){color:inherit!important}
.register-shell .venue-message :is(p,strong,small){overflow-wrap:anywhere}
@media(max-width:1100px){.register-shell .venue-message{grid-template-columns:88px 70px minmax(0,1fr) 180px;gap:10px;padding:14px 12px}}

.register-shell .classic-summary{background:#26292d}
.register-shell .classic-summary .summary-tabs{background:#303439;border-color:#50565d}
.register-shell .classic-summary .summary-detail{background:#303439;border-color:#50565d}
.register-shell .classic-summary .summary-toolbar{background:transparent}

.register-shell .till-add-tab-destinations{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin:12px 0}
.register-shell .till-add-tab-destinations h3{font-size:14px;margin:0 0 8px;color:#e2e8f0}
.register-shell .till-add-tab-destinations small{display:block;margin-top:4px;font-size:12px;color:inherit!important}
.register-shell .till-add-tab-list>button{border:1px solid #626a73;margin-bottom:5px;border-radius:5px!important}
.register-shell .till-add-tab-confirm{background:#303439;border-color:#707981;border-radius:5px}
.register-shell .sheet .till-add-tab-list>button.chosen :is(span,b){color:#fff!important}
.register-shell .till-add-tab-chooser .till-add-tab-destinations section{min-width:0}
.register-shell .till-destination-form .hint{line-height:1.5}

.register-shell .till-dialog-message{display:flex;align-items:center;justify-content:space-between;gap:16px}
.register-shell .till-dialog-message button{flex-shrink:0}

/* Course review uses the same neutral service surfaces as the register. */
.till-course-call .course-call-review{padding:12px;border:1px solid var(--till-line,#59616a);border-radius:4px;background:#393e44;color:#f5f6f7;font-weight:600}

.course-call-tickets{margin-top:8px}.course-call-tickets>summary{min-height:48px;padding:12px;cursor:pointer;border:1px solid #59616a;border-radius:4px;background:#41464c;color:#f5f6f7}.course-call-tickets section{padding:12px;margin-top:8px;border:1px solid #59616a;border-radius:4px}.course-call-tickets section p{margin:8px 0}

.till-receipt-preview .receipt-context{font-size:.85rem;line-height:1.6;overflow-wrap:anywhere}.till-receipt-preview .receipt-line{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #59616a}.till-receipt-preview .receipt-line>span{flex:1;min-width:0}.till-receipt-preview .receipt-line small{display:block;white-space:pre-wrap}.till-receipt-preview .receipt-totals{padding:12px 0}.till-receipt-preview .receipt-totals>div{display:flex;justify-content:space-between;gap:16px;padding:6px 0}.till-receipt-preview .receipt-total{border-top:1px solid #59616a}.till-receipt-preview .receipt-payments>summary{min-height:48px;padding:12px;cursor:pointer}.till-receipt-preview .receipt-saved-payment{padding:10px 0}.till-receipt-preview .receipt-saved-payment small{display:block}.payment-history-actions{display:flex;flex-wrap:wrap;gap:8px;min-width:160px}

.register-shell .till-receipt-preview{max-width:100%;font-family:inherit;font-size:14px}.register-shell .till-receipt-preview>.receipt-lines,.register-shell .till-receipt-preview>.receipt-totals{display:block}.register-shell .till-receipt-preview .receipt-line small{text-align:left}@media print{.register-shell .till-receipt-preview{max-width:80mm;font-family:monospace;font-size:11px}.receipt-payments{display:none}}

.till-clock-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.till-clock-summary>div{padding:16px;background:#393e44;border:1px solid #59616a;border-radius:4px}.till-clock-summary dt{color:#e7e9ec;margin-bottom:8px}.till-clock-summary dd{margin:0;color:#fff;font-weight:600}.shift-note-text{white-space:pre-wrap;overflow-wrap:anywhere;padding:16px;background:#393e44;border:1px solid #59616a;border-radius:4px;line-height:1.6;margin-bottom:16px}.shift-note-read{display:flex;align-items:center;gap:12px;min-height:48px;padding:8px 0;margin-bottom:12px}.shift-note-read input{width:24px;height:24px;flex:none}.shift-note-read span{flex:1}

.print-job-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,.6fr);gap:12px}.till-print-jobs .bo-actions,.till-clock-view .actions{display:flex;gap:12px;flex-wrap:wrap}.print-destination-review{padding:12px;background:#393e44;border:1px solid #59616a;border-radius:4px}.till-print-jobs [role=status]>button{margin-left:12px}

/* Keep preparation instructions with the item on screen and on paper. */
.receipt .ticket-item-note,.ticket-item-note{display:block;white-space:pre-wrap;overflow-wrap:anywhere;text-align:left;line-height:1.4;margin-top:3px;color:inherit}
.historical-preview .grow{min-width:0}.historical-preview .ticket-item-name,.historical-preview .ticket-item-meta{display:block;overflow-wrap:anywhere}
@media print{.receipt .receipt-line,.historical-preview .list-row{break-inside:avoid;page-break-inside:avoid;align-items:flex-start}.receipt .ticket-item-note{color:#000!important;font-size:inherit}.receipt .receipt-line>span{overflow-wrap:anywhere}.receipt .ticket-item-meta{font-size:.85em}}

.till-receipt-preview>.receipt-lines,.till-receipt-preview>.receipt-totals{display:block}

/* Shared touch controls for the full till, Mini, offline screens and overlays. */
:is(.register-shell,.mini-app,.offline-workspace,.till-dialog-sheet,.manager-approval-veil) :is(button,summary,[role=button],a.download-link){min-width:48px!important;min-height:48px!important;touch-action:manipulation;-webkit-tap-highlight-color:#ffc15b44;font-family:inherit;line-height:1.3}
:is(.register-shell,.mini-app,.offline-workspace,.till-dialog-sheet) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){min-height:48px!important;font-size:16px!important;max-width:100%;scroll-margin-block:88px}
:is(.register-shell,.mini-app,.till-dialog-sheet) :is(label.check,label.checkbox,label:has(>input[type=checkbox]),label:has(>input[type=radio])){min-height:48px;cursor:pointer;touch-action:manipulation}
:is(.register-shell,.mini-app,.till-dialog-sheet) input:is([type=checkbox],[type=radio]){width:24px;height:24px;min-width:24px;min-height:24px;flex-shrink:0}
:is(.register-shell,.mini-app,.till-dialog-sheet) summary{display:flex;align-items:center;gap:10px;cursor:pointer;padding:12px;border:1px solid #707981;border-radius:7px;background:#41474e;color:#f1f5f9;list-style:none;font-weight:600}
:is(.register-shell,.mini-app,.till-dialog-sheet) summary::before{content:'+';font-size:22px;line-height:1;flex-shrink:0}
:is(.register-shell,.mini-app,.till-dialog-sheet) details[open]>summary::before{content:'\2212'}
:is(.mini-app,.till-dialog-sheet) :is(button,summary){border-radius:7px;font-size:15px;overflow-wrap:anywhere}
.mini-app .sheet{scroll-padding-block:80px 120px;max-width:min(650px,100%);padding-inline:16px}
.mini-app .sheet>header{top:0;gap:12px;margin-bottom:16px;min-height:64px}.mini-app .sheet>header h2{font-size:19px;font-weight:600}.mini-app .sheet>header button{background:#41474e;border:1px solid #707981;font-size:24px}
.mini-app .sheet :is(.actions,.tool-grid,.segmented){gap:10px}.mini-app .sheet label{margin:10px 0}.mini-app .sheet :is(.field,.form-grid,.bo-row,fieldset){min-width:0}.mini-app .sheet .check input{margin:0;display:inline-block}
:is(.mini-app,.register-shell) .sheet button:not(.primary):not(.green):not(.orange):not(.danger):not(.selected):not(.chosen):not([aria-pressed=true]){background:#0d70b5;color:#fff;border:1px solid #3181ad}
:is(.mini-app,.register-shell) .sheet button:is(.selected,.chosen,[aria-pressed=true]){background:#ffc15b;color:#171717;border:1px solid #ffcf80}
:is(.mini-app,.register-shell) .sheet button:is(.primary,.green){background:#29b658;color:#082611;border:1px solid #62cb83;font-weight:600}
:is(.mini-app,.register-shell) .sheet button:disabled{opacity:.45;cursor:default}
.till-order-options{font-family:Arial,Helvetica,sans-serif}.till-order-options>h3{font-size:20px;margin:8px 0 16px}.till-order-options-body{display:grid;gap:12px}.till-order-options fieldset{min-width:0;margin:0;padding:12px;border:1px solid #707981;border-radius:7px}.till-order-options legend{padding:0 6px;font-size:15px;font-weight:600}.till-order-options .till-option-progress{margin:0 0 10px;font-size:13px;color:#d3dde4}.till-order-options .till-option-choice{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start;margin:8px 0}.till-order-options .till-option-row{grid-row:1;grid-column:1;padding:0;min-width:0}.till-order-options .till-option-information{grid-row:1;grid-column:2}.till-order-options .till-option-information>button{font-size:12px;padding:8px;max-width:104px}.till-order-options .till-option-choice>.panel{grid-column:1/-1;margin:0;padding:12px}.till-order-options .till-option-choice>.panel .section-head{margin:0 0 8px}.till-order-options .till-option-choice>.panel h4{margin:0;font-size:15px}.till-order-options .till-option-choice>.panel .field{margin:0}
:is(.register-shell .sheet,.mini-app .sheet,.offline-workspace) .till-order-options label.check{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-height:60px;margin:0;padding:12px 14px;border:1px solid #3181ad!important;border-radius:7px;background:#0d70b5!important;color:#fff!important;line-height:1.4;font-size:16px;font-weight:600;text-align:left}
:is(.register-shell .sheet,.mini-app .sheet,.offline-workspace) .till-order-options label.check:has(input:checked){background:#ffc15b!important;color:#171717!important;border-color:#ffcf80!important}
.till-order-options label.check:has(input:focus-visible){outline:3px solid #fff;outline-offset:2px}.till-order-options label.check:has(input:disabled){opacity:.5}.till-order-options .check input{accent-color:#133e60;padding:0;margin:0;display:inline-block}.till-order-options .till-option-stepper{display:flex;align-items:center;gap:10px}.till-order-options .till-option-stepper>button{width:56px;min-height:56px!important;font-size:24px}.till-order-options .till-option-stepper .field{flex:1;margin:0!important}.till-order-options .till-option-stepper input{text-align:center}.till-order-options .field>span{display:block;margin-bottom:6px;font-size:14px}.till-order-options-footer{position:sticky;bottom:0!important;z-index:4;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;background:#303030!important;padding:14px 0;border-top:1px solid #707981;margin-top:16px}.till-order-options-footer>strong{margin:0;font-size:24px;font-variant-numeric:tabular-nums}.till-order-options-footer>button{min-height:56px!important;width:100%;margin:0}.till-order-options-footer>[role=alert]{grid-column:1/-1;grid-row:1;margin:0;font-size:13px}.till-order-options>.hint{font-size:12px;line-height:1.5;margin:10px 0}
.payment-more-options{margin:8px 0 12px}.payment-more-options[open]>summary{margin-bottom:12px}.payment-quick-methods{display:grid;grid-template-columns:1fr 1fr;gap:10px}.payment-quick-methods>button{min-height:60px!important;font-weight:600}.mini-payment-screen details{margin:10px 0}.mini-payment-screen .total{padding:12px 0}.mini-payment-screen .total strong{font-size:28px}.mini-payment-screen .tender-part{padding:12px;margin:12px 0}.mini-payment-screen .payment-readout{position:static;padding:12px;min-height:64px;border-radius:7px}.mini-payment-screen .payment-keypad{gap:10px;margin:12px 0}.mini-payment-screen .payment-keypad button{min-height:56px!important}.mini-payment-finish{position:sticky;bottom:0;background:#303030;padding:12px 0;z-index:4;border-top:1px solid #707981}.mini-payment-finish>button{width:100%;min-height:56px!important}.mini-payment-screen .share-picker{flex-wrap:wrap;gap:10px}.mini-payment-screen .share-picker>*{flex:1 1 130px}
@media(max-width:420px){.till-order-options-footer{gap:10px}.till-order-options-footer>strong{font-size:21px}.till-order-options .till-option-information>button{max-width:90px}.mini-app .sheet{padding-inline:12px}}
@media(pointer:coarse){:is(.register-shell,.mini-app,.till-dialog-sheet) :is(button,summary,label.check):active{filter:brightness(1.12)}}
@media print{.receipt button,.receipt summary{display:none!important}}


/* Put the daily payment actions ahead of optional tools. */
.register-shell .payment-entry-scroll>.payment-heading{order:0}
.register-shell .payment-entry-scroll>.payment-methods{order:1}
.register-shell .payment-entry-scroll>.payment-amount-tools{order:2;margin:0 0 8px}
.register-shell .payment-entry-scroll>.payment-entry-hint{order:3}
.register-shell .payment-entry-scroll>.payment-reference-tenders{order:4}
.register-shell .payment-entry-scroll>.payment-more-options{order:5}
