@font-face{font-family:Bogart;src:url('/live/kitchen4all/fonts/Bogart-Semibold.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'Lexend Deca';src:url('/live/kitchen4all/fonts/LexendDeca-Variable.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--wine:#77041c;--red:#ce1537;--ink:#1a2e34;--muted:#666763;--beige:#e0d8cd;--line:#e7e1d9;--paper:#faf8f5;--green:#178545}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:13px/1.65 'Lexend Deca',sans-serif}button,select,input{font:inherit}button{cursor:pointer;border:1px solid var(--line);border-radius:7px;padding:10px 16px;background:white;color:var(--wine);font-weight:500;transition:background .15s}button:hover{background:#f3e9e8}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--red);outline-offset:3px}button:disabled:hover{background:inherit}
aside{position:fixed;inset:0 auto 0 0;width:252px;background:var(--wine);color:white;padding:0 20px 26px;display:flex;flex-direction:column}.brand{margin:0 -20px 35px;padding:36px 30px 29px;background:white}.brand img{display:block;width:100%;height:auto}.brand-sub{font-size:10px;letter-spacing:2.7px;color:var(--wine);margin-top:15px;font-weight:500}nav{display:grid;gap:9px}nav button{border:1px solid transparent;background:transparent;color:#f4d8de;text-align:left;display:flex;gap:11px;padding:13px 12px;font-size:12px}nav button.active{background:#940e2a;color:white;border-color:#b04b60}nav button:hover{background:#8b142b}.aside-bottom{margin-top:auto;padding:50px 9px 0}.payoff{display:block;width:194px;max-width:100%;height:auto;margin-bottom:26px}.connection-label{font-size:10px;color:#f1ccd4;display:flex;align-items:center;gap:7px}.aside-bottom p{font-size:10px;color:#ddabb6;margin:7px 0 0}.dot{flex:none;width:6px;height:6px;background:#e0b6be;border-radius:50%}.connected .dot{background:#68dd84}
main{margin-left:252px;padding:43px 44px;max-width:1900px}header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:30px}.eyebrow{font-size:10px;letter-spacing:1.8px;color:var(--red);font-weight:600}h1,h2,h3{font-family:Bogart,Georgia,serif;font-weight:600;color:var(--wine)}h1{font-size:34px;line-height:1.2;letter-spacing:-.8px;margin:11px 0 12px}h2{font-size:22px;line-height:1.3;margin:0 0 10px}h3{font-size:18px}.subtitle,.muted{color:var(--muted)}.subtitle{margin:0;font-size:12px}.muted{font-size:11px}.quiet{background:transparent;border:0}.primary{background:var(--red);color:white;border-color:var(--red)}.primary:hover{background:#9e1331}.primary:disabled:hover{background:var(--red)}
.connection{background:#f0e7df;border:1px solid #e4d7cb;border-left:4px solid var(--red);border-radius:9px;padding:20px 22px;display:flex;justify-content:space-between;align-items:center;gap:20px}.connection p{margin:5px 0 0;color:#665952;max-width:710px;font-size:11px;line-height:1.75}.connection strong{font-size:14px;color:var(--wine)}.connection button{flex-shrink:0;font-size:11px}.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:27px 0 10px}.toolbar label{margin-left:auto;color:var(--muted);font-size:11px}.tabs{display:flex;gap:3px;background:#eee8e1;padding:4px;border-radius:9px}.tabs button{background:transparent;border:0;font-size:11px}.tabs .active{background:white;color:var(--wine);box-shadow:0 1px 4px #77041c12}.toolbar select{margin-left:8px}#sync{font-size:11px}
.card{background:white;border:1px solid var(--line);border-radius:10px;padding:24px}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:20px 0 14px}.kpi{position:relative;overflow:hidden}.kpi:before{content:'';position:absolute;inset:0 0 auto;height:3px;background:var(--beige)}.kpi:first-child:before{background:var(--red)}.kpi .label{color:var(--muted);font-size:11px}.kpi .value{font-family:Bogart,Georgia,serif;font-size:32px;line-height:1.2;color:var(--wine);margin:20px 0 12px;font-variant-numeric:tabular-nums}.kpi .hint{font-size:10px;color:#77736e;line-height:1.6}.summary-line{font-size:10px;color:#77736e;margin-bottom:22px}.table-card{padding:0;overflow:hidden}.table-title{padding:25px 24px 20px;display:flex;align-items:center;justify-content:space-between;gap:15px}.table-title h2{margin:0}.table-title input{max-width:220px;width:100%;font-size:11px}.scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}th{text-align:right;background:#f8f5f1;color:#75665f;font-size:9px;letter-spacing:.55px;text-transform:uppercase;padding:13px 19px;font-weight:500}td{text-align:right;padding:16px 19px;border-top:1px solid #f0ece7;font-variant-numeric:tabular-nums}tbody tr:hover{background:#fdfaf8}th:first-child,td:first-child{text-align:left}.store{font-weight:500}.code{font-size:10px;color:#8d8781;margin-left:6px}.pill{display:inline-block;border-radius:20px;font-size:9px;padding:4px 9px;background:#f0ece7;color:#746c63}.warn{color:#876022;background:#faf0d9}.positive{color:var(--green)}.negative,.error{color:#aa1732}.error{font-size:11px;white-space:normal;max-width:250px}
.grid2{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;margin-top:22px}.empty{min-height:145px;display:grid;place-content:center;text-align:center;color:#83786d;font-size:12px;gap:5px}.empty strong{color:var(--wine);margin:8px}.explain{font-size:11px;color:#71685f}.hintbox{border-left:3px solid var(--red);padding:13px 16px;background:#faf3ed;margin:18px 0;font-size:11px;color:#746052}.storelist{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.storelist label{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px;font-size:12px}.storelist input{width:17px;height:17px;accent-color:var(--red)}select,input{border:1px solid #d9d0c6;border-radius:6px;padding:9px;background:white;color:var(--ink)}.login{max-width:480px;margin:65px auto;border-top:4px solid var(--red)}.login label{display:grid;gap:8px}.login form{display:grid;gap:18px}.login p{color:var(--muted)}.login #preview{margin-top:12px;font-size:11px}footer{font-size:10px;color:#86786d;margin-top:35px}#notice{position:fixed;bottom:24px;right:24px;background:var(--wine);color:white;padding:14px 20px;border-radius:8px;max-width:500px;display:none;z-index:9}.details{margin-top:20px}.chart{display:flex;align-items:flex-end;gap:10px;height:160px;padding-top:20px}.chart-group{flex:1;display:flex;gap:3px;align-items:flex-end;height:100%;position:relative}.bar{flex:1;background:var(--red);min-height:2px;border-radius:4px 4px 0 0}.bar.old{background:var(--beige)}.chart-group small{position:absolute;bottom:-25px;text-align:center;width:100%;color:#8b7e74}.chart-note{margin-top:40px;font-size:10px;color:#86786c}.link-button{border:0;background:none;color:var(--wine);padding:0;text-align:left}.link-button:hover{text-decoration:underline;background:none}.mapping{margin-top:20px}#status{min-height:19px}.card>p:first-of-type{margin-top:5px}.age{display:flex;gap:10px;align-items:center;margin:16px 0}.age label{width:90px;font-size:11px}.age meter{flex:1;accent-color:var(--red)}.age b{min-width:90px;text-align:right;font-size:11px}.card+.card{margin-top:20px}.kpis .card,.grid2 .card{margin-top:0}[hidden]{display:none!important}
@media(max-width:1200px){aside{width:220px;padding-inline:16px}.brand{margin-inline:-16px;padding:32px 23px}main{margin-left:220px;padding:32px 26px}h1{font-size:30px}.kpis{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}.connection{align-items:flex-start}.connection button{max-width:160px}.storelist{grid-template-columns:1fr}}
@media(max-width:700px){aside{position:static;width:100%;padding:0 16px 13px}.brand{padding:20px 24px 18px;margin:0 -16px 12px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand img{width:165px}.brand-sub{font-size:8px;margin:0;letter-spacing:1.8px}.aside-bottom{display:none}nav{display:flex;gap:4px;overflow:auto}nav button{white-space:nowrap;padding:9px 10px;font-size:10px;flex:none}main{margin:0;padding:28px 16px}header{gap:8px;margin-bottom:25px}h1{font-size:27px}.eyebrow{font-size:8px}.connection{display:block}.connection button{margin-top:15px;max-width:none}.toolbar label{margin-left:0}.kpis{gap:10px}.kpi .value{font-size:27px}.card{padding:18px}.table-card{padding:0}.table-title{flex-wrap:wrap;padding:20px 18px}.table-title input{max-width:none}header #logout{padding:4px;font-size:10px}h2{font-size:21px}.login{margin-top:30px}.tabs{width:100%}.tabs button{flex:1}.summary-line{font-size:9px}.toolbar{gap:10px}.toolbar select{margin-left:3px}#notice{left:16px;right:16px;font-size:12px}.brand-sub{max-width:110px}}

.compare-heading{padding:0;flex-wrap:wrap}.compare-heading label{font-size:11px}.compare-picker{border:1px solid var(--line);border-radius:8px;display:flex;flex-wrap:wrap;gap:8px 18px;margin:20px 0;padding:15px}.compare-picker legend{font-weight:500;padding:0 6px}.compare-picker label{display:flex;align-items:center;gap:7px;font-size:11px}.compare-picker input{accent-color:var(--red);width:16px;height:16px}.compare-picker small{color:var(--muted)}.benchmark-note{background:var(--paper);border-radius:7px;padding:14px;font-size:11px}.comparison-table th:first-child{position:sticky;left:0;z-index:1;min-width:220px;white-space:normal}.comparison-table thead th{min-width:200px;vertical-align:top;text-transform:none;letter-spacing:0;font-size:12px}.comparison-table th small{display:block;color:var(--muted);font-size:10px;margin:7px 0}.comparison-table tbody th{text-transform:none;letter-spacing:0;font-size:11px}.comparison-table td{font-size:12px}.comparison-table .total{font-weight:600;background:#f7f0e9}.comparison-table .total th{background:#f0e7df;color:var(--wine)}.comparison-table .percent,.comparison-table .points{background:#fff7f5;color:var(--wine)}.comparison-table .review td{color:#876022}.account-table td:first-child{white-space:normal;min-width:190px}.account-table td:nth-child(2){white-space:normal;min-width:160px}.details details{margin-top:20px}.details summary{cursor:pointer;color:var(--wine);font-weight:500}.details .hintbox .scroll{margin-top:12px}.mapping td:first-child{white-space:normal;min-width:240px}.mapping select{max-width:300px}.comparison-card{margin-top:20px}@media(max-width:700px){.compare-picker{gap:9px}.compare-picker label{width:100%}.comparison-table th:first-child{min-width:150px;max-width:170px}.comparison-table thead th{min-width:180px}}

#compare-picker-panel{margin-top:15px}#compare-picker-panel summary{cursor:pointer;color:var(--wine);font-size:12px;font-weight:500}.comparison-card .comparison-table th .pill{display:block;width:max-content;margin-left:auto}.comparison-card .comparison-table th:first-child .pill{margin-left:0}
/* Store coverage and register, with the same structure as Sani4All. */
#scope-status{padding:0;margin:0 0 10px;background:#fff9ec;border:1px solid #eddfbb;border-radius:9px}
.scope-details{padding:11px 16px;font-size:11px}.scope-details summary{display:flex;align-items:center;gap:9px;flex-wrap:wrap;cursor:pointer;list-style:none}.scope-details summary::after{content:'⌄';margin-left:auto;font-size:16px}.scope-details summary>span:last-of-type{color:#7b6436}.scope-details p{margin:14px 0 0}.scope-dot{width:6px;height:6px;flex:none;background:#ad7621;border-radius:50%}.scope-details ul{padding:0;margin:14px 0 0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.scope-details li{border-top:1px solid #eddfbb;padding:9px 0}.scope-details li strong,.scope-details li span{display:block}.scope-details li span{color:#7b6436;font-size:10px;margin-top:2px}
.register-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:22px 0}.register-summary article{display:flex;align-items:center;gap:18px;background:white;border:1px solid var(--line);border-radius:12px;padding:20px}.register-summary strong{font-size:34px;font-weight:500;color:var(--wine)}.register-summary span{font-size:11px;color:var(--muted);max-width:150px}.register-table{min-width:1050px}.register-table th,.register-table td{text-align:left;white-space:normal;font-size:11px;vertical-align:top;padding:14px 16px}.register-table tbody th{background:white;text-transform:none;font-weight:500;letter-spacing:0;border-bottom:1px solid var(--line);min-width:180px}.register-table thead th{font-size:9px}.register-table small{display:block;margin:5px 0 0;font-size:10px;color:var(--muted);max-width:260px}.register-table .link-button{font-size:11px}.register-table td:nth-child(2){min-width:210px}
@media(max-width:900px){.register-summary{gap:10px}.register-summary article{display:block}.register-summary span{display:block}}
@media(max-width:700px){.scope-details summary>span:last-of-type{width:100%;margin-left:15px}.scope-details summary::after{display:none}.scope-details ul{grid-template-columns:1fr}.register-summary article{padding:12px}.register-summary strong{font-size:27px}.register-summary span{font-size:10px}}
/* Uniform financial statements */
.report-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:12px 0}.report-actions label{display:flex;align-items:center;gap:8px;margin-left:auto}.financial-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.financial-table td{text-align:right;white-space:nowrap}.financial-table th{text-align:left}.financial-table thead th:not(:first-child){text-align:right}.financial-table th small{display:block;font-weight:400;color:var(--muted)}.financial-table .wrap{white-space:normal;max-width:300px;text-align:left}.statement-table .leaf th{padding-left:32px;font-weight:400}.statement-table .group{background:#eee6dc;font-weight:600}.statement-table .total{font-weight:600;border-top:1px solid var(--line);background:#fbf8f4}.statement-table .grand{background:var(--wine);color:white;font-weight:600}.statement-table .review{background:#fff3df}.statement-table .grand td{color:white}.financial-table .link-button{text-align:left;white-space:normal}.report-heading select{min-width:240px;max-width:100%}.signals{display:grid;gap:0}.financial-table td:last-child .pill{white-space:normal}.benchmark-kpis .value{font-size:26px}aside nav{gap:3px}aside nav button{padding:10px 12px}.aside-bottom{padding-top:25px}.tabs{flex-wrap:wrap}#report-accounts{scroll-margin-top:15px}
@media(max-width:900px){.financial-table{min-width:670px}.report-heading{align-items:start;flex-direction:column}.report-actions label{margin-left:0}.report-heading select{min-width:0}}
@media print{aside,header,.toolbar,#connection,#status,footer,.report-actions,#notice{display:none!important}main{margin:0!important;padding:0!important}body{background:white;font-size:10px}.card{box-shadow:none;break-inside:auto;border:0;padding:10px}.scroll{overflow:visible}.financial-table{min-width:0;width:100%}table{font-size:9px}tr{break-inside:avoid}thead{display:table-header-group}.hintbox{break-inside:avoid}select{border:0;appearance:none}.kpis{display:flex;gap:10px}.kpi{flex:1}.value{font-size:19px!important}.grand{-webkit-print-color-adjust:exact;print-color-adjust:exact}details{display:none}}
/* Compact reporting and dedicated store pages */
.field{display:flex;flex-direction:column;align-items:flex-start;gap:9px;font-size:12px;font-weight:500;min-width:220px}.field select{width:100%;max-width:400px;font-weight:400;min-height:42px}.report-intro .table-title{padding:0;gap:24px;align-items:flex-end}.report-intro h2{margin-bottom:6px}.report-intro .table-title p{margin:0;color:var(--muted);font-size:12px}.report-intro .report-actions{margin-bottom:0}.report-help{margin:16px 0;font-size:12px;color:var(--muted)}.report-help>summary{cursor:pointer;color:var(--wine);font-weight:500;padding:7px 0}.report-help p{max-width:1000px}.report-help.checks{background:#fff7eb;border:1px solid #ecdbc2;border-radius:9px;padding:9px 16px}.report-help.checks>summary{color:#775320}.tree-actions{display:flex;gap:10px;align-items:center;padding:16px 20px;border-bottom:1px solid var(--line);flex-wrap:wrap}.tree-actions button{font-size:11px;padding:7px 10px}.tree-actions span{font-size:11px;color:var(--muted);margin-left:auto}.tree-toggle{display:flex;align-items:center;gap:9px;border:0;background:none;color:inherit;font:inherit;font-weight:600;padding:4px 0;min-height:30px;text-align:left;white-space:normal}.tree-toggle:hover{background:none;color:var(--red)}.tree-arrow{font-size:16px;width:14px;flex:none;color:var(--red)}.statement-table .tree-row th{padding:10px 18px;text-transform:none;letter-spacing:0;font-size:12px}.statement-table .tree-row td{padding-block:10px}.statement-table .level-1 th{padding-left:42px}.statement-table .level-2 th{padding-left:68px}.statement-table .level-3 th{padding-left:94px}.statement-table .tree-row.leaf{background:white}.statement-table .tree-row.leaf th{font-weight:400;border-left:3px solid #ebdfe0}.statement-table .grand th{background:var(--wine);color:white}.statement-table .tree-row.level-1.group{background:#f8f2ed}.financial-table th,.financial-table td{font-size:12px}.financial-table thead th{font-size:10px}.financial-table thead th:first-child{min-width:180px}.report-heading{padding:0}.report-heading select{max-width:360px}.toolbar .period-field{display:flex;align-items:center;gap:12px;font-size:12px;flex-wrap:wrap}.toolbar .period-field select{margin:0;min-width:225px}.period-note{margin:6px 0 16px;border:1px solid var(--line);background:#faf6f1;border-radius:9px;padding:12px 16px;font-size:12px}.period-summary{display:flex;gap:10px 18px;align-items:center;flex-wrap:wrap}.period-summary strong{color:var(--wine)}.period-summary span{color:var(--muted)}.period-summary.ongoing span{font-weight:600;color:#976414}.period-summary button{margin-left:auto;font-size:11px}.period-help{font-size:11px;color:var(--muted);margin-top:6px}.period-help summary{cursor:pointer;width:max-content}.period-help p{max-width:950px}.store-breadcrumb{display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin:0 0 15px;font-size:12px;color:var(--muted)}.store-breadcrumb .pill{margin-left:auto}.store-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:22px;flex-wrap:wrap}.store-tabs button{font-size:12px;padding:9px 15px}.store-tabs button.active{background:var(--wine);color:white;border-color:var(--wine)}.store-summary th{text-align:left;white-space:normal;letter-spacing:0;text-transform:none;font-size:11px;background:none}.store-summary td{font-size:12px}.store-summary .explain{line-height:1.7}.store-summary h2{margin-bottom:20px}#accounts-dialog{border:1px solid var(--line);border-radius:15px;padding:22px;max-width:min(1000px,95vw);max-height:85vh;width:100%;color:var(--ink);background:var(--paper)}#accounts-dialog::backdrop{background:rgb(30 12 20 / .45)}.dialog-close{display:block;margin:0 0 12px auto}#account-content .card{margin:0}h1:focus{outline:none}button:focus-visible,summary:focus-visible,a:focus-visible{outline:2px solid var(--red);outline-offset:4px}.connection{padding:12px 18px;margin-bottom:16px}.connection p{margin:4px 0 0;font-size:11px}.connection button{font-size:11px}.summary-line{line-height:1.65}.benchmark-kpis .value{font-size:25px}#status{font-size:10px;margin:8px 0 14px}.financial-table td:last-child .pill{max-width:170px}
@media(max-width:900px){.report-intro .table-title{align-items:flex-start;flex-direction:column}.field{width:100%;min-width:0}.field select{max-width:none}.tree-actions span{width:100%;margin:0}.store-tabs{gap:5px}.store-tabs button{padding:8px 11px}.period-summary button{margin:0}.benchmark-kpis .value{font-size:22px}}
@media(max-width:700px){.toolbar .period-field{width:100%;gap:9px}.toolbar .period-field select{flex:1;min-width:0}.tree-actions{padding:12px}.statement-table .level-1 th{padding-left:28px}.statement-table .level-2 th{padding-left:42px}.statement-table .level-3 th{padding-left:56px}.store-breadcrumb .pill{margin:0}.period-note{padding:12px}.store-tabs{display:flex;overflow:auto;flex-wrap:nowrap}.store-tabs button{white-space:nowrap}.store-summary table{min-width:0}.store-summary td{padding:9px}.connection{display:none}#accounts-dialog{padding:12px}}
@media print{.tree-actions,.store-tabs,.store-breadcrumb,.dialog-close{display:none!important}.period-note{display:block;margin-bottom:15px}.period-help{display:block;font-size:9px}.report-help.checks{display:block}.report-help.checks>p{display:block}.period-summary{font-size:10px}.tree-toggle{color:inherit;font-size:10px}.tree-arrow{display:none}.statement-table .tree-row th,.financial-table td{font-size:9px;padding-block:5px}.statement-table .level-1 th{padding-left:22px}.statement-table .level-2 th{padding-left:34px}.statement-table .level-3 th{padding-left:46px}.store-summary{display:block}}
/* Visual reporting: bars share a true zero; detail tables stay available. */
.visual-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:22px 0 10px}.visual-grid>.card{margin:0}.visual-card{min-width:0;padding:26px}.visual-card h2{margin:8px 0}.visual-subtitle{font-size:11px;color:var(--muted);margin:0 0 18px;line-height:1.7;max-width:680px}.visual-legend{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:10px;color:var(--muted);margin:14px 0 12px;min-height:20px}.visual-legend>span{display:inline-flex;gap:6px;align-items:center}.swatch{display:inline-block;width:12px;height:8px;border-radius:2px;flex:none}.swatch.current,.swatch.segment-0{background:var(--wine)}.swatch.previous{background:#c4b5a5}.swatch.segment-1{background:var(--red)}.swatch.segment-2{background:#d991a3}.reference-key{height:12px;border-left:2px dashed #52625e;margin:0 5px}.visual-axis{display:flex;justify-content:space-between;margin:0 86px 4px 135px;font-size:9px;color:var(--muted)}.visual-row{display:grid;grid-template-columns:125px minmax(40px,1fr) 76px;align-items:center;gap:10px;min-height:45px;border-top:1px solid #f2eeea;padding:5px 0;break-inside:avoid}.visual-label{font-size:11px;line-height:1.4;color:var(--ink);overflow-wrap:anywhere}.visual-label button{font-size:11px;font-weight:500;color:var(--ink);line-height:1.4}.visual-label small{display:block;font-size:9px;font-weight:400;color:#75695c;margin-top:4px}.bar-svg{display:block;width:100%;height:36px;overflow:visible}.bar-track{stroke:#f4f0eb;stroke-width:8}.zero-line{stroke:#b5aba0;stroke-width:1;vector-effect:non-scaling-stroke}.reference-line{stroke:#52625e;stroke-width:1.4;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.series.current,.series.segment-0{fill:var(--wine)}.series.previous{fill:#c4b5a5}.series.segment-1{fill:var(--red)}.series.segment-2{fill:#d991a3}.outside-row .series.current,.outside-row .series.segment-0{fill:#ad737f}.visual-value{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;line-height:1.45;font-size:11px}.visual-value strong{font-weight:500}.visual-value small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.visual-footnote{color:var(--muted);font-size:10px;line-height:1.7;margin:10px 0 22px}.data-fold{margin:22px 0;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}.data-fold>summary{cursor:pointer;padding:18px 22px;font-weight:500;color:var(--wine);font-size:13px}.data-fold>summary span{display:inline-block;font-size:10px;color:var(--muted);margin-left:14px;font-weight:400}.data-fold>.card{border:0;border-radius:0;margin:0}.data-fold[open]>summary{border-bottom:1px solid var(--line)}.health-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0}.health-cards>.card{margin:0}.ratio-card{border-top:3px solid var(--wine)}.ratio-card .label{font-size:12px}.ratio-value{display:block;font:600 30px/1.2 Bogart,serif;color:var(--wine);margin:18px 0}.ratio-card p,.ratio-card small{font-size:11px;color:var(--muted)}.ratio-card.unavailable{border-top-color:var(--beige);background:#f6f2ec}.unavailable .ratio-value{font:500 17px/1.4 'Lexend Deca',sans-serif;color:#75695c}.kpi .value{margin:14px 0 9px}.kpis{gap:14px}.connection:has(#connect:not(.primary)){display:none}.table-card+.visual-card{margin-top:22px}.report-intro+.visual-card{margin-top:22px}.balance-visual .visual-row{grid-template-columns:120px minmax(40px,1fr) 90px}.balance-visual .visual-axis{margin-left:130px;margin-right:100px}
@media(min-width:1450px){.visual-row{grid-template-columns:150px minmax(60px,1fr) 85px}.visual-axis{margin-left:160px;margin-right:95px}}
@media(max-width:1100px){.visual-grid{grid-template-columns:1fr}.health-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.visual-card{padding:18px}.visual-row,.balance-visual .visual-row{grid-template-columns:104px minmax(30px,1fr) 74px;gap:7px}.visual-axis,.balance-visual .visual-axis{margin-left:111px;margin-right:81px}.visual-label,.visual-label button,.visual-value{font-size:10px}.visual-value small{font-size:9px}.visual-label small{font-size:8px}.visual-grid{gap:14px}.visual-legend{font-size:9px;gap:8px 12px}.data-fold>summary span{display:block;margin:5px 0 0 16px}.health-cards{gap:10px}.ratio-card{padding:15px}.ratio-value{font-size:26px}.unavailable .ratio-value{font-size:14px}.kpi .value{font-size:25px}.kpi .hint{font-size:9px}}
@media print{.visual-card,.health-cards,.visual-row{break-inside:avoid}.visual-grid{display:block}.visual-grid>.card{margin-bottom:16px}.visual-card,.series,.swatch{-webkit-print-color-adjust:exact;print-color-adjust:exact}.data-fold{display:block!important;border:0}.data-fold>summary{display:none}.data-fold>.card{display:block}.visual-row{min-height:32px}.bar-svg{height:28px}.visual-label button{color:var(--ink)}.health-cards{display:grid}.visual-grid.balance-visual{display:grid}.visual-footnote{font-size:9px}}
/* Keep full euro amounts legible inside compact KPI cards. */
.kpi .value{font-size:25px;overflow-wrap:anywhere}.benchmark-kpis .value{font-size:24px}
@media(max-width:700px){.kpi .value{font-size:21px}.benchmark-kpis .value{font-size:21px}}
.store-tabs button{color:var(--wine)}.store-tabs button.active{color:white}.store-tabs button:hover{background:#f3e9e8}.store-tabs button.active:hover{background:#940e2a}

/* Kitchen4All supplier procurement, matching the Sani4All reporting layout. */
.purchase-context{display:flex;gap:12px 20px;align-items:center;flex-wrap:wrap;font-size:11px;color:#697879;margin:8px 0 18px}.snapshot-label{color:#3f5961;background:#f3e9e8;padding:6px 10px;border-radius:5px;font-weight:500}.purchase-context label{margin-left:auto;display:flex;align-items:center;gap:10px;color:#405b64}.purchase-context select{max-width:340px;min-height:42px;background:white}
.purchase-hero{display:grid;grid-template-columns:1fr 1.2fr;gap:40px;background:#77041c;border-radius:18px;padding:34px 36px;color:white;position:relative;overflow:hidden}.purchase-hero:before{content:'';position:absolute;top:0;left:0;bottom:0;width:5px;background:#ce1537}.purchase-hero .eyebrow{color:#ffb5c4;font-size:9px;letter-spacing:1.8px}.purchase-hero h2{color:white;font-size:28px;margin:8px 0}.purchase-hero-copy p{color:#eed3da;font-size:11px;margin:0}.purchase-total{font-size:44px;line-height:1.3;letter-spacing:-1.8px;font-weight:500;margin:21px 0 1px;font-variant-numeric:tabular-nums}.purchase-hero-copy>span{font-size:11px;color:#eed3da}.purchase-hero-chart{align-self:center;padding-left:32px;border-left:1px solid #a65d6d}.purchase-hero-chart h3{color:#fff4f5;font:500 12px 'Lexend Deca';margin:0 0 17px}.purchase-hero-chart>p{font-size:10px;line-height:1.6;color:#eed3da;margin:16px 0 0;max-width:400px}.purchase-composition{display:flex;width:100%;height:25px;border-radius:5px;overflow:hidden;background:#60747e;gap:3px}.purchase-composition>span{height:100%;min-width:0}.contract{--purchase-color:#77041c}.outside{--purchase-color:#ce1537}.partial{--purchase-color:#b5a8d2}.review{--purchase-color:#ac8d4d}.purchase-composition .contract{background:#e6c2cb}.purchase-composition .outside{background:#ed6a82}.purchase-composition .partial{background:repeating-linear-gradient(130deg,#b8afd2 0px,#b8afd2 4px,#d8d0e9 4px,#d8d0e9 7px)}
.purchase-legend{display:grid;gap:10px;margin:18px 0 0}.purchase-legend>div{display:flex;align-items:center;gap:9px;font-size:11px}.purchase-legend strong{margin-left:auto;font-variant-numeric:tabular-nums;font-size:13px}.purchase-legend i,.purchase-kpi i{width:9px;height:9px;border-radius:2px;display:inline-block;flex:none;background:var(--purchase-color)}.purchase-legend i.contract{background:#e6c2cb}.purchase-legend i.outside{background:#ed6a82}
.purchase-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0 24px}.purchase-kpi{background:white;border:1px solid #e7e1d9;border-radius:12px;padding:19px 20px;border-bottom:3px solid var(--purchase-color)}.purchase-kpi>div{display:flex;align-items:center;gap:7px;font-size:11px;color:#666763;min-height:22px}.purchase-kpi>strong{display:block;font-size:clamp(23px,2.05vw,34px);font-weight:500;letter-spacing:-1px;line-height:1.3;margin:7px 0;font-variant-numeric:tabular-nums}.purchase-kpi p{font-size:10px;color:#77736e;line-height:1.5;margin:0;max-width:225px}
.purchase-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.purchase-grid .card{padding:25px 26px;box-shadow:none}.purchase-section-title h2{font-size:22px;margin:7px 0 5px;line-height:1.35}.purchase-section-title p{font-size:11px;color:#77736e;margin:0}.purchase-section-title .eyebrow{font-size:9px;letter-spacing:1.5px;color:#74858b}.purchase-bars{display:grid;gap:17px;margin:26px 0 18px}.purchase-bar-row{display:flex;align-items:center;gap:12px}.rank{color:#9cabb0;font-size:10px;width:16px;flex:none}.purchase-bar-body{flex:1;min-width:0}.purchase-bar-caption{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:11px;margin-bottom:7px;line-height:1.45}.purchase-bar-caption>span,.purchase-bar-caption button{overflow-wrap:anywhere;min-width:0;font-size:11px}.purchase-bar-caption strong{white-space:nowrap;font-weight:500;font-variant-numeric:tabular-nums}.purchase-bar-caption small{font-size:9px;color:#829399}.purchase-track{width:100%;height:7px;background:#f1ece6;border-radius:2px;overflow:hidden}.purchase-fill{display:block;height:100%;border-radius:2px;background:var(--purchase-color)}.purchase-fill.credit{background:repeating-linear-gradient(90deg,#a66f66 0,#a66f66 3px,transparent 3px,transparent 5px)}.purchase-text-link{display:inline-block;color:#77041c;text-decoration:none;font-size:11px;margin-top:10px;padding:0}.purchase-text-link:hover{text-decoration:underline}.purchase-empty{padding:25px 0;color:#76878b}
.purchase-review{margin:23px 0;display:grid;grid-template-columns:.9fr 1fr 1fr;gap:28px;border:1px solid #ded7ec;border-left:4px solid #a597bc;border-radius:12px;padding:22px 25px;background:#f6f3fa}.purchase-review .eyebrow{font-size:9px;color:#80718f}.purchase-review h2{font-size:20px;margin:7px 0 0;max-width:230px}.purchase-review article{font-size:11px}.purchase-review article strong{font-weight:600;color:#675478}.purchase-review p{color:#786e83;line-height:1.75;margin:5px 0 0}
.purchase-vendors{box-shadow:none;padding:24px 26px;margin-bottom:18px;scroll-margin-top:24px}.purchase-controls{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:22px 0}.purchase-segments{display:flex;gap:4px;flex-wrap:wrap;background:#f1ece6;border-radius:8px;padding:4px}.purchase-segments button{font-size:10px;padding:9px 11px;border:0;background:transparent}.purchase-segments button.active{background:#77041c;color:white}.purchase-search{display:grid;gap:5px;font-size:10px;color:#637b83}.purchase-search input{width:230px;max-width:100%;background:white;font-size:11px;padding:10px}.purchase-table{font-variant-numeric:tabular-nums}.purchase-table thead th{font-size:9px;background:#faf6f1;text-transform:uppercase;letter-spacing:.8px}.purchase-table tbody th{background:transparent;font-size:11px;letter-spacing:0;text-transform:none;font-weight:500;white-space:normal;min-width:160px}.purchase-table tbody td{font-size:11px}.purchase-table td:nth-child(2){white-space:normal}.purchase-table tfoot{background:#faf6f1;font-weight:600}.purchase-table tfoot th{font-size:11px;text-transform:none;letter-spacing:0}.purchase-table td:last-child{font-weight:500}.purchase-stores{box-shadow:none;padding:17px 25px;scroll-margin-top:24px}.purchase-stores>summary{font-size:13px;font-weight:500;color:#77041c;cursor:pointer}.purchase-stores>summary span{font-size:10px;font-weight:400;color:#829097;margin-left:14px}.purchase-stores .scroll{margin-top:20px}.purchase-unavailable{background:#fbf8f1;color:#877545}.purchase-unavailable td{text-align:left}.purchase-method{font-size:11px;color:#74858b;padding:19px 3px}.purchase-method summary{cursor:pointer;color:#77041c}.purchase-method p{max-width:1000px}.purchase-loading{margin-top:20px;padding:40px}
@media(min-width:1550px){.purchase-total{font-size:52px}.purchase-hero{padding:38px 40px;gap:60px}.purchase-grid .card{padding:28px 32px}}
@media(max-width:1150px){.purchase-context label{margin-left:0}.purchase-hero{gap:25px;padding:28px}.purchase-hero h2{font-size:24px}.purchase-total{font-size:36px}.purchase-hero-chart{padding-left:23px}.purchase-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.purchase-grid{gap:16px}.purchase-grid .card{padding:22px 20px}.purchase-review{gap:20px;grid-template-columns:1fr 1fr}.purchase-review>div{grid-column:1/-1}.purchase-review h2{max-width:none}}
@media(max-width:900px){.purchase-hero{grid-template-columns:1fr}.purchase-hero-chart{border-left:0;border-top:1px solid #a65d6d;padding:22px 0 0}.purchase-hero-copy h2{font-size:28px}.purchase-total{font-size:44px}.purchase-legend{grid-template-columns:1fr}.purchase-grid{grid-template-columns:1fr}.purchase-context{gap:10px}.purchase-context label{width:100%}.purchase-context select{flex:1;min-width:0;max-width:none}.purchase-bar-caption{font-size:12px}.purchase-section-title h2{font-size:24px}}
@media(max-width:700px){.purchase-hero{padding:25px 23px;border-radius:14px}.purchase-total{font-size:39px}.purchase-kpis{gap:10px;margin:12px 0 18px}.purchase-kpi{padding:14px}.purchase-kpi>strong{font-size:26px}.purchase-kpi>div{font-size:10px;min-height:32px}.purchase-kpi p{font-size:9px}.purchase-review{grid-template-columns:1fr;padding:21px;gap:16px}.purchase-vendors{padding:21px 17px}.purchase-controls{display:block}.purchase-segments{margin-bottom:16px}.purchase-segments button{flex:1;padding:9px 7px;font-size:9px}.purchase-search input{width:100%}.purchase-stores{padding:16px}.purchase-stores>summary span{display:block;margin:4px 0 0}.purchase-table{min-width:600px}.purchase-context>span{font-size:10px}}
@media print{.purchase-controls,.purchase-context select,.purchase-text-link{display:none!important}.purchase-hero,.purchase-kpi,.purchase-composition,.purchase-legend i,.purchase-fill{-webkit-print-color-adjust:exact;print-color-adjust:exact}.purchase-grid{grid-template-columns:1fr 1fr}.purchase-hero{grid-template-columns:1fr 1fr}.purchase-hero-chart{border-top:0}.purchase-kpis{grid-template-columns:repeat(4,1fr)}.purchase-kpi>strong{font-size:20px}.purchase-stores{display:block}.purchase-stores .scroll{display:block}}

.purchase-grid>.card{margin:0}.purchase-table tbody th{border-bottom:1px solid var(--line)}

.purchase-bar-svg{display:block;width:100%;height:12px;overflow:visible}.purchase-bar-svg rect{fill:var(--purchase-color)}.purchase-track-line{stroke:#f2ede7;stroke-width:6}.purchase-composition{display:block}.purchase-composition rect.contract{fill:#e6c2cb}.purchase-composition rect.outside{fill:#ed6a82}.purchase-snapshot-note{font-size:11px;color:var(--muted);margin:-5px 0 18px}.purchase-total{font-family:Bogart,Georgia,serif;font-weight:600}.purchase-kpi>strong{font-family:Bogart,Georgia,serif;letter-spacing:0;font-size:26px}.purchase-kpis .purchase-kpi{margin:0}.purchase-deep{padding:0;margin-top:18px}.purchase-deep-body{padding:8px 24px 24px;font-size:12px}.purchase-deep summary{padding:18px 24px}.purchase-report .data-fold>summary{font-size:13px}.purchase-hero,.purchase-grid>.card,.purchase-review{break-inside:avoid}.purchase-table tbody th{border-bottom:1px solid var(--line)}
@media(max-width:700px){.purchase-kpi>strong{font-size:21px}.purchase-total{font-size:34px}.purchase-hero h2{font-size:25px}.purchase-context select{max-width:100%;width:100%;min-width:0}.purchase-context label{width:100%;min-width:0}.purchase-context label>span{flex:none}.purchase-review h2{font-size:21px}.purchase-deep-body{padding:5px 16px 18px}.purchase-kpi{min-width:0;overflow-wrap:anywhere}}

.register-table td:nth-child(3){min-width:155px}.register-table .registry-conflict{color:#99712c}.register-active{color:var(--wine);background:var(--paper);padding:3px 7px;border-radius:4px;font-size:10px}
