:root{color:#242424;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f4f4f3;font-family:Inter,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html{background:#f4f4f3}body{color:#242424;background:#f4f4f3;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}#root{min-height:100vh}h1,h2,p{margin-top:0}.app-shell.app-shell--dashboard{color:#292929;background:#f4f4f3;min-height:100vh}.dashboard-topbar{z-index:20;background:#fff;border-bottom:1px solid #dededb;justify-content:space-between;align-items:center;gap:1.5rem;min-height:62px;padding:.65rem 1.5rem;display:flex;position:sticky;top:0}.dashboard-topbar-brand,.dashboard-topbar-meta,.dashboard-brand,.dashboard-user,.connection-status{align-items:center;display:inline-flex}.dashboard-topbar-brand{gap:1rem;min-width:0}.dashboard-brand{color:#292929;gap:.55rem;font-size:1.15rem;text-decoration:none}.dashboard-brand svg{stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:23px;height:23px}.dashboard-brand-divider{background:#d7d7d4;width:1px;height:28px}.dashboard-role-title,.dashboard-store-name,.dashboard-user{color:#777;font-size:.9rem}.dashboard-topbar-meta{gap:1.35rem}.connection-status{color:#424242;gap:.45rem;font-size:.85rem}.connection-status>span,.catalog-status>span{background:#238636;border-radius:50%;width:8px;height:8px}.connection-status.is-offline>span{background:#c62828}.dashboard-user{color:#292929;gap:.5rem}.dashboard-user-avatar{border:1px solid #d5d5d2;border-radius:50%;place-items:center;width:30px;height:30px;font-weight:700;display:grid}.dashboard-logout{color:#292929;cursor:pointer;min-height:38px;font:inherit;background:#fff;border:1px solid #d5d5d2;border-radius:5px;padding:.4rem .75rem}.dashboard-logout:hover,.dashboard-logout:focus-visible{background:#f0f0ee}.dashboard-logout:disabled{cursor:wait;opacity:.6}.role-dashboard{width:100%;max-width:1600px;margin:0 auto;padding:1.5rem}.register-dashboard{max-width:none;min-height:calc(100vh - 62px);padding:0}.register-workspace{grid-template-columns:minmax(0,1fr) minmax(310px,360px);min-height:calc(100vh - 62px);display:grid}.register-catalog{min-width:0;padding:1.5rem}.catalog-toolbar{align-items:center;gap:.75rem;display:flex}.catalog-search{background:#fff;border:1px solid #d5d5d2;border-radius:6px;flex:1;align-items:center;gap:.7rem;min-width:0;min-height:44px;padding:0 .75rem;display:flex}.catalog-search:focus-within{outline-offset:1px;outline:2px solid #858585}.catalog-search svg{stroke:#777;stroke-linecap:round;stroke-width:1.8px;flex:none;width:19px;height:19px}.catalog-search input,.table-filters input,.table-filters select{color:#292929;width:100%;min-width:0;min-height:42px;font:inherit;background:0 0;border:0}.catalog-search input:focus,.table-filters input:focus,.table-filters select:focus{outline:none}.catalog-status{background:#fff;border:1px solid #d5d5d2;border-radius:6px;flex:none;align-items:center;gap:.5rem;min-height:42px;padding:0 .85rem;font-size:.875rem;display:inline-flex}.category-list{scrollbar-width:none;gap:.5rem;padding:.75rem 0 1.2rem;display:flex;overflow-x:auto}.category-list::-webkit-scrollbar{display:none}.category-chip{color:#292929;cursor:pointer;min-height:40px;font:inherit;background:#fff;border:1px solid #d5d5d2;border-radius:6px;flex:none;padding:.45rem .85rem}.category-chip:hover{background:#ececea}.category-chip.is-selected{color:#fff;background:#292929;border-color:#292929}.section-heading,.dashboard-page-heading,.dashboard-panel-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.section-heading{margin-bottom:.8rem}.section-heading h1,.dashboard-page-heading h1{letter-spacing:-.035em;margin:0;font-size:clamp(1.55rem,2.4vw,2rem)}.section-heading>span,.dashboard-panel-heading>span{color:#777;flex:none;font-size:.85rem}.dashboard-eyebrow{color:#777;letter-spacing:.12em;margin:0 0 .35rem;font-size:.72rem;font-weight:700}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;display:grid}.product-card{color:#292929;cursor:pointer;min-width:0;font:inherit;text-align:left;background:#fff;border:1px solid #d5d5d2;border-radius:7px;flex-direction:column;padding:0;transition:border-color .14s,box-shadow .14s,transform .14s;display:flex;overflow:hidden}.product-card:not(:disabled):hover{border-color:#8d8d89;transform:translateY(-2px);box-shadow:0 5px 16px #00000014}.product-card:focus-visible,.category-chip:focus-visible,.quantity-controls button:focus-visible,.checkout-button:focus-visible,.secondary-button:focus-visible,.dashboard-logout:focus-visible{outline-offset:2px;outline:3px solid #777}.product-card:disabled{cursor:not-allowed}.product-card.is-unavailable .product-name,.product-card.is-unavailable .product-card-footer{color:#858585}.product-image-placeholder{color:#858585;background:#e9e9e8;place-content:center;justify-items:center;gap:.2rem;min-height:80px;font-size:.68rem;display:grid}.product-image-placeholder svg{stroke:currentColor;stroke-width:1.8px;width:22px;height:22px}.product-card-content{gap:.35rem;min-width:0;padding:.65rem;display:grid}.product-name{text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:700;overflow:hidden}.product-stock{color:#696969;text-overflow:ellipsis;white-space:nowrap;border:1px solid #dededb;border-radius:4px;width:fit-content;max-width:100%;padding:.15rem .35rem;font-size:.68rem;overflow:hidden}.product-card-footer{justify-content:space-between;align-items:center;gap:.5rem;margin-top:.2rem;font-size:.9rem;display:flex}.product-add{font-size:1.1rem;line-height:1}.catalog-hint{color:#777;align-items:center;gap:.5rem;margin:.9rem 0 0;font-size:.8rem;display:flex}.order-panel{background:#fff;border-left:1px solid #d5d5d2;flex-direction:column;align-self:start;min-width:0;height:calc(100vh - 62px);max-height:calc(100vh - 62px);padding:1.4rem;display:flex;position:sticky;top:62px;overflow-y:auto}.order-panel-heading,.order-summary-line,.order-item-heading,.order-item-controls,.order-totals>div{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.order-panel-heading h2{margin:0;font-size:1.3rem}.order-panel-heading>span,.order-summary-line,.order-item-controls>span,.order-totals>div:not(.order-total){color:#777;font-size:.85rem}.order-summary-line{padding:1rem 0}.order-items{flex:1}.order-empty,.dashboard-empty{color:#777;margin:0;font-size:.9rem;line-height:1.55}.order-item{border-top:1px solid #dededb;padding:.95rem 0}.order-item-heading{align-items:flex-start;font-size:.88rem}.order-item-heading strong:first-child{min-width:0}.order-item-heading strong:last-child{flex:none}.order-item-controls{margin-top:.55rem}.quantity-controls{align-items:center;gap:.45rem;display:inline-flex}.quantity-controls button{color:#292929;cursor:pointer;background:#fff;border:1px solid #d5d5d2;border-radius:5px;place-items:center;width:36px;height:36px;font-size:1.1rem;display:grid}.quantity-controls button:disabled{cursor:not-allowed;opacity:.45}.quantity-controls .remove-item{color:#777;border-color:#0000;width:auto;margin-left:.25rem;padding:0 .2rem;font-size:.75rem}.order-totals{border-top:1px solid #dededb;gap:.85rem;padding-top:1rem;display:grid}.order-total{color:#292929!important;font-size:1.1rem!important}.checkout-button{color:#fff;cursor:pointer;min-height:50px;font:inherit;background:#292929;border:1px solid #292929;border-radius:5px;padding:.75rem 1rem;font-weight:700}.checkout-button:hover:not(:disabled){background:#111}.checkout-button:disabled{cursor:not-allowed;opacity:.5}.dashboard-success{color:#176b36;margin:0;font-size:.85rem}.dashboard-state{color:#696969;margin:.75rem 0;font-size:.9rem}.dashboard-state--error{color:#b42318;margin:.75rem 0;font-size:.9rem}.payment-backdrop{z-index:50;background:#19191973;place-items:center;padding:1rem;display:grid;position:fixed;inset:0;overflow-y:auto}.payment-dialog{background:#fff;border:1px solid #d5d5d2;border-radius:8px;width:min(100%,440px);padding:1.35rem;box-shadow:0 18px 55px #0003}.payment-dialog-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.payment-dialog-heading h2{margin:0}.dialog-close{color:#555;cursor:pointer;background:0 0;border:0;border-radius:5px;width:36px;height:36px;font-size:1.5rem}.dialog-close:hover{background:#f0f0ee}.payment-total,.payment-change{border-bottom:1px solid #e4e4e1;justify-content:space-between;padding:.9rem 0;display:flex}.payment-methods{border:0;gap:1rem;margin:1rem 0;padding:0;display:flex}.payment-methods legend,.payment-amount{font-size:.9rem;font-weight:600}.payment-methods label{align-items:center;gap:.4rem;font-weight:400;display:inline-flex}.payment-amount{gap:.5rem;display:grid}.payment-amount input,.table-filters label{background:#fff;border:1px solid #d5d5d2;border-radius:5px;min-height:42px;padding:0 .65rem}.payment-actions{grid-template-columns:auto 1fr;gap:.6rem;margin-top:1.1rem;display:grid}.secondary-button{color:#292929;cursor:pointer;min-height:48px;font:inherit;background:#fff;border:1px solid #d5d5d2;border-radius:5px;padding:.5rem .9rem}.dashboard-page-heading{margin:0 auto 1.5rem}.dashboard-page-heading>div>p:last-child,.dashboard-panel-heading p{color:#777;margin:.35rem 0 0;font-size:.9rem}.local-data-label{color:#696969;background:#fff;border:1px solid #dededb;border-radius:999px;flex:none;padding:.45rem .75rem;font-size:.8rem}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;margin-bottom:1.1rem;display:grid}.metric-card,.dashboard-panel{background:#fff;border:1px solid #dededb;border-radius:7px}.metric-card{gap:.55rem;min-width:0;padding:1.1rem;display:grid}.metric-card>span{color:#696969;font-size:.85rem}.metric-card>strong{overflow-wrap:anywhere;letter-spacing:-.025em;font-size:clamp(1.25rem,2.2vw,1.75rem)}.metric-card>small{color:#858585;font-size:.78rem}.dashboard-panel{min-width:0;margin-bottom:1rem;padding:1.1rem}.dashboard-panel-heading{margin-bottom:1rem}.dashboard-panel-heading h2{margin:0;font-size:1.1rem}.table-filters{grid-template-columns:minmax(180px,1fr) minmax(150px,220px) minmax(150px,190px);gap:.65rem;margin-bottom:.8rem;display:grid}.table-filters label{align-items:center;min-width:0;display:flex}.table-filters select{cursor:pointer}.dashboard-table-wrap{width:100%;overflow-x:auto}.dashboard-table{border-collapse:collapse;text-align:left;white-space:nowrap;width:100%}.dashboard-table th,.dashboard-table td{border-bottom:1px solid #ececea;padding:.75rem .6rem;font-size:.85rem}.dashboard-table th{color:#777;font-size:.75rem;font-weight:600}.dashboard-table tbody tr:last-child td{border-bottom:0}.table-muted{color:#858585;font-size:.75rem}.status-pill{color:#666;background:#ededeb;border-radius:999px;padding:.28rem .55rem;font-size:.72rem;display:inline-block}.status-pill.is-positive{color:#176b36;background:#e7f5eb}.dashboard-footnote{color:#777;margin:.25rem 0;font-size:.8rem}.owner-content-grid{grid-template-columns:minmax(0,1fr) minmax(260px,340px);gap:.9rem;display:grid}.owner-content-grid .dashboard-panel{margin-bottom:.9rem}.attention-list{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.attention-list li{border-bottom:1px solid #ececea;justify-content:space-between;gap:.7rem;padding:.55rem 0;font-size:.83rem;display:flex}.attention-list li:last-child{border-bottom:0}.attention-list strong{color:#9a5a00;flex:none}.owner-audit-panel{margin-top:0}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=1050px){.register-workspace{grid-template-columns:minmax(0,1fr) 320px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.dashboard-topbar{flex-direction:column;align-items:flex-start;gap:.65rem;padding:.75rem 1rem}.dashboard-topbar-meta{flex-wrap:wrap;justify-content:space-between;gap:.6rem;width:100%}.dashboard-store-name{display:none}.register-workspace{flex-direction:column;display:flex}.register-catalog{padding:1rem}.order-panel{border-top:1px solid #d5d5d2;border-left:0;height:auto;min-height:420px;max-height:none;padding:1rem;position:static;overflow-y:visible}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.owner-content-grid{grid-template-columns:1fr;gap:0}.table-filters{grid-template-columns:1fr 1fr}.table-filters label:first-child{grid-column:1/-1}}@media (width<=460px){.dashboard-topbar-meta{justify-content:flex-start}.dashboard-user{margin-left:auto}.register-catalog{padding:.75rem}.catalog-toolbar{align-items:stretch}.catalog-status{padding-inline:.55rem}.product-grid{gap:.55rem}.product-card-content{padding:.5rem}.product-name,.product-card-footer{font-size:.8rem}.product-stock{font-size:.62rem}.role-dashboard:not(.register-dashboard){padding:1rem .75rem}.dashboard-page-heading{flex-direction:column;align-items:flex-start}.local-data-label{white-space:normal}.metric-grid{gap:.55rem}.metric-card{padding:.8rem}.metric-card>span{font-size:.75rem}.table-filters{grid-template-columns:1fr}.table-filters label:first-child{grid-column:auto}}.app-shell{color:#242424;background:#f4f4f3;min-height:100vh}.topbar{z-index:20;background:#fff;border-bottom:1px solid #dededb;position:sticky;top:0}.main-nav{flex-wrap:wrap;align-items:center;gap:.5rem;max-width:1200px;margin:0 auto;padding:.75rem 1.5rem;display:flex}.session-identity{color:#292929;text-align:right;gap:.1rem;margin-left:auto;padding:.35rem .65rem;font-size:.85rem;display:grid}.session-identity span:first-child{font-weight:600}.session-identity span+span{color:#777;text-transform:capitalize;font-size:.8rem}.nav-link{color:#424242;border:1px solid #0000;border-radius:6px;align-items:center;min-height:40px;padding:.5rem .9rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.logout-button{color:#292929;cursor:pointer;font:inherit;background:#fff;border:1px solid #d5d5d2}.logout-button:hover:not(:disabled){color:#242424;background:#f0f0ee}.logout-button:disabled{cursor:wait;opacity:.65}.nav-link:hover{color:#242424;background:#f0f0ee}.nav-link.active{color:#fff;background:#272727}.offline-notice{color:#78350f;background:#fffbeb;border-bottom:1px solid #f59e0b;width:100%}.offline-notice__inner{justify-content:space-between;align-items:center;gap:1rem;max-width:1200px;margin:0 auto;padding:.75rem 1.5rem;display:flex}.offline-notice__content{align-items:flex-start;gap:.65rem;display:flex}.offline-notice__icon{stroke:#b45309;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;flex:0 0 20px;width:20px;height:20px;margin-top:.1rem}.offline-notice__text{color:#78350f;margin:0;font-size:.875rem;line-height:1.45}.offline-notice__text strong{color:#451a03}.offline-notice__close{color:#78350f;cursor:pointer;background:#fef3c7;border:1px solid #d97706;border-radius:6px;flex:none;min-height:36px;padding:.35rem .85rem;font-size:.825rem;font-weight:600;transition:background-color .15s}.offline-notice__close:hover,.offline-notice__close:focus-visible{background:#fde68a}.page{max-width:1200px;margin:0 auto;padding:3rem 1.5rem 4rem}.story-page,.status-page,.auth-page{place-items:center;display:grid}.status-page{min-height:calc(100vh - 66px)}.auth-card,.status-card{color:#242424;background:#fff;border:1px solid #d8d8d5;border-radius:8px;width:min(100%,34rem);padding:2.5rem 2.25rem;box-shadow:0 2px 8px #00000014}.status-card{text-align:center}.status-icon-badge{border-radius:10px;place-items:center;width:52px;height:52px;margin:0 auto 1rem;display:grid}.status-icon-badge svg{stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:26px;height:26px}.status-icon-badge--danger{color:#b42318;background:#fff4f2;border:1px solid #e6aaa5}.status-badge,.eyebrow{color:#b42318;text-transform:uppercase;letter-spacing:.08em;background:#fff4f2;border:1px solid #e6aaa5;border-radius:4px;margin:0 0 .65rem;padding:.25rem .65rem;font-size:.72rem;font-weight:700;display:inline-block}.status-card h1,.auth-card h1{color:#242424;letter-spacing:-.03em;margin:0;font-size:clamp(1.65rem,2.5vw,2.1rem);font-weight:700;line-height:1.2}.status-description{color:#555;margin:.75rem 0 0;font-size:.95rem;line-height:1.55}.status-role-box{color:#424242;background:#f8f8f7;border:1px solid #e5e5e2;border-radius:6px;margin-top:1.25rem;padding:.65rem .9rem;font-size:.875rem}.status-role-name{text-transform:capitalize;font-weight:600}.status-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1.65rem;display:flex}.status-primary-button,.status-secondary-button{cursor:pointer;border-radius:6px;justify-content:center;align-items:center;min-height:46px;padding:.65rem 1.25rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:background-color .15s,border-color .15s;display:inline-flex}.status-primary-button{color:#fff;background:#272727;border:1px solid #272727}.status-primary-button:hover{background:#111}.status-secondary-button{color:#242424;background:#fff;border:1px solid #c9c9c6}.status-secondary-button:hover{background:#f0f0ee}.primary-button{color:#fff;cursor:pointer;background:#272727;border:none;border-radius:6px;padding:.85rem 1.25rem;font-size:.95rem;font-weight:600;transition:background-color .15s}.primary-button:hover{background:#111}.primary-button:disabled,.password-toggle:disabled{cursor:not-allowed;opacity:.65}.login-page{color:#242424;background:#f3f3f2;max-width:none;min-height:100vh;padding:48px 24px}.login-page .login-card{color:#242424;background:#fff;border:1px solid #d8d8d5;border-radius:0;width:min(100%,595px);padding:48px 46px;box-shadow:0 2px 8px #00000014}.login-card h1{color:#242424;letter-spacing:-.035em;margin:0;font-size:2rem;font-weight:700;line-height:1.2}.login-intro{color:#777;margin:1rem 0 1.75rem}.login-form{gap:1.1rem;margin-top:0;display:grid}.form-field{gap:.55rem;display:grid}.form-field label{color:#292929;font-size:.9rem;font-weight:500}.login-page .form-field input{color:#242424;background:#fff;border:1px solid #c9c9c6;border-radius:0;width:100%;min-width:0;min-height:56px;padding:.7rem 1rem}.login-page .form-field input:focus-visible,.login-page .password-toggle:focus-visible,.login-page .primary-button:focus-visible,.status-primary-button:focus-visible,.status-secondary-button:focus-visible,.offline-notice__close:focus-visible{outline-offset:2px;outline:3px solid #717171}.login-page .form-field input[aria-invalid=true]{border-color:#b42318}.password-control{background:#fff;border:1px solid #c9c9c6;align-items:center;gap:.5rem;min-height:56px;display:flex}.password-control:focus-within{outline-offset:2px;outline:3px solid #717171}.password-control:has(input[aria-invalid=true]){border-color:#b42318}.password-lock-icon{color:#414141;flex:0 0 22px;width:22px;height:22px;margin-left:16px}.login-page .password-control input{width:100%;min-height:54px;box-shadow:none;border:0;outline:0}.login-page .password-control input:focus-visible{outline:0}.password-toggle{color:#555;cursor:pointer;background:0 0;border:0;flex:0 0 48px;place-items:center;width:48px;min-height:48px;margin-right:4px;padding:0;display:grid}.password-toggle svg,.login-submit svg{stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:21px;height:21px}.field-error,.login-error{color:#b42318;margin:0;font-size:.875rem;line-height:1.45}.login-error{background:#fff4f2;border:1px solid #e6aaa5;border-radius:0;padding:.75rem .85rem}.login-page .login-submit{color:#fff;background:#272727;border-radius:0;min-height:60px;margin-top:.1rem;font-weight:700}.login-page .login-submit:hover{background:#111}.login-help{color:#777;text-align:center;margin:1.35rem 0 0}.app-warning-banner,.app-session-banner,.app-session-error{text-align:center;padding:.75rem 1rem;font-size:.875rem;font-weight:600}.app-warning-banner{color:#78350f;background:#fef3c7;border-bottom:1px solid #f59e0b}.app-session-banner{color:#92400e;background:#fffbeb;border-bottom:1px solid #fcd34d}.app-session-error{color:#b42318;background:#fff4f2;border-bottom:1px solid #e6aaa5}.session-loading{color:#555;text-align:center}@media (width<=600px){.offline-notice__inner{flex-direction:column;align-items:stretch}.offline-notice__close{align-self:flex-end}.status-actions{flex-direction:column}.status-primary-button,.status-secondary-button{width:100%}}@media (width<=480px){.page{padding:2rem 1rem}.login-page{padding:20px 16px}.auth-card,.status-card,.login-page .login-card{padding:1.5rem 1.25rem}.login-card h1{font-size:1.8rem}}
