:root{--ink:#172019;--muted:#667068;--paper:#f2f1eb;--surface:#fbfaf6;--surface-strong:#fff;--line:#d9dcd3;--accent:#285a3b;--accent-soft:#dfe9df;--warm:#b57b42}.app-navigation{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f2f1ebf0;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;min-height:64px;padding:10px max(24px,50vw - 750px);display:grid;position:sticky;top:0}.app-brand{color:var(--ink);white-space:nowrap;font-family:Georgia,Times New Roman,serif;font-size:1.05rem;font-weight:700;text-decoration:none}.app-navigation nav{align-items:center;gap:18px;display:flex}.app-navigation nav a{color:var(--muted);border-bottom:2px solid #0000;padding:7px 0 5px;font-size:.78rem;font-weight:700;text-decoration:none}.app-navigation nav a[aria-current=page]{border-color:var(--accent);color:var(--accent)}.app-user{align-items:center;gap:10px;font-size:.72rem;display:flex}.app-user small{color:var(--muted);text-transform:capitalize}.app-user button,.admin-operation-card button{border:1px solid var(--line);background:var(--surface-strong);color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;padding:8px 12px;font-weight:700}.app-user button:hover,.admin-operation-card button:hover{border-color:var(--accent)}.app-user button:disabled,.admin-operation-card button:disabled{cursor:wait;opacity:.55}.freshness-pill{border-radius:999px;padding:5px 9px;font-size:.64rem;font-weight:800;text-decoration:none}.freshness-fresh{color:#285a3b;background:#dfe9df}.freshness-warning{color:#80591f;background:#f5e6ca}.freshness-critical{color:#8b3329;background:#f3d9d5}.admin-data-shell{width:min(1500px,100% - 48px)}.admin-data-header{justify-content:space-between;align-items:flex-start;gap:32px;padding-bottom:30px;display:flex}.admin-data-header h1{margin-bottom:12px}.admin-data-header p:last-child{max-width:720px;color:var(--muted);line-height:1.55}.admin-status-actions{justify-items:end;gap:10px;display:grid}.status-badge{text-transform:uppercase;border-radius:999px;padding:8px 13px;font-size:.7rem;font-weight:800}.status-fresh{color:#285a3b;background:#dfe9df}.status-warning{color:#80591f;background:#f5e6ca}.status-critical{color:#8b3329;background:#f3d9d5}.source-status-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.source-status-card,.admin-operation-card,.operation-results,.freshness-definition{border:1px solid var(--line);background:var(--surface-strong);border-radius:18px;padding:20px}.source-status-card>div{align-items:center;gap:9px;display:flex}.source-status-card h2,.admin-operation-card h2,.operation-results h2,.freshness-definition h2{font-size:1.05rem}.source-operation-status{background:var(--surface);color:var(--muted);border-radius:999px;margin:12px 0 0;padding:5px 9px;font-size:.7rem;font-weight:700;display:inline-flex}.source-operation-current{color:var(--success)}.source-operation-error{color:var(--danger)}.source-operation-running{color:var(--warning)}.status-dot{border-radius:50%;width:9px;height:9px}.source-status-card dl{grid-template-columns:1fr auto;gap:7px 12px;margin:18px 0 0;font-size:.72rem;display:grid}.source-status-card dt{color:var(--muted)}.source-status-card dd{text-align:right;overflow-wrap:anywhere;margin:0}.operation-warning{color:#80591f;font-size:.7rem;font-weight:700}.operation-error{color:#8b3329;font-size:.7rem;font-weight:700}.admin-operation-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.admin-operation-card{flex-direction:column;align-items:flex-start;display:flex}.admin-operation-card>p:not(.eyebrow){color:var(--muted);flex:1;font-size:.78rem;line-height:1.55}.operation-card-heading{justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.configuration-status{border-radius:999px;padding:5px 9px;font-size:.68rem;font-weight:750}.configuration-ready{color:#285a3b;background:#dfe9df}.configuration-missing{color:#8b3329;background:#f3d9d5}.mintsoft-upload-card{grid-column:1/-1}.mintsoft-upload-card input{max-width:100%;margin:10px 0 14px}.validation-card{border-left:3px solid var(--accent);background:var(--accent-soft);gap:6px;width:min(100%,560px);margin-top:16px;padding:14px;font-size:.75rem;display:grid}.validation-error{background:#f3d9d5;border-color:#8b3329}.validation-card button{justify-self:start;margin-top:6px}.operation-results,.freshness-definition{margin-top:18px}.operation-results p{border-top:1px solid var(--line);justify-content:space-between;gap:20px;padding-top:10px;font-size:.75rem;display:flex}.operation-results span,.freshness-definition p{color:var(--muted)}.operation-message{border-left:3px solid var(--accent);background:var(--surface-strong);margin-top:18px;padding:14px;font-size:.78rem}.freshness-definition p{max-width:900px;line-height:1.55}.dashboard-link{border-bottom:1px solid var(--accent);color:var(--accent);font-size:.82rem;font-weight:700;text-decoration:none}.customer-shell{width:min(1500px,100% - 48px);min-height:100vh;margin:0 auto;padding:44px 0 52px}.customer-hero{justify-content:space-between;align-items:flex-end;gap:40px;padding:18px 4px 34px;display:flex}.customer-hero h1{font-size:clamp(2.8rem,5vw,5.2rem)}.customer-lead{max-width:760px;color:var(--muted);margin:20px 0 0;line-height:1.55}.customer-nav{gap:10px;display:flex}.customer-nav a,.detail-button,.table-controls button{border:1px solid var(--line);background:var(--surface-strong);color:var(--ink);cursor:pointer;border-radius:999px;padding:9px 14px;font-size:.78rem;font-weight:700;text-decoration:none}.customer-filter-panel,.customer-panel{border:1px solid var(--line);background:#fbfaf6eb;border-radius:22px;box-shadow:0 18px 50px #1720190d}.customer-filter-panel{padding:22px}.filter-heading,.panel-heading{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.filter-heading>p,.panel-heading>span,.table-heading p{color:var(--muted);margin:0;font-size:.78rem}.customer-filters{grid-template-columns:repeat(5,minmax(130px,1fr));gap:14px;margin-top:20px;display:grid}.customer-filters label,.table-controls label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:700}.customer-filters input,.customer-filters select,.table-controls select{border:1px solid var(--line);background:var(--surface-strong);width:100%;color:var(--ink);letter-spacing:0;text-transform:none;border-radius:10px;margin-top:7px;padding:10px 11px;font-size:.84rem}.search-filter{grid-column:span 2}.customer-kpis{grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0;display:grid}.customer-kpis article{border:1px solid var(--line);background:var(--surface-strong);border-radius:18px;min-height:132px;padding:20px}.customer-kpis span,.detail-summary span{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;font-size:.68rem;font-weight:700;display:block}.customer-kpis strong{margin:16px 0 8px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.7rem,2.7vw,2.7rem);font-weight:400;display:block}.customer-kpis small,.detail-summary small{color:var(--muted);font-size:.72rem}.customer-analysis-grid{grid-template-columns:.9fr 1.1fr;gap:18px;margin-bottom:18px;display:grid}.customer-panel{padding:24px}.customer-panel h2{font-size:1.65rem}.acquisition-chart{align-items:flex-end;gap:10px;height:220px;margin-top:26px;display:flex}.acquisition-column{text-align:center;flex:1;grid-template-rows:22px 1fr 20px;align-items:end;height:100%;display:grid}.acquisition-column>span,.acquisition-column small{color:var(--muted);font-size:.7rem}.acquisition-column>div{background:linear-gradient(180deg, #4b7a58, var(--accent));border-radius:8px 8px 3px 3px;width:min(34px,78%);min-height:8px;margin:0 auto}.quiet-copy{color:var(--muted);font-size:.85rem}.cohort-grid{margin-top:25px}.cohort-row{grid-template-columns:1.4fr repeat(6,1fr);gap:5px;margin-bottom:5px;display:grid}.cohort-row>*{background:rgb(40 90 59/var(--cohort-alpha,.06));border-radius:7px;place-items:center;min-height:38px;font-size:.75rem;display:grid}.cohort-row>strong{background:0 0;justify-content:start;padding-left:8px}.cohort-head>*{min-height:24px;color:var(--muted);text-transform:uppercase;background:0 0;font-size:.65rem;font-weight:700}.customer-table-panel{padding:24px 18px 18px}.table-heading{padding:0 6px 20px}.table-controls{align-items:flex-end;gap:10px;display:flex}.table-controls label{min-width:110px}.table-controls button{margin-bottom:0}.customer-table{table-layout:fixed;border-collapse:collapse;width:100%;font-size:.76rem}.customer-table th{color:var(--muted);letter-spacing:.08em;text-align:left;text-transform:uppercase;padding:12px 8px;font-size:.63rem}.customer-table td{border-top:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere;padding:14px 8px}.customer-table col:first-child{width:17%}.customer-table col:nth-child(2){width:9%}.customer-table col:nth-child(3),.customer-table col:nth-child(4){width:10%}.customer-table col:nth-child(5),.customer-table col:nth-child(6){width:7%}.customer-table col:nth-child(7),.customer-table col:nth-child(8){width:10%}.customer-table col:nth-child(9),.customer-table col:nth-child(10){width:8%}.customer-table td strong,.customer-table td small{display:block}.customer-table td small{color:var(--muted);margin-top:5px;font-size:.66rem}.customer-table .numeric{text-align:right;font-variant-numeric:tabular-nums}.customer-table .details{text-align:center}.expanded-row{background:var(--accent-soft)}.detail-button{padding:6px 10px}.customer-detail-row td{background:#f7f8f3;padding:0}.customer-detail{padding:22px}.detail-summary{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.detail-summary>div{border:1px solid var(--line);background:var(--surface-strong);border-radius:12px;padding:14px}.detail-summary strong{margin:8px 0 3px;font-size:1.15rem}.customer-contact-card{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.customer-contact-card>div{border:1px solid var(--line);background:var(--surface-strong);border-radius:12px;padding:14px}.customer-contact-card span,.customer-contact-card strong,.customer-contact-card small,.customer-contact-card a{display:block}.customer-contact-card span{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;font-size:.68rem;font-weight:700}.customer-contact-card strong{margin-top:8px}.customer-contact-card small,.customer-contact-card a{color:var(--muted);overflow-wrap:anywhere;margin-top:5px;font-size:.72rem}.customer-contact-card a{color:#315e4b}.customer-detail h3{margin:24px 0 12px;font-family:Georgia,Times New Roman,serif;font-size:1.25rem;font-weight:400}.order-history{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.order-history article{border:1px solid var(--line);background:var(--surface-strong);border-radius:12px;padding:14px}.order-history article>div{justify-content:space-between;gap:8px;display:flex}.order-meta{color:var(--muted);margin:7px 0 0;font-size:.68rem;line-height:1.4}.order-history ul{margin:12px 0 0;padding:0;list-style:none}.order-history li{color:var(--muted);border-top:1px solid #eceee8;justify-content:space-between;gap:10px;padding:6px 0;font-size:.7rem;display:flex}.order-history li strong{color:var(--ink);flex:none}.customer-footnote{color:var(--muted);justify-content:space-between;gap:30px;padding:24px 6px 0;font-size:.72rem;line-height:1.5;display:flex}.customer-footnote p{max-width:680px}@media (max-width:1050px){.customer-filters{grid-template-columns:repeat(3,1fr)}.customer-kpis{grid-template-columns:repeat(2,1fr)}.customer-analysis-grid{grid-template-columns:1fr}.customer-table{font-size:.7rem}.order-history{grid-template-columns:repeat(2,1fr)}}@media (max-width:720px){.customer-shell{width:min(100% - 24px,1500px);padding-top:20px}.customer-hero,.filter-heading,.panel-heading,.table-heading,.customer-footnote{display:block}.customer-nav{margin-top:20px}.customer-filters,.customer-kpis,.detail-summary,.customer-contact-card,.order-history{grid-template-columns:1fr}.search-filter{grid-column:auto}.table-controls{flex-wrap:wrap;margin-top:18px}.customer-table,.customer-table tbody,.customer-table tr,.customer-table td{width:100%;display:block}.customer-table thead{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.customer-table tr{border:1px solid var(--line);background:var(--surface-strong);border-radius:14px;margin-bottom:10px;padding:8px}.customer-table td{border:0;grid-template-columns:100px 1fr;padding:7px;display:grid;text-align:left!important}.customer-table td:before{color:var(--muted);text-transform:uppercase;font-size:.62rem;font-weight:700}.customer-table td:first-child:before{content:"Kund"}.customer-table td:nth-child(2):before{content:"Ort"}.customer-table td:nth-child(3):before{content:"Första köp"}.customer-table td:nth-child(4):before{content:"Senaste köp"}.customer-table td:nth-child(5):before{content:"Order"}.customer-table td:nth-child(6):before{content:"Enheter"}.customer-table td:nth-child(7):before{content:"Netto"}.customer-table td:nth-child(8):before{content:"AOV"}.customer-table td:nth-child(9):before{content:"Köpintervall"}.customer-table td:nth-child(10):before{content:"Detaljer"}.customer-detail-row td{display:block}.customer-detail-row td:before{content:none!important}}*{box-sizing:border-box}html{background:var(--paper)}body{color:var(--ink);background:radial-gradient(circle at 86% 0%, #4c704f1f, transparent 28rem), var(--paper);margin:0;font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}a{color:inherit}.dashboard-nav{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;gap:18px;margin-bottom:22px;font-size:.72rem;font-weight:700;display:flex}.dashboard-nav a{padding-bottom:5px;text-decoration:none}.dashboard-nav a[aria-current=page]{border-bottom:2px solid var(--accent);color:var(--accent)}.dashboard-shell{width:min(1320px,100% - 48px);min-height:100vh;margin:0 auto;padding:44px 0 36px}.dashboard-header{justify-content:space-between;align-items:flex-end;gap:32px;padding:22px 4px 30px;display:flex}.eyebrow,.section-label{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;font-size:.7rem;font-weight:700}h1,h2,p{margin-top:0}h1{letter-spacing:-.055em;margin-bottom:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.65rem,5vw,5.4rem);font-weight:400;line-height:.95}h2{letter-spacing:-.035em;margin-bottom:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.55rem,2.4vw,2.35rem);font-weight:400;line-height:1.05}.period{color:var(--ink);font-variant-numeric:tabular-nums;text-align:right;margin:0;font-size:.9rem}.period span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px;font-size:.66rem;font-weight:700;display:block}.metric-grid{border:1px solid var(--line);background:var(--surface-strong);grid-template-columns:repeat(4,1fr);display:grid}.metric-card{border-right:1px solid var(--line);min-width:0;padding:clamp(22px,3vw,34px)}.metric-card:last-child{border-right:0}.metric-card p{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-bottom:18px;font-size:.73rem;font-weight:700}.metric-card strong{font-variant-numeric:tabular-nums;letter-spacing:-.06em;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,4vw,4.25rem);font-weight:400}.user-menu{color:var(--muted);justify-items:end;gap:4px;font-size:.76rem;display:grid}.user-menu small{text-transform:capitalize}.user-menu button{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.login-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--line);background:var(--surface-strong);width:min(620px,100%);padding:clamp(36px,7vw,72px)}.login-card h1{margin:20px 0 26px;font-size:clamp(2.5rem,7vw,4.8rem)}.login-copy{max-width:480px;color:var(--muted);line-height:1.6}.login-error{border-left:3px solid var(--warm);background:var(--paper);margin:22px 0;padding:14px 16px}.login-button{color:var(--surface-strong);background:var(--accent);margin-top:18px;padding:14px 20px;text-decoration:none;display:inline-block}.metric-card strong small{letter-spacing:0;margin-left:.18em;font-family:Arial,Helvetica,sans-serif;font-size:.3em;font-weight:700}.section-intro{justify-content:space-between;align-items:flex-end;gap:36px;margin-top:72px;padding:0 4px 24px;display:flex}.section-intro>p{max-width:520px;color:var(--muted);text-align:right;margin-bottom:0;font-size:.82rem;line-height:1.55}.finance-section{margin-bottom:26px}.finance-section+.finance-section{margin-top:42px}.dashboard-grid{grid-template-columns:minmax(0,1.7fr) minmax(320px,.8fr);gap:18px;margin-top:18px;display:grid}.panel{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 96%, transparent);min-width:0;padding:clamp(24px,3vw,38px)}.panel-wide{grid-column:1}.panel-products{grid-area:1/2/span 3}.panel-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:34px;display:flex}.panel-heading>p{color:var(--muted);margin:4px 0 0;font-size:.78rem}.trend-chart{border-bottom:1px solid var(--line);align-items:flex-end;gap:clamp(5px,1vw,12px);height:210px;padding-top:28px;display:flex}.trend-column{text-align:center;flex-direction:column;flex:1 1 0;justify-content:flex-end;min-width:12px;height:100%;display:flex}.trend-value{color:var(--muted);font-variant-numeric:tabular-nums;margin-bottom:5px;font-size:.65rem}.trend-bar{width:100%;height:var(--bar-size);background:var(--accent);border-radius:3px 3px 0 0;min-height:2px;display:block}.trend-label{min-height:26px;color:var(--muted);white-space:nowrap;margin-top:9px;font-size:.61rem}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.88rem}th,td{border-bottom:1px solid var(--line);text-align:right;white-space:nowrap;padding:14px 10px}th:first-child,td:first-child{text-align:left;padding-left:0}th:last-child,td:last-child{padding-right:0}th{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.65rem}.product-list{margin:0;padding:0;list-style:none}.product-list li{border-bottom:1px solid var(--line);grid-template-columns:28px minmax(0,1fr) auto;align-items:start;gap:13px;padding:16px 0;display:grid}.product-list li:first-child{padding-top:0}.product-list li:last-child{border-bottom:0}.rank{color:var(--accent);font-variant-numeric:tabular-nums;padding-top:3px;font-size:.68rem}.product-copy{min-width:0}.product-copy strong,.product-copy>span,.product-value span{display:block}.product-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.product-copy>span:not(.product-bar),.product-value span{color:var(--muted);margin-top:5px;font-size:.68rem}.product-bar{width:var(--bar-size);background:var(--warm);height:3px;margin-top:10px}.product-value{text-align:right;padding-left:8px}.product-value strong{font-variant-numeric:tabular-nums;font-family:Georgia,Times New Roman,serif;font-size:1.15rem;font-weight:400}.fulfillment-stats{grid-template-columns:repeat(5,1fr);gap:12px;margin:0 0 32px;display:grid}.fulfillment-stats div{border-top:1px solid var(--line);padding-top:12px}.fulfillment-stats dt{color:var(--muted);font-size:.68rem}.fulfillment-stats dd{font-variant-numeric:tabular-nums;margin:7px 0 0;font-family:Georgia,Times New Roman,serif;font-size:1.45rem}.quality-panel{background:var(--ink);color:var(--surface);grid-column:1/-1;grid-template-columns:minmax(210px,.55fr) 1.45fr;align-items:center;gap:clamp(28px,6vw,90px);display:grid}.quality-score strong{letter-spacing:-.065em;font-family:Georgia,Times New Roman,serif;font-size:clamp(3rem,7vw,6.5rem);font-weight:400;line-height:.95;display:block}.quality-score span{margin-top:10px;display:block}.quality-score span,.quality-explanation{color:#b8c0ba;font-size:.8rem}.quality-explanation{max-width:560px;margin:12px 0 24px;line-height:1.5}.quality-list{grid-template-columns:repeat(4,1fr);gap:12px;margin:0;display:grid}.quality-list div{border-top:1px solid #455048;padding-top:12px}.quality-list dt{color:#b8c0ba;font-size:.68rem}.quality-list dd{font-variant-numeric:tabular-nums;margin:6px 0 0;font-size:1.1rem}.quality-list-three{grid-template-columns:repeat(3,1fr)}.muted-copy{color:var(--muted)}.empty-state{border:1px solid var(--line);background:var(--surface);max-width:720px;margin-top:12vh;padding:clamp(32px,6vw,72px)}.empty-state h1{margin:20px 0 24px}.empty-state>p:last-child{max-width:560px;color:var(--muted);line-height:1.6}.cost-review-shell{max-width:1520px}.cost-review-header{align-items:flex-end}.cost-review-header h1{font-size:clamp(2.7rem,4.5vw,4.8rem)}.filter-panel{border:1px solid var(--line);background:var(--surface-strong);grid-template-columns:1fr;align-items:end;gap:12px;margin-bottom:18px;padding:20px;display:grid}.filter-group{border:0;gap:12px;margin:0;padding:0;display:grid}.filter-group legend{color:var(--ink);letter-spacing:.06em;text-transform:uppercase;margin-bottom:9px;font-size:.68rem;font-weight:800}.period-filter-group{grid-template-columns:repeat(2,minmax(160px,220px))}.review-filter-group{border-top:1px solid var(--line);grid-template-columns:repeat(4,minmax(140px,1fr));padding-top:16px}.filter-panel label{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;gap:7px;font-size:.68rem;font-weight:700;display:grid}.filter-panel input,.filter-panel select{border:1px solid var(--line);width:100%;min-height:40px;color:var(--ink);background:var(--surface);letter-spacing:normal;text-transform:none;border-radius:0;padding:8px 10px;font-size:.78rem}.filter-actions{align-items:center;gap:10px;min-height:40px;display:flex}.filter-actions button,.filter-actions a{color:#fff;background:var(--accent);cursor:pointer;white-space:nowrap;border:0;padding:11px 14px;font-size:.75rem;font-weight:700;text-decoration:none}.filter-actions a{color:var(--accent);background:0 0}.cost-metric-grid{grid-template-columns:repeat(3,1fr)}.cost-metric-grid .metric-card:nth-child(3n){border-right:0}.cost-metric-grid .metric-card:nth-child(-n+6){border-bottom:1px solid var(--line)}.cost-metric strong{font-size:clamp(1.65rem,2.7vw,3.1rem)}.cost-table-panel{margin-top:18px}.table-limit-note{color:var(--muted);margin:-5px 0 14px;font-size:.7rem}.cost-table-wrap{border-top:1px solid var(--line);overflow:visible}.cost-review-table{table-layout:fixed;width:100%;font-size:.76rem}.cost-review-table th{z-index:2;background:var(--surface-strong);text-align:left;white-space:normal;padding:10px 8px;position:sticky;top:0}.cost-review-table td{vertical-align:top;text-align:left;white-space:normal;padding:10px 8px}.cost-review-table th:first-child{width:12%}.cost-review-table th:nth-child(2){width:18%}.cost-review-table th:nth-child(3),.cost-review-table th:nth-child(4),.cost-review-table th:nth-child(5),.cost-review-table th:nth-child(6),.cost-review-table th:nth-child(7){width:10%}.cost-review-table th:nth-child(8){width:12%}.cost-review-table th:nth-child(9){width:8%}.cost-review-table th:first-child,.cost-review-table td:first-child{padding-left:8px}.cost-review-table th:last-child,.cost-review-table td:last-child{text-align:left;padding-right:8px}.cost-review-table .amount-column{text-align:right;white-space:normal;font-variant-numeric:tabular-nums}.invoice-reference{overflow-wrap:anywhere;display:block}.primary-secondary{gap:3px;min-width:0;display:grid}.primary-secondary strong{color:var(--ink);overflow-wrap:anywhere;white-space:normal;font-size:.76rem;font-weight:700}.primary-secondary small,.attachment-note{color:var(--muted);font-size:.64rem;font-weight:400;line-height:1.35;display:block}.status-pill{border:1px solid var(--line);color:var(--ink);background:var(--paper);white-space:nowrap;margin-bottom:5px;padding:3px 7px;font-size:.62rem;display:inline-block}.status-förfallen{color:#8c3429;background:#fff5f3;border-color:#d9a49e}.status-öppen{color:#6d5217;background:#fffbea;border-color:#d8c177}.status-kredit{color:#285e4b;background:#f0faf6;border-color:#9bc2b4}.status-periodiserad{color:#405684;background:#f4f6ff;border-color:#aab8dc;margin-left:5px}.cost-invoice-detail summary{color:var(--accent);cursor:pointer;font-size:.68rem;font-weight:700}.cost-invoice-detail[open]{z-index:1;position:relative}.invoice-lines-wrap{border:1px solid var(--line);background:var(--paper);width:min(70vw,900px);margin:10px 0 2px calc(100% - min(70vw,900px));padding:14px;box-shadow:0 12px 28px #2a302b1a}.invoice-detail-section+.invoice-detail-section{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.invoice-detail-section h3{margin:0 0 5px;font-size:.76rem}.invoice-detail-section>p{color:var(--muted);margin:0 0 10px;font-size:.66rem}.periodization-detail dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 16px;margin:12px 0;display:grid}.periodization-detail dl div{min-width:0}.periodization-detail dt{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.61rem;font-weight:700}.periodization-detail dd{color:var(--ink);overflow-wrap:anywhere;margin:3px 0 0;font-size:.72rem}.invoice-lines-table{table-layout:fixed;width:100%;font-size:.72rem}.invoice-lines-table th,.invoice-lines-table td{vertical-align:top;text-align:left;white-space:normal;padding:8px}.invoice-lines-table th:first-child{width:28%}.invoice-lines-table th:nth-child(2){width:36%}.invoice-lines-table th:nth-child(3),.invoice-lines-table th:nth-child(4){width:18%}.invoice-lines-table .amount-column{text-align:right}.flag-list{flex-wrap:wrap;gap:5px;display:flex}.review-flag{border:1px solid color-mix(in srgb, var(--warm) 50%, var(--line));color:#754b24;background:color-mix(in srgb, var(--warm) 10%, var(--surface));white-space:nowrap;padding:4px 7px;font-size:.62rem;display:inline-block}.periodization-flag{color:#405684;background:#f4f6ff;border-color:#aab8dc;margin-top:5px}.cost-distributions{grid-template-columns:repeat(2,minmax(0,1fr))}.cost-distributions .panel-wide{grid-column:1/-1}.cost-ranking{margin:0;padding:0;list-style:none}.cost-ranking li{border-bottom:1px solid var(--line);grid-template-columns:minmax(80px,1fr) auto;gap:7px 18px;padding:11px 0;font-size:.8rem;display:grid}.cost-ranking li:last-child{border-bottom:0}.cost-ranking>li>span:not(.primary-secondary){color:var(--muted);text-align:right}.cost-ranking i{width:var(--bar-size);background:var(--warm);grid-column:1/-1;height:3px}.cost-months{grid-template-columns:repeat(3,1fr);gap:0 24px;display:grid}.data-quality-panel{background:var(--ink);color:var(--surface);grid-template-columns:minmax(260px,.7fr) 1.3fr;gap:48px;margin-top:18px;display:grid}.data-quality-panel>div>p:last-child{color:#b8c0ba;max-width:520px;margin-top:18px;font-size:.78rem;line-height:1.55}.cost-quality-list{grid-template-columns:repeat(3,1fr)}footer{color:var(--muted);padding:24px 4px 0;font-size:.7rem}@media (max-width:980px){.app-navigation{grid-template-columns:1fr auto}.app-navigation nav{grid-area:2/1/auto/-1;overflow-x:auto}.app-user>span,.app-user>small{display:none}.source-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.panel-wide,.panel-products{grid-area:auto/1}.metric-grid{grid-template-columns:repeat(2,1fr)}.metric-card:nth-child(2){border-right:0}.metric-card:nth-child(-n+2){border-bottom:1px solid var(--line)}.review-filter-group,.cost-metric-grid{grid-template-columns:repeat(3,1fr)}.cost-distributions{grid-template-columns:1fr}.cost-distributions .panel-wide{grid-column:1}}@media (max-width:640px){.app-navigation{gap:8px 14px;padding-inline:14px}.app-navigation nav{gap:14px}.app-navigation nav a{white-space:nowrap}.freshness-pill{display:none}.admin-data-shell{width:min(100% - 24px,1500px)}.admin-data-header{display:block}.admin-status-actions{justify-items:start;margin-top:16px}.admin-data-header .status-badge{margin-top:16px;display:inline-block}.source-status-grid,.admin-operation-grid{grid-template-columns:1fr}.mintsoft-upload-card{grid-column:1}.dashboard-shell{width:min(100% - 24px,1320px);padding-top:18px}.dashboard-header{padding-bottom:22px;display:block}.user-menu{justify-items:start;margin-top:22px}.period{text-align:left;margin-top:22px}.metric-grid{grid-template-columns:1fr 1fr}.metric-card{padding:20px}.metric-card strong{font-size:2.35rem}.panel{padding:22px 18px}.trend-chart{gap:4px;height:180px;overflow-x:auto}.trend-column{flex:0 0 24px}.trend-label{transform-origin:top;transform:rotate(-45deg)}.quality-panel{grid-template-columns:1fr}.quality-list{grid-template-columns:repeat(2,1fr)}.section-intro{margin-top:48px;display:block}.section-intro>p{text-align:left;margin-top:18px}.fulfillment-stats{grid-template-columns:repeat(2,1fr)}.filter-panel{padding:14px}.period-filter-group,.review-filter-group{grid-template-columns:1fr 1fr}.filter-actions{grid-column:1/-1}.cost-metric-grid{grid-template-columns:1fr 1fr}.cost-metric-grid .metric-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.cost-metric-grid .metric-card:nth-child(2n){border-right:0}.cost-review-table th:nth-child(5),.cost-review-table td:nth-child(5),.cost-review-table th:nth-child(6),.cost-review-table td:nth-child(6),.cost-review-table th:nth-child(8),.cost-review-table td:nth-child(8){display:none}.cost-months{grid-template-columns:1fr}.invoice-lines-wrap{width:calc(100vw - 72px);margin-left:calc(100% + -100vw + 72px);padding:10px}.data-quality-panel{grid-template-columns:1fr;gap:28px}.cost-quality-list{grid-template-columns:repeat(2,1fr)}}.app-brand-group{align-items:center;gap:10px;min-width:0;display:flex}.environment-badge{color:#8a4b08;letter-spacing:.08em;white-space:nowrap;background:#fff4df;border:1px solid #c77a22;border-radius:999px;padding:4px 8px;font-size:.66rem;font-weight:800}
