.cloud-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 16px;border:1px solid var(--border,#34383b);background:#141719;color:#c7c9c8;border-radius:10px;margin-bottom:20px;font-size:12px}.cloud-bar strong{color:#e8c678}.cloud-bar .cloud-save-state{margin-left:auto}.cloud-bar select{max-width:230px;min-height:36px;background:#202426;border:1px solid #54595a;color:#eee;border-radius:6px;padding:6px 10px}.cloud-bar .inline-link{font-size:12px}.cloud-connecting{padding:12px 0;color:#aaa;font-size:12px}
.setup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.setup-step{padding:25px;position:relative}.setup-step .step-index{display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid #685b3b;border-radius:50%;color:#e8c678;margin-bottom:18px}.setup-step.done .step-index{background:#283b30;color:#bce3c6;border-color:#476750}.setup-step h2{font-size:19px;margin-bottom:10px}.setup-step p{font-size:13px;color:#afb4b1;line-height:1.7;margin-bottom:18px}.setup-step .btn{margin:5px 7px 0 0}.setup-progress{padding:22px;margin-bottom:20px}.setup-progress>div{display:flex;justify-content:space-between;gap:15px;margin-bottom:12px}.setup-progress .progress-track{background:#34383b}.setup-progress .progress-track span{background:#e3bf70;display:block;height:6px;transition:width .2s}
.access-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.access-card{padding:26px;display:flex;flex-direction:column;min-width:0}.access-card.selected{border-color:#cdaa60}.access-card h2{font-size:22px;margin:15px 0}.access-card .access-price{font-family:var(--heading);font-size:34px;color:#e3bf70;margin-bottom:19px}.access-card .access-price small{font-family:var(--body);font-size:12px;color:#a2aaa6;margin-left:5px}.access-card ul{list-style:none;display:grid;gap:12px;margin:0 0 25px;padding:0;flex:1;font-size:13px;color:#c5cac7}.access-card .btn{width:100%}.access-note{color:#a6aeaa;font-size:12px;line-height:1.8;margin:17px 0 25px}.access-summary{padding:24px;margin-bottom:20px}.access-summary h2{font-size:20px;margin-bottom:10px}.access-summary p{color:#b6bfba;font-size:13px;line-height:1.8}.admin-plan-row{display:grid;grid-template-columns:1fr 140px 95px auto;gap:12px;align-items:end;margin-top:17px}.admin-plan-row label{font-size:12px}.admin-plan-row input,.admin-plan-row select{width:100%;padding:10px;margin-top:7px;background:#202426;border:1px solid #585f5b;border-radius:7px;color:#eee}.admin-plan-row strong{display:block}.admin-plan-row small{color:#adb5b1}
.retail-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:20px;align-items:start}.retail-layout .surface-card,.retail-editor,.recovery-panel,.team-panel{padding:24px}.retail-editor{margin-bottom:20px}.retail-cart{display:grid;gap:10px;margin:19px 0}.retail-cart-row{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #343a36;font-size:13px}.retail-cart-row strong{display:block}.retail-cart-row small{color:#a5afaa}.retail-cart-total{display:flex;justify-content:space-between;margin:18px 0;font-size:20px}.retail-cart-total strong{color:#e3bf70}.retail-stock.low{color:#e1ad69}.retail-archive{opacity:.65}.retail-header-actions{display:flex;gap:8px;flex-wrap:wrap}.retail-subheading{margin:30px 0 15px;font-size:21px}.retail-receipt{max-width:540px;margin:24px auto;padding:30px;background:#181c1a;border:1px solid #575f59;border-radius:12px}.retail-receipt h2{margin:10px 0}.retail-receipt dl{display:grid;grid-template-columns:1fr auto;gap:10px;font-size:13px;margin-top:20px}.retail-receipt dt{color:#b7bfbb}.retail-receipt dd{margin:0;text-align:right}.retail-receipt .receipt-total{font-size:21px;color:#e3bf70}.retail-receipt table{width:100%;margin-top:18px;font-size:12px}.retail-receipt th,.retail-receipt td{text-align:left;padding:11px 6px;border-bottom:1px solid #454b46}.retail-receipt th:last-child,.retail-receipt td:last-child{text-align:right}.retail-receipt p{font-size:12px;color:#adb8b0;line-height:1.7}.retail-receipt .receipt-actions{display:flex;gap:12px;margin-top:20px}
.history-list{display:grid;gap:0}.history-row{padding:20px 0;border-bottom:1px solid #373d38;display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.history-row strong{display:block;font-size:14px}.history-row small{display:block;color:#aeb9b2;font-size:12px;margin-top:7px;line-height:1.7}.history-row .btn{flex:none}.recovery-preview{padding:22px;border:1px solid #8a723d;background:#231f16;border-radius:9px;margin:20px 0}.recovery-preview h3{font-size:18px;margin-bottom:10px}.recovery-preview p{font-size:13px;color:#d0c6af;line-height:1.8}.recovery-preview ul{font-size:13px;line-height:1.9;margin:15px 0}.recovery-preview .btn{margin-right:10px}.history-empty{color:#b7c0ba;line-height:1.8;padding:20px 0}.invite-code{padding:18px;background:#24271d;border:1px solid #727c47;border-radius:8px;margin:18px 0;overflow-wrap:anywhere}.invite-code code{display:block;font-size:15px;margin:13px 0;color:#e8d18b}.invite-code p{font-size:12px;line-height:1.8;color:#c2c9aa}.team-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:17px 0;border-bottom:1px solid #333a35}.team-row strong{font-size:14px;display:block}.team-row small{font-size:12px;color:#abb7af;display:block;margin-top:6px}.team-row .team-actions{display:flex;gap:8px;flex-wrap:wrap}.team-row select{background:#202923;color:#ddd;border:1px solid #596b5c;border-radius:6px;padding:8px}.access-lock{padding:30px;border:1px solid #71613d;border-radius:12px;background:#1c1b17}.access-lock h2{font-size:23px;margin-bottom:14px}.access-lock p{font-size:14px;color:#b8b5a8;line-height:1.8;margin-bottom:20px}.setup-mini{padding:18px 20px;margin-bottom:20px;border:1px solid #7c6538;background:#201d16;border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:20px}.setup-mini strong{font-size:14px;display:block}.setup-mini small{font-size:12px;color:#c1b598;display:block;margin-top:7px}
@media(max-width:1000px){.access-grid{grid-template-columns:1fr}.retail-layout{grid-template-columns:1fr}.admin-plan-row{grid-template-columns:1fr 1fr}.admin-plan-row>div:first-child{grid-column:1/-1}.admin-plan-row button{grid-column:1/-1}.access-card ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.setup-grid{grid-template-columns:1fr}.setup-step,.retail-layout .surface-card,.retail-editor,.recovery-panel,.team-panel{padding:20px}.cloud-bar{gap:10px;padding:12px}.cloud-bar .cloud-save-state{margin-left:0}.cloud-bar select{width:100%;max-width:none}.history-row,.team-row,.setup-mini{flex-direction:column;align-items:stretch}.history-row .btn{align-self:flex-start}.retail-receipt{padding:22px}.retail-header-actions .btn{flex:1}.access-card ul{grid-template-columns:1fr}.history-row small{font-size:11px}.team-row .team-actions{width:100%}}
@media print{body.printing-receipt #app>:not(.app-shell){display:none!important}body.printing-receipt .app-shell,body.printing-receipt .main-column,body.printing-receipt .dashboard-content{display:block!important;background:white!important;padding:0!important;margin:0!important}body.printing-receipt .sidebar,body.printing-receipt .topbar,body.printing-receipt .dashboard-content>*:not(.retail-receipt){display:none!important}body.printing-receipt .retail-receipt{display:block!important;color:black;background:white;border:0;max-width:none;margin:0}body.printing-receipt .retail-receipt *{color:black!important}body.printing-receipt .receipt-actions{display:none!important}}

/* Compact role explanations and clear keyboard focus on operational controls. */
.staff-role-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px;padding-top:18px;border-top:1px solid var(--border,#343a36)}
.staff-role-guide strong{display:block;font-size:13px;color:var(--text,#e9eeeb)}
.staff-role-guide p{font-size:12px;line-height:1.7;color:var(--muted,#aeb9b2);margin:7px 0 0}
.setup-step,.retail-layout>.surface-card,.team-row>div,.history-row>div{min-width:0}
.setup-step .btn{white-space:normal;text-align:center}
.retail-cart-row>div{min-width:0}.retail-cart-row strong{overflow-wrap:anywhere}.retail-cart-row>div:last-child{text-align:right;flex-shrink:0}
.retail-layout .form-hint[role="status"]{min-height:20px}
@media(max-width:650px){.staff-role-guide{grid-template-columns:1fr;gap:12px}.retail-cart-row{flex-wrap:wrap}.retail-cart-row>div:last-child{margin-left:auto}.recovery-preview .btn{margin-bottom:8px}}
