[data-palette=lavender]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#37304a;--ink-2:#6b6382;--ink-3:#8f88a3;--bg:#f8f4f140;--surface:#fff;--surface-2:#fdf3f1;--line:#ece4ea;--line-strong:#dcd2e0;--accent-100:#efebfa;--accent-200:#d9d2f1;--accent-300:#bdb1e6;--accent-500:#7a68c4;--accent-600:#6957b3;--accent-700:#4f3f96;--warning-100:#fce9ea;--warning-200:#f8cfd6;--warning-300:#f0a9b9;--warning-600:#b73f63;--success-100:#e3f2ec;--success-200:#cde9e0;--success-300:#9fcfc1;--success-700:#2f6b5c;--info-100:#fce8e2;--info-200:#f8d3ca;--info-700:#8a4b2d;--focus:var(--accent-300);--seg-bg:var(--accent-100);--seg-active-bg:var(--surface);--seg-active-ink:var(--accent-700);--seg-active-shadow:0 2px 8px -2px #7a68c466;--track:var(--accent-200);--success-hover:var(--success-300);--warning-hover:var(--warning-300);--tip-bg:var(--ink);--overlay:#37304a61;--shadow-sm:0 1px 2px #37304a0f;--shadow-md:0 10px 28px -10px #7a68c459;--shadow-pop:0 18px 44px -14px #37304a52}[data-palette=lavender],[data-palette=night]{--primary:var(--accent-500);--primary-hover:var(--accent-600);--on-primary:#fff;--tip-ink:#fff}[data-palette=night]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#fcfcfc;--ink-2:#ababab;--ink-3:#848484;--bg:#0e0e10;--surface:#28272d;--surface-2:#161618;--line:#3a3a40;--line-strong:#4c4c53;--accent-100:#3a2411;--accent-200:#53321a;--accent-300:#8f5420;--accent-500:#ff7312;--accent-600:#ff8e37;--accent-700:#ffa05a;--warning-100:#3b1a22;--warning-200:#57232f;--warning-300:#e0657f;--warning-600:#ff8ca3;--success-100:#11332b;--success-200:#1a4a3e;--success-300:#3fa98c;--success-700:#6fe0bf;--info-100:#382b10;--info-200:#4f3c12;--info-700:#f6c65a;--focus:#ff9a47;--seg-bg:#161618;--seg-active-bg:#ff7312;--seg-active-ink:#fff;--seg-active-shadow:0 2px 10px -2px #ff731280;--track:#3c3c42;--success-hover:color-mix(in srgb, var(--success-300) 38%, transparent);--warning-hover:color-mix(in srgb, var(--warning-300) 34%, transparent);--tip-bg:#3c3c42;--overlay:#0000009e;--shadow-sm:0 1px 2px #0006;--shadow-md:0 10px 28px -10px #ff731280;--shadow-pop:0 18px 44px -14px #000000d9}:root{--r-sm:10px;--r-md:16px;--r-lg:22px;--r-xl:30px;--r-pill:999px;--font-display:"Quicksand", ui-rounded, "Nunito", system-ui, sans-serif;--font-body:"Nunito", system-ui, -apple-system, "Segoe UI", sans-serif;--field-h:40px;--field-pad-x:16px;--field-pad-right:16px;--field-radius:var(--r-md);--field-border-w:1.5px;--field-font-size:14px;--nav-item-height:52px;--bottom-nav-padding:10px;--bottom-nav-height:calc(var(--nav-item-height) + var(--bottom-nav-padding)*2)}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{border-radius:var(--r-pill);background:var(--line-strong);background-clip:content-box;border:3px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--ink-3);background-clip:content-box}[role=button],a,button{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}@font-face{font-family:Quicksand;font-style:normal;font-weight:500 700;font-display:swap;src:url(../fonts/quicksand-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/nunito-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/nunito-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/ibm-plex-mono-500-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/ibm-plex-mono-500-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/ibm-plex-mono-600-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/ibm-plex-mono-600-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:100 700;src:url(../fonts/material-symbols-outlined.woff2)format("woff2")}body,html{background:var(--bg);font-family:var(--font-body);-webkit-font-smoothing:antialiased;transition:background .25s,color .25s}body,h1,h2,h3,html{color:var(--ink);margin:0}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.01em;font-weight:700}.mono{font-family:IBM Plex Mono,SFMono-Regular,ui-monospace,monospace}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.001ms!important;animation-duration:.001ms!important}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.material-symbols-outlined{letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;direction:ltr;font-family:Material Symbols Outlined;font-style:normal;font-weight:400;line-height:1}.screen{padding:24px 18px;animation:.25s fadeIn}@media (width>=1024px){.screen{flex:1;order:2;min-width:0;padding:28px 24px 24px}}.screen.has-bottom-nav{padding-bottom:calc(24px + var(--bottom-nav-height) + env(safe-area-inset-bottom))}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.page-title{margin-bottom:4px;font-size:26px}.page-sub{color:var(--ink-2);margin-bottom:20px;font-size:14px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow-sm);margin-bottom:12px;padding:22px}.card-title{font-family:var(--font-display);margin-bottom:4px;font-size:18px;font-weight:700}.metric-card{border-left:4px solid var(--success-700);justify-content:space-between;align-items:center;gap:12px;display:flex}.metric-card>:first-child{flex:1;min-width:0}.metric-card>:last-child{flex-direction:column;flex-shrink:0;align-items:flex-end;display:flex}.metric-card.status-выше{border-left-color:var(--warning-600)}.metric-card.status-ниже{border-left-color:var(--info-700)}.metric-name{font-size:16px;font-weight:700}.metric-material,.metric-name{overflow-wrap:anywhere;margin-bottom:2px}.metric-material{color:var(--ink-2);font-size:14px}.metric-date{color:var(--ink-2);font-size:12px}.metric-value{white-space:nowrap;font-size:20px}.metric-unit{color:var(--ink-2);white-space:nowrap;font-size:12px}.trend{margin-left:6px;font-size:18px}.trend-up{color:var(--warning-600)}.trend-down{color:var(--info-700)}.trend-stable{color:var(--success-700)}.empty-state{text-align:center;color:var(--ink-2);padding:60px 20px;font-size:14px}.empty-state .blob{background:radial-gradient(circle at 30% 30%,var(--accent-200),var(--success-200));opacity:.6;border-radius:42% 58% 63% 37%/41% 44% 56% 59%;width:80px;height:80px;margin:0 auto 16px}.btn{width:100%;min-height:var(--field-h);border-radius:var(--r-pill);background:var(--primary);color:var(--on-primary);box-shadow:var(--shadow-md);cursor:pointer;text-align:center;border:0;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-family:inherit;font-size:15px;font-weight:700;line-height:1;transition:background .15s,transform .1s,box-shadow .15s;display:inline-flex}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.btn:hover:not(:disabled){background:var(--primary-hover)}.btn-secondary{background:var(--accent-100);color:var(--accent-700);box-shadow:none}.btn-secondary:hover:not(:disabled){background:var(--accent-200)}.btn-ghost{color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line-strong);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--accent-100)}.btn-success{background:var(--success-200);color:var(--success-700);box-shadow:none}.btn-success:hover:not(:disabled){background:var(--success-hover)}.btn-danger{background:var(--warning-200);color:var(--warning-600);box-shadow:none}.btn-danger:hover:not(:disabled){background:var(--warning-hover)}.btn-small{width:auto;min-height:32px;padding:0 12px;font-size:13px}.spinner{border:3px solid var(--line);border-top-color:var(--primary);border-radius:50%;width:28px;height:28px;margin:20px auto;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(1turn)}}.field-label{color:var(--ink);flex-shrink:0;margin:10px 0 6px;font-size:14px;font-weight:700;display:block}.error-text{color:var(--warning-600)}.error-text,.hint-text{margin-bottom:10px;font-size:13px}.hint-text{color:var(--success-700)}.cards-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));align-items:start;gap:14px;display:grid}.cards-grid>.card{margin-bottom:0}.dashboard-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,400px),1fr));gap:14px;display:grid}.dashboard-grid>.card{margin-bottom:0}.attention{color:inherit;border-left:4px solid var(--warning-600);margin-bottom:14px;text-decoration:none;display:block}.attention .attention-title{color:var(--warning-600);margin-bottom:8px;font-family:inherit;font-size:13px;font-weight:600}.attention .attention-list{--attention-row-h:26px;--attention-gap:6px;gap:var(--attention-gap) 14px;max-height:calc(var(--attention-row-h)*5 + var(--attention-gap)*4);overscroll-behavior:contain;flex-wrap:wrap;padding-right:4px;display:flex;overflow-y:auto}.attention .attention-item{min-height:var(--attention-row-h);align-items:baseline;gap:6px;font-size:13px;display:inline-flex}.attention .attention-item.status-выше .attention-arrow{color:var(--warning-600)}.attention .attention-item.status-ниже .attention-arrow{color:var(--info-700)}.attention .attention-item .attention-name{font-weight:500}.attention .attention-item .attention-value{color:var(--ink-2);white-space:nowrap;font-size:12px}.chart-section{margin-top:22px;margin-bottom:22px}.section-title{font-family:var(--font-display);margin-bottom:12px;font-size:18px;font-weight:700}.chart-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,380px),1fr));gap:14px;display:grid}.chart-grid>.card{margin-bottom:0}#app{max-width:480px;min-height:100vh;margin:0 auto;position:relative}@media (width>=720px){#app{max-width:1180px;padding:0 24px}}@media (width>=1024px){#app{flex-direction:row;gap:0;max-width:1920px;margin:0 auto;padding:0;display:flex}}.bottom-nav{background:var(--surface);width:100%;max-width:480px;box-shadow:var(--shadow-pop);padding:var(--bottom-nav-padding) 0 calc(var(--bottom-nav-padding) + env(safe-area-inset-bottom));min-height:var(--bottom-nav-height);border-radius:var(--r-xl) var(--r-xl) 0 0;justify-content:space-around;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}@media (width>=720px){.bottom-nav{max-width:640px;margin-left:-320px;left:50%;transform:none}}@media (width>=1024px){.bottom-nav{border-right:1px solid var(--line);width:220px;max-width:none;height:100vh;box-shadow:none;border-radius:0;flex-direction:column;order:1;justify-content:flex-start;align-items:flex-start;gap:6px;margin:0;padding:28px 18px;position:sticky;top:0;left:0;transform:none}}.nav-item{min-height:var(--nav-item-height);color:var(--ink-2);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-family:inherit;font-size:11px;text-decoration:none;display:flex}.nav-item .material-symbols-outlined{flex:none;font-size:22px;font-weight:400;line-height:1}.nav-item.active,.nav-item.router-link-active{color:var(--accent-700);font-weight:600}.nav-item.active .dot,.nav-item.router-link-active .dot{background:var(--primary)}.nav-item .dot{background:0 0;border-radius:50%;flex:none;width:6px;height:6px}.nav-item.extra{display:none}@media (width>=1024px){.nav-item{border-radius:var(--r-sm);flex-direction:row;justify-content:flex-start;align-items:center;gap:10px;width:100%;min-height:0;padding:10px 12px;font-size:14px}.nav-item:hover{background:var(--surface-2)}.nav-item .dot{margin-left:auto}.nav-item.extra{display:flex}}.pop{z-index:50;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);min-width:200px;box-shadow:var(--shadow-pop);padding:6px;animation:.16s ease-out popIn}@keyframes popIn{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:none}}.badge{border-radius:var(--r-pill);align-items:center;gap:6px;height:28px;padding:0 12px;font-size:13px;font-weight:700;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.badge-success{background:var(--success-100);color:var(--success-700)}.badge-info{background:var(--info-100);color:var(--info-700)}.badge-warning{background:var(--warning-100);color:var(--warning-600)}.badge-accent{background:var(--accent-100);color:var(--accent-700)}.seg{background:var(--seg-bg);gap:4px;max-width:100%;padding:4px}.seg,.seg__item{border-radius:var(--r-pill);display:inline-flex}.seg__item{cursor:pointer;height:38px;color:var(--ink-2);white-space:nowrap;background:0 0;border:0;align-items:center;gap:8px;padding:0 16px;font-family:inherit;font-size:14px;font-weight:700;transition:background .15s,color .15s,box-shadow .15s}.seg__item:before{content:"";background:var(--dot);border-radius:50%;width:14px;height:14px;box-shadow:inset 0 0 0 1.5px #7f7f7f59}.seg__item:hover{color:var(--ink)}.seg__item[data-state=on]{background:var(--seg-active-bg);color:var(--seg-active-ink);box-shadow:var(--seg-active-shadow)}.dlg-overlay{background:var(--overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:1100;position:fixed;inset:0}.dlg-overlay[data-state=open]{animation:.18s dlgOverlayIn}.dlg{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);width:100%;max-height:90dvh;box-shadow:var(--shadow-pop);z-index:1101;flex-direction:column;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.dlg:focus{outline:none}.dlg[data-state=open]{animation:.18s dlgIn}.dlg-head{flex-shrink:0;padding:20px 20px 12px}.dlg-title{font-family:var(--font-display);font-size:19px;font-weight:700}.dlg-sub{color:var(--ink-2);margin:6px 0 0;font-size:13px;line-height:1.5}.dlg-body{overscroll-behavior:contain;flex:auto;min-height:0;padding:0 20px 18px;overflow-y:auto}.dlg-foot{border-top:1px solid var(--line);flex-shrink:0;padding:18px 20px}@keyframes dlgOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes dlgIn{0%{opacity:0;transform:translate(-50%,-48%)scale(.98)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.toast-zone{z-index:1200;pointer-events:none;flex-direction:column;align-items:center;margin:0;padding:0 16px;list-style:none;position:fixed;top:14px;left:0;right:0}.toast,.toast-zone{gap:8px;display:flex}.toast{pointer-events:auto;background:var(--surface);border:1px solid var(--line);width:100%;max-width:420px;box-shadow:var(--shadow-sm);color:var(--ink);border-left-width:4px;border-radius:14px;align-items:flex-start;padding:11px 14px;font-size:13px;animation:.25s toast-in}.toast-success{border-left-color:var(--success-700)}.toast-success .toast-icon{color:var(--success-700)}.toast-error{border-left-color:var(--warning-600)}.toast-error .toast-icon{color:var(--warning-600)}.toast-info{border-left-color:var(--accent-500)}.toast-info .toast-icon{color:var(--accent-500)}.toast-row-center{align-self:center}.toast-row-right{align-self:flex-end}@keyframes toast-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.toast-icon{flex-shrink:0;margin-top:1px;font-size:20px;line-height:1}.toast-text{overflow-wrap:anywhere;flex:1;min-width:0;max-height:80px;overflow-y:auto}.toast-close{width:26px;height:26px;color:var(--ink-2);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.toast-close .material-symbols-outlined{font-size:17px;line-height:1}.toast-close:hover{color:var(--warning-600)}
