:root{color:#081229;background:#f6f8fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;line-height:1.5;text-rendering:geometricPrecision;--green: #0a9d38;--green-dark: #047b29;--red: #e50914;--navy: #081229;--muted: #5c667a;--line: #dfe5ee;--surface: rgba(255, 255, 255, .88);--shadow: 0 18px 50px rgba(12, 23, 42, .1)}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh;overflow-x:hidden}button,input,select{font:inherit}button{cursor:pointer}.splash{min-height:100vh;display:grid;place-items:center;gap:24px;align-content:center;background:#fff}.splash img{width:min(320px,72vw)}.loader{width:42px;height:42px;border:3px solid #dce5de;border-top-color:var(--green);border-radius:50%;animation:spin .8s linear infinite}.login-page{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:minmax(360px,.72fr) minmax(520px,1fr);overflow-x:hidden;overflow-y:auto;background:linear-gradient(90deg,#ffffffeb,#f6f9f8e6),radial-gradient(circle at 18% 86%,rgba(16,158,58,.18),transparent 30%)}.login-brand,.login-panel{position:relative;min-height:100vh;min-height:100dvh}.login-brand{padding:clamp(32px,5vw,76px);display:flex;flex-direction:column;isolation:isolate}.brand-logo{width:min(430px,82%);height:auto;object-fit:contain}.brand-copy{margin-top:clamp(72px,14vh,170px);max-width:520px}.eyebrow{margin:0 0 12px;color:var(--green);font-size:.82rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.brand-copy h1{margin:0;color:var(--navy);font-size:5rem;line-height:.94;letter-spacing:0}.brand-copy h1 span,.login-footer span{color:var(--green)}.brand-copy p{margin:16px 0 0;color:#3d475d;font-size:1.18rem}.brand-rule{width:64px;height:3px;margin-top:30px;border-radius:999px;background:var(--green)}.brand-note{max-width:360px}.brand-arc,.brand-ground{position:absolute;z-index:-1;pointer-events:none}.brand-arc{right:-28%;bottom:-22%;width:78%;aspect-ratio:1 / 1;border:34px solid rgba(13,142,52,.16);border-left-color:transparent;border-bottom-color:transparent;border-radius:50%;transform:rotate(-12deg)}.brand-ground{left:-18%;bottom:-24%;width:118%;height:38%;border-radius:50% 50% 0 0;background:linear-gradient(135deg,#078428eb,#fffc)}.login-panel{display:grid;grid-template-rows:minmax(min-content,1fr) auto;place-items:stretch center;gap:24px;padding:clamp(24px,4vw,76px);overflow-y:auto;border-left:1px solid rgba(211,219,230,.75);background:#ffffffad;box-shadow:inset 1px 0 #fffc}.login-form{width:min(640px,100%);align-self:center;display:grid;gap:20px;justify-items:stretch}.product-mark{width:112px;height:112px;margin:0 auto 4px;display:grid;place-items:center;color:var(--green);border-radius:50%;background:#ffffffeb;box-shadow:0 18px 42px #0c172a24}.form-heading{text-align:center;margin-bottom:18px}.form-heading h2,.topbar h2,.section-title h1,.empty-dashboard h1{margin:0;color:var(--navy);font-weight:800;letter-spacing:0}.form-heading h2{font-size:2.1rem}.form-heading p,.topbar p,.section-title p,.empty-dashboard p,.table-heading p{margin:6px 0 0;color:var(--muted)}.field{display:grid;gap:10px;color:var(--navy);font-weight:650}.input-wrap,.field.compact input,.field.compact select,.field.compact textarea{width:100%;min-height:60px;border:1px solid #cfd8e6;border-radius:8px;background:#ffffffc7;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.input-wrap{display:grid;grid-template-columns:24px 1fr 42px;align-items:center;gap:14px;padding:0 16px}.input-wrap:focus-within,.field.compact input:focus,.field.compact select:focus,.field.compact textarea:focus{outline:none;border-color:#0a9d38c7;box-shadow:0 0 0 4px #0a9d381f;background:#fff}.input-wrap svg{color:#536078}.input-wrap input,.field.compact input,.field.compact select,.field.compact textarea{border:0;outline:0;color:var(--navy)}.input-wrap input{width:100%;min-width:0;background:transparent}.field.compact{gap:8px}.field.compact input,.field.compact select{min-height:48px;padding:0 14px}.field.compact textarea{min-height:96px;max-height:180px;padding:12px 14px;line-height:1.45;resize:vertical}.field.compact input:disabled,.field.compact textarea:disabled{cursor:not-allowed;color:#67748a;background:#f4f7fb}.icon-button{width:42px;height:42px;display:inline-grid;place-items:center;position:relative;color:#17223a;border:1px solid var(--line);border-radius:8px;background:#ffffffc7;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.icon-button:hover,.meeting-button:hover,.primary-button:hover{transform:translateY(-1px)}.icon-button:hover{border-color:#0a9d3861;box-shadow:0 10px 24px #0c172a14}.icon-button.danger-icon{color:#9f1010}.icon-button.danger-icon:hover{border-color:#e5091457;box-shadow:0 10px 24px #9f101014}.icon-button.subtle{width:38px;height:38px;border:0;background:transparent}.ghost-link{width:max-content;margin-left:auto;color:var(--green);border:0;background:transparent;font-weight:700}.primary-button{min-height:60px;display:inline-flex;justify-content:center;align-items:center;gap:12px;color:#fff;border:0;border-radius:8px;background:linear-gradient(135deg,#0aae3f,#067a28);box-shadow:0 16px 36px #047c2938;font-weight:800;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.primary-button:hover{box-shadow:0 18px 40px #047c2947}.primary-button:disabled{cursor:not-allowed;filter:saturate(.72)}.primary-button.small{width:100%;min-height:48px}.primary-button.compact-button,.secondary-button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 14px;border-radius:8px;font-weight:850}.primary-button.compact-button{min-width:150px}.secondary-button{color:#18243a;border:1px solid var(--line);background:#fff;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.secondary-button:hover{transform:translateY(-1px);border-color:#0a9d3852;box-shadow:0 10px 24px #0c172a14}.danger-button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 14px;color:#fff;border:0;border-radius:8px;background:#c9151e;font-weight:850;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.danger-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 28px #9f10102e}.danger-button:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.55}.form-error,.inline-message{margin:0;padding:12px 14px;border-radius:8px;font-size:.94rem}.form-error{color:#9f1010;background:#e5091414}.inline-message{color:#075a22;background:#0a9d3814}.login-footer{position:static;justify-self:center;align-self:end;display:flex;align-items:center;gap:20px;color:#48546a}.login-footer strong{color:var(--navy)}.login-footer i{width:1px;height:24px;background:#9aa5b8}.app-shell{min-height:100vh;display:grid;grid-template-columns:304px 1fr;-webkit-user-select:none;user-select:none;background:linear-gradient(180deg,#fffc,#f6f8fbf5),#f6f8fb}.app-shell input,.app-shell textarea,.app-shell [contenteditable=true]{-webkit-user-select:text;user-select:text}.app-shell.sidebar-auto-hide,.app-shell.meeting-mode{grid-template-columns:1fr}.sidebar{height:100vh;position:sticky;top:0;z-index:34;display:grid;grid-template-rows:auto 1fr auto;gap:28px;padding:30px 24px;border-right:1px solid var(--line);background:#ffffffdb;transition:transform .24s ease,box-shadow .24s ease,background .24s ease}.app-shell.sidebar-auto-hide .sidebar,.app-shell.meeting-mode .sidebar{position:fixed;left:0;top:0;width:304px;transform:translate(calc(-100% - 2px));box-shadow:0 22px 60px #0812292e;background:#fffffff5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.app-shell.sidebar-auto-hide:not(.meeting-mode) .sidebar:hover,.app-shell.sidebar-auto-hide:not(.meeting-mode) .sidebar-reveal-zone:hover~.sidebar{transform:translate(0)}.app-shell.meeting-mode.meeting-sidebar-open .sidebar{transform:translate(0)}.sidebar-reveal-zone{position:fixed;left:0;top:0;z-index:24;width:18px;height:100vh;border-right:1px solid rgba(10,157,56,.2);background:linear-gradient(90deg,#0a9d382e,#0a9d3800)}.meeting-sidebar-toggle{position:fixed;left:0;top:50%;z-index:38;width:28px;height:92px;display:grid;place-items:center;color:#fff;border:0;border-radius:0 8px 8px 0;background:linear-gradient(180deg,#0aae3f,#067a28);box-shadow:0 14px 34px #047c2942;transform:translateY(-50%)}.meeting-sidebar-toggle svg{transition:transform .18s ease}.meeting-sidebar-toggle svg.rotated{transform:rotate(180deg)}.sidebar-logo img{width:226px;max-width:100%;height:auto}.main-nav{display:grid;align-content:start;gap:10px}.main-nav button{width:100%;min-height:54px;display:grid;grid-template-columns:24px 1fr;align-items:center;gap:13px;padding:0 16px;color:#27324a;border:1px solid transparent;border-radius:8px;background:transparent;text-align:left;font-weight:750;transition:background .18s ease,color .18s ease,transform .18s ease}.main-nav button:hover{background:#0a9d3814}.main-nav button.active{color:#fff;background:linear-gradient(135deg,#13a640,#08772c);box-shadow:0 14px 30px #057e2a38}.version-box{display:grid;gap:7px;padding:18px;border:1px solid var(--line);border-radius:8px;background:#fff}.version-box span,.metric-card span{color:#596579;font-size:.88rem;font-weight:650}.version-box strong{color:var(--navy);font-size:1.1rem}.version-box p{margin:0;display:inline-flex;align-items:center;gap:7px;color:var(--green);font-size:.85rem}.version-settings{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:6px;color:#18243a;border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:800}.workspace{min-width:0;padding:32px;transition:padding .2s ease}.app-shell.sidebar-auto-hide:not(.meeting-mode) .workspace{padding-left:42px}.app-shell.meeting-mode .workspace{padding:24px 28px 32px 44px}.topbar{position:relative;z-index:32;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:30px}.topbar h2{font-size:1.9rem}.top-actions{display:flex;align-items:center;gap:16px}.meeting-button{min-height:46px;display:inline-flex;align-items:center;gap:10px;padding:0 18px;color:var(--green-dark);border:1px solid rgba(10,157,56,.45);border-radius:8px;background:#fff;font-weight:800;transition:transform .18s ease,box-shadow .18s ease}.meeting-button.active{color:#fff;border-color:transparent;background:linear-gradient(135deg,#0aae3f,#067a28);box-shadow:0 16px 36px #047c2938}.notification b{position:absolute;right:-5px;top:-6px;min-width:20px;height:20px;display:grid;place-items:center;color:#fff;border-radius:50%;background:var(--red);font-size:.72rem}.settings-shortcut{color:#075a22;border-color:#0a9d3838;background:#0a9d3812}.notification-wrap{position:relative}.notification.active{color:#075a22;border:1px solid rgba(10,157,56,.26);border-radius:8px;background:#fff;box-shadow:0 10px 24px #0c172a14}.notification-menu{position:absolute;right:0;top:calc(100% + 12px);z-index:18;width:min(360px,calc(100vw - 36px));display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fffffff5;box-shadow:0 22px 58px #0c172a29;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.notification-menu-head,.notification-card-head{display:flex;align-items:flex-start;gap:10px}.notification-menu-head{align-items:center;justify-content:space-between}.notification-menu-head strong{color:var(--navy);font-size:.98rem}.notification-empty{min-height:72px;display:grid;place-items:center;color:var(--muted);border:1px dashed #dce5ef;border-radius:8px;font-weight:850}.notification-list{display:grid;gap:10px}.notification-card{display:grid;gap:10px;padding:12px;border:1px solid rgba(245,158,11,.22);border-radius:8px;background:#fff7edb8}.notification-card-head svg{flex:0 0 auto;color:#d97706}.notification-card.installation{border-color:#0a9d3833;background:#edf9f1d1}.notification-card.installation .notification-card-head svg{color:var(--green)}.notification-card-head strong{color:var(--navy);font-size:.92rem}.notification-card-head p{margin:3px 0 0;color:#5f6b7f;font-size:.84rem;line-height:1.35}.notification-date-list{display:flex;flex-wrap:wrap;gap:6px}.notification-date-list span{min-height:26px;display:inline-grid;place-items:center;padding:0 8px;color:#8a4b08;border:1px solid rgba(245,158,11,.18);border-radius:999px;background:#ffffffc2;font-size:.78rem;font-weight:900}.compact-error{margin:0;font-size:.82rem}.profile{min-height:52px;display:grid;grid-template-columns:44px minmax(120px,max-content) 20px;align-items:center;gap:12px;padding:4px 6px 4px 4px;color:inherit;border:1px solid transparent;border-radius:8px;background:transparent;text-align:left;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.profile:hover,.profile.active{border-color:#0a9d383d;background:#fff;box-shadow:0 10px 24px #0c172a14}.profile svg{transition:transform .18s ease}.profile svg.rotated{transform:rotate(180deg)}.profile-menu-wrap{position:relative}.profile>span{width:44px;height:44px;display:grid;place-items:center;color:#fff;border-radius:50%;background:var(--green);font-weight:850}.profile strong{color:var(--navy)}.profile p{margin:0;color:#5c667a;font-size:.88rem}.profile-menu{position:absolute;right:0;top:calc(100% + 10px);z-index:40;width:220px;display:grid;gap:6px;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fffffff5;box-shadow:0 18px 46px #0c172a24;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.profile-menu button{min-height:42px;display:flex;align-items:center;gap:10px;padding:0 10px;color:#17223a;border:0;border-radius:8px;background:transparent;font-weight:850;text-align:left}.profile-menu button:hover{color:#075a22;background:#0a9d3814}.page-stack{display:grid;gap:24px}.dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:16px}.dashboard-page{gap:22px}.dashboard-hero{display:flex;align-items:center;justify-content:space-between;gap:18px}.dashboard-toolbar{display:flex;align-items:center;gap:12px}.dashboard-segment-wrap{position:relative}.dashboard-segment-trigger,.dashboard-month-control{min-height:42px;display:inline-flex;align-items:center;gap:9px;color:#17223a;border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:900}.dashboard-segment-trigger{padding:0 13px}.dashboard-segment-trigger svg:last-child{transition:transform .18s ease}.dashboard-segment-trigger svg.rotated{transform:rotate(180deg)}.dashboard-segment-menu{position:absolute;right:0;top:calc(100% + 10px);z-index:10;min-width:250px;display:grid;gap:6px;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fffffff5;box-shadow:0 18px 46px #0c172a24;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.dashboard-segment-menu button{min-height:42px;display:flex;align-items:center;gap:9px;padding:0 10px;color:#17223a;border:0;border-radius:8px;background:transparent;font-weight:900;text-align:left}.dashboard-segment-menu button.selected,.dashboard-segment-menu button:hover{color:#075a22;background:#0a9d3814}.dashboard-month-control{display:grid;grid-template-columns:38px minmax(160px,max-content) 38px;padding:0 4px}.dashboard-month-trigger{min-height:38px;padding:0 10px;color:var(--navy);border:0;border-radius:6px;background:transparent;font-weight:900;text-transform:capitalize;transition:background .18s ease,color .18s ease}.dashboard-month-trigger:hover,.dashboard-month-trigger:focus-visible{color:var(--green-dark);outline:none;background:#0a9d3814}.waste-dashboard-panel{display:grid;gap:18px;background:radial-gradient(circle at 10% 0%,rgba(10,157,56,.08),transparent 34%),linear-gradient(180deg,#fff,#f8fbf9)}.waste-dashboard-insights{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.waste-dashboard-insights span{min-height:34px;display:inline-flex;align-items:center;gap:6px;padding:0 10px;color:#435069;border:1px solid rgba(221,228,238,.9);border-radius:8px;background:#ffffffc7;font-size:.76rem;font-weight:850}.waste-dashboard-insights strong{color:var(--navy);font-size:.88rem;font-weight:950;font-variant-numeric:tabular-nums}.waste-dashboard-kpi-strip{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:10px}.dashboard-metric-card{min-height:76px;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;padding:12px;border:1px solid rgba(221,228,238,.92);border-radius:8px;background:#ffffffe0;box-shadow:0 12px 28px #0c172a0d;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.dashboard-metric-card:hover{transform:translateY(-1px);border-color:#0a9d382e;box-shadow:0 16px 34px #0c172a14}.dashboard-metric-card>svg{width:34px;height:34px;padding:8px;color:var(--green);border-radius:50%;background:#0a9d381a}.dashboard-metric-card.tone-teal>svg{color:#0f9f8d;background:#0f9f8d1a}.dashboard-metric-card.tone-amber>svg{color:#b45309;background:#f59e0b1f}.dashboard-metric-card.tone-red>svg{color:#d71920;background:#e509141a}.dashboard-metric-card.tone-neutral>svg{color:#64748b;background:#64748b1a}.dashboard-metric-card span{color:#5a6577;font-size:.76rem;font-weight:900}.dashboard-metric-card strong{display:block;margin-top:2px;color:var(--navy);font-size:1.18rem;line-height:1.08}.dashboard-metric-card small{display:block;margin-top:3px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:850}.waste-chart-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);grid-template-rows:minmax(214px,auto) minmax(214px,auto);gap:14px;align-items:stretch}.waste-chart-card{position:relative;overflow:hidden;display:grid;gap:14px;padding:18px;color:#f8fafc;border:1px solid rgba(10,157,56,.14);border-radius:8px;background:radial-gradient(circle at 82% 8%,rgba(67,240,126,.12),transparent 30%),linear-gradient(135deg,rgba(10,157,56,.12),transparent 36%),linear-gradient(180deg,#07130d,#0c1711);box-shadow:0 22px 48px #04120b29}.waste-chart-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(180deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:42px 42px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.62),transparent 78%);mask-image:linear-gradient(180deg,rgba(0,0,0,.62),transparent 78%)}.waste-chart-card>*{position:relative;z-index:1}.waste-chart-card.chart-wide{grid-row:1 / span 2;min-height:560px}.waste-history-stack{align-content:stretch;gap:18px}.chart-rule-legend{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff0b}.chart-rule-legend span{min-height:28px;display:inline-flex;align-items:center;gap:7px;color:#e2e8f0c7;font-size:.72rem;font-weight:900}.chart-rule-legend .lower-is-better{width:28px;justify-content:center;color:#86efac}.chart-rule-legend i{width:10px;height:10px;border-radius:50%}.chart-rule-legend i.ok{background:#0aae3f;box-shadow:0 0 16px #0a9d3847}.chart-rule-legend i.bad{background:#e50914;box-shadow:0 0 16px #e509143d}.history-chart-block{min-height:0;display:grid;gap:10px}.chart-pills{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:7px}.chart-pills span{min-height:28px;display:inline-flex;align-items:center;padding:0 9px;color:#e2e8f0c7;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff0e;font-size:.7rem;font-weight:900}.waste-chart-card .compact-heading h3{color:#fff}.waste-chart-card .compact-heading p{color:#e2e8f0b8}.waste-column-chart{--chart-plot-bottom: 46px;--chart-plot-height: 190px;min-height:290px;position:relative;display:flex;align-items:flex-end;gap:12px;padding:38px 16px 42px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff09}.waste-column-chart.compact-chart{--chart-plot-bottom: 37px;--chart-plot-height: 116px;min-height:190px;gap:9px;padding:26px 14px 18px}.compact-chart .waste-column-track{height:116px}.monthly-history-chart .waste-column span{text-transform:capitalize}.waste-average-line,.waste-target-line{position:absolute;left:0;right:0;height:1px;border-top:1px dashed rgba(255,255,255,.52)}.chart-reference-layer{position:absolute;left:16px;right:16px;bottom:var(--chart-plot-bottom);z-index:4;height:var(--chart-plot-height);pointer-events:none}.waste-target-line{border-top-color:#f59e0bd1;box-shadow:0 0 18px #f59e0b1a}.waste-average-line span,.waste-target-line span{position:absolute;right:0;top:-22px;color:#ffffffc7;font-size:.74rem;font-weight:900}.waste-target-line span{left:0;right:auto;color:#fbbf24}.waste-column{min-width:30px;flex:1;display:grid;align-items:end;gap:7px;text-align:center}.waste-column-track{height:190px;position:relative;display:flex;align-items:flex-end;overflow:hidden;border-radius:7px 7px 3px 3px;background:#ffffff17;box-shadow:inset 0 -1px #ffffff14}.column-value-inside{position:absolute;top:6px;left:50%;z-index:7;max-width:calc(100% - 6px);transform:translate(-50%);color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.64rem;font-style:normal;font-weight:950;line-height:1;text-shadow:0 1px 5px rgba(4,12,20,.82);pointer-events:none;font-variant-numeric:tabular-nums}.column-value-inside.outside{top:-18px;max-width:calc(100% + 18px);padding:2px 5px;color:#f8fafcf5;border:1px solid rgba(255,255,255,.12);border-radius:5px;background:#07130de6;box-shadow:0 8px 18px #0000002e}.waste-column-track i{position:relative;overflow:visible;width:100%;display:block;border-radius:inherit;background:linear-gradient(180deg,#43f07e,#0aae3f 70%,#067a28);box-shadow:0 0 24px #0a9d3857}.waste-column-track.above-target i{background:linear-gradient(180deg,#ff8b8b,#e50914 72%,#9f1010);box-shadow:0 0 24px #e5091440}.waste-column span{color:#e2e8f0c7;font-size:.74rem;font-weight:850;line-height:1}.waste-column strong{color:#fff;font-size:.76rem;font-variant-numeric:tabular-nums}.waste-donut-layout{display:grid;gap:16px;align-content:center}.waste-donut{width:min(190px,70vw);aspect-ratio:1;display:grid;place-items:center;justify-self:center;border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff1a,0 0 38px #0a9d3829}.waste-donut>div{width:58%;aspect-ratio:1;display:grid;place-items:center;align-content:center;border-radius:50%;background:#08120d;box-shadow:inset 0 0 0 1px #ffffff14}.waste-donut strong{color:#fff;font-size:1.35rem;line-height:1}.waste-donut span{color:#e2e8f0b8;font-size:.72rem;font-weight:900}.waste-donut-legend{display:grid;gap:8px}.waste-donut-legend div{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:8px;color:#e2e8f0cc;font-size:.78rem;font-weight:850}.waste-donut-legend div:hover span,.waste-donut-legend div:hover strong{color:#fff}.waste-donut-legend i{width:10px;height:10px;border-radius:50%}.waste-donut-legend strong{color:#fff;font-variant-numeric:tabular-nums}.projection-card{align-content:stretch}.projection-gauge{min-height:148px;display:grid;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:16px}.projection-ring{width:92px;height:92px;display:grid;place-items:center;color:#ffffffb8;border:10px solid rgba(255,255,255,.1);border-top-color:#0a9d38c7;border-radius:50%}.projection-gauge.ready .projection-ring{color:#43f07e;border-color:#0a9d3833;border-top-color:#43f07e}.projection-gauge span{color:#e2e8f0b8;font-size:.78rem;font-weight:900}.projection-gauge strong{display:block;margin-top:3px;color:#fff;font-size:1.32rem}.projection-gauge p{margin:7px 0 0;color:#e2e8f0a8;font-size:.78rem;line-height:1.42}.waste-secondary-chart-grid{display:grid;grid-template-columns:minmax(320px,1.2fr) minmax(260px,.8fr) minmax(260px,.8fr);gap:14px;align-items:stretch}.field-progress-card{grid-column:span 2;overflow:visible}.field-progress-card>.table-heading{z-index:40}.chart-select-wrap{min-width:0}.dashboard-segment-trigger.dark-trigger{max-width:260px;color:#f8fafce6;border-color:#ffffff1a;background:#ffffff0e}.dashboard-segment-trigger.dark-trigger span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-segment-menu.dark-menu{border-color:#ffffff1a;background:#07130df5}.dashboard-segment-menu.dark-menu button{color:#e2e8f0d1}.dashboard-segment-menu.dark-menu button.selected,.dashboard-segment-menu.dark-menu button:hover{color:#86efac;background:#0a9d3824}.field-progress-menu{z-index:60;max-height:290px;overflow-y:auto;width:min(320px,86vw)}.field-progress-layout{display:grid;grid-template-columns:132px minmax(0,1fr);align-items:center;gap:16px}.field-progress-ring{width:132px;aspect-ratio:1;display:grid;place-items:center;border-radius:50%;background:conic-gradient(#0aae3f 0,#0aae3f 0%,#ffffff1a 0%,#ffffff1a);box-shadow:inset 0 0 0 1px #ffffff14,0 0 28px #0a9d381f}.field-progress-ring.over{box-shadow:inset 0 0 0 1px #ffffff14,0 0 28px #e509141f}.field-progress-ring>div{width:68%;aspect-ratio:1;display:grid;place-items:center;align-content:center;border-radius:50%;background:#08120d}.field-progress-ring strong{color:#fff;font-size:1.12rem;line-height:1}.field-progress-ring span{margin-top:4px;color:#e2e8f09e;font-size:.68rem;font-weight:900}.field-progress-info{min-width:0;display:grid;gap:7px}.status-badge{width:max-content;min-height:28px;display:inline-flex;align-items:center;padding:0 9px;border-radius:8px;font-size:.72rem;font-weight:950}.status-badge.good{color:#86efac;background:#0a9d3824}.status-badge.danger{color:#fca5a5;background:#e5091424}.field-progress-info strong{color:#fff;font-size:1.4rem;font-variant-numeric:tabular-nums}.field-progress-info p,.field-progress-info small{margin:0;color:#e2e8f0ad;font-size:.78rem;font-weight:820}.field-progress-info small{display:inline-flex;align-items:center;gap:5px;color:#86efac}.field-progress-info .lower-indicator{width:26px;height:26px;justify-content:center;border-radius:50%;background:#0a9d3824}.field-progress-charts{display:grid;gap:10px}.field-chart-block{display:grid;gap:6px}.field-chart-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.field-chart-title span{color:#fff;font-size:.78rem;font-weight:950}.field-chart-title strong{color:#e2e8f0b8;font-size:.72rem;font-weight:900}.field-mini-chart{--chart-plot-bottom: 29px;--chart-plot-height: 62px;height:122px;min-height:0;position:relative;display:flex;align-items:flex-end;gap:8px;padding:22px 12px 14px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff09}.field-mini-chart.monthly{--chart-plot-height: 58px;height:112px}.field-mini-chart .chart-reference-layer{left:12px;right:12px}.field-mini-column{min-width:24px;flex:1;display:grid;grid-template-rows:var(--chart-plot-height) auto;align-items:end;gap:6px;text-align:center}.field-mini-track{min-height:0;position:relative;display:flex;align-items:flex-end;height:var(--chart-plot-height)}.field-mini-column i{height:0;position:relative;overflow:visible;width:100%;align-self:end;display:block;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,#43f07e,#0aae3f 72%,#067a28);box-shadow:0 0 18px #0a9d3838}.field-mini-column i.above{background:linear-gradient(180deg,#ff8b8b,#e50914 72%,#9f1010);box-shadow:0 0 18px #e509142e}.field-mini-column span{color:#e2e8f09e;font-size:.68rem;font-weight:850;line-height:1}.waste-ranking-list{display:grid;gap:10px}.waste-ranking-item{display:grid;grid-template-columns:minmax(190px,1.15fr) minmax(100px,.85fr) 70px;align-items:center;gap:10px;min-height:34px}.waste-ranking-item>div:first-child{min-width:0;display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;column-gap:8px}.waste-ranking-item>div:first-child span{width:24px;height:24px;display:grid;place-items:center;color:#43f07e;border-radius:50%;background:#0a9d3829;font-size:.74rem;font-weight:950}.waste-ranking-item strong{min-width:0;color:#fff;font-size:.82rem;line-height:1.2}.waste-ranking-item small{grid-column:2;color:#e2e8f094;font-size:.7rem;font-weight:850}.waste-ranking-bar{height:9px;overflow:hidden;border-radius:999px;background:#ffffff1a}.waste-ranking-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#43f07e,#0aae3f);box-shadow:0 0 20px #0a9d3847}.waste-ranking-item em{color:#ffffffeb;font-style:normal;font-size:.78rem;font-weight:950;text-align:right;font-variant-numeric:tabular-nums}.waste-heatmap{display:grid;gap:9px;align-content:start}.waste-heatmap-weekdays,.waste-heatmap-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.waste-heatmap-weekdays span{color:#e2e8f08a;text-align:center;font-size:.72rem;font-weight:900}.heatmap-cell,.heatmap-spacer{aspect-ratio:1;min-height:32px;display:grid;place-items:center;border-radius:6px}.heatmap-cell{color:#e2e8f0ad;border:1px solid rgba(255,255,255,.07);background:#ffffff0e;font-size:.76rem;font-weight:900;transition:transform .18s ease,border-color .18s ease}.heatmap-cell.active{color:#fff;border-color:#fff3;text-shadow:0 1px 2px rgba(8,18,41,.46);box-shadow:inset 0 0 0 1px #ffffff0f}.heatmap-cell:hover{transform:translateY(-1px);border-color:#ffffff85}.heatmap-scale{display:grid;grid-template-columns:max-content minmax(80px,1fr) max-content;align-items:center;gap:8px;margin-top:2px;color:#e2e8f09e;font-size:.68rem;font-weight:850}.heatmap-scale i{height:6px;border-radius:999px;background:linear-gradient(90deg,#16a34a,#84cc16 28%,#eab308,#f97316,#b91c1c)}.waste-compare-card{display:grid;gap:16px;align-content:center}.waste-compare-row{display:grid;grid-template-columns:92px minmax(0,1fr) 78px;align-items:center;gap:10px}.waste-compare-row span{color:#e2e8f0b8;font-size:.76rem;font-weight:900}.waste-compare-row>div{height:13px;overflow:hidden;border-radius:999px;background:#ffffff1a}.waste-compare-row i{display:block;height:100%;border-radius:inherit;transition:width .28s ease,background .2s ease}.waste-compare-row.good i{background:linear-gradient(90deg,#43f07e,#0aae3f)}.waste-compare-row.bad i{background:linear-gradient(90deg,#fb7185,#e50914)}.waste-compare-row.neutral i{background:linear-gradient(90deg,#94a3b8,#64748b)}.waste-compare-row strong{color:#fff;font-size:.78rem;text-align:right;font-variant-numeric:tabular-nums}.waste-compare-delta{min-height:76px;display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;padding:12px;border-radius:8px;background:#ffffff0f}.waste-compare-delta svg{width:42px;height:42px;padding:10px;border-radius:50%}.waste-compare-delta.up svg{color:#fca5a5;background:#e5091426}.waste-compare-delta.down svg{color:#43f07e;background:#0a9d3829}.waste-compare-delta strong{display:block;color:#fff;font-size:1.2rem}.waste-compare-delta span{color:#e2e8f0a3;font-size:.78rem;font-weight:850}.dark-empty{color:#e2e8f0b8;border-color:#ffffff1a;background:#ffffff0a}.compact-heading h3{margin:0;color:var(--navy);font-size:1rem}.pending-date-panel{display:grid;gap:12px;padding:14px;border:1px solid rgba(245,158,11,.22);border-radius:8px;background:#fff7edb8}.pending-date-panel strong{color:var(--navy)}.pending-date-panel div{display:grid;gap:8px}.pending-date-panel span{padding-bottom:8px;color:#435069;border-bottom:1px solid rgba(245,158,11,.16);font-weight:850}.pending-date-panel span:last-child{padding-bottom:0;border-bottom:0}.metric-card,.empty-dashboard,.panel-form,.data-panel{border:1px solid rgba(221,228,238,.9);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.metric-card{min-height:128px;display:flex;align-items:center;gap:18px;padding:22px}.metric-icon,.empty-mark{display:grid;place-items:center;color:var(--green);border-radius:50%;background:#0a9d381a}.metric-icon{width:62px;height:62px;flex:0 0 62px}.metric-card strong{display:block;margin-top:4px;color:var(--navy);font-size:1.75rem;line-height:1.1}.empty-dashboard{min-height:min(58vh,560px);display:grid;place-items:center;align-content:center;gap:14px;padding:48px 24px;text-align:center}.empty-mark{width:92px;height:92px}.empty-dashboard h1{font-size:clamp(1.8rem,3vw,2.6rem)}.empty-dashboard p{max-width:620px;font-size:1.05rem}.planning-page{gap:22px}.planning-header{display:flex;align-items:center;justify-content:space-between;gap:18px}.planning-header-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.planning-radial{position:relative;z-index:24}.planning-radial-trigger{min-width:112px;position:relative;z-index:2}.planning-radial-popover{position:absolute;top:50%;right:calc(100% + 16px);width:294px;height:294px;border:1px solid rgba(10,157,56,.24);border-radius:50%;background:#fafdfbf5;box-shadow:0 24px 64px #0c172a38;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transform:translateY(-50%);animation:radial-menu-side-in .15s ease-out}.planning-radial-popover.portal-open{position:fixed;right:auto;z-index:80;transform:none;animation:radial-menu-portal-in .15s ease-out}.planning-radial-popover:before{content:"";position:absolute;top:0;left:100%;width:16px;height:100%}.planning-radial-ring{position:absolute;top:42px;right:42px;bottom:42px;left:42px;border:24px solid rgba(10,157,56,.08);border-radius:50%;box-shadow:inset 0 0 0 1px #0a9d381f,0 0 0 1px #0a9d3814}.planning-radial-center{position:absolute;top:50%;left:50%;width:58px;height:58px;display:grid;place-items:center;color:#08742b;border:1px solid rgba(10,157,56,.2);border-radius:50%;background:#fff;transform:translate(-50%,-50%)}.planning-radial-action{position:absolute;width:48px;height:48px;display:grid;place-items:center;color:#31415a;border:1px solid rgba(10,157,56,.2);border-radius:50%;background:#fff;box-shadow:0 8px 20px #0c172a1f;transform:translate(-50%,-50%);transition:color .14s ease,background .14s ease,transform .14s ease,box-shadow .14s ease}.planning-radial-action:hover,.planning-radial-action:focus-visible{color:#fff;background:var(--green);box-shadow:0 10px 26px #0a9d384d;transform:translate(-50%,-50%) scale(1.1)}.planning-radial-action:disabled{color:#8995a7;background:#edf1f5;box-shadow:none;cursor:wait}.planning-radial-label{position:absolute;top:50%;right:calc(100% + 12px);max-width:220px;padding:6px 10px;color:#24344e;border:1px solid rgba(10,157,56,.16);border-radius:6px;background:#fffffff0;font-size:.76rem;font-weight:900;text-align:center;white-space:nowrap;opacity:0;transform:translate(8px,-50%);transition:opacity .13s ease,transform .13s ease;pointer-events:none}.planning-radial-label.visible{opacity:1;transform:translateY(-50%)}@keyframes radial-menu-side-in{0%{opacity:0;transform:translate(8px,-50%) scale(.94)}to{opacity:1;transform:translateY(-50%) scale(1)}}@keyframes radial-menu-portal-in{0%{opacity:0;scale:.94}to{opacity:1;scale:1}}@keyframes radial-menu-center-in{0%{opacity:0;transform:translate(-50%,-48%) scale(.94)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.mirror-page{gap:14px}body.mirror-tour-active{background:#f4f7f9}body.mirror-tour-active .app-shell{min-height:100vh;display:block}body.mirror-tour-active .sidebar,body.mirror-tour-active .sidebar-reveal-zone,body.mirror-tour-active .meeting-sidebar-toggle,body.mirror-tour-active .topbar,body.mirror-tour-active .mirror-page-header,body.mirror-tour-active .mirror-summary,body.mirror-tour-active .mirror-toolbar,body.mirror-tour-active .mirror-workspace-heading{display:none!important}body.mirror-tour-active .workspace,body.mirror-tour-active .app-shell.sidebar-auto-hide:not(.meeting-mode) .workspace,body.mirror-tour-active .app-shell.meeting-mode .workspace{padding:0}body.mirror-tour-active .mirror-page{display:block}body.mirror-tour-active .mirror-workspace{min-height:100vh;gap:0;padding:10px;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}body.mirror-tour-active .mirror-bands{gap:12px}.mirror-tour-exit{width:48px;height:48px;position:fixed;top:max(12px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));z-index:220;display:grid;place-items:center;padding:0;color:#fff;border:2px solid rgba(255,255,255,.92);border-radius:50%;background:#17243a;box-shadow:0 14px 34px #08122947}.mirror-tour-exit:hover,.mirror-tour-exit:focus-visible{outline:0;background:#0a8731;transform:translateY(-1px)}.mirror-page-header{position:relative;z-index:24}.mirror-header-action{height:42px;min-height:42px;flex:0 0 auto;align-self:center}.mirror-save-state,.followup-sync-badge{min-height:38px;display:inline-flex;align-items:center;gap:7px;padding:0 11px;color:#426078;border:1px solid #d8e1ec;border-radius:7px;background:#f8fafc;font-size:.76rem;font-weight:850;white-space:nowrap}.mirror-mode-badge{min-height:38px;display:inline-flex;align-items:center;gap:7px;padding:0 11px;border:1px solid #d8e1ec;border-radius:7px;font-size:.76rem;font-weight:850;white-space:nowrap}.mirror-mode-badge.reading{color:#526079;background:#f8fafc}.mirror-mode-badge.editing{color:#08752c;border-color:#0a9d3847;background:#edf9f1}.mirror-mode-badge.historical{color:#82520b;border-color:#d9951a52;background:#fff8e8}.mirror-history-control{position:relative;z-index:30}.mirror-history-popover{width:min(390px,calc(100vw - 28px));max-height:min(590px,calc(100dvh - 120px));position:absolute;top:calc(100% + 9px);right:0;display:grid;gap:14px;padding:16px;overflow-y:auto;color:var(--navy);border:1px solid #d7e0eb;border-radius:8px;background:#fffffffa;box-shadow:0 24px 65px #08122938;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.mirror-history-popover>header,.mirror-history-popover>header>div,.mirror-history-recent,.mirror-history-recent>div,.mirror-history-recent button span{display:grid}.mirror-history-popover>header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px}.mirror-history-popover>header strong{font-size:.94rem}.mirror-history-popover>header span,.mirror-history-recent>div span{color:#6d788b;font-size:.7rem;font-weight:750}.mirror-history-datetime{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(112px,.65fr);gap:10px}.mirror-history-datetime label{min-width:0;display:grid;gap:5px;color:#4e5e75;font-size:.7rem;font-weight:850}.mirror-history-datetime input{width:100%;min-width:0;height:40px;padding:0 9px;color:var(--navy);border:1px solid #ccd6e4;border-radius:7px;background:#fff}.mirror-history-popover>.primary-button{width:100%;justify-content:center}.mirror-history-recent{gap:6px;padding-top:12px;border-top:1px solid #e5eaf1}.mirror-history-recent>div{grid-template-columns:minmax(0,1fr) auto;align-items:center;margin-bottom:2px;font-size:.78rem}.mirror-history-recent button{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 10px;color:#26354d;border:0;border-radius:6px;background:#f6f8fb;text-align:left}.mirror-history-recent button:hover,.mirror-history-recent button:focus-visible{color:#086e29;outline:0;background:#edf8f1}.mirror-history-recent button b{overflow:hidden;font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.mirror-history-recent button small{color:#738096;font-size:.65rem}.mirror-history-recent button em{color:#526079;font-size:.64rem;font-style:normal;font-weight:750;white-space:nowrap}.mirror-history-recent p{margin:4px 0 0;color:#778397;font-size:.72rem}.mirror-summary{min-height:44px;display:flex;align-items:center;gap:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff}.mirror-summary span{min-width:0;flex:1 1 0;padding:0 16px;color:#5c687c;border-right:1px solid var(--line);font-size:.78rem;white-space:nowrap}.mirror-summary span:last-child{border-right:0}.mirror-summary b{margin-right:5px;color:var(--navy);font-size:.96rem}.mirror-toolbar{min-height:58px;display:grid;grid-template-columns:minmax(240px,1fr) auto auto;align-items:center;gap:12px;padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:#fff}.planning-search.mirror-search{width:100%;min-height:44px;grid-template-columns:20px minmax(0,1fr) auto;border-color:transparent;background:#f8fafc}.mirror-search button{width:28px;height:28px;display:grid;place-items:center;padding:0;color:#68768c;border:0;border-radius:6px;background:transparent}.mirror-search button:hover{color:#17243a;background:#e8edf3}.mirror-search-result,.mirror-history-active{min-height:34px;display:inline-flex;align-items:center;gap:5px;padding:0 10px;color:#607087;border-left:1px solid #e2e8f0;font-size:.7rem;font-weight:750;white-space:nowrap}.mirror-search-result strong{color:var(--navy);font-size:.82rem}.mirror-history-active{color:#83530c}.mirror-workspace{display:grid;gap:14px;padding:16px;overflow:hidden}.mirror-workspace-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.mirror-workspace-heading h2{font-size:1rem}.mirror-workspace-heading p,.mirror-workspace-heading>span{margin-top:3px;color:var(--muted);font-size:.76rem}.mirror-workspace-heading>span{margin-top:0;font-weight:800;text-transform:capitalize}.mirror-bands{display:grid;gap:18px}.mirror-band{min-width:0;display:grid;grid-template-columns:repeat(var(--mirror-columns),minmax(0,1fr));border:1px solid #cbd5e1;border-radius:6px;overflow:hidden;background:#fff;box-shadow:0 8px 24px #0c172a0f}.mirror-loom{min-width:0;position:relative;display:grid;grid-template-rows:58px auto 38px;border-right:1px solid #cbd5e1}.mirror-loom-focus-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#0812296b;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mirror-loom.expanded{width:min(540px,calc(100vw - 40px));height:min(680px,calc(100dvh - 64px));max-height:calc(100dvh - 64px);position:fixed;top:50%;left:50%;z-index:82;grid-template-rows:72px minmax(0,1fr) 46px;overflow:visible;border:1px solid rgba(203,213,225,.98);border-radius:8px;background:#fff;box-shadow:0 28px 90px #0812294d;transform:translate(-50%,-50%);animation:mirror-loom-focus-in .16s ease-out;-webkit-user-select:none;user-select:none}.mirror-loom.expanded input,.mirror-loom.expanded textarea,.mirror-loom.expanded [contenteditable=true]{-webkit-user-select:text;user-select:text}.mirror-product-row.validation-error,.mirror-lot-row.validation-error,.mirror-empty-row.validation-error{background:#fff1f2;box-shadow:inset 3px 0 #dc2626}.mirror-product-row input.invalid,.mirror-lot-row input.invalid,.mirror-empty-row input.invalid,.mirror-dialog-fields input.invalid{color:#9f1010;border-color:#dc2626b3;background:#fff7f7;box-shadow:inset 0 0 0 1px #dc26262e}.mirror-validation-toast{max-width:min(480px,calc(100vw - 28px));min-height:48px;position:fixed;right:18px;bottom:max(18px,env(safe-area-inset-bottom));z-index:220;display:flex;align-items:center;gap:10px;padding:10px 14px;color:#8f1118;border:1px solid rgba(220,38,38,.24);border-radius:8px;background:#fff8f8fa;box-shadow:0 18px 46px #500a0f33;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.mirror-validation-toast svg{flex:0 0 auto}.mirror-validation-toast span{font-size:.78rem;line-height:1.35}.mirror-validation-toast strong{font-size:.82rem}.mirror-floating-validation{max-width:min(560px,calc(100vw - 28px));min-height:48px;position:fixed;top:max(84px,calc(env(safe-area-inset-top) + 14px));left:50%;z-index:230;display:flex;align-items:center;gap:10px;padding:11px 15px;color:#8f1118;border:1px solid rgba(220,38,38,.3);border-radius:8px;background:#fff8f8fa;box-shadow:0 18px 46px #500a0f33;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transform:translate(-50%);animation:mirror-floating-validation-in .18s ease-out}.mirror-floating-validation svg{flex:0 0 auto}.mirror-floating-validation span{font-size:.82rem;font-weight:850;line-height:1.35}.mirror-tour-active .mirror-floating-validation{top:max(14px,env(safe-area-inset-top))}@keyframes mirror-floating-validation-in{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}@keyframes mirror-loom-focus-in{0%{opacity:0;transform:translate(-50%,-48%) scale(.97)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.mirror-loom-close{width:36px;height:36px;position:absolute;top:-14px;right:-14px;z-index:4;display:grid;place-items:center;padding:0;color:#fff;border:2px solid #ffffff;border-radius:50%;background:#17243a;box-shadow:0 8px 22px #0812294d}.mirror-loom-navigate{width:46px;height:46px;position:absolute;top:50%;z-index:5;display:grid;place-items:center;padding:0;color:#17243a;border:2px solid rgba(255,255,255,.96);border-radius:50%;background:#fffffffa;box-shadow:0 12px 30px #08122947;transform:translateY(-50%);touch-action:manipulation;transition:color .15s ease,background .15s ease,opacity .15s ease,transform .15s ease}.mirror-loom-navigate.previous{left:-68px}.mirror-loom-navigate.next{right:-68px}.mirror-loom-navigate:hover:not(:disabled),.mirror-loom-navigate:focus-visible:not(:disabled){color:#fff;outline:0;background:#0a9d38;transform:translateY(-50%) scale(1.04)}.mirror-loom-navigate:disabled{opacity:.32;cursor:not-allowed}.mirror-loom.expanded .mirror-loom-body{grid-template-rows:repeat(var(--mirror-rows),44px);align-content:start;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.mirror-loom.expanded .mirror-product-row,.mirror-loom.expanded .mirror-lot-row,.mirror-loom.expanded .mirror-empty-row{min-height:44px}.mirror-loom.expanded .mirror-product-row input,.mirror-loom.expanded .mirror-product-row .mirror-editable-code,.mirror-loom.expanded .mirror-lot-row input,.mirror-loom.expanded .mirror-lot-row>span{font-size:.84rem}.mirror-loom.expanded .mirror-product-row{grid-template-columns:minmax(0,1fr) 36px 36px}.mirror-loom.expanded .mirror-lot-row{grid-template-columns:minmax(0,1fr) 84px 84px}.mirror-loom.expanded .mirror-row-action{width:36px;height:40px}.mirror-loom:last-child{border-right:0}.mirror-loom-head{width:100%;min-width:0;position:relative;display:grid;align-content:center;gap:3px;padding:5px 7px;color:inherit;border:0;border-radius:0;text-align:center;background:#e8edf2;border-bottom:1px solid #aeb9c7;touch-action:pan-y}.mirror-loom-head:hover,.mirror-loom-head:focus-visible{background:#dfe8ef;outline:0;box-shadow:inset 0 0 0 2px #0a9d382e}.mirror-loom-expand-icon{position:absolute;top:6px;right:6px;color:#78879b;opacity:.58}.mirror-loom-observation-icon{position:absolute;top:6px;left:6px;color:#087c30}.mirror-loom.expanded .mirror-loom-head strong{font-size:.92rem}.mirror-loom.expanded .mirror-loom-head span{font-size:.76rem}.mirror-loom-head strong{color:#101d31;font-size:.72rem;font-weight:950}.mirror-loom-head input,.mirror-loom-head span{width:100%;min-width:0;height:22px;padding:0 4px;overflow:hidden;color:#4c5c73;border:1px solid transparent;border-radius:4px;background:transparent;font-size:.61rem;font-weight:850;text-align:center;text-overflow:ellipsis;white-space:nowrap}.mirror-loom-head input:focus{outline:0;border-color:#0a9d388c;background:#fff}.mirror-loom-body{min-width:0;display:grid;grid-template-rows:repeat(var(--mirror-rows),36px)}.mirror-product-row,.mirror-lot-row,.mirror-empty-row{position:relative;min-width:0;min-height:36px;border-bottom:1px solid #d9e1ea;background:#fff;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.mirror-product-row{display:grid;grid-template-columns:minmax(0,1fr) 22px 22px;align-items:center;box-shadow:inset 3px 0 #dca408;background:#fff7d8}.mirror-product-row[draggable=true],.mirror-lot-row[draggable=true]{cursor:grab}.mirror-product-row[draggable=true]:active,.mirror-lot-row[draggable=true]:active{cursor:grabbing}.mirror-product-row.dragging,.mirror-lot-row.dragging{z-index:2;opacity:.46;filter:saturate(.55)}.mirror-product-row.drop-before:before,.mirror-lot-row.drop-before:before,.mirror-product-row.drop-after:after,.mirror-lot-row.drop-after:after{content:"";position:absolute;z-index:8;right:3px;left:3px;height:3px;border-radius:999px;background:#16e05b;box-shadow:0 0 0 1px #fffffff2,0 0 11px #16e05beb;pointer-events:none}.mirror-product-row.drop-before:before,.mirror-lot-row.drop-before:before{top:-2px}.mirror-product-row.drop-after:after,.mirror-lot-row.drop-after:after{bottom:-2px}.mirror-product-row.active{box-shadow:inset 3px 0 0 var(--green);background:#ebf8ef}.mirror-product-row input,.mirror-product-row .mirror-editable-code{width:100%;min-width:0;height:100%;padding:0 6px 0 8px;overflow:hidden;color:#10213a;border:0;outline:0;background:transparent;font-size:.66rem;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.mirror-editable-code{display:flex;align-items:center}.mirror-editable-code.editable{cursor:grab}.mirror-editable-code.editable:focus-visible{background:#ffffffb8;box-shadow:inset 0 0 0 1px #0a9d3885}.mirror-product-row[draggable=true]>.mirror-editable-code:first-child,.mirror-lot-row[draggable=true]>.mirror-editable-code:first-child{cursor:grab}.mirror-product-row>input:first-child:focus,.mirror-lot-row>input:first-child:focus{cursor:text}@media(pointer:coarse){.mirror-product-row>.mirror-editable-code:first-child,.mirror-lot-row>.mirror-editable-code:first-child{touch-action:none}}.mirror-row-action{width:22px;height:32px;display:grid;place-items:center;padding:0;color:#317047;border:0;background:transparent}.mirror-row-action.context{color:#69768a}.mirror-row-action:hover,.mirror-row-action:focus-visible{color:var(--green);background:#0a9d3814}.mirror-lot-row{display:grid;grid-template-columns:minmax(0,1fr) 50px 50px;align-items:center}.mirror-lot-row.current{box-shadow:inset 3px 0 #0a9d38a6}.mirror-lot-row input,.mirror-lot-row>span{width:100%;min-width:0;height:100%;padding:0 5px;overflow:hidden;color:#24344e;border:0;border-right:1px solid #e1e7ee;outline:0;background:transparent;font-size:.64rem;font-weight:760;text-overflow:ellipsis}.mirror-lot-row input:focus{background:#f0fbf4;box-shadow:inset 0 0 0 1px #0a9d3873}.mirror-lot-row .mirror-quantity{padding:0 3px;color:#27364c;text-align:right}.mirror-lot-row .mirror-quantity.current{color:#08762b;font-weight:950;background:#0a9d380d}.mirror-lot-row .mirror-quantity:last-child{border-right:0}.mirror-quantity.readonly{display:flex;align-items:center;justify-content:flex-end}.mirror-empty-row.editable{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:2px;padding-left:5px;color:#7c899b;background:#fbfcfd}.mirror-empty-row.editable:focus-within{color:var(--green);background:#f1fbf4}.mirror-empty-row input{width:100%;min-width:0;height:100%;padding:0 4px;border:0;outline:0;background:transparent;font-size:.64rem;font-weight:800}.mirror-status-row{--status-accent: #cbd5e1;min-width:0;display:grid;place-items:center;padding:4px 5px;color:#344158;border-top:1px solid #aeb9c7;background:#e5e9ee;box-shadow:inset 0 -3px 0 var(--status-accent)}.mirror-status-row select,.mirror-status-row span{width:100%;min-width:0;height:28px;padding:0 4px;overflow:hidden;color:inherit;border:1px solid transparent;border-radius:4px;outline:0;background:transparent;font-size:.6rem;font-weight:950;text-align:center;text-overflow:ellipsis}.mirror-status-row select:focus{color:#17243a;border-color:#0a9d3873;background:#fff}.mirror-status-row select option{color:#17243a;background:#fff}:is(.mirror-status-row,.followup-row,.followup-status,.followup-select).producing{--status-accent: #16a34a;--status-bg: #86efac;--status-text: #064e22}:is(.mirror-status-row,.followup-row,.followup-status,.followup-select).maintenance{--status-accent: #5f1010;--status-bg: #7f1d1d;--status-text: #ffffff}:is(.mirror-status-row,.followup-row,.followup-status,.followup-select).exchange{--status-accent: #d9a400;--status-bg: #fde047;--status-text: #5b4300}:is(.mirror-status-row,.followup-row,.followup-status,.followup-select).awaiting-parts{--status-accent: #9ca3af;--status-bg: #e5e7eb;--status-text: #374151}:is(.mirror-status-row,.followup-row,.followup-status,.followup-select).electronic{--status-accent: #000000;--status-bg: #111111;--status-text: #ffffff}:is(.mirror-status-row,.followup-row,.followup-status,.followup-select).adjustment{--status-accent: #334155;--status-bg: #475569;--status-text: #ffffff}:is(.mirror-status-row,.followup-row,.followup-status,.followup-select).preventive{--status-accent: #6f452d;--status-bg: #8b5e3c;--status-text: #ffffff}:is(.mirror-status-row,.followup-row,.followup-status,.followup-select).testing{--status-accent: #581c87;--status-bg: #7e22ce;--status-text: #ffffff}:is(.mirror-status-row,.followup-row,.followup-status,.followup-select).tracking{--status-accent: #435426;--status-bg: #657c3a;--status-text: #ffffff}:is(.mirror-status-row,.followup-row,.followup-status,.followup-select).vacuum-closed{--status-accent: #c2410c;--status-bg: #f97316;--status-text: #ffffff}:is(.mirror-status-row,.followup-row,.followup-status,.followup-select).quality-stopped{--status-accent: #0891b2;--status-bg: #22d3ee;--status-text: #083344}:is(.mirror-status-row,.followup-row,.followup-status,.followup-select).urgent{--status-accent: #e34862;--status-bg: #fb7185;--status-text: #4c0519}:is(.mirror-status-row,.followup-row,.followup-status,.followup-select).unscheduled{--status-accent: #172554;--status-bg: #1e3a8a;--status-text: #ffffff}:is(.mirror-status-row,.followup-row,.followup-status,.followup-select).specialist{--status-accent: #991b1b;--status-bg: #dc2626;--status-text: #ffffff}:is(.mirror-status-row,.followup-row,.followup-status,.followup-select).idle{--status-accent: #cbd5e1;--status-bg: #ffffff;--status-text: #334155}.mirror-product-row.touch-selected,.mirror-lot-row.touch-selected{z-index:3;box-shadow:inset 3px 0 0 var(--red),-8px 0 #e509141f,0 8px 20px #0c172a2e}.mirror-context-menu{position:fixed;z-index:220;width:220px;overflow:hidden;padding:5px;border:1px solid #d8e1eb;border-radius:7px;background:#fffffffa;box-shadow:0 18px 44px #0c172a38;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.mirror-context-menu button{width:100%;min-height:38px;display:flex;align-items:center;gap:9px;padding:0 10px;color:#31415a;border:0;border-radius:5px;background:transparent;font-size:.78rem;font-weight:850;text-align:left}.mirror-context-menu button:hover,.mirror-context-menu button:focus-visible{background:#edf8f1}.mirror-context-menu button:disabled{color:#a3adba;background:transparent;cursor:not-allowed}.mirror-context-menu button.danger{color:#ad1515}.mirror-context-menu button.danger:hover{background:#fff0f0}.mirror-loom-context-menu{width:220px}.mirror-observation-backdrop{z-index:225}.mirror-observation-modal{width:min(580px,100%)}.mirror-observation-field{display:grid;gap:7px;color:#3e4c63;font-size:.78rem;font-weight:850}.mirror-observation-field textarea{width:100%;min-height:164px;max-height:min(340px,42dvh);resize:vertical;padding:12px 13px;color:var(--navy);border:1px solid #ccd6e4;border-radius:7px;outline:0;background:#fff;font:inherit;font-weight:650;line-height:1.5}.mirror-observation-field textarea:focus{border-color:#0a9d38b3;box-shadow:0 0 0 3px #0a9d381a}.mirror-observation-field textarea:read-only{color:#425168;background:#f5f8fa}.mirror-observation-field>small{display:flex;justify-content:space-between;gap:12px;color:#738096;font-size:.7rem;font-weight:750}.mirror-observation-field>small strong{color:#425168;font-variant-numeric:tabular-nums}.mirror-observation-sync{display:flex;align-items:center;gap:8px;margin:0;color:#805000;font-size:.76rem;font-weight:800}.mirror-context-readonly{display:block;padding:10px;color:var(--muted);font-size:.76rem;text-align:center}.mirror-dialog-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.mirror-dialog-fields label,.mirror-position-field{display:grid;gap:6px;color:#3e4c63;font-size:.76rem;font-weight:850}.mirror-dialog-fields input,.mirror-position-field select{width:100%;min-height:42px;padding:0 11px;color:var(--navy);border:1px solid #ccd6e4;border-radius:7px;outline:0;background:#fff}.mirror-dialog-fields input:focus,.mirror-position-field select:focus{border-color:#0a9d38b3;box-shadow:0 0 0 3px #0a9d381a}.mirror-quantity-move-modal{width:min(620px,100%)}.mirror-cross-move-modal{width:min(640px,100%)}.mirror-move-eyebrow{display:block;margin-bottom:4px;color:#087c30;font-size:.7rem;font-weight:900;text-transform:uppercase}.mirror-move-source,.mirror-move-confirmation-note,.mirror-move-warning{display:grid;gap:3px;padding:13px 14px;border:1px solid #dbe4ed;border-radius:8px;background:#f7fafc}.mirror-move-source span,.mirror-move-route span,.mirror-move-strategies>div>span{color:var(--muted);font-size:.72rem;font-weight:800}.mirror-move-source strong,.mirror-move-route strong{color:var(--navy);font-size:.94rem}.mirror-move-source small{color:#64748b;font-size:.74rem}.mirror-move-destination-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.mirror-move-destination-fields fieldset{min-width:0;display:grid;gap:7px;padding:0;border:0}.mirror-move-destination-fields legend{margin-bottom:7px;color:#3e4c63;font-size:.76rem;font-weight:850}.mirror-loom-type-control{min-height:42px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;padding:3px;border:1px solid #ccd6e4;border-radius:7px;background:#eef3f7}.mirror-loom-type-control button{min-width:0;padding:0 10px;color:#526176;border:0;border-radius:5px;background:transparent;font-size:.76rem;font-weight:900}.mirror-loom-type-control button.selected{color:#087c30;background:#fff;box-shadow:0 2px 8px #0c172a1f}.mirror-move-route{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;padding:14px;border:1px solid #dbe4ed;border-radius:8px;background:#f7fafc}.mirror-move-route>div{min-width:0;display:grid;gap:3px}.mirror-move-route>div:last-child{text-align:right}.mirror-move-route>svg{color:var(--green)}.mirror-move-strategies{display:grid;gap:9px}.mirror-move-strategies>div{display:grid;gap:2px}.mirror-move-strategy{width:100%;min-height:64px;display:grid;grid-template-columns:26px minmax(0,1fr) 20px;align-items:center;gap:10px;padding:10px 12px;color:#334155;border:1px solid #dbe4ed;border-radius:8px;background:#fff;text-align:left}.mirror-move-strategy>span{min-width:0;display:grid;gap:2px}.mirror-move-strategy small{color:var(--muted);font-size:.7rem}.mirror-move-strategy>svg:last-child{color:#b8c2cf}.mirror-move-strategy.selected{color:#087c30;border-color:#0a9d3880;background:#f0faf3;box-shadow:0 0 0 3px #0a9d3814}.mirror-move-strategy.selected>svg:last-child{color:var(--green)}.mirror-move-confirmation-note,.mirror-move-warning{grid-template-columns:24px minmax(0,1fr);align-items:center}.mirror-move-confirmation-note>svg{color:var(--green)}.mirror-move-confirmation-note span,.mirror-move-warning span{display:grid;gap:2px}.mirror-move-confirmation-note small,.mirror-move-warning small{color:#64748b;font-size:.72rem}.mirror-move-warning{color:#8a4b08;border-color:#f5c77d;background:#fff8ea}.mirror-quantity-transfer{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:14px;padding:14px;border:1px solid #dbe4ed;border-radius:8px;background:#f8fafc}.mirror-quantity-transfer>div{min-width:0;display:grid;gap:3px}.mirror-quantity-transfer>svg{color:#8090a5}.mirror-quantity-transfer span,.mirror-quantity-transfer small{color:#66748a;font-size:.72rem;font-weight:780}.mirror-quantity-transfer strong{overflow:hidden;color:var(--navy);font-size:1rem;text-overflow:ellipsis;white-space:nowrap}.mirror-quantity-transfer b{width:fit-content;margin-top:4px;padding:4px 7px;color:#8a4b08;border-radius:5px;background:#f59e0b1f;font-size:.76rem}.mirror-quantity-move-note{display:flex;align-items:flex-start;gap:8px;margin:0;padding:10px 12px;color:#805000;border-left:3px solid #f59e0b;background:#f59e0b14;font-size:.78rem;line-height:1.45}.mirror-quantity-move-note svg{flex:0 0 auto;margin-top:1px}.mirror-position-only{color:#8a4b08;border-color:#f59e0b57}@media(max-width:620px){.mirror-validation-toast{right:14px;left:14px}body.mirror-tour-active .mirror-workspace{padding:6px}.mirror-quantity-transfer{grid-template-columns:1fr}.mirror-quantity-transfer>svg{transform:rotate(90deg)}.modal-actions.mirror-quantity-move-actions{display:grid;grid-template-columns:minmax(0,1fr)}.mirror-quantity-move-actions button{width:100%;justify-content:center}.mirror-move-destination-fields,.mirror-move-route{grid-template-columns:minmax(0,1fr)}.mirror-move-route{text-align:left}.mirror-move-route>div:last-child{text-align:left}.mirror-move-route>svg{transform:rotate(90deg)}.mirror-cross-move-modal .modal-actions{display:grid;grid-template-columns:minmax(0,1fr)}.mirror-cross-move-modal .modal-actions button{width:100%;justify-content:center}}@media(max-width:900px){.planning-radial-popover{position:fixed;top:50%;right:auto;left:50%;transform:translate(-50%,-50%);animation-name:radial-menu-center-in}.planning-radial-popover:before{display:none}.planning-radial-label{top:calc(100% + 8px);right:auto;left:50%;transform:translate(-50%,-6px)}.planning-radial-label.visible{transform:translate(-50%)}.mirror-page-header,.mirror-workspace-heading{align-items:stretch;flex-direction:column}.mirror-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.mirror-summary span{min-height:38px;display:flex;align-items:center;border-bottom:1px solid var(--line)}.mirror-summary span:nth-child(2){border-right:0}.mirror-summary span:nth-last-child(-n+2){border-bottom:0}.mirror-toolbar{grid-template-columns:minmax(0,1fr) auto}.mirror-history-active{grid-column:1 / -1;justify-content:center;border-top:1px solid #e2e8f0;border-left:0}}@media(max-width:560px){.mirror-workspace{padding:10px}.mirror-summary span{padding:0 10px;font-size:.68rem}.mirror-toolbar{grid-template-columns:minmax(0,1fr);padding:7px}.mirror-search-result,.mirror-history-active{min-height:30px;justify-content:center;border-top:1px solid #e2e8f0;border-left:0}.mirror-history-popover{width:auto;max-height:calc(100dvh - 100px);position:fixed;top:76px;right:14px;left:14px}.mirror-history-datetime,.mirror-dialog-fields{grid-template-columns:minmax(0,1fr)}.planning-radial-popover{width:min(294px,calc(100vw - 24px));height:min(294px,calc(100vw - 24px))}.mirror-loom.expanded{width:calc(100vw - 28px);height:calc(100dvh - 112px);max-height:calc(100dvh - 112px);top:calc(50% - 18px)}.mirror-loom-close{top:-11px;right:-7px}.mirror-loom-navigate{top:auto;bottom:-58px;transform:none}.mirror-loom-navigate.previous{left:calc(50% - 54px)}.mirror-loom-navigate.next{right:calc(50% - 54px)}.mirror-loom-navigate:hover:not(:disabled),.mirror-loom-navigate:focus-visible:not(:disabled){transform:scale(1.04)}}.flip-horizontal{transform:rotate(180deg)}.planning-kpis{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:16px}.planning-kpi{min-height:112px;background:linear-gradient(135deg,#fffffff0,#f7fafce0),#fff}.planning-panel{display:grid;gap:16px;overflow:hidden}.planning-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.planning-heading{flex:1 1 auto}.planning-controls{display:grid;grid-template-columns:minmax(260px,1fr) max-content;align-items:start;flex:1 1 760px;min-width:0;gap:10px}.planning-controls .planning-search{width:100%;min-width:0}.planning-filter-strip{min-width:0;display:flex;align-items:flex-start;flex-wrap:nowrap;gap:10px}.planning-filter-strip>.planning-scope,.planning-filter-strip>.model-filter-wrap{flex:0 0 auto}.planning-search{width:min(430px,48vw);min-height:46px;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:10px;padding:0 14px;color:#536078;border:1px solid #ccd6e4;border-radius:8px;background:#fff;transition:border-color .18s ease,box-shadow .18s ease}.planning-search:focus-within{border-color:#0a9d38c2;box-shadow:0 0 0 4px #0a9d381c}.planning-search input{width:100%;min-width:0;border:0;outline:0;color:var(--navy);background:transparent}.planning-scope{max-width:330px;min-height:46px;display:inline-flex;align-items:center;gap:9px;padding:0 13px;color:#34445e;border:1px solid var(--line);border-radius:8px;background:#f7f9fc;font-weight:850}.planning-scope.active{color:#075a22;border-color:#0a9d388f;background:#0a9d3817;box-shadow:0 0 0 3px #0a9d381a}.planning-scope span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-filter-wrap{position:relative;z-index:16;flex:0 0 auto}.model-filter-wrap:hover,.model-filter-wrap:focus-within{z-index:50}.planning-attribute-filter .model-filter-trigger{min-width:116px;justify-content:flex-start}.model-filter-wrap:before{content:"";position:absolute;top:0;right:100%;width:12px;height:100%}.model-filter-popover{position:absolute;top:0;right:calc(100% + 8px);width:min(310px,calc(100vw - 48px));visibility:hidden;overflow:hidden;border:1px solid rgba(10,157,56,.2);border-radius:8px;opacity:0;background:#fffffffa;box-shadow:0 18px 48px #0c172a2e;transform:translate(8px);transition:opacity .15s ease,transform .15s ease,visibility .15s ease;pointer-events:none}.model-filter-popover.portal-open{position:fixed;z-index:70;visibility:visible;opacity:1;transform:none;pointer-events:auto}.model-filter-wrap:hover .model-filter-popover,.model-filter-wrap:focus-within .model-filter-popover{visibility:visible;opacity:1;transform:translate(0);pointer-events:auto}.model-filter-head{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 12px;color:var(--navy);border-bottom:1px solid var(--line);font-size:.82rem;font-weight:900}.model-filter-head button{padding:4px;color:#08772c;border:0;background:transparent;font-size:.75rem;font-weight:900}.model-filter-options{max-height:280px;overflow:auto;padding:6px;overscroll-behavior:contain}.model-filter-options label{min-height:38px;display:grid;grid-template-columns:18px minmax(0,1fr) max-content;align-items:center;gap:9px;padding:6px 8px;color:#344158;border-radius:6px;cursor:pointer;font-size:.8rem;font-weight:800}.model-filter-options label:hover{background:#eefaf2}.model-filter-options input{width:16px;height:16px;accent-color:var(--green)}.model-filter-options span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-filter-options b{min-width:26px;padding:3px 6px;color:#526077;border-radius:6px;background:#edf2f7;text-align:center;font-size:.72rem}.planning-source{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 12px;color:#3c4a61;border:1px solid rgba(207,216,230,.72);border-radius:8px;background:#f9fbfd;font-size:.9rem}.planning-source strong{color:var(--navy);font-size:.86rem}.planning-table-wrap{width:100%;min-height:420px;max-height:calc(100vh - 430px);overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff}.planning-table{width:max-content;min-width:1980px;border-collapse:separate;border-spacing:0;table-layout:fixed}.planning-table th,.planning-table td{height:39px;padding:0 10px;border-right:1px solid #e6ecf4;border-bottom:1px solid #e6ecf4;white-space:nowrap;font-size:.84rem}.planning-table th{position:sticky;top:0;z-index:4;padding:0;background:#f3f7fb}.planning-table th:first-child{left:0;z-index:7}.planning-table th button{width:100%;height:39px;display:flex;align-items:center;justify-content:flex-end;padding:0 10px;color:#344158;border:0;background:transparent;font-size:.8rem;font-weight:900;text-align:right}.planning-table th button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planning-table th:first-child button{justify-content:flex-start;text-align:left}.planning-table th.selected-column{background:#eafff4;box-shadow:inset 0 0 0 2px #19e88d,0 0 18px #19e88d47}.planning-table th.selected-column button{color:#075a22}.planning-table td{color:#18243a;text-align:right;font-variant-numeric:tabular-nums;background:#fff}.planning-table td:first-child{position:sticky;left:0;z-index:2;background:#fff;box-shadow:10px 0 18px #0c172a0f}.planning-table tbody tr:hover td,.planning-table tbody tr:hover td:first-child{background:#f8fcfa}.planning-table .align-left{text-align:left}.planning-code{color:var(--navy);font-weight:900}.planning-cell-stock{color:#16233a;font-weight:780}.planning-cell-calc{color:#24515f;font-weight:780}.planning-cell-output{color:#06762a;font-weight:900}.planning-cell-selected,.planning-table tbody tr:hover td.planning-cell-selected{background:#19e88d1a;box-shadow:inset 2px 0 #0a9d387a}.planning-missing{color:#69758a;font-weight:700;letter-spacing:0}.planning-empty-row{height:140px;color:var(--muted);text-align:center}.product-catalog-panel{display:grid;gap:14px;overflow:hidden}.product-catalog-toolbar{align-items:center}.product-catalog-table-wrap{min-height:480px;max-height:calc(100vh - 350px)}.product-catalog-table{min-width:2140px}.product-catalog-table th>span{width:100%;height:39px;display:flex;align-items:center;padding:0 10px;overflow:hidden;color:#344158;font-size:.8rem;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.product-catalog-table td{height:42px}.product-catalog-table td strong{color:var(--navy);font-weight:900}.catalog-missing{color:#8a96a8;font-weight:800}.product-catalog-table .catalog-actions-column,.product-catalog-table .catalog-row-actions{position:sticky;right:0;width:92px;min-width:92px;border-left:1px solid #dfe7f0;background:#f7fafc}.product-catalog-table .catalog-actions-column{z-index:8;padding:0 10px;color:#344158;font-size:.8rem;font-weight:900;text-align:center}.product-catalog-table .catalog-row-actions{z-index:3;padding:0 6px;text-align:center;box-shadow:-10px 0 18px #0c172a0d}.catalog-row-actions .icon-button{width:34px;height:34px;margin:0 2px}.danger-icon-button{color:#bc1720}.catalog-pagination{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:14px;color:#536078;font-size:.84rem;font-weight:800}.catalog-pagination>div{display:flex;gap:7px}.inline-success{min-height:38px;display:flex;align-items:center;gap:8px;margin:0;padding:8px 11px;color:#08752d;border:1px solid rgba(10,157,56,.2);border-radius:7px;background:#edf9f1;font-size:.86rem;font-weight:800}.product-editor-panel{width:min(1080px,100%)}.product-editor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.exports-empty-state{min-height:390px;display:grid;place-content:center;justify-items:center;gap:8px;text-align:center}.exports-empty-state>span{width:58px;height:58px;display:grid;place-items:center;color:#078332;border-radius:8px;background:#0a9d381a}.exports-empty-state h2,.exports-empty-state p{margin:0}.exports-empty-state h2{color:var(--navy);font-size:1.15rem}.exports-empty-state p{max-width:510px;color:var(--muted)}.manual-factor-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:20px;background:#08122980;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.manual-factor-shell{width:min(1240px,100%);height:min(860px,calc(100vh - 40px));min-height:560px;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(221,228,238,.96);border-radius:8px;background:#f7f9fc;box-shadow:0 32px 100px #08122952}.manual-factor-header{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 18px;border-bottom:1px solid var(--line);background:#fff}.manual-factor-title{min-width:0;display:flex;align-items:center;gap:12px}.manual-factor-title>span{width:44px;height:44px;flex:0 0 auto;display:grid;place-items:center;color:#087d2e;border-radius:8px;background:#0a9d381a}.manual-factor-title h1{margin:0;color:var(--navy);font-size:1.3rem}.manual-factor-title p{margin:4px 0 0;color:var(--muted);line-height:1.35}.manual-factor-tabs{min-height:52px;display:flex;align-items:center;gap:4px;padding:6px 18px;border-bottom:1px solid var(--line);background:#fff}.manual-factor-tabs button{min-height:38px;display:inline-flex;align-items:center;gap:8px;padding:0 12px;color:#536078;border:0;border-radius:7px;background:transparent;font-weight:850}.manual-factor-tabs button b{min-width:24px;height:24px;display:grid;place-items:center;padding:0 6px;border-radius:999px;background:#eef3f7;font-size:.72rem}.manual-factor-tabs button.active{color:#075f25;background:#0a9d3817}.manual-factor-tabs button.active b{background:#0a9d3824}.manual-factor-feedback{min-height:42px;display:flex;align-items:center;gap:9px;padding:9px 18px;border-bottom:1px solid transparent;font-size:.86rem;font-weight:750}.manual-factor-feedback.success{color:#075f25;border-color:#0a9d382e;background:#edf9f1}.manual-factor-feedback.error{color:#9f1010;border-color:#e5091429;background:#fff1f2}.manual-factor-content{min-height:0;flex:1;overflow:auto}.manual-factor-content>.table-empty{margin:20px}.manual-factor-wizard{min-height:100%;display:grid;grid-template-columns:285px minmax(0,1fr)}.manual-factor-step-list{min-width:0;padding:16px 12px;border-right:1px solid var(--line);background:#f1f5f8}.manual-factor-progress{display:grid;gap:5px;padding:4px 8px 14px}.manual-factor-progress span{color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase}.manual-factor-progress strong{color:var(--navy);font-size:.9rem}.manual-factor-progress i{height:6px;overflow:hidden;border-radius:999px;background:#dfe7ef}.manual-factor-progress i b{height:100%;display:block;border-radius:inherit;background:#0a9d38;transition:width .25s ease}.manual-factor-step-list ol{display:grid;gap:4px;margin:0;padding:0;list-style:none}.manual-factor-step-list li button{width:100%;min-height:52px;display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px;padding:7px 9px;color:#526078;border:1px solid transparent;border-radius:7px;background:transparent;text-align:left}.manual-factor-step-list li button>span{width:26px;height:26px;display:grid;place-items:center;color:#66748a;border:1px solid #cdd7e3;border-radius:50%;background:#fff;font-size:.72rem;font-weight:900}.manual-factor-step-list li button div{min-width:0;display:grid;gap:2px}.manual-factor-step-list li button strong,.manual-factor-step-list li button small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.manual-factor-step-list li button strong{color:var(--navy);font-size:.82rem}.manual-factor-step-list li button small{color:var(--muted);font-size:.7rem}.manual-factor-step-list li button.current{border-color:#0a9d383d;background:#fff;box-shadow:0 7px 18px #0c172a0d}.manual-factor-step-list li button.current>span,.manual-factor-step-list li button.complete>span{color:#fff;border-color:#0a9d38;background:#0a9d38}.manual-factor-stage{min-width:0;display:flex;flex-direction:column;gap:16px;padding:22px;background:#fff}.manual-stage-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.manual-stage-heading>div{min-width:0}.manual-stage-heading h2,.manual-history-heading h2{margin:0;color:var(--navy);font-size:1.22rem}.manual-stage-heading p,.manual-history-heading p{margin:4px 0 0;color:var(--muted);line-height:1.4}.signature-badge{min-height:30px;flex:0 0 auto;display:inline-flex;align-items:center;padding:0 9px;color:#8a5600;border-radius:6px;background:#f59e0b1f;font-size:.72rem;font-weight:850}.signature-badge.verified{color:#075f25;background:#0a9d381a}.manual-signature-note{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:10px;padding:11px 12px;color:#35445d;border:1px solid #e0e7ef;border-radius:8px;background:#f7f9fc}.manual-signature-note svg{color:#087d2e}.manual-signature-note div{display:grid;gap:2px}.manual-signature-note strong{color:var(--navy);font-size:.82rem}.manual-signature-note span{color:var(--muted);font-size:.76rem}.manual-upload-zone{min-height:170px;display:grid;place-items:center;align-content:center;gap:7px;padding:22px;color:#607087;border:1px dashed #b9c6d5;border-radius:8px;background:#fafbfd;text-align:center;cursor:pointer;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.manual-upload-zone:hover{border-color:#0a9d387a;background:#f7fcf8;box-shadow:inset 0 0 0 3px #0a9d380d}.manual-upload-zone.selected{color:#087d2e;border-style:solid;border-color:#0a9d3857;background:#0a9d380e}.manual-upload-zone input{display:none}.manual-upload-zone strong{max-width:100%;overflow-wrap:anywhere;color:var(--navy);font-size:.95rem}.manual-upload-zone span{color:var(--muted);font-size:.78rem}.manual-file-inspection{display:grid;gap:12px}.manual-inspection-success{display:flex;align-items:center;gap:8px;padding:9px 11px;color:#087d2e;border:1px solid rgba(10,157,56,.18);border-radius:7px;background:#0a9d380e;font-size:.76rem;font-weight:750;line-height:1.35}.manual-inspection-success svg{flex:0 0 auto}.manual-file-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #e2e9f1;border-radius:8px;background:#f8fafc}.manual-file-metrics div{min-width:0;display:grid;gap:3px;padding:10px 12px;border-left:1px solid #e2e9f1}.manual-file-metrics div:first-child{border-left:0}.manual-file-metrics span,.manual-generation-summary span{color:var(--muted);font-size:.7rem;font-weight:800;text-transform:uppercase}.manual-file-metrics strong{overflow:hidden;color:var(--navy);font-size:.86rem;text-overflow:ellipsis;white-space:nowrap}.manual-column-preview{display:grid;gap:7px}.manual-column-preview>span{color:#43516a;font-size:.75rem;font-weight:850}.manual-column-preview>div{display:flex;flex-wrap:wrap;gap:6px}.manual-column-preview b{min-height:26px;display:inline-flex;align-items:center;padding:0 8px;color:#40506a;border-radius:6px;background:#eef3f7;font-size:.7rem}.manual-column-preview small{color:var(--muted);font-size:.72rem}.manual-stage-actions{display:flex;justify-content:space-between;gap:10px;margin-top:auto;padding-top:4px}.manual-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.manual-review-item{min-height:62px;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 11px;color:#9f1010;border:1px solid #e3e9f1;border-radius:8px;background:#fff;text-align:left}.manual-review-item.ready{color:#087d2e;border-color:#0a9d3833;background:#0a9d380b}.manual-review-item div{min-width:0;display:grid;gap:3px}.manual-review-item strong,.manual-review-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.manual-review-item strong{color:var(--navy);font-size:.83rem}.manual-review-item small{color:var(--muted);font-size:.72rem}.manual-review-item b{color:#4d5b72;font-size:.72rem}.manual-generation-summary{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px;color:#087d2e;border:1px solid rgba(10,157,56,.2);border-radius:8px;background:#0a9d380f}.manual-generation-summary div{display:grid;gap:2px}.manual-generation-summary strong{color:var(--navy)}.manual-generation-summary small{max-width:340px;color:#526078;line-height:1.35;text-align:right}.manual-pending-rules{display:flex;align-items:flex-start;gap:9px;padding:10px 12px;color:#815100;border-radius:8px;background:#f59e0b1a;font-size:.78rem;line-height:1.4}.manual-pending-rules svg{flex:0 0 auto}.manual-factor-history{display:grid;gap:14px;padding:20px}.manual-history-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.manual-history-list{display:grid;gap:10px}.manual-history-card{display:grid;gap:12px;padding:14px;border:1px solid #dfe6ef;border-radius:8px;background:#fff}.manual-history-card.active{border-color:#0a9d385c;box-shadow:inset 3px 0 #0a9d38}.manual-history-card>header{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:11px}.manual-history-icon{width:40px;height:40px;display:grid;place-items:center;color:#087d2e;border-radius:8px;background:#0a9d3817}.manual-history-card h3{margin:0;color:var(--navy);font-size:.96rem}.manual-history-card header p{margin:3px 0 0;color:var(--muted);font-size:.76rem}.manual-history-status{display:grid;justify-items:end;gap:4px}.manual-history-status>span{min-height:26px;display:inline-flex;align-items:center;padding:0 8px;color:#526078;border-radius:6px;background:#eef3f7;font-size:.7rem;font-weight:850}.manual-history-status>span.active{color:#075f25;background:#0a9d381c}.manual-history-status small{color:#9a6300;font-size:.68rem}.manual-history-summary{display:grid;grid-template-columns:130px 170px minmax(220px,1fr);border:1px solid #e5ebf2;border-radius:8px;background:#f8fafc}.manual-history-summary div{display:grid;gap:2px;padding:9px 11px;border-left:1px solid #e5ebf2}.manual-history-summary div:first-child{border-left:0}.manual-history-summary span{color:var(--muted);font-size:.68rem;font-weight:800;text-transform:uppercase}.manual-history-summary strong{color:var(--navy);font-size:.82rem}.manual-history-details summary{color:#3f4e67;font-size:.78rem;font-weight:850}.manual-history-details>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:10px}.manual-history-details>div>div{min-width:0;display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 9px;color:#087d2e;border-radius:7px;background:#f5f8fb}.manual-history-details span{min-width:0;display:grid;gap:2px}.manual-history-details strong,.manual-history-details small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.manual-history-details strong{color:var(--navy);font-size:.76rem}.manual-history-details small{color:var(--muted);font-size:.68rem}.manual-history-details b{color:#48566e;font-size:.7rem}.manual-history-card>footer{display:flex;justify-content:flex-end;gap:8px}.manual-history-empty{min-height:240px;display:grid;place-items:center;align-content:center;gap:7px;color:#087d2e;border:1px dashed #cdd7e3;border-radius:8px;background:#fff}.manual-history-empty strong{color:var(--navy)}.manual-history-empty span{color:var(--muted)}.compact-value{max-width:260px;font-size:1.05rem!important;line-height:1.25!important}.waste-page{gap:22px}.waste-month-picker{width:min(430px,100%);display:grid;gap:14px;padding:18px}.waste-page-feedback{width:min(620px,100%)}.waste-cards-panel,.settings-panel{display:grid;gap:18px}.waste-form{display:grid;gap:16px}.waste-form-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:12px}.waste-input-field{position:relative}.waste-input-field span{display:inline-flex;align-items:center;gap:8px}.waste-input-field span:before{content:"";width:7px;height:7px;flex:0 0 auto;border-radius:999px;transition:background .18s ease,box-shadow .18s ease}.waste-input-field.empty span:before{background:#e85c64;box-shadow:0 0 0 4px #e5091414}.waste-input-field.filled span:before{background:var(--green);box-shadow:0 0 0 4px #0a9d381a}.waste-input-field input{text-align:right;border:1px solid var(--line);background:#fff;font-size:1rem;font-weight:900;font-variant-numeric:tabular-nums;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.waste-input-field.empty input{border-color:#e509143d;box-shadow:inset 3px 0 #e5091452}.waste-input-field.filled input{border-color:#0a9d3852;box-shadow:inset 3px 0 #0a9d386b}.waste-input-field input:focus{border-color:#0a9d38b8;box-shadow:inset 3px 0 #0a9d3885,0 0 0 3px #0a9d381f}.waste-input-field input:disabled{box-shadow:inset 3px 0 #94a3b86b}.waste-observation-section{display:grid;gap:10px}.waste-observation-toggle{width:max-content;min-height:38px;display:inline-flex;align-items:center;gap:8px;padding:0 12px;color:#24515f;border:1px solid #dfe7f0;border-radius:8px;background:#fff;font-weight:900;transition:transform .18s ease,border-color .18s ease,background .18s ease}.waste-observation-toggle:hover{transform:translateY(-1px);border-color:#0a9d384d;background:#0a9d380d}.waste-observation-toggle svg:last-child{transition:transform .18s ease}.waste-observation-toggle svg.rotated{transform:rotate(180deg)}.waste-observation-field small{color:var(--muted);font-size:.78rem;font-weight:800;text-align:right}.waste-form-total{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border:1px solid rgba(10,157,56,.18);border-radius:8px;background:#0a9d3814}.waste-form-total span{color:#24515f;font-weight:850}.waste-form-total strong{color:var(--green-dark);font-size:1.45rem}.waste-card-grid{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));align-items:start;gap:14px}.waste-card{display:grid;gap:16px;padding:16px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 12px 28px #0c172a0f;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.waste-card:hover{transform:translateY(-1px);border-color:#0a9d3838;box-shadow:0 16px 34px #0c172a14}.waste-card.expanded{border-color:#0a9d3852;box-shadow:0 18px 42px #0c172a14,inset 0 0 0 1px #0a9d3814}.waste-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.waste-card-head span{color:var(--muted);font-size:.84rem;font-weight:800}.waste-card-head strong{display:block;margin-top:3px;color:var(--navy);font-size:1.18rem;line-height:1}.waste-card-toggle{min-height:36px;display:inline-flex;align-items:center;gap:7px;padding:0 10px;color:#075a22;border:1px solid rgba(10,157,56,.18);border-radius:8px;background:#0a9d3814;font-size:.82rem;font-weight:900;transition:transform .18s ease,border-color .18s ease,background .18s ease}.waste-card-actions{display:inline-flex;align-items:center;gap:8px}.waste-card-actions .icon-button{width:36px;height:36px;color:#24515f;background:#fff}.waste-card-toggle:hover{transform:translateY(-1px);border-color:#0a9d385c;background:#0a9d381f}.waste-card-toggle svg{transition:transform .18s ease}.waste-card-toggle svg.rotated{transform:rotate(180deg)}.waste-calendar-head{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:10px}.waste-calendar-year{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:var(--navy);border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:950}.waste-calendar-year svg{transition:transform .18s ease}.waste-calendar-year svg.rotated{transform:rotate(180deg)}.waste-pending-alert-wrap{position:relative}.waste-pending-trigger{min-height:42px;min-width:58px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 11px;color:#8a4b08;border:1px solid rgba(245,158,11,.22);border-radius:8px;background:#fff7edc7;font-weight:950}.waste-pending-trigger.active{border-color:#f59e0b70;box-shadow:0 0 0 4px #f59e0b14}.waste-pending-popover{position:absolute;right:0;top:calc(100% + 10px);z-index:12;width:270px;display:grid;gap:8px;padding:12px;border:1px solid rgba(245,158,11,.22);border-radius:8px;background:#fffffff5;box-shadow:0 18px 46px #0c172a24;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.waste-pending-popover strong{color:var(--navy)}.waste-pending-popover p{margin:0;color:var(--muted);font-size:.84rem}.waste-calendar-backdrop{background:#f6f9fc9e;-webkit-backdrop-filter:blur(16px) saturate(1.18);backdrop-filter:blur(16px) saturate(1.18)}.waste-calendar-modal{width:min(480px,calc(100vw - 44px));display:grid;gap:16px;padding:22px;background:#fffffff7}.waste-report-backdrop{background:#f6f9fc9e;-webkit-backdrop-filter:blur(16px) saturate(1.18);backdrop-filter:blur(16px) saturate(1.18)}.waste-report-modal{width:min(1180px,calc(100vw - 42px));display:grid;gap:16px;padding:22px;background:#fffffffa}.waste-report-heading{padding-bottom:2px}.waste-report-layout{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:16px;min-height:460px}.waste-report-controls{display:grid;align-content:start;gap:14px;padding:14px;border:1px solid #e5ebf3;border-radius:8px;background:linear-gradient(180deg,#fff,#f7faf8)}.waste-report-control-group{display:grid;gap:9px}.waste-report-control-group>span,.waste-report-toggle span{color:#344158;font-size:.8rem;font-weight:950}.waste-report-format-grid,.waste-report-choice-grid{display:grid;gap:8px}.waste-report-format-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.waste-report-choice-grid{grid-template-columns:1fr}.waste-report-format-grid button,.waste-report-choice-grid button,.waste-report-toggle{min-height:46px;display:flex;align-items:center;gap:9px;padding:0 11px;color:#26334a;border:1px solid #e5ebf3;border-radius:8px;background:#fff;font-weight:900;text-align:left;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}.waste-report-format-grid button:hover,.waste-report-choice-grid button:hover,.waste-report-toggle:hover{transform:translateY(-1px);border-color:#0a9d3847;box-shadow:0 10px 22px #0c172a0f}.waste-report-format-grid button.selected,.waste-report-choice-grid button.selected,.waste-report-toggle.selected{color:#075a22;border-color:#0a9d386b;background:#0a9d3817;box-shadow:inset 0 0 0 1px #0a9d381a}.waste-report-format-grid strong,.waste-report-choice-grid strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.waste-report-date-grid{display:grid;gap:10px}.waste-report-toggle{cursor:pointer}.waste-report-toggle input{position:absolute;opacity:0;pointer-events:none}.waste-report-preview{min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;padding:15px;border:1px solid #e5ebf3;border-radius:8px;background:#fff;box-shadow:inset 0 0 0 1px #0a9d3808}.waste-report-print-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.waste-report-print-head h3{margin:0;color:var(--navy);font-size:1.1rem}.waste-report-print-head p{margin:4px 0 0;color:var(--muted);font-weight:750}.waste-report-summary{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.waste-report-summary span{display:grid;gap:2px;min-width:96px;padding:8px 10px;border:1px solid #edf2f7;border-radius:8px;background:#f8fbfd;color:#5c667a;font-size:.72rem;font-weight:850}.waste-report-summary strong{color:var(--navy);font-size:.92rem;font-variant-numeric:tabular-nums}.waste-report-table-wrap{min-height:0;overflow:auto;border:1px solid #edf2f7;border-radius:8px}.waste-report-table{width:100%;min-width:720px;border-collapse:collapse;font-size:.78rem}.waste-report-table th,.waste-report-table td{padding:10px 11px;border-bottom:1px solid #edf2f7;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.waste-report-table th{position:sticky;top:0;z-index:1;color:#fff;background:#0a9d38;font-weight:950}.waste-report-table th:first-child,.waste-report-table td:first-child{text-align:left}.waste-report-table tbody tr:nth-child(2n){background:#f8fbfd}.waste-report-table tbody tr:hover{background:#0a9d380f}.waste-report-actions{padding-top:2px}.waste-month-grid,.waste-year-grid{display:grid;gap:8px}.waste-month-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.waste-year-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.waste-month-grid button,.waste-year-grid button{min-height:42px;color:#344158;border:1px solid #e6edf5;border-radius:8px;background:#fff;font-weight:900;text-transform:capitalize;transition:transform .18s ease,border-color .18s ease,background .18s ease}.waste-month-grid button:hover,.waste-year-grid button:hover{transform:translateY(-1px);border-color:#0a9d3857;background:#0a9d380f}.waste-month-grid button.selected,.waste-year-grid button.selected{color:#075a22;border-color:#0a9d386b;background:#0a9d381f;box-shadow:inset 0 0 0 1px #0a9d381f}.waste-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.waste-summary-item{min-height:74px;display:grid;align-content:center;gap:6px;padding:12px;border:1px solid #eaf0f6;border-radius:8px;background:linear-gradient(180deg,#fff,#f8fbfd)}.waste-summary-item span{color:#546074;font-size:.78rem;font-weight:850}.waste-summary-item strong{color:var(--navy);font-size:1.1rem;font-weight:950;font-variant-numeric:tabular-nums}.waste-summary-item:first-child{border-color:#0a9d3838;background:#0a9d3812}.waste-summary-item:first-child strong{color:var(--green-dark)}.waste-summary-item:last-child{grid-column:1 / -1}.waste-card-details{display:grid;gap:10px;padding-top:12px;border-top:1px solid #eef2f7}.waste-detail-title{display:inline-flex;align-items:center;gap:8px;color:#344158;font-size:.84rem;font-weight:900}.waste-card-items{display:grid;gap:8px}.waste-card-items div{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:30px;padding-bottom:8px;border-bottom:1px solid #eef2f7}.waste-card-items div:last-child{border-bottom:0;padding-bottom:0}.waste-card-items span{min-width:0;color:#435069;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-weight:750}.waste-card-items strong{color:var(--green-dark);font-variant-numeric:tabular-nums}.waste-card-items .muted-detail{opacity:.58}.waste-card-items .muted-detail strong{color:#64748b}.waste-card-observation{display:grid;gap:7px;padding:12px;border:1px solid #e6edf5;border-radius:8px;background:#f8fbfd}.waste-card-observation span{color:#435069;font-size:.82rem;font-weight:900}.waste-card-observation p{margin:0;color:#18243a;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.45;font-weight:650}.waste-card-observation.muted-detail{opacity:.72}.waste-entry-backdrop{background:#f6f9fc9e;-webkit-backdrop-filter:blur(16px) saturate(1.18);backdrop-filter:blur(16px) saturate(1.18)}.waste-entry-modal{width:min(920px,calc(100vw - 44px));background:#fffffff5}.waste-entry-modal .waste-form{padding:24px}.waste-floating-counters{position:fixed;right:28px;bottom:28px;z-index:24;display:grid;gap:10px;pointer-events:none}.waste-floating-counters div{min-width:210px;display:grid;gap:3px;padding:13px 15px;border:1px solid rgba(221,228,238,.72);border-radius:8px;background:#ffffffe0;box-shadow:0 16px 44px #0c172a29;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.waste-floating-counters span{color:#546074;font-size:.76rem;font-weight:850}.waste-floating-counters strong{color:var(--navy);font-size:1.2rem;font-weight:950;font-variant-numeric:tabular-nums}.confirm-date-box{min-height:58px;display:grid;grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#f8fbfd}.confirm-date-box strong{min-width:0;color:var(--navy);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.confirm-date-box input{min-height:40px;padding:0 10px;color:var(--navy);border:1px solid var(--line);border-radius:8px;background:#fff}.followup-table-wrap{max-height:calc(100vh - 420px)}.followup-table{min-width:1120px}.followup-table th>span{width:100%;height:39px;display:flex;align-items:center;justify-content:flex-end;padding:0 10px;color:#344158;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-weight:900}.followup-table th:first-child>span,.followup-table th:nth-child(2)>span,.followup-table th:nth-child(3)>span{justify-content:flex-start;text-align:left}.followup-table td:first-child,.followup-table th:first-child{position:sticky;left:0}.followup-table td:first-child{z-index:2}.followup-loom{color:var(--navy);font-size:.9rem;font-weight:950;text-align:left}.followup-row{--status-accent: #cbd5e1}.followup-row td:first-child{box-shadow:inset 4px 0 0 var(--status-accent),10px 0 18px #0c172a0f}.followup-input,.followup-select,.loom-create input,.loom-create select,.loom-item input,.loom-item select{width:100%;min-height:32px;color:var(--navy);border:1px solid transparent;border-radius:8px;background:#ffffffb8;font-weight:820}.followup-input{padding:0 9px;text-transform:uppercase}.followup-edit-control{position:relative;width:100%;display:grid;grid-template-columns:minmax(0,1fr);align-items:center;border-radius:8px}.followup-edit-control.changed{grid-template-columns:minmax(0,1fr) 30px;gap:4px;box-shadow:inset 3px 0 #f59e0b}.cell-revert-button{width:28px;height:28px;display:grid;place-items:center;padding:0;color:#8a5600;border:1px solid rgba(245,158,11,.3);border-radius:6px;background:#f59e0b1a}.cell-revert-button:hover{color:#6f4300;background:#f59e0b33}.followup-input:focus,.followup-select:focus,.loom-create input:focus,.loom-create select:focus,.loom-item input:focus,.loom-item select:focus{outline:none;border-color:#0a9d38b3;box-shadow:0 0 0 3px #0a9d381a;background:#fff}.followup-select{padding:0 8px}.followup-status{--status-bg: #ffffff;--status-text: #334155;min-height:28px;display:inline-flex;align-items:center;padding:0 10px;border-radius:999px;font-size:.78rem;font-weight:900}.followup-status,.followup-select{color:var(--status-text);background:var(--status-bg)}.followup-select option{color:#17243a;background:#fff}.followup-minimum{color:var(--red);font-weight:950}.loom-admin-panel{display:grid;gap:18px}.loom-create{display:grid;grid-template-columns:minmax(150px,210px) minmax(180px,260px) max-content;align-items:end;gap:12px}.loom-list{display:grid;gap:16px}.loom-cycle-group{display:grid;gap:8px}.loom-cycle-group>header{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 12px;border-left:4px solid #0a9d38;background:#f3f7f5}.loom-cycle-group:last-child>header{border-left-color:#334155;background:#f4f6f8}.loom-cycle-group>header div{display:grid;gap:1px}.loom-cycle-group>header span{color:var(--muted);font-size:.66rem;font-weight:900;text-transform:uppercase}.loom-cycle-group>header h3{margin:0;color:var(--navy);font-size:.92rem}.loom-cycle-group>header b{color:#526176;font-size:.72rem}.loom-cycle-list{display:grid;gap:8px}.loom-item{min-height:70px;display:grid;grid-template-columns:72px minmax(100px,145px) minmax(120px,160px) max-content 1fr;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff}.loom-item.inactive{opacity:.74;background:#f7f9fc}.loom-position{display:grid;place-items:center;align-content:center;min-height:46px;color:#334155;border-radius:8px;background:#eef3f8}.loom-position strong{color:var(--navy);line-height:1}.loom-position span,.loom-item label span{color:var(--muted);font-size:.76rem;font-weight:800}.loom-item label{display:grid;gap:5px}.loom-item input,.loom-item select,.loom-create input,.loom-create select{min-height:38px;padding:0 10px;border-color:var(--line);background:#fff}.loom-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.admin-console{display:grid;gap:16px;min-width:0}.admin-console-header{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:18px 22px;border:1px solid var(--line);border-radius:8px;background:#ffffffe6;box-shadow:0 12px 30px #0c172a0d}.admin-console-title,.admin-console-title>div,.admin-section-heading>div:first-child{min-width:0}.admin-console-title{display:flex;align-items:center;gap:13px}.admin-title-icon{width:44px;height:44px;flex:0 0 auto;display:grid;place-items:center;color:#087d2e;border:1px solid rgba(10,157,56,.18);border-radius:8px;background:#0a9d3817}.admin-console-title h1{margin:0;color:var(--navy);font-size:1.38rem}.admin-console-title p,.admin-section-heading p{margin:4px 0 0;color:var(--muted);line-height:1.4}.admin-overview{display:flex;align-items:stretch;flex:0 0 auto}.admin-overview div{min-width:112px;display:grid;gap:2px;padding:2px 18px;border-left:1px solid var(--line)}.admin-overview strong{color:var(--navy);font-size:1.28rem;line-height:1}.admin-overview span{color:var(--muted);font-size:.78rem;font-weight:750;white-space:nowrap}.admin-tabs{width:max-content;max-width:100%;display:flex;gap:4px;padding:5px;overflow-x:auto;border:1px solid #dfe6ef;border-radius:8px;background:#eef3f7}.admin-tabs button{min-height:40px;display:inline-flex;align-items:center;gap:8px;padding:0 13px;color:#4b5870;border:0;border-radius:6px;background:transparent;font-weight:800;white-space:nowrap}.admin-tabs button svg{color:#718097}.admin-tabs button b{min-width:24px;height:24px;display:inline-grid;place-items:center;padding:0 6px;border-radius:999px;background:#48566c1a;font-size:.76rem}.admin-tabs button.active{color:var(--navy);background:#fff;box-shadow:0 5px 14px #0c172a14}.admin-tabs button.active svg,.admin-tabs button.active b{color:#087d2e}.admin-tabs button.active b{background:#0a9d381a}.admin-feedback{min-height:42px;display:flex;align-items:center;gap:9px;padding:0 12px;color:#075f25;border:1px solid rgba(10,157,56,.22);border-radius:8px;background:#0a9d3814;font-weight:750}.admin-feedback button{width:30px;height:30px;margin-left:auto;display:grid;place-items:center;color:#42604c;border:0;background:transparent}.admin-section-panel{min-width:0;padding:20px}.admin-section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.section-kicker{display:block;margin-bottom:3px;color:#087d2e;font-size:.72rem;font-weight:900;text-transform:uppercase}.admin-section-heading h2{font-size:1.18rem}.admin-section-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.admin-search{width:min(330px,34vw);min-height:42px;display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 10px;color:#69778e;border:1px solid var(--line);border-radius:8px;background:#fff}.admin-search:focus-within{border-color:#0a9d388c;box-shadow:0 0 0 3px #0a9d3817}.admin-search input{min-width:0;border:0;outline:0;color:var(--navy);background:transparent}.admin-search button{width:26px;height:26px;display:grid;place-items:center;color:#69778e;border:0;background:transparent}.panel-form,.data-panel{padding:24px}.panel-form{display:grid;gap:16px}.section-title,.table-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.section-title{justify-content:flex-start;margin-bottom:8px}.section-title.no-margin{margin-bottom:0}.section-title>svg{flex:0 0 auto;color:var(--green)}.section-title h1{font-size:1.45rem}.data-panel h2{margin:0;color:var(--navy);font-size:1.3rem}.table-wrap{width:100%;overflow-x:auto;margin-top:18px;border:1px solid var(--line);border-radius:8px}table{width:100%;min-width:860px;border-collapse:collapse}th,td{padding:15px 16px;border-bottom:1px solid var(--line);text-align:left;font-size:.94rem}th{color:#455168;background:#f7f9fc;font-weight:800}tr:last-child td{border-bottom:0}.table-name{color:var(--navy)}.table-muted{margin:4px 0 0;color:var(--muted);font-size:.84rem}.department-pill{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;color:#364156;background:#eef3f8;font-weight:750}.table-select{min-width:150px;min-height:38px;padding:0 11px;color:var(--navy);border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:750}.table-select:focus{outline:none;border-color:#0a9d38c7;box-shadow:0 0 0 3px #0a9d381a}.user-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.admin-table-wrap{margin-top:16px}.admin-users-table{min-width:780px}.admin-users-table th,.admin-users-table td{padding:11px 14px}.admin-users-table th:last-child,.admin-users-table td:last-child{width:142px;text-align:right}.admin-user-identity{display:flex;align-items:center;gap:10px}.admin-user-identity>span{width:34px;height:34px;flex:0 0 auto;display:grid;place-items:center;color:#087d2e;border-radius:50%;background:#0a9d381a;font-size:.76rem;font-weight:900}.admin-user-identity div{min-width:0;display:grid;gap:2px}.admin-user-identity small{overflow:hidden;color:var(--muted);font-size:.78rem;text-overflow:ellipsis}.status{display:inline-flex;align-items:center;min-height:28px;padding:0 11px;border-radius:999px;font-size:.82rem;font-weight:800}.status.as-button{gap:7px;border:0}.status-dot{width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:currentColor}.status.as-button:disabled,.table-select:disabled{cursor:not-allowed;opacity:.62}.status.active{color:#06762a;background:#0a9d381f}.status.inactive{color:#9a6300;background:#f59e0b21}.table-empty{margin-top:18px;padding:40px;color:var(--muted);border:1px dashed var(--line);border-radius:8px;text-align:center}.admin-user-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-user-form-grid .full-row{grid-column:1 / -1}.field-help{color:var(--muted);font-size:.78rem;font-weight:600}.role-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin-top:16px}.role-card{display:grid;align-content:start;gap:13px;padding:16px;border:1px solid var(--line);border-radius:8px;background:#fff;transition:border-color .18s ease,box-shadow .18s ease}.role-card:hover{border-color:#0a9d3847;box-shadow:0 12px 28px #0c172a0f}.role-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.role-heading-copy{min-width:0;display:flex;align-items:flex-start;gap:10px}.role-icon{width:36px;height:36px;flex:0 0 auto;display:grid;place-items:center;color:#087d2e;border-radius:8px;background:#0a9d3817}.role-card h2{margin:0;color:var(--navy);font-size:1.12rem}.role-card p{margin:6px 0 0;color:var(--muted);font-size:.86rem;line-height:1.4}.role-meta{display:flex;flex-wrap:wrap;gap:8px}.system-pill{display:inline-flex;align-items:center;min-height:28px;padding:0 11px;border-radius:999px;color:#34445e;background:#eef3f8;font-size:.82rem;font-weight:800}.system-pill.custom{color:#075a22;background:#0a9d381a}.role-numbers{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #e7edf4;border-radius:8px;background:#f7f9fc}.role-numbers div{min-width:0;display:grid;gap:2px;padding:10px;border-left:1px solid #e7edf4}.role-numbers div:first-child{border-left:0}.role-numbers strong{color:var(--navy);font-size:1.05rem}.role-numbers span{overflow:hidden;color:var(--muted);font-size:.72rem;font-weight:750;text-overflow:ellipsis}.role-area-list{min-height:25px;display:flex;flex-wrap:wrap;gap:6px}.role-area-list span{min-height:25px;display:inline-flex;align-items:center;padding:0 8px;color:#40506a;border-radius:6px;background:#eef3f7;font-size:.74rem;font-weight:800}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;padding:22px;background:#0812296b;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-panel{width:min(900px,100%);max-height:min(760px,calc(100vh - 44px));overflow:auto;border:1px solid rgba(221,228,238,.96);border-radius:8px;background:#fff;box-shadow:0 28px 90px #08122942}.modal-panel.compact-modal{width:min(520px,100%)}.pwa-dialog-backdrop{z-index:105}.pwa-dialog{overflow:hidden}.pwa-dialog-content{display:grid;gap:18px;padding:24px}.pwa-dialog-mark{width:54px;height:54px;display:grid;place-items:center;color:#fff;border-radius:8px;background:linear-gradient(145deg,#0aae3f,#067a28);box-shadow:0 14px 30px #047c2938}.pwa-manual-guide{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;padding:12px;color:#314058;border:1px solid rgba(10,157,56,.18);border-radius:8px;background:#0a9d380f}.pwa-manual-guide svg{color:var(--green-dark)}.pwa-manual-guide p,.pwa-install-feedback{margin:0;font-size:.88rem;font-weight:750;line-height:1.45}.pwa-install-feedback{color:#805000;padding:10px 12px;border-left:3px solid #f59e0b;background:#f59e0b14}.modal-panel form,.confirm-dialog{display:grid;gap:18px;padding:24px}.unsaved-changes-backdrop{z-index:110}.unsaved-changes-icon{width:48px;height:48px;display:grid;place-items:center;color:#a15c00;border:1px solid rgba(245,158,11,.24);border-radius:8px;background:#f59e0b1f}.unsaved-changes-icon.neutral{color:#08772c;border-color:#0a9d3833;background:#0a9d3817}.modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.modal-heading h2{margin:0;color:var(--navy);font-size:1.45rem}.modal-heading p{margin:5px 0 0;color:var(--muted)}.modal-grid{display:grid;grid-template-columns:1fr minmax(160px,220px);gap:14px}.role-modal-panel{width:min(1080px,100%);max-height:min(840px,calc(100vh - 32px))}.permission-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:4px;border-top:1px solid var(--line)}.permission-editor-heading>div:first-child{display:grid;gap:3px}.permission-editor-heading strong{color:var(--navy)}.permission-editor-heading span{color:var(--muted);font-size:.84rem}.permission-count{flex:0 0 auto;display:flex;align-items:baseline;gap:6px;padding:8px 11px;border-radius:8px;background:#eef3f7}.permission-count strong{color:#087d2e;font-size:1.05rem}.permission-groups{display:grid;gap:10px}.permission-group{overflow:hidden;border:1px solid #e2e9f1;border-radius:8px;background:#fff}.permission-group>header{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 12px;border-bottom:1px solid #e8edf4;background:#f7f9fc}.permission-group-icon{width:38px;height:38px;display:grid;place-items:center;color:#087d2e;border-radius:8px;background:#0a9d3817}.permission-group h3{margin:0;color:var(--navy);font-size:.96rem}.permission-group p{margin:3px 0 0;color:var(--muted);font-size:.78rem}.permission-group-toggle{min-width:48px;height:32px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 8px;color:#526078;border:1px solid #dce4ed;border-radius:7px;background:#fff;font-size:.78rem;font-weight:850}.permission-group-toggle.selected{color:#087d2e;border-color:#0a9d3847;background:#0a9d3814}.permission-group-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.permission-option{min-height:74px;display:grid;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:9px;padding:11px 12px;color:#26334b;border:0;border-right:1px solid #edf1f5;border-bottom:1px solid #edf1f5;border-radius:0;background:#fff;text-align:left;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.permission-option:hover{background:#f8fbf9;box-shadow:none}.permission-option.selected{background:#0a9d3811}.permission-option:disabled{cursor:not-allowed;opacity:.72}.permission-option-check{width:22px;height:22px;display:grid;place-items:center;color:#fff;border:1px solid #cfd8e4;border-radius:6px;background:#fff}.permission-option.selected .permission-option-check{border-color:#0a9d38;background:#0a9d38}.permission-option-copy{min-width:0;display:grid;gap:5px}.permission-option-copy>span{display:flex;align-items:center;justify-content:space-between;gap:8px}.permission-option-copy strong{color:var(--navy);font-size:.84rem}.permission-option-copy em{flex:0 0 auto;padding:3px 6px;color:#627088;border-radius:5px;background:#eef3f7;font-size:.64rem;font-style:normal;font-weight:850;text-transform:uppercase}.permission-option-copy small{color:var(--muted);font-size:.75rem;line-height:1.35}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.danger-zone{display:grid;gap:4px;padding:14px;color:#9f1010;border:1px solid rgba(229,9,20,.16);border-radius:8px;background:#e5091412}.danger-zone strong{color:#7f1010}.danger-zone span{color:#6d7484;font-size:.9rem}.settings-overlay-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:36;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 18% 10%,rgba(10,157,56,.18),transparent 34%),#08121c7a;-webkit-backdrop-filter:blur(18px) saturate(1.15);backdrop-filter:blur(18px) saturate(1.15);overscroll-behavior:contain}.settings-overlay-panel{width:min(1240px,calc(100vw - 48px));height:min(860px,calc(100vh - 48px));display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden;border:1px solid rgba(221,228,238,.72);border-radius:8px;background:#fafcfef0;box-shadow:0 34px 110px #040c1857;overscroll-behavior:contain}.settings-overlay-top{display:grid;grid-template-columns:minmax(260px,1fr) minmax(280px,.9fr) 42px;align-items:center;gap:16px;padding:16px 18px;border-bottom:1px solid rgba(221,228,238,.82);background:linear-gradient(135deg,#fffffff0,#f5faf7e6),#ffffffe0}.settings-overlay-title{min-width:0;display:flex;align-items:center;gap:12px}.settings-overlay-title>svg{width:42px;height:42px;flex:0 0 auto;padding:10px;color:#08772c;border:1px solid rgba(10,157,56,.16);border-radius:8px;background:#0a9d3817}.settings-overlay-title span{color:#617086;font-size:.76rem;font-weight:900;text-transform:uppercase}.settings-overlay-title h1{margin:1px 0 0;color:var(--navy);font-size:1.35rem;line-height:1.1}.settings-overlay-top p{margin:0;color:#536078;font-size:.88rem;line-height:1.38}.settings-overlay-tabs{display:flex;align-items:stretch;gap:6px;padding:0 18px;border-bottom:1px solid rgba(221,228,238,.82);background:#ffffffb8}.settings-overlay-tabs button{min-height:48px;display:inline-flex;align-items:center;gap:8px;padding:0 14px;color:#435069;border:0;border-bottom:3px solid transparent;background:transparent;font-weight:900}.settings-overlay-tabs button.active{color:#075a22;border-bottom-color:var(--green);background:linear-gradient(180deg,#0a9d3814,#0a9d3805)}.settings-overlay-body{min-height:0;display:grid;grid-template-columns:248px minmax(0,1fr)}.settings-overlay-menu{min-height:0;display:grid;align-content:start;gap:9px;padding:16px;border-right:1px solid rgba(221,228,238,.82);background:linear-gradient(180deg,#08361b09,#ffffff94),#ffffff9e}.settings-menu-eyebrow{color:#7a879b;font-size:.72rem;font-weight:950;text-transform:uppercase}.settings-menu-button{min-height:58px;display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:10px;padding:8px 10px;color:#26334b;border:1px solid transparent;border-radius:8px;background:transparent;text-align:left}.settings-menu-button>svg{width:34px;height:34px;padding:8px;color:#08772c;border-radius:8px;background:#0a9d3814}.settings-menu-button span{min-width:0;display:grid;gap:1px}.settings-menu-button strong{color:inherit;font-size:.9rem}.settings-menu-button small{color:#69778e;font-size:.76rem;font-weight:760}.settings-menu-button.active{color:#075a22;border-color:#0a9d3838;background:#0a9d3817;box-shadow:inset 3px 0 0 var(--green)}.settings-menu-note{display:flex;align-items:flex-start;gap:8px;margin-top:8px;padding:10px;color:#4c596e;border:1px solid #e8eef6;border-radius:8px;background:#ffffffc2;font-size:.78rem;font-weight:760;line-height:1.35}.settings-menu-note svg{flex:0 0 auto;color:var(--green)}.settings-overlay-content{min-height:0;overflow:auto;display:grid;align-content:start;gap:14px;padding:16px;scroll-behavior:smooth;overscroll-behavior:contain}.settings-overlay-content .compact-back{display:none}.settings-overlay-content .table-empty{margin-top:0}.settings-group-heading{display:grid;gap:3px;padding:0 0 0 12px;border-left:3px solid var(--green);scroll-margin-top:14px}.settings-overlay-content .settings-subsection{scroll-margin-top:14px}.settings-group-heading span{color:#078230;font-size:.72rem;font-weight:950;text-transform:uppercase}.settings-overlay-content .settings-block{gap:14px}.settings-overlay-content .settings-subsection{gap:9px;padding:12px;border:1px solid #e8eef6;border-radius:8px;background:#ffffffd1}.settings-overlay-content .settings-subsection h3{font-size:.94rem}.settings-overlay-content .settings-block h2{font-size:1.05rem}.settings-overlay-content .settings-block p{margin-top:2px;font-size:.84rem;line-height:1.36}.settings-overlay-content .target-mode-grid{gap:9px}.loom-settings-launcher{display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:center}.planning-phase-settings{display:grid;gap:12px}.planning-phase-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.planning-phase-summary>span{flex:0 0 auto;display:inline-flex;align-items:baseline;gap:5px;padding:7px 9px;color:#166534;border:1px solid rgba(10,157,56,.18);border-radius:7px;background:#0a9d3812;font-size:.74rem;font-weight:850}.planning-phase-summary>span strong{font-size:1rem}.planning-phase-grid{max-height:210px;overflow-y:auto;padding:2px 4px 2px 0}.planning-phase-add{display:grid;grid-template-columns:minmax(220px,1fr) max-content;align-items:end;gap:9px;padding-top:4px;border-top:1px solid #edf1f6}.planning-phase-save{justify-self:start}.loom-settings-launcher>.inline-message{grid-column:1 / -1}.loom-settings-summary{min-width:0;display:grid;grid-template-columns:46px minmax(0,1fr) max-content;align-items:center;gap:12px}.loom-settings-icon{width:42px;height:42px;display:grid;place-items:center;color:#08772c;border-radius:8px;background:#0a9d3817}.loom-settings-count{min-width:92px;display:grid;justify-items:end}.loom-settings-count strong{color:var(--navy);font-size:1.35rem;line-height:1}.loom-settings-count span{color:var(--muted);font-size:.76rem;font-weight:800}.mirror-validation-settings{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,240px);align-items:start;gap:16px}.mirror-validation-settings>div:first-child{min-width:0}.mirror-product-policy-setting{width:100%;grid-column:1 / -1}.mirror-lot-length-setting input{min-height:42px;font-weight:900}.mirror-validation-preview{grid-column:1 / -1;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;padding:12px;color:#28523a;border:1px solid rgba(10,157,56,.18);border-radius:8px;background:#0a9d380f}.mirror-validation-preview>svg{justify-self:center;color:#08772c}.mirror-validation-preview span{min-width:0;display:grid;gap:2px}.mirror-validation-preview small{color:#587165;line-height:1.4}@media(max-width:620px){.mirror-validation-settings{grid-template-columns:minmax(0,1fr)}.mirror-validation-preview,.mirror-product-policy-setting{grid-column:auto}}.settings-detail-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:82;display:grid;place-items:center;padding:24px;background:#08121c70;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.settings-detail-panel{width:min(980px,calc(100vw - 48px));height:min(820px,calc(100vh - 48px));display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid rgba(221,228,238,.9);border-radius:8px;background:#fafcfefa;box-shadow:0 30px 100px #040c1857}.settings-detail-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border-bottom:1px solid var(--line);background:#fff}.settings-detail-header>div{min-width:0}.settings-detail-header span{color:#078230;font-size:.72rem;font-weight:950;text-transform:uppercase}.settings-detail-header h2{margin:2px 0;color:var(--navy);font-size:1.15rem}.settings-detail-header p{margin:0;color:#5d6a80;font-size:.82rem}.settings-detail-content{min-height:0;overflow:auto;padding:18px;overscroll-behavior:contain}.settings-detail-content .loom-admin-panel>.table-heading{display:none}.loom-program-panel{display:grid;gap:14px}.loom-program-toolbar{position:sticky;z-index:4;top:-18px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;background:#fafcfef7;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.loom-program-toolbar .planning-search{width:min(420px,100%)}.loom-program-save-state{display:flex;align-items:center;gap:12px}.loom-program-save-state>span{color:var(--muted);font-size:.76rem;font-weight:800;white-space:nowrap}.loom-program-save-state>span strong{color:var(--navy);font-size:.95rem}.loom-program-list{overflow:hidden;border:1px solid #dce4ed;border-radius:8px;background:#fff}.loom-program-list-head,.loom-program-row{display:grid;grid-template-columns:72px 112px minmax(260px,1fr) 96px;align-items:center;gap:12px;padding:8px 12px}.loom-program-list-head{min-height:38px;color:#536177;border-bottom:1px solid #dce4ed;background:#edf2f6;font-size:.68rem;font-weight:950;text-transform:uppercase}.loom-program-row{min-height:54px;position:relative;border-bottom:1px solid #edf1f5;transition:background .15s ease,box-shadow .15s ease}.loom-program-row:last-child{border-bottom:0}.loom-program-row.changed{background:#f1fbf4;box-shadow:inset 3px 0 0 var(--green)}.loom-program-order{color:#718096;font-size:.78rem;font-weight:850}.loom-program-row>strong{color:var(--navy);font-size:.82rem}.loom-program-row label{min-width:0}.loom-program-row input{width:100%;min-height:38px;padding:0 10px;color:#15233a;border:1px solid #d5dee9;border-radius:6px;outline:0;background:#fff;font-size:.8rem;font-weight:850}.loom-program-row input:focus{border-color:#0a9d389e;box-shadow:0 0 0 3px #0a9d3817}.settings-overlay-content .target-mode-card{min-height:86px;grid-template-columns:26px minmax(0,1fr);gap:6px 9px;padding:11px}.settings-overlay-content .target-mode-card svg{grid-row:1 / span 2}.settings-overlay-content .target-mode-card strong{font-size:.92rem}.settings-overlay-content .target-mode-card span{font-size:.78rem}.settings-visual-grid{display:grid;grid-template-columns:repeat(2,minmax(240px,1fr));gap:10px}.settings-toggle-card{min-height:72px;display:grid;grid-template-columns:34px minmax(0,1fr) max-content;align-items:center;gap:10px;padding:11px;color:#344158;border:1px solid #e6edf5;border-radius:8px;background:#ffffffd6;text-align:left;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.settings-toggle-card:hover{transform:translateY(-1px);border-color:#0a9d384d;box-shadow:0 12px 28px #0c172a12}.settings-toggle-card>svg{width:34px;height:34px;padding:8px;color:#08772c;border-radius:8px;background:#0a9d3814}.settings-toggle-card span{min-width:0;display:grid;gap:2px}.settings-toggle-card strong{color:var(--navy);font-size:.9rem}.settings-toggle-card small{color:var(--muted);font-size:.76rem;font-weight:780;line-height:1.3}.settings-toggle-card b{display:inline-flex;align-items:center;min-height:28px;padding:0 9px;color:#5f6b7f;border-radius:999px;background:#eef3f8;font-size:.72rem;font-weight:950}.settings-toggle-card.selected{border-color:#0a9d3861;background:#0a9d3814;box-shadow:inset 0 0 0 1px #0a9d380f}.settings-toggle-card.selected b{color:#075a22;background:#0a9d381f}.sidebar-behavior-preview{grid-template-columns:minmax(0,1fr) minmax(240px,.72fr)}.sidebar-preview-frame{min-height:150px;position:relative;display:grid;align-content:center;gap:7px;padding:18px 18px 18px 42px;overflow:hidden;border:1px solid #e6edf5;border-radius:8px;background:linear-gradient(90deg,rgba(10,157,56,.08),transparent 36%),#fff}.sidebar-preview-frame:before{content:"";position:absolute;left:0;top:0;width:14px;height:100%;background:linear-gradient(180deg,#0aae3f,#067a28)}.sidebar-preview-frame span{position:absolute;left:14px;top:50%;width:24px;height:72px;border-radius:0 8px 8px 0;background:#0a9d38;transform:translateY(-50%);box-shadow:0 12px 24px #047c292e}.sidebar-preview-frame strong{color:var(--navy)}.sidebar-preview-frame small{max-width:260px;color:var(--muted);line-height:1.4}.settings-overlay-content .target-basis-button{min-height:38px}.settings-overlay-content .target-value-grid,.settings-overlay-content .target-preview-panel{gap:9px}.settings-overlay-content .settings-number-field,.settings-overlay-content .settings-security-card,.settings-overlay-content .metric-config-card{padding:10px}.settings-overlay-content .field.compact{gap:6px}.settings-overlay-content .field.compact input,.settings-overlay-content .field.compact select{min-height:40px;padding:0 10px}.settings-overlay-content .target-preview-panel{padding:10px}.settings-overlay-content .target-preview-panel div{padding:8px}.settings-overlay-content .target-preview-panel strong{font-size:.94rem}.settings-overlay-content .target-field-section{padding:12px}.settings-overlay-content .waste-metric-settings{grid-template-columns:repeat(2,minmax(280px,1fr));gap:10px}.settings-overlay-content .field-chip{min-height:30px;padding:0 9px;font-size:.78rem}.settings-block{display:grid;gap:18px}.settings-navigation{display:grid;gap:12px}.settings-module-button{min-height:86px;display:grid;grid-template-columns:46px minmax(0,1fr) 24px;align-items:center;gap:14px;padding:16px;color:#17223a;border:1px solid var(--line);border-radius:8px;background:#fff;text-align:left;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.settings-module-button:hover{transform:translateY(-1px);border-color:#0a9d384d;box-shadow:0 14px 34px #0c172a14}.settings-module-button>svg:first-child{width:42px;height:42px;padding:9px;color:var(--green-dark);border-radius:8px;background:#0a9d381a}.settings-module-button span{display:grid;gap:4px}.settings-module-button strong{color:var(--navy);font-size:1rem}.settings-module-button small{color:var(--muted);font-size:.86rem;font-weight:750}.compact-back{width:max-content}.settings-subsection{display:grid;gap:12px;padding-top:2px}.settings-subsection h3{margin:0;color:var(--navy);font-size:1rem}.settings-block h2{margin:0;color:var(--navy);font-size:1.18rem}.settings-block p{margin:5px 0 0;color:var(--muted)}.weekday-grid{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));gap:10px}.weekday-option{min-height:54px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 12px;color:#405069;border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:850}.weekday-option svg{color:#a3adbe}.weekday-option.selected{color:#075a22;border-color:#0a9d3875;background:#0a9d3817}.weekday-option.selected svg{color:var(--green)}.waste-rule-grid{display:grid;grid-template-columns:minmax(190px,.8fr) repeat(2,minmax(230px,1fr));gap:12px;align-items:stretch}.settings-number-field,.settings-security-card{padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff}.settings-number-field small{color:var(--muted);font-size:.78rem;font-weight:800}.settings-security-card{display:grid;gap:12px}.settings-security-card .field-chip{width:100%;min-height:40px;justify-content:center;border-radius:8px}.target-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:12px}.target-mode-card{min-height:118px;display:grid;align-content:start;gap:7px;padding:16px;color:#435069;border:1px solid var(--line);border-radius:8px;background:#fff;text-align:left;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.target-mode-card:hover{transform:translateY(-1px);border-color:#0a9d3847;box-shadow:0 14px 34px #0c172a14}.target-mode-card svg{color:var(--green)}.target-mode-card strong{color:var(--navy);font-size:1rem}.target-mode-card span{color:var(--muted);font-size:.86rem;font-weight:760;line-height:1.38}.target-mode-card.selected{border-color:#0a9d386b;background:#0a9d3812;box-shadow:inset 0 0 0 1px #0a9d3814}.target-basis-grid{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:10px}.target-basis-button{min-height:44px;color:#435069;border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:900;transition:transform .18s ease,border-color .18s ease,background .18s ease}.target-basis-button:hover:not(:disabled){transform:translateY(-1px);border-color:#0a9d3852}.target-basis-button.selected{color:#075a22;border-color:#0a9d3875;background:#0a9d3817}.target-basis-button:disabled{cursor:not-allowed;opacity:.58}.target-value-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px}.settings-number-field.locked{background:#f8fbfd}.settings-number-field.locked input{color:#64748b;background:#eef4f8}.target-preview-panel{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px;padding:14px;border:1px solid rgba(10,157,56,.18);border-radius:8px;background:radial-gradient(circle at 6% 0%,rgba(10,157,56,.1),transparent 34%),#fff}.target-preview-panel div{display:grid;gap:4px;padding:10px;border:1px solid #eaf0f6;border-radius:8px;background:#f8fbfdc2}.target-preview-panel span{color:var(--muted);font-size:.78rem;font-weight:900}.target-preview-panel strong{color:var(--navy);font-size:1.05rem;font-weight:950;font-variant-numeric:tabular-nums}.target-field-section{padding:16px;border:1px solid rgba(10,157,56,.14);border-radius:8px;background:radial-gradient(circle at 4% 0%,rgba(10,157,56,.08),transparent 34%),#fff}.target-field-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.target-field-picker .dashboard-segment-trigger{max-width:300px}.target-field-picker .dashboard-segment-trigger span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.field-target-menu{max-height:320px;overflow-y:auto;width:min(340px,86vw)}.compact-target-preview{background:radial-gradient(circle at 96% 0%,rgba(10,157,56,.08),transparent 34%),#fff}.waste-metric-settings{display:grid;gap:14px}.metric-config-card{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff}.metric-config-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.metric-config-card h4{margin:0;color:var(--navy);font-size:.98rem}.metric-config-card p{margin-top:4px;font-size:.84rem}.field-chip-grid{display:flex;flex-wrap:wrap;gap:8px}.field-chip{min-height:34px;display:inline-flex;align-items:center;gap:7px;padding:0 10px;color:#435069;border:1px solid #e6edf5;border-radius:999px;background:#fff;font-size:.82rem;font-weight:850}.field-chip svg{color:#a3adbe}.field-chip.selected{color:#075a22;border-color:#0a9d3857;background:#0a9d3814}.field-chip.selected svg{color:var(--green)}.audit-summary{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:8px;margin-top:16px}.audit-summary article{min-height:66px;display:grid;align-content:center;gap:3px;padding:10px 13px;border:1px solid var(--line);border-radius:8px;background:#fff}.audit-summary span{color:var(--muted);font-size:.84rem;font-weight:750}.audit-summary strong{color:var(--navy);font-size:1.28rem;line-height:1}.audit-filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.audit-filters button{min-height:36px;padding:0 13px;color:#334057;border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:800}.audit-filters button.active{color:#fff;border-color:transparent;background:#13233d}.audit-table{min-width:1080px}.audit-event{display:grid;gap:4px}.audit-event strong{color:var(--navy)}.audit-event p{margin:0;color:var(--muted);font-size:.84rem}.audit-severity{width:max-content;min-height:24px;display:inline-flex;align-items:center;padding:0 9px;border-radius:999px;font-size:.76rem;font-weight:850;text-transform:uppercase}.audit-severity.info{color:#075a22;background:#0a9d381c}.audit-severity.warning{color:#8a5600;background:#f59e0b29}.audit-severity.security{color:#9f1010;background:#e509141a}.audit-details summary{color:var(--green-dark);font-weight:850}.audit-details pre{max-width:340px;max-height:180px;overflow:auto;margin:10px 0 0;padding:12px;color:#17223a;border:1px solid var(--line);border-radius:8px;background:#f7f9fc;font-size:.78rem}.system-grid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:22px}.status-list{display:grid;gap:12px;margin:22px 0 0}.status-list div{display:flex;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid var(--line)}.status-list div:last-child{border-bottom:0}.status-list dt{color:var(--muted);font-weight:700}.status-list dd{margin:0;color:var(--navy);font-weight:850}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1600px){.planning-toolbar{flex-direction:column}.planning-controls{width:100%;flex:0 0 auto}}@media(max-width:1400px){.planning-controls{grid-template-columns:minmax(0,1fr)}.planning-filter-strip{justify-content:flex-start}}@media(max-width:1120px){.app-shell{grid-template-columns:92px 1fr}.sidebar{padding:22px 14px}.sidebar-logo img,.main-nav span,.version-box{display:none}.main-nav button{grid-template-columns:1fr;justify-items:center;padding:0}.dashboard-grid,.waste-dashboard-kpi-strip{grid-template-columns:repeat(2,minmax(160px,1fr))}.waste-chart-grid{grid-template-columns:1fr;grid-template-rows:auto}.waste-chart-card.chart-wide{grid-row:auto}.waste-secondary-chart-grid{grid-template-columns:1fr}.field-progress-card{grid-column:auto}.target-value-grid,.target-preview-panel,.planning-kpis{grid-template-columns:repeat(2,minmax(160px,1fr))}.planning-toolbar{flex-direction:column}.planning-controls,.planning-search{width:100%}.planning-controls{flex:0 0 auto;grid-template-columns:minmax(0,1fr)}.planning-filter-strip{justify-content:flex-start;overflow-x:auto;overflow-y:hidden;padding:2px 0 6px;overscroll-behavior-x:contain;scrollbar-color:#cbd5e1 transparent;scrollbar-width:thin}.waste-card-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}.waste-report-layout{grid-template-columns:1fr}.waste-report-controls{grid-template-columns:repeat(2,minmax(220px,1fr))}.weekday-grid{grid-template-columns:repeat(3,minmax(120px,1fr))}.loom-item{grid-template-columns:72px minmax(120px,1fr)}.loom-actions{grid-column:1 / -1;justify-content:flex-start}.topbar,.dashboard-hero,.waste-dashboard-panel .table-heading{align-items:flex-start;flex-direction:column}.waste-dashboard-insights{justify-content:flex-start}.settings-overlay-body{grid-template-columns:214px minmax(0,1fr)}.settings-overlay-top{grid-template-columns:minmax(220px,1fr) 42px}.settings-overlay-top p{grid-column:1 / -1;max-width:720px}.settings-overlay-top .icon-button{grid-column:2;grid-row:1}.settings-overlay-content .waste-metric-settings{grid-template-columns:1fr}}@media(max-width:1280px){.brand-copy h1{font-size:4.15rem}.brand-copy p{font-size:1.05rem}}@media(min-width:2200px)and (min-height:1300px){.login-brand,.login-panel{padding:92px}.brand-logo{width:min(520px,82%)}.brand-copy h1{font-size:5.8rem}.brand-copy p{font-size:1.35rem}.login-form{width:min(760px,100%);gap:26px}.product-mark{width:132px;height:132px}.form-heading h2{font-size:2.5rem}.input-wrap,.login-form>.primary-button{min-height:68px}.login-footer{font-size:1.05rem}}@media(min-width:921px)and (max-height:820px){.login-brand,.login-panel{padding:28px 40px}.brand-logo{width:min(350px,82%)}.brand-copy{margin-top:48px}.brand-copy h1{font-size:3.55rem}.brand-rule{margin-top:20px}.login-form{gap:14px}.product-mark{width:76px;height:76px}.form-heading{margin-bottom:8px}.form-heading h2{font-size:1.72rem}.input-wrap{min-height:52px}.login-form>.primary-button{min-height:52px}}@media(min-width:921px)and (max-height:650px){.brand-copy{margin-top:28px}.brand-note,.form-heading p{display:none}.brand-copy h1{font-size:3.1rem}.product-mark{width:58px;height:58px}.product-mark svg{width:32px;height:32px}.login-footer{font-size:.86rem}}@media(max-width:920px){.login-page{height:100dvh;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.login-brand{min-height:auto;align-items:center;padding:22px 24px;border-bottom:1px solid var(--line);background:#ffffffe6}.brand-logo{width:min(330px,78vw)}.brand-copy,.brand-arc,.brand-ground{display:none}.login-panel{min-height:0;padding:32px 24px 22px;border-left:0;border-top:0}}@media(max-width:920px)and (max-height:700px){.login-brand{padding:10px 18px}.brand-logo{width:min(220px,64vw)}.login-panel{min-height:0;gap:10px;padding:14px 24px 10px}.login-form{gap:9px}.product-mark{width:52px;height:52px}.product-mark svg{width:28px;height:28px}.form-heading{margin-bottom:2px}.form-heading h2{font-size:1.38rem}.form-heading p{display:none}.field{gap:4px}.input-wrap,.login-form>.primary-button{min-height:44px}.login-footer{font-size:.78rem}}@media(max-width:860px){.topbar h2{font-size:1.65rem}.system-grid,.role-grid,.modal-grid,.admin-user-form-grid,.permission-group-options,.product-editor-grid{grid-template-columns:1fr}.admin-user-form-grid .full-row{grid-column:auto}.manual-factor-overlay{padding:10px}.manual-factor-shell{height:calc(100vh - 20px)}.manual-factor-wizard{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.manual-factor-step-list{padding:9px;overflow-x:auto;border-right:0;border-bottom:1px solid var(--line)}.manual-factor-progress{display:none}.manual-factor-step-list ol{display:flex}.manual-factor-step-list li{flex:0 0 185px}.manual-factor-stage{overflow:auto}.manual-file-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.manual-file-metrics div:nth-child(3){border-left:0;border-top:1px solid #e2e9f1}.manual-file-metrics div:nth-child(4){border-top:1px solid #e2e9f1}.manual-history-details>div{grid-template-columns:1fr}.admin-console-header,.admin-section-heading{align-items:stretch;flex-direction:column}.admin-overview{width:100%}.admin-overview div{min-width:0;flex:1}.admin-tabs{width:100%}.admin-tabs button{flex:1 0 auto}.admin-section-actions{justify-content:flex-start;flex-wrap:wrap}.admin-search{width:auto;flex:1 1 280px}.audit-summary{grid-template-columns:repeat(5,minmax(100px,1fr));overflow-x:auto}.modal-panel{max-height:calc(100vh - 28px)}.settings-overlay-panel{width:calc(100vw - 28px);height:calc(100vh - 28px)}.settings-overlay-body{grid-template-columns:1fr}.settings-overlay-menu{display:none}}@media(max-width:640px){.login-brand{padding:16px 18px}.brand-logo{width:min(270px,78vw)}.login-panel{min-height:0;gap:18px;padding:24px 16px 16px}.login-form{gap:16px}.product-mark{width:76px;height:76px}.product-mark svg{width:36px;height:36px}.form-heading{margin-bottom:8px}.form-heading h2{font-size:1.7rem}.input-wrap{min-height:54px}.login-form>.primary-button{min-height:54px}.login-footer{gap:12px;font-size:.82rem}.input-wrap{grid-template-columns:20px minmax(0,1fr) 34px;gap:9px;padding:0 12px}.input-wrap input{font-size:.92rem}.app-shell{grid-template-columns:1fr}.manual-factor-overlay{padding:0}.manual-factor-shell{width:100%;height:100dvh;min-height:100dvh;border:0;border-radius:0}.manual-factor-header{min-height:68px;padding:10px 12px}.manual-factor-title>span{width:38px;height:38px}.manual-factor-title h1{font-size:1.08rem}.manual-factor-title p{display:none}.manual-factor-tabs{padding:5px 10px;overflow-x:auto}.manual-factor-tabs button{flex:1 0 auto}.manual-factor-feedback{padding:8px 12px}.manual-factor-step-list li{flex-basis:160px}.manual-factor-stage,.manual-factor-history{padding:14px}.manual-stage-heading,.manual-history-heading{align-items:flex-start;flex-direction:column}.manual-upload-zone{min-height:145px;padding:16px}.manual-review-grid{grid-template-columns:1fr}.manual-generation-summary{grid-template-columns:30px minmax(0,1fr)}.manual-generation-summary small{grid-column:2;max-width:none;text-align:left}.manual-stage-actions .primary-button,.manual-stage-actions .secondary-button{min-width:0;flex:1}.manual-history-card>header{grid-template-columns:38px minmax(0,1fr)}.manual-history-status{grid-column:2;justify-items:start}.manual-history-summary{grid-template-columns:1fr}.manual-history-summary div{border-top:1px solid #e5ebf2;border-left:0}.manual-history-summary div:first-child{border-top:0}.admin-console-header,.admin-section-panel{padding:15px}.admin-overview div{padding:4px 9px}.admin-overview span{white-space:normal}.admin-tabs button{padding:0 10px}.admin-section-actions .primary-button{flex:1 1 180px}.permission-editor-heading{align-items:flex-start;flex-direction:column}.permission-group>header{grid-template-columns:36px minmax(0,1fr) auto}.permission-group p{display:none}.audit-summary{grid-template-columns:repeat(2,minmax(110px,1fr));overflow:visible}.app-shell.sidebar-auto-hide:not(.meeting-mode) .sidebar{width:auto;height:auto;position:static;transform:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.app-shell.sidebar-auto-hide:not(.meeting-mode) .workspace{padding-left:14px}.sidebar-reveal-zone{display:none}.sidebar{height:auto;position:static;grid-template-columns:1fr;padding:14px}.main-nav{grid-auto-flow:column;grid-auto-columns:1fr;overflow-x:auto}.main-nav button{min-width:58px}.workspace{padding:20px 14px 28px}.top-actions{width:100%;flex-wrap:wrap}.notification-wrap{margin-left:auto}.meeting-button{flex:1 1 170px}.profile{flex:1 1 190px}.dashboard-grid{grid-template-columns:1fr}.dashboard-toolbar{width:100%;align-items:stretch;flex-direction:column}.dashboard-segment-trigger,.dashboard-month-control{width:100%}.dashboard-month-control{grid-template-columns:42px minmax(0,1fr) 42px}.dashboard-segment-menu,.waste-pending-popover{left:0;right:auto;width:min(100%,calc(100vw - 28px))}.notification-menu{right:0}.waste-dashboard-kpi-strip{grid-template-columns:1fr}.waste-chart-card{padding:16px}.waste-column-chart{overflow-x:auto}.chart-pills{justify-content:flex-start}.waste-column{min-width:42px}.projection-gauge,.field-progress-layout{grid-template-columns:1fr;justify-items:center;text-align:center}.field-progress-info{justify-items:center}.field-mini-chart{overflow-x:auto}.field-mini-column{min-width:34px}.settings-overlay-backdrop{padding:10px}.settings-overlay-panel{width:calc(100vw - 20px);height:calc(100vh - 20px)}.settings-overlay-top{grid-template-columns:minmax(0,1fr) 40px;gap:10px;padding:12px}.settings-overlay-title>svg{width:38px;height:38px}.settings-overlay-top p{font-size:.8rem}.settings-overlay-tabs{overflow-x:auto;padding:0 12px}.settings-overlay-tabs button{min-width:max-content}.model-filter-popover{top:calc(100% + 8px);right:0}.model-filter-wrap:before{top:100%;right:0;width:100%;height:10px}.settings-overlay-content{padding:12px}.settings-overlay-content .waste-rule-grid,.settings-overlay-content .waste-metric-settings,.settings-visual-grid,.sidebar-behavior-preview,.loom-settings-launcher,.planning-phase-add{grid-template-columns:1fr}.planning-phase-summary{flex-direction:column}.planning-phase-add .secondary-button,.planning-phase-save{width:100%}.loom-settings-summary{grid-template-columns:42px minmax(0,1fr)}.loom-settings-count{grid-column:2;justify-items:start}.settings-detail-backdrop{padding:10px}.settings-detail-panel{width:calc(100vw - 20px);height:calc(100vh - 20px)}.loom-program-toolbar{align-items:stretch;flex-direction:column}.loom-program-save-state{justify-content:space-between}.loom-program-list-head,.loom-program-row{grid-template-columns:76px minmax(180px,1fr)}.loom-program-list-head>:first-child,.loom-program-row>:first-child,.loom-program-list-head>:last-child,.loom-program-row>:last-child{display:none}.waste-ranking-item{grid-template-columns:1fr 72px}.waste-ranking-item>div:first-child{grid-column:1 / -1}.waste-compare-row{grid-template-columns:82px minmax(0,1fr)}.waste-compare-row strong{grid-column:2}.waste-dashboard-insights{width:100%}.waste-dashboard-insights span{flex:1 1 130px}.target-mode-grid,.target-basis-grid,.target-value-grid,.target-preview-panel{grid-template-columns:1fr}.target-field-heading{flex-direction:column}.target-field-picker,.target-field-picker .dashboard-segment-trigger{width:100%;max-width:none}.planning-header,.planning-source{align-items:flex-start;flex-direction:column}.planning-header-actions,.planning-header-actions .primary-button,.planning-header-actions .secondary-button{width:100%}.planning-kpis{grid-template-columns:1fr}.product-catalog-toolbar{align-items:stretch;flex-direction:column}.product-catalog-toolbar .planning-search{width:100%}.catalog-pagination{align-items:stretch}.planning-table-wrap{min-height:360px;max-height:68vh}.waste-card-grid,.waste-form-grid,.waste-month-grid,.waste-report-controls,.waste-rule-grid,.weekday-grid{grid-template-columns:1fr}.waste-report-modal{width:min(100%,calc(100vw - 20px));padding:14px}.waste-report-print-head,.waste-report-summary,.waste-report-actions{align-items:stretch;flex-direction:column}.waste-report-format-grid{grid-template-columns:1fr}.waste-year-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.waste-entry-modal{width:min(100%,calc(100vw - 28px))}.waste-floating-counters{right:14px;bottom:14px;left:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.waste-floating-counters div{min-width:0}.loom-create,.loom-item{grid-template-columns:1fr}}@media print{@page{size:A4 landscape;margin:10mm}body{background:#fff}body *{visibility:hidden!important}.waste-report-print-area,.waste-report-print-area *{visibility:visible!important}.waste-report-print-area{position:fixed;top:0;right:0;bottom:0;left:0;display:block;width:100%;padding:0;color:#000;border:0;box-shadow:none}.waste-report-table-wrap{overflow:visible;border:0}.waste-report-table{min-width:0;font-size:8px}.waste-report-table th{position:static;color:#fff!important;background:#0a9d38!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.waste-report-table th,.waste-report-table td{padding:4px 5px;border:1px solid #cfd8e3}.waste-report-print-head{margin-bottom:8px}.waste-report-summary span{border-color:#d7dee8;background:#fff}}
