@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/montserrat-latin-400-normal-BLhwKU8k.woff2)format("woff2"),url(/assets/montserrat-latin-400-normal-xItZbAXg.woff)format("woff")}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/montserrat-latin-ext-400-normal-B8bwfy6Y.woff2)format("woff2"),url(/assets/montserrat-latin-ext-400-normal-BffdBkAA.woff)format("woff")}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/montserrat-latin-700-normal-BdjcYUrC.woff2)format("woff2"),url(/assets/montserrat-latin-700-normal-BWkrl476.woff)format("woff")}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/montserrat-latin-ext-700-normal-BOP2Nhf0.woff2)format("woff2"),url(/assets/montserrat-latin-ext-700-normal-DdDFr05Z.woff)format("woff")}.achats-form select,.achats-form input[type=date]{min-height:var(--touch)}.achats-piece{margin:0 0 1rem}.achats-photo-button,.form .achats-photo-button{cursor:pointer;text-align:center;justify-content:center;align-items:center;display:flex}.achats-piece input:focus-visible+.achats-photo-button{outline:3px solid var(--focus);outline-offset:2px}.achats-preview img{border:2px solid var(--border);object-fit:contain;border-radius:.5rem;max-width:100%;max-height:12rem;margin:.75rem auto 0;display:block}.achats-stock{margin:1rem 0}.achats-line{border:2px solid var(--border);border-radius:.5rem;margin:.75rem 0;padding:.75rem 1rem}.achats-line legend{padding:0 .5rem;font-weight:700}.achats-list{margin:.5rem 0 1rem;padding:0;list-style:none}.achats-row{border:2px solid var(--border);background:var(--bg);border-radius:.5rem;margin-bottom:.75rem;padding:.75rem 1rem}.achats-head{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.achats-supplier{overflow-wrap:anywhere;flex:10rem}.achats-amount{white-space:nowrap}.achats-meta{color:var(--text-muted);margin:.25rem 0;font-size:.9375rem}.achats-actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.5rem;display:flex}.achats-piece-view img{border:2px solid var(--border);border-radius:.5rem;max-width:100%;max-height:20rem;display:block}.achats-detail{border-top:1px solid var(--border);margin-top:.75rem;padding-top:.5rem}.achats-lines{margin:.25rem 0;padding-left:1.25rem}.achats-action{border:2px solid var(--control-border);border-radius:.5rem;margin-top:.75rem;padding:.75rem 1rem}.achats-action h4{margin:0 0 .5rem}.achats-filters{margin-bottom:1rem}.caisse{--caisse-dark-text:var(--color-ink);--pay-bar-space:15rem;padding-top:.5rem}.caisse-head{justify-content:space-between;align-items:center;gap:.5rem;margin:0 0 .25rem;display:flex}.caisse h1{margin:0;font-size:1.125rem}.caisse button,.caisse input,.caisse select,.caisse textarea{font-family:var(--font)}.caisse .tab,.caisse .subtab,.caisse .btn-secondary{background:var(--secondary-bg);color:var(--secondary-text);border-color:var(--secondary-border)}.caisse .tab[aria-selected=true],.caisse .subtab[aria-pressed=true]{background:var(--active-bg);border-color:var(--active-bg);color:var(--active-text)}.caisse .tab,.caisse .subtab,.caisse .btn,.caisse .btn-small{min-height:56px}.caisse .notice{background:var(--surface);color:var(--text)}.caisse .hint{color:var(--text-muted)}.caisse h2,.caisse h3{color:var(--heading)}.caisse input[type=text],.caisse input[type=search],.caisse input[type=time],.caisse select,.caisse textarea{min-height:56px;font-size:1.125rem}.caisse textarea{width:100%;min-height:5rem}.btn-block{width:100%}.caisse-session{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin:0 0 .25rem;font-size:.9375rem;overflow:hidden}.outbox-status{flex-wrap:wrap;gap:.5rem;margin:0 0 .25rem;display:flex}.outbox-status:empty{display:none}.pill-pending{background:var(--warm);color:var(--caisse-dark-text)}.caisse .btn-alert{background:var(--warm);color:var(--caisse-dark-text);border-color:var(--warm)}.caisse .caisse-nav{flex-wrap:nowrap;margin:0 0 .5rem;overflow-x:auto}.caisse-nav .subtab{white-space:nowrap;flex:none}.product-buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:.375rem;display:grid}@media (width>=360px){.product-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}}.product-btn{border:1px solid var(--border);border-left:8px solid var(--cat-other);background:var(--surface);min-height:56px;color:var(--text);font:inherit;font-family:var(--font);text-align:left;cursor:pointer;border-radius:.625rem;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:.125rem;padding:.25rem .5rem .25rem .625rem;font-size:.875rem;font-weight:700;line-height:1.1;display:flex}.product-btn:active{transform:scale(.97)}.product-price{color:var(--warm);font-size:.9375rem}.product-btn.cat-hot{border-left-color:var(--cat-hot)}.product-btn.cat-cold{border-left-color:var(--cat-cold)}.product-btn.cat-alcohol{border-left-color:var(--cat-alcohol)}.product-btn.cat-other{border-left-color:var(--cat-other)}.sell{padding-bottom:var(--pay-bar-space)}.ticket{border:2px solid var(--border);background:var(--surface);border-radius:.75rem;margin-top:.5rem;padding:.5rem .75rem}.ticket .hint{margin:0}.ticket-lines{margin:0;padding:0;list-style:none}.ticket-lines li{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.25rem 0;display:flex}.ticket-name{flex:8rem;font-weight:700}.ticket-qty{gap:.5rem;display:flex}.btn-qty{min-width:56px;min-height:56px;padding:0;font-size:1.5rem}.pay-bar{z-index:15;max-width:40rem;padding:.375rem .75rem calc(.5rem + env(safe-area-inset-bottom));border-top:3px solid var(--button-bg);background:var(--bg);color:var(--text);margin:0 auto;position:fixed;bottom:0;left:0;right:0}.pay-bar .notice{margin:0 0 .25rem;padding:.5rem}.pay-status{color:var(--accent-text)}.total-big{justify-content:space-between;align-items:flex-end;gap:.5rem;margin:0 0 .25rem;font-size:1.25rem;font-weight:700;display:flex}.total-label{flex-direction:column;min-width:0;display:flex}.total-label>span:first-child{white-space:nowrap;text-overflow:ellipsis;min-height:1.25em;font-size:.875rem;overflow:hidden}.ticket-summary{color:var(--text-muted)}.total-big strong{color:var(--warm);font-size:2.5rem;line-height:1.05}.pay-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:.375rem;margin-top:.375rem;display:grid}.pay-cash{grid-template-columns:1.6fr repeat(4,minmax(0,1fr))}.pay-cash .btn-pay+.btn-pay{white-space:nowrap}.btn-pay{min-height:56px;padding:0 .25rem;font-size:1.125rem}.btn-confirm{grid-column:span 2;font-size:1.25rem}.payment-instruction{color:var(--warm);margin:0;font-size:1.375rem;font-weight:700}.change-big{color:var(--warm);margin:.5rem 0;font-size:2.5rem;font-weight:700;line-height:1.1}.change-short{color:var(--title)}.cash-count{border:0;margin:1rem 0;padding:0}.cash-count legend{padding:0;font-weight:700}.cash-count-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-top:.5rem;display:grid}.cash-count-cell label{font-weight:700;display:block}.cash-count-cell input{width:100%}.cash-count-total{font-size:1.25rem}.cash-count-total strong{color:var(--warm);font-size:1.75rem}.sale-row{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem 0;display:flex}.sale-cancelled>span:first-child{text-decoration:line-through}.summary-strong{font-size:1.125rem;font-weight:700}.summary-detail{color:var(--text-muted)}.outbox-item{border-bottom:1px solid var(--border);padding:.5rem 0}@media (width>=60rem){.caisse .page-narrow{max-width:64rem}.pay-bar{max-width:64rem;padding-left:1rem;padding-right:1rem}.app-body-sidebar .pay-bar{left:15rem}.product-buttons{grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.5rem}.product-btn{min-height:72px;padding:.5rem .75rem;font-size:1rem}.product-price{font-size:1.0625rem}.caisse h1{font-size:1.5rem}}.dashboard .period-picker{margin:0 0 1rem}.dashboard .period-custom{align-items:flex-end;margin-top:.5rem}.dashboard .period-custom label{font-weight:700;display:block}.report-total{margin:.5rem 0 1rem;font-size:1.125rem}.report-scroll{background:linear-gradient(to right, var(--bg) 30%, transparent) left center / 2rem 100% no-repeat local, linear-gradient(to left, var(--bg) 30%, transparent) right center / 2rem 100% no-repeat local, linear-gradient(to right, var(--border), transparent) left center / .75rem 100% no-repeat scroll, linear-gradient(to left, var(--border), transparent) right center / .75rem 100% no-repeat scroll;margin:0 0 1rem;overflow-x:auto}.report-scroll-hint{margin:0 0 .25rem;font-size:.875rem;display:none}@media (width<=40rem){.report-scroll-hint{display:block}}.report-table{border-collapse:collapse;width:100%;font-size:.9375rem}.report-table caption{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.report-table th,.report-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:.5rem .625rem}.report-table th{background:var(--table-head-bg);color:var(--table-head-text);white-space:nowrap}.report-table .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.report-stats{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.75rem;margin:0 0 1rem;display:grid}.report-stats div{border:2px solid var(--border);background:var(--surface);border-radius:.5rem;padding:.75rem 1rem}.report-stats dt{color:var(--text-muted);font-size:.9375rem}.report-stats dd{color:var(--heading);margin:.25rem 0 0;font-size:1.75rem;font-weight:700}.bar-chart{margin:0 0 1rem;overflow-x:auto}.bar-chart svg{max-width:none;display:block}.bar-chart-bar{fill:var(--color-teal-text)}.bar-chart-value,.bar-chart-label{fill:var(--text);font-family:var(--font);font-size:13px}.bar-chart-value{font-weight:700}.home-blocks{grid-template-columns:minmax(0,1fr);gap:1rem;margin:1rem 0 1.5rem;display:grid}@media (width>=40rem){.home-blocks{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=75rem){.home-blocks{grid-template-columns:repeat(3,minmax(0,1fr))}}.home-block{border:2px solid var(--border);background:var(--surface);border-radius:.5rem;flex-direction:column;padding:1rem;display:flex}.home-block h2{margin:0 0 .5rem;font-size:1.125rem}.home-block .row-list{margin:0 0 .5rem}.home-block>a{align-self:flex-start;margin-top:auto;padding:.75rem 0;font-weight:700;line-height:1.4}.home-figure{color:var(--heading);margin:0;font-size:2rem;font-weight:700}.export-list{gap:.75rem;margin:0 0 1rem;padding:0;list-style:none;display:grid}.export-list li{border:1px solid var(--border);background:var(--surface);border-radius:.5rem;padding:.75rem 1rem}.export-list h3{margin:0 0 .25rem}.export-list p{margin:0 0 .5rem}.consignment-supplier{margin-bottom:1rem}.consignment-due{border-bottom:1px solid var(--border);color:var(--text);padding-bottom:.5rem;font-size:1.125rem}.consignment-due strong{color:var(--heading)}.consignment-lines{color:var(--text-muted);margin:.5rem 0 0;padding-left:1.25rem}:root{--color-prune:#870946;--color-prune-dark:#6e0738;--color-teal:#369890;--color-teal-text:#1f6f69;--color-teal-pale:#e3f1ef;--color-yellow:#f9bd3e;--color-yellow-pale:#fce4a8;--color-rose:#e76497;--color-white:#fff;--color-paper:#fffdfb;--color-sand:#f8f2ee;--color-line:#e6dcd6;--color-stone:#8c8283;--color-ink:#231f20;--color-ink-soft:#5a5757;--color-night:#1f1a1c;--color-night-surface:#2b2427;--color-night-line:#4a3f44;--color-night-text:#f4eeea;--color-night-muted:#bdb3b3;--color-night-rose:#f08fb4;--color-night-prune:#a3205a;--color-night-teal:#5fc4bb;--color-night-stone:#8f8388;--bg:var(--color-paper);--surface:var(--color-sand);--text:var(--color-ink);--text-muted:var(--color-ink-soft);--title:var(--color-prune);--heading:var(--color-ink);--link:var(--color-prune);--accent:var(--color-teal);--accent-text:var(--color-teal-text);--border:var(--color-line);--control-border:var(--color-stone);--check-accent:var(--color-prune);--focus:var(--color-prune);--button-bg:var(--color-prune);--button-border:var(--color-prune);--button-text:var(--color-white);--button-hover:var(--color-prune-dark);--secondary-bg:transparent;--secondary-text:var(--color-teal-text);--secondary-border:var(--color-teal-text);--active-bg:var(--color-teal-text);--active-text:var(--color-white);--warm:var(--color-yellow);--highlight-bg:var(--color-yellow-pale);--on-highlight:var(--color-ink);--alert-bg:var(--color-yellow);--on-alert:var(--color-ink);--ok-bg:var(--color-teal-text);--on-ok:var(--color-white);--ok-soft-bg:var(--color-teal-pale);--ok-soft-text:var(--color-teal-text);--table-head-bg:var(--color-sand);--table-head-text:var(--color-ink);--input-bg:var(--color-white);--input-text:var(--color-ink);--header-bg:var(--color-paper);--header-text:var(--color-ink);--brand:var(--color-prune);--decor-1:#e7649780;--decor-2:#f9bd3e80;--nav-bg:var(--color-paper);--nav-text:var(--text);--nav-hover-bg:var(--color-sand);--nav-active-bg:var(--color-teal-pale);--nav-active-text:var(--color-teal-text);--nav-active-mark:var(--color-teal-text);--cat-hot:var(--color-prune);--cat-cold:var(--color-teal);--cat-alcohol:var(--color-yellow);--cat-other:var(--color-ink-soft);--on-cat-hot:var(--color-white);--on-cat-cold:var(--color-ink);--on-cat-alcohol:var(--color-ink);--on-cat-other:var(--color-white);--touch:48px;--font:"Montserrat", system-ui, sans-serif}[data-theme=dark]{--bg:var(--color-night);--surface:var(--color-night-surface);--text:var(--color-night-text);--text-muted:var(--color-night-muted);--title:var(--color-night-rose);--heading:var(--color-night-rose);--link:var(--color-night-teal);--accent:var(--color-night-teal);--accent-text:var(--color-night-teal);--border:var(--color-night-line);--control-border:var(--color-night-stone);--check-accent:var(--color-night-prune);--focus:var(--color-yellow);--button-bg:var(--color-night-prune);--button-border:var(--color-night-prune);--button-text:var(--color-white);--button-hover:#bb2b6c;--secondary-bg:var(--color-night-surface);--secondary-text:var(--color-night-teal);--secondary-border:var(--color-night-teal);--active-bg:var(--color-night-prune);--active-text:var(--color-white);--cat-hot:var(--color-night-rose);--cat-cold:var(--color-night-teal);--cat-alcohol:var(--color-yellow);--cat-other:var(--color-night-muted);--touch:56px}*{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background:var(--bg);color:var(--text);font-family:var(--font);margin:0;font-size:1.0625rem;font-weight:400;line-height:1.5}h1,h2,h3{font-family:var(--font);color:var(--heading);font-weight:700;line-height:1.2}h1{color:var(--title);margin:0 0 1rem;font-size:1.625rem}h2{font-size:1.25rem}h3{font-size:1.0625rem}a{color:var(--link)}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.app{background:var(--bg);flex-direction:column;min-height:100dvh;display:flex}.app-top{z-index:10;position:sticky;top:0}.demo-banner{background:var(--alert-bg);color:var(--on-alert);--focus:var(--color-ink);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.375rem 1rem;font-size:.875rem;font-weight:700;line-height:1.3;display:flex}.app-header{isolation:isolate;background:var(--header-bg);min-height:64px;color:var(--header-text);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.5rem;padding:0 1rem;display:flex;position:relative;overflow:hidden}.app-header:before,.app-header:after{content:"";z-index:-1;filter:blur(14px);pointer-events:none;border-radius:50%;width:22rem;height:14rem;position:absolute}.app-header:before{background:radial-gradient(closest-side, var(--decor-1), transparent);top:-7rem;left:-7rem}.app-header:after{background:radial-gradient(closest-side, var(--decor-2), transparent);top:-7rem;right:-7rem}.brand{min-height:var(--touch);color:var(--brand);text-transform:uppercase;align-items:center;font-size:1.25rem;font-weight:700;text-decoration:none;display:inline-flex}.btn{min-height:var(--touch);min-width:var(--touch);border:2px solid var(--button-border);background:var(--button-bg);color:var(--button-text);font:inherit;cursor:pointer;border-radius:.5rem;justify-content:center;align-items:center;padding:0 1.25rem;font-weight:700;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){background:var(--button-hover);border-color:var(--button-hover)}.app-header .btn{background:var(--secondary-bg);border-color:var(--secondary-border);color:var(--secondary-text)}.module-nav{background:var(--nav-bg);border-bottom:1px solid var(--border)}.module-nav ul{margin:0;padding:.5rem 0;list-style:none}.module-nav a{min-height:var(--touch);color:var(--nav-text);align-items:center;padding:0 1rem;font-weight:700;text-decoration:none;display:flex}.module-nav a[aria-current=page]{background:var(--nav-active-bg);color:var(--nav-active-text);box-shadow:inset 5px 0 0 var(--nav-active-mark)}.app-body{flex-direction:column;flex:1;display:flex}.app-main{flex-direction:column;flex:1;min-width:0;display:flex}.header-account{align-items:center;gap:1rem;min-width:0;display:flex}.header-account .account-name{white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.header-warning{background:var(--bg);padding:.75rem 1rem}.header-warning .notice{max-width:48rem;margin:0 auto}.page{background:var(--bg);color:var(--text);flex:1;padding:1.25rem 1rem 2rem}.page-narrow{width:100%;max-width:40rem;margin:0 auto}.soon{border-left:6px solid var(--accent);background:var(--surface);color:var(--text-muted);padding:1rem;font-size:1.125rem}.update-prompt{z-index:20;background:var(--alert-bg);color:var(--on-alert);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1rem;font-weight:700;display:flex;position:fixed;bottom:0;left:0;right:0}.btn-small{min-height:40px}.btn-secondary,.app-header .btn-secondary{background:var(--secondary-bg);border-color:var(--secondary-border);color:var(--secondary-text)}.btn-secondary:hover:not(:disabled){background:var(--surface);border-color:var(--secondary-border)}.demo-banner .btn{flex:none;min-height:40px;padding:0 .875rem}.demo-banner>span{flex:12rem}.btn:disabled{opacity:.6;cursor:not-allowed}.account{border-top:1px solid var(--border);padding:.75rem 1rem 1rem}.account-name{margin:0 0 .5rem}.hint{color:var(--text-muted);font-size:.9375rem}.notice{border-left:6px solid var(--accent);background:var(--surface);color:var(--text);padding:1rem}.notice-error{border-left-color:var(--color-prune);font-weight:700}.notice-warning{border-left-color:var(--color-prune);margin:1rem 0}.notice-warning h2{margin-top:0}.form{margin:1rem 0}.form label{margin-bottom:.25rem;font-weight:700;display:block}.form-row{flex-wrap:wrap;gap:.5rem;display:flex}.form-row input{flex:12rem;min-width:0}input[type=text],input[type=email],select{min-height:var(--touch);border:2px solid var(--control-border);background:var(--input-bg);color:var(--input-text);font:inherit;border-radius:.5rem;padding:0 .75rem}.group-list,.member-list{margin:1rem 0;padding:0;list-style:none}.group-list>li{border:2px solid var(--border);background:var(--bg);border-radius:.5rem;margin-bottom:.75rem}.group-toggle{width:100%;min-height:var(--touch);background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer;border:0;border-radius:.5rem;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem 1rem;display:flex}.group-name{font-weight:700}.group-kind{color:var(--text-muted);font-size:.875rem}.group-panel{padding:0 1rem 1rem}.group-panel h2{margin:1rem 0 .5rem;font-size:1.125rem}.member-list li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem 0;display:flex}.member-id{overflow-wrap:anywhere;flex-direction:column;min-width:0;display:flex}.permissions{border:0;margin:1rem 0 0;padding:0}.permissions legend{padding:0;font-weight:700}.permission{min-height:var(--touch);border-bottom:1px solid var(--border);align-items:center;gap:.75rem;padding:.25rem 0;display:flex}.permission input{width:1.5rem;height:1.5rem;accent-color:var(--check-accent);flex:none}.form select,.form input[type=text]{width:100%;margin-bottom:.75rem}.form-row input[type=text]{width:auto;margin-bottom:0}.tabs{flex-wrap:wrap;gap:.5rem;margin:0 0 1rem;display:flex}select,input[type=date],input[type=time],input[type=number],textarea{min-height:var(--touch);border:2px solid var(--control-border);background:var(--input-bg);color:var(--input-text);font:inherit;border-radius:.5rem;padding:0 .75rem}textarea{padding:.5rem .75rem}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.subtabs{flex-wrap:wrap;gap:.5rem;margin:0 0 1rem;display:flex}.tab,.subtab{min-height:var(--touch);border:2px solid var(--border);background:var(--bg);color:var(--text);font:inherit;cursor:pointer;border-radius:.5rem;padding:0 1rem;font-weight:700}.tab:hover,.subtab:hover{border-color:var(--secondary-border)}.tab[aria-selected=true],.subtab[aria-pressed=true]{background:var(--active-bg);border-color:var(--active-bg);color:var(--active-text)}.stock-list{margin:.5rem 0 1rem;padding:0;list-style:none}.stock-row{border:2px solid var(--border);background:var(--bg);border-radius:.5rem;margin-bottom:.75rem;padding:.75rem 1rem}.opening-list,.shift-list{margin:1rem 0;padding:0;list-style:none}.opening{border:2px solid var(--border);background:var(--bg);border-radius:.5rem;margin-bottom:1rem;padding:.75rem 1rem}.stock-row-alert{border-color:var(--warm);background:var(--surface)}.stock-row-off{opacity:.75}.stock-line{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.stock-name{overflow-wrap:anywhere;font-weight:700}.stock-quantity{white-space:nowrap;font-weight:700}.stock-actions{margin-top:.5rem}.stock-total{font-size:1.25rem}.alert-text{color:var(--color-prune)}.opening h2,.opening h3,.opening h4{margin:0 0 .25rem;font-size:1.125rem}.opening-time{color:var(--text-muted);margin:0 0 .5rem}.opening-cancelled{opacity:.75;border-style:dashed}.shift{border-top:1px solid var(--border);padding:.75rem 0}.shift-info{flex-wrap:wrap;align-items:center;gap:.25rem .75rem;display:flex}.shift-actions{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.shift-actions .btn:not(.btn-small){flex:12rem}.badge{background:var(--highlight-bg);color:var(--on-highlight);border-radius:.25rem;margin-left:.5rem;padding:0 .5rem;font-size:.8125rem;font-weight:700;display:inline-block}.stock-detail{margin-top:.75rem}.stock-detail h3{margin:0 0 .5rem;font-size:1rem}.movement-list{margin:0;padding:0;list-style:none}.movement-list li{border-bottom:1px solid var(--border);flex-direction:column;padding:.5rem 0;display:flex}.choice{border:0;margin:0 0 .75rem;padding:0}.choice legend{padding:0;font-weight:700}.choice-option,.check{min-height:var(--touch);align-items:center;gap:.75rem;font-weight:400;display:flex}.badge-ok{background:var(--ok-soft-bg);color:var(--ok-soft-text)}.badge-alert{background:var(--color-prune);color:var(--color-white)}.places{color:var(--color-teal-text);font-weight:700}.places-full{color:var(--text-muted)}.alert{border-radius:.5rem;margin-bottom:.75rem;padding:.75rem 1rem}.alert-J-2{background:var(--alert-bg);color:var(--on-alert)}.alert-J-2 .places{color:var(--on-alert)}.alert-J-7{background:var(--highlight-bg);color:var(--on-highlight)}.alert-label{margin:0 0 .25rem;font-weight:700}.form-grid{gap:.75rem;display:grid}.form-grid label{gap:.25rem;display:grid}.form-grid .check{min-height:var(--touch);align-items:center;gap:.75rem;font-weight:400;display:flex}.form .choice-option,.form .check{display:flex}.choice-option input,.check input{flex:none}.form-grid .check input{width:1.5rem;height:1.5rem;accent-color:var(--check-accent)}.card{border:2px solid var(--border);background:var(--surface);border-radius:.5rem;padding:.75rem 1rem}.public-menu{margin-top:2rem}.public-menu .menu-band{text-transform:uppercase;min-width:60%;margin:1.25rem 0 .5rem;padding:.375rem 1.5rem .375rem .75rem;font-size:1rem;display:inline-block}.menu-band.cat-hot{background:var(--cat-hot);color:var(--on-cat-hot)}.menu-band.cat-cold{background:var(--cat-cold);color:var(--on-cat-cold)}.menu-band.cat-alcohol{background:var(--cat-alcohol);color:var(--on-cat-alcohol)}.menu-band.cat-other{background:var(--cat-other);color:var(--on-cat-other)}.public-menu ul{margin:0;padding:0 0 0 .75rem;list-style:none}.public-menu li{align-items:baseline;gap:.375rem;padding:.3rem 0;display:flex}.public-menu .menu-name{flex:1;align-items:baseline;min-width:0;display:flex}.public-menu .menu-name:after{content:"";border-bottom:2px dotted var(--text-muted);flex:1;min-width:1rem;margin-left:.375rem}.public-menu .menu-price{white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:400}.availability-grid{border-collapse:collapse;width:100%}.availability-grid th,.availability-grid td{border-bottom:1px solid var(--border);text-align:center;padding:.25rem}.availability-grid th[scope=row]{text-align:left}.availability-cell{min-height:var(--touch);justify-content:center;align-items:center;display:flex}.availability-cell input{width:1.75rem;height:1.75rem;accent-color:var(--check-accent)}.agenda{margin-top:2rem}input[type=search],input[type=tel],input[type=date],input[type=number],input[type=file],select{min-height:var(--touch);border:2px solid var(--control-border);background:var(--input-bg);color:var(--input-text);font:inherit;border-radius:.5rem;padding:0 .75rem}.form input[type=text],.form input[type=email],.form input[type=search],.form input[type=tel],.form input[type=date],.form input[type=number],.form select{width:100%;margin-bottom:.75rem;display:block}.form-row input{margin-bottom:0}.input-big{min-height:64px;font-size:1.5rem}.btn-big{min-height:56px;font-size:1.125rem}.actions{flex-wrap:wrap;gap:.5rem;margin:.5rem 0 1rem;display:flex}.check{min-height:var(--touch);align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.form .check{font-weight:400}.check input{width:1.5rem;height:1.5rem;accent-color:var(--check-accent);flex:none}.subnav ul{flex-wrap:wrap;gap:.5rem;margin:0 0 1rem;padding:0;list-style:none;display:flex}.subnav a{border:2px solid var(--border);min-height:44px;color:var(--text);border-radius:.5rem;align-items:center;padding:0 .875rem;font-weight:700;text-decoration:none;display:inline-flex}.subnav a:hover{border-color:var(--secondary-border)}.subnav a[aria-current=page]{background:var(--active-bg);border-color:var(--active-bg);color:var(--active-text)}.result-list,.row-list{margin:1rem 0;padding:0;list-style:none}.result{border:2px solid var(--border);background:var(--surface);border-radius:.5rem;margin-bottom:1rem;padding:1rem}.result-name{margin:0 0 .5rem;font-size:1.5rem;font-weight:700}.status-big{text-align:center;border-radius:.5rem;margin:.5rem 0;padding:1rem;font-size:2.5rem;font-weight:700;line-height:1.1}.status-ok{background:var(--ok-bg);color:var(--on-ok)}.status-renew{background:var(--alert-bg);color:var(--on-alert)}.badge-minor{background:var(--color-prune);color:var(--color-white);border-radius:.5rem;margin-left:0;padding:.5rem 1rem;font-size:1.5rem}.pill{border-radius:1rem;padding:.125rem .625rem;font-size:.9375rem;font-weight:700;display:inline-block}.pill-ok{background:var(--ok-bg);color:var(--on-ok)}.pill-renew{background:var(--highlight-bg);color:var(--on-highlight)}.row-link{min-height:var(--touch);border-bottom:1px solid var(--border);color:var(--text);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem 0;text-decoration:none;display:flex}.fee{border-bottom:1px solid var(--border);padding:.5rem 0 .75rem}.fee p{margin:0 0 .5rem}.fee-error{border-left:6px solid var(--color-prune);padding-left:.75rem;font-weight:700}.facts div{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:.5rem;padding:.375rem 0;display:flex}.facts dt{min-width:9rem;font-weight:700}.facts dd{overflow-wrap:anywhere;margin:0}.counters{grid-template-columns:repeat(2,1fr);gap:.5rem;margin:1rem 0;display:grid}.counters div{border:2px solid var(--border);text-align:center;border-radius:.5rem;padding:.75rem}.counters dt{font-weight:700}.counters dd{color:var(--text);margin:0;font-size:2rem;font-weight:700}.count{font-size:1.5rem;font-weight:700}.scanner video{background:var(--color-night);border-radius:.5rem;width:100%;max-height:60dvh;margin-bottom:.5rem;display:block}.member-card{border:2px solid var(--border);background:var(--surface);text-align:center;border-radius:1rem;padding:1rem}.member-card img{max-width:100%;height:auto}.fee,.row-link,.notice,.result{overflow-wrap:anywhere}input[type=file]{max-width:100%}.app-footer{text-align:center;padding:1rem;font-size:.875rem}.btn-block{width:100%;display:flex}.sign-in{flex-direction:column;gap:1rem;margin:1.5rem 0;display:flex}.sign-in-or{color:var(--text-muted);align-items:center;gap:.75rem;margin:0;font-size:.875rem;display:flex}.sign-in-or:before,.sign-in-or:after{content:"";border-top:1px solid var(--border);flex:1}.sign-in-email{flex-direction:column;gap:.5rem;display:flex}.sign-in-email label{font-weight:700}.sign-in-email input{width:100%;min-height:var(--touch);box-sizing:border-box}.sign-in-email .hint{margin:0}.demo-box{border-top:1px solid var(--border);margin-top:2rem;padding-top:1.25rem}.home-public{grid-template-columns:minmax(0,1fr);align-items:start;column-gap:2.5rem;display:grid}@media (width>=60rem){.app-top{position:static}.app-header{min-height:72px;padding:0 1.5rem}.brand{font-size:1.375rem}.app-header .btn{min-height:44px}.demo-banner{padding:.375rem 1.5rem;font-size:.9375rem}.app-body-sidebar{flex-direction:row;align-items:stretch}.app-body-sidebar .module-nav{border-bottom:0;border-right:1px solid var(--border);flex:none;width:15rem}.app-body-sidebar .module-nav ul{max-height:100dvh;padding:1rem 0;position:sticky;top:0;overflow-y:auto}.app-body-sidebar .module-nav a{padding:0 1.25rem}.app-body-sidebar .module-nav a:hover{background:var(--nav-hover-bg)}.page{padding:2rem 2rem 3rem}.page-narrow{max-width:72rem}.app-body:not(.app-body-sidebar) .page-narrow{max-width:40rem}.app-body:not(.app-body-sidebar) .home-public{grid-template-columns:minmax(0,1fr)}h1{font-size:1.75rem}.page-narrow>p,.page-narrow>.notice,.form,.sign-in,.demo-box,.facts,.group-list,.permissions,.cash-count,.member-card,.form-grid{max-width:40rem}.form.card{max-width:48rem}.stock-list,.opening-list,.export-list{grid-template-columns:repeat(auto-fill,minmax(min(26rem,100%),1fr));gap:.75rem;display:grid}.stock-list>.stock-row,.opening-list>.opening{margin-bottom:0}.home-public{grid-template-columns:repeat(2,minmax(0,1fr))}.public-menu,.agenda{margin-top:1rem}.counters{grid-template-columns:repeat(4,minmax(0,1fr))}}.app-header .btn:hover:not(:disabled){background:var(--surface);border-color:var(--secondary-border)}.module-nav a:focus-visible{outline-offset:-3px}
