:root{color:#ecf1f7;background:#101822;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent}*{box-sizing:border-box}html{min-height:100%;background:#101822;touch-action:pan-x pan-y}body{min-height:100vh;margin:0;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);background:linear-gradient(145deg,rgba(210,149,59,.08),transparent 30rem),#101822}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #f2bc66;outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.48}button:not(:disabled),a{cursor:pointer}#root{min-height:100vh}.start-screen,.state-page,.access-page{display:grid;min-height:100vh;place-items:center;padding:1.5rem}.start-screen p{max-width:22rem;margin:0;color:#b9c6d3;font-size:.875rem;letter-spacing:.04em;line-height:1.6;text-align:center}.access-card,.state-card{width:min(100%,30rem);border:1px solid #29394a;background:#151f2bf2;box-shadow:0 1.5rem 5rem #00000047}.access-card{padding:1.5rem}.state-card{padding:2rem 1.5rem}.access-card h1,.state-card h1,.terminal-header h1,.page-heading h2{margin:0;color:#f8fbff;font-family:Arial Narrow,Roboto Condensed,Impact,sans-serif;font-stretch:condensed;letter-spacing:.025em;line-height:.98;text-transform:uppercase}.access-card h1,.state-card h1{font-size:clamp(2rem,9vw,3rem)}.access-card>p:not(.eyebrow),.state-card>p:not(.eyebrow){color:#b9c6d3;line-height:1.55}.eyebrow{margin:0 0 .45rem;color:#dca34c;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.7rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.stack-form{display:grid;gap:.75rem;margin-top:1.75rem}.station-choice{display:flex;width:100%;min-height:3.5rem;align-items:center;justify-content:center;border:1px solid #46586b;border-radius:.25rem;color:#e8f0f7;background:#1b2938;font-size:1rem;font-weight:800;letter-spacing:.015em;transition:border-color .16s ease,background-color .16s ease}.station-choice:not(:disabled):hover,.station-choice:focus-visible{border-color:#dca34c;background:#26384b}.operator-choice__end-session{width:100%;min-height:3.25rem;margin-top:1.5rem}label{color:#c9d4df;font-size:.8125rem;font-weight:700}input,select{width:100%;min-height:2.85rem;border:1px solid #3c4d60;border-radius:.25rem;padding:.65rem .75rem;color:#f8fbff;background:#172331}input::placeholder{color:#7f91a4}select option{color:#f8fbff;background:#172331}.button{min-height:2.75rem;border:1px solid transparent;border-radius:.2rem;padding:.65rem 1rem;font-weight:800;letter-spacing:.01em;transition:transform .16s ease,background-color .16s ease,border-color .16s ease}.button--with-icon{display:inline-flex;align-items:center;gap:.45rem}.button--with-icon svg{flex:0 0 auto}.button:not(:disabled):active{transform:translateY(1px)}.button--accent{color:#17130d;background:#dca34c}.button--accent:not(:disabled):hover{background:#f2bc66}.button--quiet{color:#dce6ef;border-color:#46586b;background:#1b2938}.button--quiet:not(:disabled):hover{border-color:#8395a8;background:#26384b}.button--danger{color:#ffdce0;border-color:#8b4550;background:#42232b}.button--danger:not(:disabled):hover{background:#593039}.button--wide{width:100%}.text-button,.helper-link,.back-link{border:0;padding:0;color:#f2bc66;background:transparent;font-size:.8125rem;font-weight:700;text-decoration:none}.form-error,.inline-problem{margin:0;color:#ffb7be;font-size:.875rem;line-height:1.45}.loading-copy{color:#b9c6d3;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.8125rem;letter-spacing:.06em;text-transform:uppercase}.terminal-shell{display:grid;min-height:100vh;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);grid-template-areas:"header" "content"}.terminal-header{position:sticky;z-index:20;top:0;grid-area:header;display:flex;align-items:center;justify-content:flex-start;gap:1rem;padding:.5rem 1rem;border-bottom:1px solid #29394a;background:#101822eb}.terminal-header h1{min-width:0;font-size:1.75rem}.navigation-trigger,.navigation-close{display:inline-grid;width:2.75rem;height:2.75rem;padding:0;place-items:center;border:1px solid #344658;border-radius:.35rem;color:#f6cb81;background:#15202c}.navigation-trigger{align-content:center;gap:.25rem}.navigation-trigger span{width:1.1rem;height:1px;background:currentColor}.navigation-trigger:hover,.navigation-trigger:focus-visible,.navigation-close:hover,.navigation-close:focus-visible{border-color:#dca34c;background:#1b2b3a}.terminal-reader-indicator{display:flex;min-width:0;max-width:min(44vw,11rem);align-items:center;gap:.45rem;margin-left:auto;padding:.375rem 0;color:#d4a8ae;font-size:.75rem;font-weight:700;text-decoration:none}.terminal-reader-indicator:hover{color:#f2c2c8}.terminal-reader-indicator__marker{width:.55rem;height:.55rem;flex:0 0 auto;border-radius:50%;background:#c85d68;box-shadow:0 0 0 .25rem #c85d6824}.terminal-reader-indicator--connected{color:#a9d9b5}.terminal-reader-indicator--connected:hover{color:#d0f2d8}.terminal-reader-indicator--connected .terminal-reader-indicator__marker{background:#61b979;box-shadow:0 0 0 .25rem #61b97926}.terminal-reader-indicator__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sheet-overlay{position:fixed;z-index:30;inset:0;background:#04090ea8}.sheet-overlay[data-state=open]{animation:terminal-overlay-enter .28s ease-out both}.sheet-overlay[data-state=closed]{animation:terminal-overlay-exit .18s ease-in both}.sheet-content{position:fixed;z-index:31;inset-block:0;left:0;outline:none}.terminal-navigation-drawer{display:flex;width:min(17.5rem,calc(100vw - 3rem));min-height:100dvh;flex-direction:column;padding:calc(1.25rem + env(safe-area-inset-top)) 1rem calc(1.25rem + env(safe-area-inset-bottom));overflow-y:auto;color:#d9e2eb;border-right:1px solid #344658;background:linear-gradient(145deg,rgba(220,163,76,.08),transparent 13rem),#15202c;box-shadow:1.25rem 0 2.5rem #00000047}.terminal-navigation-drawer:before{position:absolute;inset-block:0;right:0;width:2px;content:"";background:#dca34c;box-shadow:0 0 1rem #dca34c73}.terminal-navigation-drawer[data-state=open]{animation:terminal-drawer-enter .28s cubic-bezier(.22,.96,.29,1.03) both}.terminal-navigation-drawer[data-state=closed]{animation:terminal-drawer-exit .2s cubic-bezier(.4,0,1,1) both}.terminal-navigation-drawer__heading{min-width:0;padding:.25rem 3rem 1.5rem .25rem;border-bottom:1px solid #344658}.sheet-title{margin:0;color:#f7f9fb;font-size:1.2rem;letter-spacing:-.02em}.terminal-navigation-drawer__heading p{overflow:hidden;margin:.35rem 0 0;color:#9baebe;font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.navigation-close{position:absolute;top:calc(1rem + env(safe-area-inset-top));right:1rem}.navigation-close span{position:absolute;width:1.05rem;height:1px;background:currentColor}.navigation-close span:first-child{transform:rotate(45deg)}.navigation-close span:last-child{transform:rotate(-45deg)}.terminal-navigation{display:grid;gap:.25rem;padding-top:1rem}.terminal-navigation-drawer__footer{margin-top:auto;padding-top:1rem;border-top:1px solid #344658}.terminal-navigation-drawer__footer .text-button{width:100%;min-height:2.75rem;padding:.75rem;border-radius:.2rem;text-align:left}.terminal-navigation a{position:relative;display:flex;min-height:3.25rem;align-items:center;padding:.75rem .75rem .75rem 1rem;color:#afbecc;border-radius:.2rem;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.terminal-navigation a:before{position:absolute;left:0;width:2px;height:0;content:"";background:#dca34c;transition:height .16s ease}.terminal-navigation a:hover{color:#f7f9fb;background:#dca34c12}.terminal-navigation a.active{color:#f8d28d;background:#dca34c1c}.terminal-navigation a.active:before{height:1.5rem}@keyframes terminal-overlay-enter{0%{opacity:0}}@keyframes terminal-overlay-exit{to{opacity:0}}@keyframes terminal-drawer-enter{0%{transform:translate(-102%)}}@keyframes terminal-drawer-exit{to{transform:translate(-102%)}}.terminal-content{grid-area:content;padding:1rem}.page-grid{display:grid;gap:1rem}.panel{border:1px solid #29394a;background:#15202c}.panel--menu,.sale-panel,.products-panel,.reader-panel,.transactions-panel,.detail-panel{padding:1rem}.page-heading,.draft-lines__heading{display:flex;align-items:start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.page-heading h2{font-size:1.5rem}.page-heading>.muted-copy{max-width:16rem;margin:0;color:#93a5b5;font-size:.8rem;line-height:1.45;text-align:right}.status-chip{display:inline-flex;max-width:10rem;align-items:center;min-height:1.55rem;padding:.2rem .45rem;overflow:hidden;color:#f0c77e;border:1px solid rgba(220,163,76,.42);background:#dca34c1c;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.62rem;font-weight:700;letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.status-chip--paid,.status-chip--partially_refunded,.status-chip--refunded{color:#a9debd;border-color:#66b98480;background:#66b9841f}.status-chip--cancelled{color:#b9c6d3;border-color:#526578;background:#52657826}.menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem}.menu-item{display:grid;min-height:7.5rem;align-content:space-between;gap:.35rem;border:1px solid #35475a;padding:.75rem;color:#edf4fa;background:#1a2a38;text-align:left;transition:border-color .16s ease,background-color .16s ease}.menu-item:hover{border-color:#dca34c;background:#203345}.menu-item span{font-size:.9rem;font-weight:800;line-height:1.2}.menu-item small{color:#91a4b6;font-size:.68rem}.amount{color:#f4f8fb;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-variant-numeric:tabular-nums;letter-spacing:-.03em}.amount--large{color:#f2bc66;font-size:clamp(1.4rem,6vw,2.25rem)}.draft-lines{min-height:10rem;padding-bottom:1rem;border-bottom:1px solid #314354}.draft-lines__heading h3,.manual-sale h3,.sale-status h3,.detail-lines h3,.refund-panel h3{margin:0;color:#f7fbff;font-size:1rem}.draft-line,.product-row,.transaction-row,.detail-lines>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.75rem;min-height:3.35rem;border-top:1px solid #29394a}.draft-line>span:first-child{overflow:hidden;font-size:.875rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.quantity-stepper{display:inline-flex;align-items:center;gap:.25rem}.quantity-stepper button{display:grid;width:1.85rem;height:1.85rem;place-items:center;color:#f1f5f9;border:1px solid #45596d;border-radius:.15rem;background:#223447}.quantity-stepper strong{min-width:1.25rem;text-align:center}.manual-sale{display:grid;gap:.5rem;padding:1rem 0}.currency-input{display:flex;align-items:center;gap:.45rem;padding-left:.75rem;border:1px solid #3c4d60;border-radius:.25rem;background:#172331}.currency-input:focus-within{outline:3px solid #f2bc66;outline-offset:3px}.currency-input input{border:0;outline:0;background:transparent}.sale-status{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #46596c}.sale-status>p,.sale-status .button-row{grid-column:1 / -1}.sale-status>p{margin:0;color:#b9c6d3;font-size:.875rem}.button-row{display:flex;flex-wrap:wrap;gap:.625rem}.helper-link{display:inline-block;margin-top:.75rem}.product-list,.transaction-list,.detail-lines{border-bottom:1px solid #29394a}.product-row{grid-template-columns:minmax(0,1fr) auto}.product-row h3{margin:0;color:#edf4fa;font-size:.95rem}.product-row p{margin:.25rem 0 0;color:#91a4b6;font-size:.8rem}.reader-panel{display:grid;gap:.75rem}.reader-current{margin:0;color:#b9c6d3}.transaction-row{color:inherit;text-decoration:none}.transaction-row:hover{background:#1b2b3a}.transaction-row>span:first-child{display:grid;gap:.2rem;min-width:0}.transaction-row small{color:#8fa2b4;font-size:.72rem}.back-link{display:inline-block;margin-bottom:1rem}.detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:0 0 1.5rem}.detail-facts>div{padding-top:.5rem;border-top:1px solid #35485b}.detail-facts dt{color:#90a3b4;font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.detail-facts dd{margin:.35rem 0 0;color:#edf4fa;font-size:.85rem}.detail-lines>div{grid-template-columns:minmax(0,1fr) auto;color:#cbd7e2;font-size:.875rem}.refund-panel{margin-top:1.5rem;padding:1rem;border:1px solid #4a3d2d;background:#201d19}.refund-panel>p:not(.eyebrow):not(.form-error){color:#c5d1db;line-height:1.45}.refund-actions{display:grid;gap:1rem;margin-top:1rem}.partial-refund{display:grid;gap:.45rem}.refund-fields{display:grid;gap:.5rem}.empty-note,.muted-copy{color:#8fa2b4;font-size:.84rem;line-height:1.45}.inline-problem{margin:1rem 0;padding:1rem;border:1px solid #8b4550;background:#352129}.update-prompt{position:fixed;right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom));left:1rem;z-index:10;padding:1rem;border:1px solid #dca34c;background:#1e2935;box-shadow:0 1rem 2.5rem #00000059}.update-prompt strong{color:#f6cb81}.update-prompt p{margin:.35rem 0 .85rem;color:#c7d3de;font-size:.86rem}@media(min-width:720px){.terminal-header{padding-inline:1.5rem}.terminal-content{padding:1.5rem}.page-grid--pos{grid-template-columns:minmax(0,1.25fr) minmax(20rem,.75fr);align-items:start}.menu-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.refund-fields{grid-template-columns:minmax(8rem,.65fr) minmax(12rem,1fr) auto;align-items:end}.update-prompt{left:auto;width:min(25rem,calc(100vw - 2rem))}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
