:root{--bg: #ece7e0;--surface: #ffffff;--surface-2: #e8e1d9;--line: #e6ded7;--line-strong: #d5c8bd;--control-border: #7f7269;--ink: #241f1c;--ink-2: #5e534c;--ink-3: #6a5f55;--accent: #8a5432;--accent-ink: #ffffff;--accent-wash: #f6ece4;--ok: #2c6b48;--ok-wash: #e8f3ec;--warn: #8a5a12;--warn-wash: #fdf2e0;--danger: #97341f;--danger-wash: #fbeae6;--test: #9c4a16;--test-ink: #ffffff;--radius-sm: 10px;--radius: 16px;--radius-lg: 22px;--shadow-1: 0 1px 2px rgb(36 31 28 / 5%), 0 1px 3px rgb(36 31 28 / 4%);--shadow-2: 0 4px 12px rgb(36 31 28 / 8%), 0 2px 4px rgb(36 31 28 / 4%);--tap: 2.75rem;--gap: 1rem;--focus-ring: 2.5px solid var(--accent);--focus-ring-width: 2.5px;--focus-ring-offset: 2px;--focus-reach: 5.5px;--ease: cubic-bezier(.2, 0, .1, 1);color-scheme:light}@media (prefers-color-scheme: dark){:root{--bg: #14110d;--surface: #2c251c;--surface-2: #3f362c;--line: #453b30;--line-strong: #56493c;--control-border: #968574;--ink: #f3ede6;--ink-2: #c3b6a9;--ink-3: #b0a294;--accent: #e0a878;--accent-ink: #241f1c;--accent-wash: #2c2318;--ok: #7fc79b;--ok-wash: #1b2a20;--warn: #e0b070;--warn-wash: #2b2317;--danger: #e79178;--danger-wash: #2e1c17;--test: #e0a878;--test-ink: #241f1c;--shadow-1: 0 1px 2px rgb(0 0 0 / 30%);--shadow-2: 0 8px 24px rgb(0 0 0 / 45%);color-scheme:dark}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3{line-height:1.25;margin:0 0 .75rem}h1{font-size:1.5rem}h2{font-size:1.2rem}h3{font-size:1.05rem}a{color:var(--accent)}:focus-visible{outline:var(--focus-ring);outline-offset:2px}.segmented__option:focus-visible,.tile:focus-visible{outline-offset:-5px}.segmented__option--active:focus-visible,.tile-active:focus-visible{outline-color:var(--accent-ink)}.app{min-height:100vh;display:flex;flex-direction:column}.update-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem;padding:.5rem 1rem;background:var(--surface-2);border-bottom:1px solid var(--line);font-weight:600}.test-banner{background:var(--test);color:var(--test-ink);font-weight:700;text-align:center;padding:.4rem;letter-spacing:.05em}.app__header{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:1fr auto;align-items:center;gap:.5rem 1rem;padding:calc(.75rem + env(safe-area-inset-top)) max(1.25rem,calc((100% - 72rem)/2 + 1.25rem)) .75rem;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.app__identity{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1rem}.app__home{display:block;text-decoration:none;border-radius:var(--radius-sm)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@font-face{font-family:Fraunces;font-style:normal;font-weight:300 600;font-display:swap;src:url(/fonts/fraunces-latin.woff2) format("woff2")}.wordmark{display:inline-flex;align-items:center;gap:.6rem;color:var(--accent)}.wordmark__text-block{display:grid}.wordmark__text{font-family:Fraunces,Georgia,Times New Roman,serif;font-weight:300;font-size:1.35rem;letter-spacing:-.01em;line-height:1.1;white-space:nowrap;color:var(--ink)}.wordmark__text b{font-weight:600}.wordmark__app{color:var(--ink-2)}.wordmark__tagline{font-size:.6rem;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--ink-2);margin-top:.1rem}.logo-mark{flex:none}.nav{position:relative}.nav__toggle{display:flex;align-items:center;gap:.55rem;min-height:var(--tap);width:fit-content;padding:.4rem 1rem .4rem .8rem;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font-size:.95rem;font-weight:600;box-shadow:var(--shadow-1)}@media (min-width: 30.0625rem){.nav__current.visually-hidden{position:static;width:auto;height:auto;margin:0;overflow:visible;clip-path:none}}.nav__panel{position:absolute;z-index:30;top:calc(100% + .4rem);right:0;min-width:13rem;max-width:min(20rem,calc(100vw - 2rem));display:flex;flex-direction:column;gap:.2rem;padding:.35rem;border:1px solid var(--line);border-radius:1rem;background:var(--surface);box-shadow:var(--shadow-2)}.nav__item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;min-height:var(--tap);padding:.5rem .75rem;border-radius:.7rem;color:var(--ink-2);font-size:.98rem;font-weight:550;text-decoration:none}.nav__item:hover{background:var(--surface-2)}.nav__item--active{background:var(--surface-2);color:var(--ink);font-weight:650}.nav__heading{margin:.5rem .75rem .1rem;padding-top:.5rem;border-top:1px solid var(--line);color:var(--ink-2);font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.nav__badge,.nav__count{min-width:1.4rem;padding:0 .35rem;border-radius:999px;background:var(--accent);color:var(--accent-ink);font-size:.78rem;font-weight:700;font-variant-numeric:tabular-nums;text-align:center}.app__account{position:relative}.app__account summary{list-style:none;cursor:pointer;min-height:var(--tap);display:flex;align-items:center;padding:0 .6rem;border-radius:999px;font-size:.85rem;color:var(--ink-2);white-space:nowrap;max-width:10rem}.app__account summary>span{overflow:hidden;text-overflow:ellipsis}@media (max-width: 30rem){.app__header{grid-template-columns:minmax(0,1fr) auto}.app__identity{flex-wrap:nowrap;min-width:0}.app__account summary{max-width:6rem}.nav__toggle{padding:.4rem .75rem}.app__account-panel{left:auto;right:0}}.app__account summary::-webkit-details-marker{display:none}.app__account summary:after{content:"";width:.4rem;height:.4rem;margin-left:.4rem;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translate(-1px,-1px)}.app__account[open] summary{background:var(--surface-2)}.app__account-panel{position:absolute;left:0;top:calc(100% + .4rem);z-index:20;min-width:14rem;display:grid;gap:.6rem;padding:.9rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-2)}.app__user{margin:0;font-size:.85rem;color:var(--ink-2);overflow-wrap:anywhere}.app-main{flex:1;width:100%;max-width:72rem;margin:0 auto;padding:1.25rem}.app-footer{padding:.75rem 1.25rem;color:var(--ink-2);font-size:.875rem;border-top:1px solid var(--line)}button,.btn{font:inherit;font-weight:600;min-height:var(--tap);min-width:var(--tap);padding:0 1.1rem;border-radius:var(--radius-sm);border:1.5px solid var(--control-border);background:var(--surface);color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;text-decoration:none}button:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.sign-in,.lock-screen{max-width:24rem;margin:3rem auto}.btn-danger{background:var(--danger);border-color:var(--danger);color:var(--surface)}.btn-quiet{border-color:transparent;background:transparent;color:var(--accent)}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem}.toolbar .spacer,.toolbar .grow{flex:1}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-1);padding:1rem 1.25rem;margin-bottom:1rem}.list{list-style:none;margin:0;padding:0}.list>li{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding:.6rem 0;border-bottom:1px solid var(--line);min-height:var(--tap)}.list>li:last-child{border-bottom:none}.list.card{padding:.25rem 1.25rem;margin-bottom:1rem}.link-row{display:flex;align-items:center;gap:1rem;width:100%;min-height:calc(var(--tap) * 1.4);padding:.5rem 0;color:var(--ink);text-decoration:none}.list>li:has(>.link-row){padding:0}.link-row__text{display:grid;gap:.1rem;flex:1}.link-row__title{font-weight:650}.link-row__hint{color:var(--ink-2);font-size:.92rem}.link-row__arrow{flex:none;width:.55rem;height:.55rem;margin-right:.3rem;border-right:2px solid var(--ink-2);border-top:2px solid var(--ink-2);transform:rotate(45deg)}.link-row:hover .link-row__title{color:var(--accent)}.tabs{display:flex;flex-wrap:wrap;gap:.35rem;width:fit-content;max-width:100%;padding:.25rem;margin-bottom:1rem;background:var(--surface-2);border-radius:999px}.tabs__tab{display:flex;align-items:center;min-height:var(--tap);padding:.35rem 1.1rem;white-space:nowrap;border-radius:999px;color:var(--ink-2);font-weight:600;text-decoration:none}.tabs__tab:hover{color:var(--ink)}@media (max-width: 52rem){.tabs__tab{padding-inline:.75rem}}@media (max-width: 40rem){.tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}}.tabs__tab--active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1)}.list .grow{flex:1;min-width:10rem}.list>li.row{display:grid;grid-template-columns:4.4rem minmax(0,1fr) 8rem auto;grid-template-areas:"lead main amount actions";align-items:center;gap:.25rem 1rem}.row__lead{grid-area:lead;font-weight:700;font-variant-numeric:tabular-nums}.row__lead--time{display:flex;flex-direction:column;align-self:start;white-space:nowrap}.row__until{color:var(--ink-2);font-weight:500}.row__main{grid-area:main;display:grid;gap:.1rem}.row__detail{display:block;color:var(--ink-2);font-size:.92rem}.row__amount{grid-area:amount}.row__amount .row__detail{font-size:.8rem}.row__actions{grid-area:actions;display:flex;justify-content:flex-end;align-items:center;gap:.5rem;white-space:nowrap}.appointment-customer{display:inline-flex;align-items:center;gap:.4rem;text-decoration:none}@media (max-width: 52rem){.appointment-customer{padding:0;justify-content:center}.appointment-customer__label{display:none}}@media (max-width: 40rem){.list>li.row.appointment-row{grid-template-columns:4.4rem minmax(0,1fr) auto;grid-template-areas:"lead main amount" "actions actions actions"}.appointment-row .row__amount.amount{text-align:right;align-self:start}}[data-openable]{touch-action:manipulation}[data-openable]:focus-visible{outline:var(--focus-ring);outline-offset:-3px}@media (max-width: 40rem){.list>li.row{grid-template-columns:4.4rem minmax(0,1fr) auto;grid-template-areas:"lead main main" ". amount actions"}.row__amount.amount{text-align:left}}.muted{color:var(--ink-2)}.inactive{color:var(--ink-2);text-decoration:line-through}.badge{display:inline-flex;align-items:center;padding:.1rem .6rem;border-radius:999px;font-size:.875rem;font-weight:600;background:var(--surface-2);color:var(--ink)}a.badge-link{text-decoration:none;min-height:var(--tap);display:inline-flex;align-items:center}a.badge-link:hover{text-decoration:underline}.badge-ok{background:var(--ok-wash);color:var(--ok)}.badge-warn{background:var(--warn-wash);color:var(--warn)}.notice{border-radius:var(--radius-sm);padding:.75rem 1rem;margin-bottom:1rem;background:var(--surface-2)}.notice-warn{background:var(--warn-wash)}.notice-warn .link-button{white-space:nowrap}.notice-error,[role=alert]{color:var(--danger)}.notice-error{background:var(--danger-wash)}.form{display:grid;gap:.9rem}.form>h2,.form>h3,.form>p{margin:0}.filter{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}.filter__fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.9rem;align-items:end}.filter__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.filter__actions>*{white-space:nowrap}.filter__actions .spacer{flex:1}.inline-field{display:flex;flex-wrap:wrap;align-items:end;gap:.75rem}.inline-field .field{flex:1;min-width:14rem}dl.summary{display:flex;flex-wrap:wrap;gap:.5rem 2rem;margin:0 0 .75rem;padding-bottom:.75rem;border-bottom:1px solid var(--line)}dl.summary dt{color:var(--ink-2);font-size:.85rem}dl.summary dd{margin:0;font-weight:650;font-variant-numeric:tabular-nums}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.9rem;align-items:start}.form-row>*{min-width:0}.field{display:grid;gap:.3rem;font-weight:600}.field input,.field select,.field textarea,.field-inline input{font:inherit;font-weight:400;min-height:var(--tap);padding:.4rem .75rem;border:1.5px solid var(--control-border);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);width:100%}.field-check{display:flex;align-items:center;gap:.6rem;min-height:var(--tap);font-weight:600}.field-check input[type=checkbox],.field-check input[type=radio]{width:1.4rem;height:1.4rem}.field-inline{display:flex;align-items:center;gap:.6rem;font-weight:600}.field-inline input{width:auto;min-width:11rem}.field-error input,.field-error select,.field-error textarea{border-color:var(--danger);border-width:2px}.field-text{display:flex;align-items:center;min-height:var(--tap);font-weight:400}.field-hint{font-weight:400;font-size:.9rem;color:var(--ink-2)}.two-columns{display:grid;grid-template-columns:minmax(16rem,1fr) 2fr;gap:1rem;align-items:start}@media (max-width: 52rem){.two-columns{grid-template-columns:1fr}}.swatch{display:inline-block;width:1rem;height:1rem;border-radius:4px;border:1px solid var(--control-border);vertical-align:middle}table.table{width:100%;border-collapse:collapse}.table-scroll{position:relative;overflow-x:auto}table.table th,table.table td{text-align:left;padding:.5rem .4rem;border-bottom:1px solid var(--line);vertical-align:top}.amount{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.5rem;margin:.75rem 0}.tile{min-height:calc(var(--tap) * 1.3);justify-content:center;text-align:center}.segmented{display:inline-flex;width:fit-content;max-width:100%;padding:.25rem;gap:.25rem;background:var(--surface-2);border-radius:var(--radius-sm)}.segmented--full{display:flex;width:100%}.catalog__kinds{margin-bottom:.9rem}.segmented--full .segmented__option{flex:1;min-width:0}.segmented__option{min-width:8rem;white-space:nowrap;border:none;background:transparent;color:var(--ink-2)}@media (max-width: 30rem){.segmented__option{flex:1 1 auto;min-width:0;padding-inline:.5rem}}.segmented__option--active{background:var(--accent);color:var(--accent-ink);box-shadow:var(--shadow-1)}.picks{list-style:none;margin:.75rem 0 0;padding:0;display:grid;gap:.4rem}.chips{display:flex;flex-wrap:wrap;gap:.4rem;padding-bottom:.9rem;margin:.75rem 0 .25rem;border-bottom:1px solid var(--line-strong)}.chip{min-height:var(--tap);padding:.3rem .9rem;border-radius:999px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-2);font-weight:600;font-size:.92rem;white-space:nowrap}.chip--active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.picks-section+.picks-section{margin-top:1rem}.picks-section__title{margin:.9rem 0 0;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}.pick{width:100%;display:flex;justify-content:space-between;align-items:center;gap:1rem;text-align:left;padding:.5rem .9rem;font-weight:500}.pick__name{flex:1;min-width:0}.pick__amount{flex:none;font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.pick__amount--open{max-width:7rem;white-space:normal;text-align:right;font-size:.85rem;font-weight:500;color:var(--ink-2)}.tile-active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.list>li.line-changed{background:var(--surface-2)}.list .line-editor{flex-basis:100%;grid-column:1 / -1}.list>li.receipt-line{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.4rem 1rem;padding-inline:.75rem;margin-inline:-.75rem;border-radius:var(--radius-sm)}.receipt-draft__lines{margin-bottom:1rem}.receipt-draft__actions{margin-top:1rem;margin-bottom:0}.receipt-line__name{display:grid;gap:.1rem;font-weight:600}.receipt-line__amount{font-weight:650}.receipt-line__controls{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.receipt-line__controls .spacer{flex:1}.btn-icon{padding:0;width:var(--tap)}.btn-icon--danger{color:var(--danger)}.icon{display:block;flex:none}.qty{display:inline-flex;align-items:center;gap:.25rem}.qty__value{min-width:2rem;text-align:center;font-variant-numeric:tabular-nums}.change{font-size:1.5rem}.logo-preview{max-height:5rem;max-width:14rem;background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);padding:.25rem}.print-test fieldset{border:1px solid var(--line);border-radius:var(--radius-sm);margin:1rem 0}.print-test label{display:inline-flex;align-items:center;gap:.4rem;margin-right:1.5rem;min-height:var(--tap)}table.table .amount{text-align:right}.pay{display:grid;gap:1rem;align-content:start;min-width:0}.pay h2,.pay h3,.pay .toolbar,.pay .tiles{margin:0}.pay .tiles{grid-template-columns:repeat(auto-fill,minmax(7rem,1fr))}.pay__payable th,.pay__payable td{font-weight:700;font-size:1.15rem;border-bottom:none}.pay-rows{list-style:none;margin:0;padding:0;display:grid}.pay-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.75rem;padding:.4rem 0;border-bottom:1px solid var(--line)}.pay-row__label{display:grid;font-weight:600}.pay-row__amount{font-weight:600}.pay-part{display:grid;grid-template-columns:minmax(8rem,1fr) 10rem auto;align-items:end;gap:.75rem;padding:.4rem 0}.voucher-redeem{display:grid;gap:.75rem}.voucher-redeem__code{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:.5rem}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:start center;padding:1rem;overflow-y:auto;background:#00000059}.sheet{width:min(44rem,100%);margin-block:2rem}.link-button{min-height:0;padding:0;border:none;background:none;color:inherit;text-decoration:underline;text-underline-offset:.2em;cursor:pointer}.visit-row,.list>li.visit-row{display:grid;grid-template-columns:6.5rem minmax(0,1fr) auto;gap:.75rem;align-items:baseline}@media (max-width: 40rem){.visit-row,.list>li.visit-row{grid-template-columns:minmax(0,1fr) auto}.visit-row .visit-row__main{grid-column:1 / -1;grid-row:2}}.visit-row__lead{font-weight:700;font-variant-numeric:tabular-nums}.list>li.row.row--plain{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"main amount"}.row--plain .row__amount.amount{text-align:right}.row--plain .row__main{overflow-wrap:anywhere}.list>li.row.unbilled-row{grid-template-columns:6.2rem minmax(0,1fr) auto;grid-template-areas:"lead main actions" "reason reason reason";align-items:start}.unbilled-reason{grid-area:reason;display:flex;flex-wrap:wrap;align-items:end;gap:.5rem 1rem;margin-top:.6rem}.unbilled-reason__actions{display:flex;gap:.5rem}.row__actions--wrap{flex-wrap:wrap;white-space:normal}.row__actions--wrap>*{white-space:nowrap}@media (max-width: 40rem){.list>li.row.unbilled-row{grid-template-columns:6.2rem minmax(0,1fr);grid-template-areas:"lead main" "actions actions" "reason reason"}.unbilled-row .row__actions{justify-content:flex-start;margin-top:.4rem}.unbilled-reason,.unbilled-reason .field,.unbilled-reason__actions{width:100%}}.inline-add{display:flex;flex-wrap:wrap;align-items:end;gap:.5rem 1rem}.inline-add .field{flex:1 1 14rem;max-width:24rem}.code-applied{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.75rem;margin-block:.5rem}.suggestions{margin-block:.75rem;padding-top:.5rem;border-top:1px solid var(--line)}.suggestions h3{margin:0 0 .25rem;font-size:1rem}.suggestion{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:.5rem}@media (max-width: 30rem){.suggestion{grid-template-columns:minmax(0,1fr) auto}}.pay__tip{display:grid;gap:.75rem;min-width:0}.pay__tip-row{display:flex;flex-wrap:wrap;align-items:end;gap:.5rem 1rem}.pay__tip-row .field{width:11rem}.tip-dial{display:grid;gap:.5rem;max-width:22rem}.tip-dial__row{display:flex;align-items:center;gap:.75rem}.tip-dial__step{flex:none;width:calc(var(--tap) * 1.3);height:calc(var(--tap) * 1.3);padding:0;font-size:1.6rem;line-height:1}.tip-dial__value{flex:1;display:flex;align-items:center;gap:.35rem;min-width:0;font-size:1.25rem;font-weight:700}.tip-dial__value input{width:100%;min-width:0;min-height:var(--tap);text-align:right;font-size:inherit;font-weight:inherit;font-variant-numeric:tabular-nums}.tip-dial__value.field-error input{border-color:var(--danger)}.tip-dial__slider{width:100%;min-height:var(--tap);accent-color:var(--accent)}.pay__given{display:flex;flex-wrap:wrap;align-items:end;gap:.5rem 1.5rem}.pay__given .field{width:11rem}.pay__given .change{margin:0;min-height:var(--tap);display:flex;align-items:center;gap:.4rem}.pay__add{justify-self:start;padding-inline:0}.pay__fields{display:grid;gap:1rem;min-width:0;margin:0;padding:0;border:0}.terminal-pay p{margin:0 0 .5rem}@media (max-width: 40rem){.list.terminal-readers>li.row{grid-template-columns:minmax(0,1fr);grid-template-areas:"lead" "main" "actions"}.terminal-readers .row__lead{justify-self:start}.terminal-readers .row__actions{flex-wrap:wrap;justify-content:flex-start;white-space:normal}}.counting input{width:6rem;min-height:var(--tap);text-align:right}.pay__actions{padding-top:1rem;border-top:1px solid var(--line)}.years__toggle{white-space:nowrap}.year-details{padding:.5rem 0}.year-details__lists{display:grid;gap:1rem 1.5rem;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}.year-details__lists h4{margin:0 0 .25rem}.pay__after{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem 1.5rem;padding-top:1rem;border-top:1px solid var(--line)}.pay__after .field-check{white-space:nowrap}.pay__send{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.5rem;margin-left:auto}.pay__after+.pay__actions{padding-top:.75rem;border-top:none}.sale-done{display:grid;gap:.5rem}.sale-done h2,.sale-done p{margin:0}.receipt--preview{color:#333;background:#fcfbf9}@media (max-width: 40rem){.pay-part{grid-template-columns:minmax(0,1fr) auto}.pay-part .field:first-child{grid-column:1 / -1}.voucher-redeem__code{grid-template-columns:minmax(0,1fr) auto}.voucher-redeem__code .btn-quiet{grid-column:1 / -1;justify-self:start;padding-inline:0}}.receipt-panel{display:grid;grid-template-columns:minmax(16rem,1fr) auto;gap:1.5rem;align-items:start;margin-bottom:1.5rem}.receipt-panel__actions{display:grid;gap:1rem}.receipt-panel__mail{padding:1rem;border:1px solid var(--line);border-radius:var(--radius-sm)}.receipt-panel__mail h3{margin:0}.receipt-panel .receipt{margin-top:0}@media (max-width: 52rem){.receipt-panel{grid-template-columns:1fr}}.contact-form{min-width:0}.send-receipt{display:grid;gap:.75rem}@media (max-width: 30rem){.cash-book__entry{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:.75rem;padding:.35rem 0;border-bottom:1px dashed var(--line-strong)}.cash-book__at{grid-area:1 / 1}.cash-book__amount{grid-area:1 / 2;font-weight:700}.cash-book__text{grid-area:2 / 1}.cash-book__balance{grid-area:2 / 2;color:#555}}.fine-print{font-size:.8rem;color:var(--ink-2);justify-self:start}.list>li.group-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.4rem}.group-row__name{justify-content:flex-start;text-align:left}.setting-table{display:grid;grid-template-columns:var(--setting-columns);column-gap:.75rem;padding-block:.5rem}.setting-table>*{grid-column:1 / -1}.setting-table__head,.setting-row,.setting-row__form{display:grid;grid-template-columns:subgrid;grid-column:1 / -1;align-items:center;row-gap:.4rem}.setting-table--methods{--setting-columns: minmax(10rem, 2fr) minmax(7rem, 1fr) 5rem auto}.setting-table--categories{--setting-columns: minmax(10rem, 2fr) minmax(8rem, 1.2fr) minmax(5rem, .8fr) minmax(5rem, .8fr) 5rem auto}.setting-row__form{align-items:start}.setting-table__head{padding:.25rem 0 .5rem;border-bottom:1px solid var(--line);font-size:.85rem;font-weight:700;color:var(--ink-2)}.setting-row{padding:.6rem 0;border-bottom:1px solid var(--line)}.setting-row:last-child{border-bottom:none}.setting-row .field{gap:.15rem}@media (max-width: 40rem){.setting-table__head{display:none}.setting-table,.setting-row{display:block}.setting-row__form{grid-template-columns:1fr 1fr}.setting-row .field:first-of-type{grid-column:1 / -1}.setting-row__label.visually-hidden{position:static;width:auto;height:auto;margin:0;overflow:visible;clip-path:none;white-space:normal;font-size:.85rem}}.detail-line{display:block}.divider{border:none;border-top:1px solid var(--line);margin:1rem 0}.receipt{margin-top:1.5rem;border:1px dashed var(--line-strong);padding:1rem;background:#fff;color:#000}.receipt table{width:100%;border-collapse:collapse}.receipt td{padding:.2rem 0}.receipt .amount{padding-left:.75rem}.receipt .total td{border-top:1px solid #000000;font-weight:700;padding-top:.4rem}.receipt-test{font-weight:700}.receipt-mark{display:inline-block;margin-right:.3em;vertical-align:-.15em;line-height:0}.receipt--a4{max-width:170mm}.receipt--a4 h2{color:#8a5432}.receipt--report{max-width:none}@media print{.receipt--report{max-width:170mm}}.receipt--receipt80{width:72mm;font-size:11px;page:receipt80}.receipt h2,.receipt h3{margin:.2rem 0}.receipt h2{font-size:1.25em}.receipt h3{font-size:1.1em;margin-top:.8rem}.receipt-logo{max-height:22mm;max-width:60mm;display:block;margin-bottom:.4rem}.receipt-detail{font-size:.85em;color:#333;overflow-wrap:anywhere}.receipt-lines,.receipt-totals,.receipt-vat{border-top:1px dashed #000000;margin-top:.4rem}.receipt-footer{margin:.6rem 0 0;text-align:center}.barcode{display:block;width:100%;max-width:70mm;height:16mm;margin:.6rem 0 .2rem}.voucher-title{font-size:1.6em}.voucher-value{font-size:1.3em;font-weight:700}.voucher-code{font-family:ui-monospace,Cascadia Mono,Consolas,monospace;letter-spacing:.08em;font-weight:700}dl.facts{display:grid;grid-template-columns:max-content 1fr;gap:.4rem 1rem}dl.facts dt{font-weight:600}dl.facts dd{margin:0}@page{size:A4 portrait;margin:15mm 20mm}@page receipt80{size:80mm 297mm;margin:4mm}@media print{.no-print,.app__header,.app-footer,.test-banner{display:none!important}body{background:#fff}.app-main{padding:0}body:has(.receipt) *{visibility:hidden}body:has(.receipt) .app-main :not(:has(.receipt)):not(.receipt):not(.receipt *){display:none!important}body:has(.receipt) .receipt,body:has(.receipt) .receipt *{visibility:visible}body:has(.receipt) .receipt{position:absolute;left:0;top:0}.receipt{border:none;margin:0;padding:0;print-color-adjust:exact;-webkit-print-color-adjust:exact}.receipt tr{break-inside:avoid}.receipt--a4{width:100%}}:root{--chart-1: #c0652f;--chart-2: #3f6fc2;--chart-3: #d49a12;--chart-4: #a3509c;--chart-5: #1f9a73;--chart-other: #8a8078;--chart-comparison: #8a8078;--chart-seq: #8a5432}@media (prefers-color-scheme: dark){:root{--chart-1: #cf6f35;--chart-2: #5a86d8;--chart-3: #b88a1a;--chart-4: #b35aa8;--chart-5: #189a6a;--chart-other: #968574;--chart-comparison: #968574;--chart-seq: #e0a878}}.period-picker .chips{margin-top:0}.period-picker__hint{margin:.35rem 0 0}.period-picker .filter__actions>.muted{white-space:normal}.chart{margin:0 0 1rem;min-width:0}.chart__head{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-bottom:.5rem}.chart__title{flex:1;min-width:12rem;font-weight:650;font-size:1.05rem}.chart__view .segmented__option{min-width:6.5rem}.chart__legend{display:flex;flex-wrap:wrap;gap:.25rem 1.25rem;list-style:none;margin:0 0 .5rem;padding:0;color:var(--ink-2);font-size:.9rem}.chart__legend li{display:inline-flex;align-items:center;gap:.4rem}.chart__swatch{display:inline-block;flex:none;width:.8rem;height:.8rem;border-radius:3px;background:currentColor}.chart__swatch--line{height:3px;width:1rem;border-radius:2px}.chart__swatch--hatch{background:repeating-linear-gradient(45deg,var(--ink-2) 0 2px,var(--surface) 2px 4px)}.chart__box{width:100%;min-width:0}.chart__svg{display:block;max-width:100%;overflow:visible;touch-action:pan-y}.chart__svg:focus-visible{outline:var(--focus-ring);outline-offset:4px;border-radius:var(--radius-sm)}.chart__grid line{stroke:var(--line);stroke-width:1}.chart__axis{stroke:var(--line-strong);stroke-width:1}.chart__grid text,.chart__tick{fill:var(--ink-2);font-size:12px;font-variant-numeric:tabular-nums}.chart__hit{fill:transparent;cursor:pointer}.chart__band--active .chart__hit{fill:var(--surface-2);opacity:.6}.chart__cursor{stroke:var(--line-strong);stroke-width:1}.chart__center{fill:var(--ink);font-weight:650;font-size:15px;font-variant-numeric:tabular-nums}.chart__slice{cursor:pointer}.chart__slice--active{opacity:.8}.chart__readout{min-height:var(--tap);display:flex;align-items:center;font-size:.92rem}.chart__values{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem 1.25rem;margin:0}.chart__values dd{display:inline-flex;align-items:center;gap:.4rem;margin:0}.chart__category{font-weight:650}.chart__table{overflow-x:auto}.chart__donut{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 2rem}.chart__slices{flex:1;min-width:16rem;list-style:none;margin:0;padding:0}.chart__slice-label{display:grid;grid-template-columns:auto 1fr auto 4.5rem;gap:.6rem;width:100%;justify-content:stretch;text-align:left;color:var(--ink);font-weight:400;padding:0 .25rem}.chart__slice-label[aria-pressed=true]{background:var(--surface-2)}.ranking{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}.ranking__row{display:grid;grid-template-columns:minmax(8rem,2fr) minmax(4rem,3fr) auto;align-items:center;gap:.75rem;min-height:var(--tap);cursor:pointer}.ranking__row--active{background:var(--surface-2);border-radius:var(--radius-sm)}.ranking__track{height:.9rem}.ranking__bar{display:block;height:100%;min-width:2px;border-radius:0 4px 4px 0;background:var(--chart-1)}.ranking__value{min-width:6.5rem}@media (max-width: 40rem){.ranking__row{grid-template-columns:1fr auto}.ranking__track{grid-column:1 / -1;grid-row:2}}.best-customers__scroll{overflow-x:auto}.best-customers td,.best-customers th{white-space:nowrap}table.best-customers .best-customers__name{white-space:normal;font-weight:600}.best-customers__rank{width:3rem;font-weight:700}.best-customers__more{margin:.75rem 0 0}.best-customers__toggle{white-space:nowrap}@media (min-width: 40.0625rem){table.best-customers thead.visually-hidden{position:static;width:auto;height:auto;margin:0;overflow:visible;clip-path:none;white-space:normal}}@media (max-width: 40rem){.best-customers__scroll{overflow-x:visible}table.best-customers,table.best-customers tbody{display:block}table.best-customers tr{display:grid;grid-template-columns:2.25rem minmax(0,1fr) auto;gap:.15rem .75rem;padding:.6rem 0;border-bottom:1px solid var(--line)}table.best-customers th,table.best-customers td{min-height:0;padding:0;border:none}table.best-customers .best-customers__rank{grid-row:1 / span 4;width:auto;text-align:left}table.best-customers .best-customers__figure{grid-column:2 / -1;display:flex;justify-content:space-between;gap:.75rem;color:var(--ink-2);font-size:.92rem}table.best-customers .best-customers__figure:before{content:attr(data-label)}}.chart__row--open{cursor:pointer}.chart__row-button{min-height:var(--tap);width:100%;padding:0;border:none;background:transparent;color:var(--accent);justify-content:flex-start;text-align:left}.drill-down{margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--line)}.drill-down__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem 1rem}.drill-down__head h4{margin:0}.drill-down__close,.idle-count__open{white-space:nowrap}.drill-down__list.list>li.row{grid-template-columns:minmax(0,1fr) 8rem;grid-template-areas:"main amount"}.idle-count{justify-content:space-between;margin-bottom:.5rem}.idle-count p{margin:0}@media (max-width: 40rem){.drill-down__list.list>li.row{grid-template-columns:minmax(0,1fr);grid-template-areas:"main" "amount"}}.key-figures{display:grid;grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:1rem 1.5rem;margin:0}.key-figure{display:grid;align-content:start;gap:.15rem;min-width:0}.key-figure__label{color:var(--ink-2);font-size:.9rem;font-weight:600}.key-figure__label a{display:inline-flex;align-items:center;min-height:var(--tap)}.key-figure dd{margin:0}.key-figure__value{font-size:1.45rem;font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}.key-figure__detail{color:var(--ink-2);font-variant-numeric:tabular-nums}.key-figure__change{display:flex;align-items:flex-start;gap:.3rem;font-size:.88rem;color:var(--ink-2)}.key-figure__change .icon{flex:none;margin-top:.15rem}.key-figure__change--good .icon{color:var(--ok)}.key-figure__change--bad .icon{color:var(--danger)}.statistic>h2{margin-top:.25rem}.overview-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:0 1rem;align-items:start}.list>li.row.row--date{grid-template-columns:6.5rem minmax(0,1fr) 9rem auto}@media (max-width: 40rem){.list>li.row.row--date{grid-template-columns:6.5rem minmax(0,1fr) auto}}.list>li.row.supplier-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"main actions" "edit edit"}.supplier-row__edit{grid-area:edit;padding-block:.5rem .25rem}@media (max-width: 40rem){.list>li.row.supplier-row{grid-template-columns:minmax(0,1fr);grid-template-areas:"main" "actions" "edit"}.supplier-row .row__actions{justify-content:flex-start}}.setting-row__actions{display:flex;align-items:center;gap:.4rem}.setting-table--reasons{--setting-columns: minmax(10rem, 1fr) 5rem auto auto}.formula-section{margin-top:1rem}.formula-section h2{margin:0}.formula-editor{display:grid;gap:.9rem}.formula-application{display:grid;gap:.6rem;margin:0;padding:.75rem 1rem 1rem;border:1px solid var(--line);border-radius:var(--radius-sm);min-width:0}.formula-application legend{padding:0 .3rem;font-weight:700}.formula-label{font-weight:600}.formula-choices-block{display:grid;gap:.3rem}.formula-choices{display:flex;flex-wrap:wrap;gap:.4rem}.formula-colour{display:grid;grid-template-columns:minmax(9rem,12rem) minmax(0,1fr) auto;gap:.5rem 1rem;align-items:end}.formula-grams{display:flex;flex-wrap:wrap;align-items:end;gap:.5rem}.formula-pair{display:flex;flex-wrap:wrap;align-items:end;gap:.5rem 1rem}.field input.formula-free,.formula-free{width:6rem}@media (max-width: 40rem){.formula-colour{grid-template-columns:minmax(0,1fr) auto}.formula-colour .formula-grams{grid-column:1 / -1;grid-row:2}}button.formula-row{width:100%;min-height:var(--tap);padding:.5rem 0;border:none;border-radius:0;background:transparent;color:inherit;font-weight:400;text-align:left;justify-content:stretch}button.formula-row .visit-row__main{display:grid;gap:.1rem}.formula-view{display:grid;gap:.75rem}.formula-view__application h4{margin:0 0 .3rem}.formula-view__colours{margin:0 0 .4rem;padding:0;list-style:none;display:grid;gap:.3rem}.formula-view__facts{display:grid;grid-template-columns:max-content 1fr;gap:.2rem 1rem;margin:0}.formula-view__facts dt{font-weight:600}.formula-view__facts dd{margin:0}.formula-view__note{margin:0;white-space:pre-line}.formula-detail h3{margin:0}.capture--with-scan{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;align-items:start}.scan-preview{position:sticky;top:1rem;padding:0;overflow:hidden}.scan-preview__page{display:block;width:100%;height:calc(100vh - 7rem);min-height:30rem;border:0}img.scan-preview__page{height:auto;min-height:0}@media (max-width: 52rem){.capture--with-scan{grid-template-columns:minmax(0,1fr)}.scan-preview{position:static;order:-1}.scan-preview__page{height:60vh;min-height:20rem}}.link-row.link-row--button{border:0;border-radius:0;background:none;font-weight:inherit;text-align:left;padding-inline:0;cursor:pointer}
