@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";:root{--color-primary:#00adef;--color-navy:#002e5d;--color-navy-light:#003f7f;--color-accent:#32c850;--color-accent-hover:#28a841;--color-bg:#f0f6ff;--color-bg-alt:#e8f2ff;--color-surface:#fff;--color-surface-glass:#ffffffd9;--color-text:#1a2a3a;--color-text-muted:#5a7a9a;--color-border:#00adef2e;--color-shadow:#002e5d1f;--color-error:#e53e3e;--gradient-primary:linear-gradient(135deg, #002e5d 0%, #005b99 60%, #00adef 100%);--gradient-card:linear-gradient(145deg, #fffffff2 0%, #f0f8ffe6 100%);--gradient-sidebar:linear-gradient(180deg, #002e5d 0%, #003f7f 100%);--shell-bg:#0b1a2e;--shell-bg-top:linear-gradient(180deg, #0e2038 0%, #0b1a2e 100%);--shell-line:#00adef73;--shell-active:#00adef1f;--gradient-hero:linear-gradient(135deg, #001f45 0%, #002e5d 40%, #00508f 80%, #00adef 100%);--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--shadow-sm:0 2px 8px var(--color-shadow);--shadow-md:0 6px 24px var(--color-shadow);--shadow-lg:0 16px 48px #002e5d2e;--shadow-glow:0 0 24px #00adef4d;--transition:all .25s cubic-bezier(.4, 0, .2, 1);--transition-slow:all .4s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--color-bg);height:100%;color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,system-ui,sans-serif}#root{flex-direction:column;height:100%;display:flex}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;font-family:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:3px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse-glow{0%,to{box-shadow:0 0 12px #00adef66}50%{box-shadow:0 0 28px #00adefb3}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.animate-fade-up{animation:.5s both fadeInUp}.animate-fade{animation:.4s both fadeIn}.btn{border-radius:var(--radius-sm);letter-spacing:.02em;transition:var(--transition);white-space:nowrap;align-items:center;gap:8px;padding:12px 24px;font-size:.95rem;font-weight:600;display:inline-flex}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{box-shadow:var(--shadow-glow);background:#0099d4;transform:translateY(-2px)}.btn-accent{background:var(--color-accent);color:#fff}.btn-accent:hover{background:var(--color-accent-hover);transform:translateY(-2px)}.btn-ghost:hover{background:#ffffff38}.login-page{background:var(--gradient-hero);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.login-bg{pointer-events:none;position:absolute;inset:0;overflow:hidden}.orb{filter:blur(80px);opacity:.25;border-radius:50%;animation:8s ease-in-out infinite float;position:absolute}.orb-1{background:radial-gradient(circle,#00adef,#0000);width:600px;height:600px;animation-duration:10s;top:-200px;left:-200px}.orb-2{background:radial-gradient(circle,#32c850,#0000);width:400px;height:400px;animation-duration:12s;animation-delay:-3s;bottom:-100px;right:-100px}.orb-3{background:radial-gradient(circle,#005b99,#0000);width:300px;height:300px;animation-duration:14s;animation-delay:-6s;top:50%;left:60%}.login-grid-overlay{pointer-events:none;background-image:linear-gradient(#00adef12 1px,#0000 1px),linear-gradient(90deg,#00adef12 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0}.login-container{z-index:10;width:100%;max-width:420px;padding:0 20px;position:relative}.login-card{-webkit-backdrop-filter:blur(20px)saturate(1.4);border-radius:var(--radius-xl);background:#ffffff14;border:1px solid #ffffff26;padding:42px 40px 36px;box-shadow:0 24px 64px #0000004d,inset 0 1px #ffffff26}.login-header{flex-direction:column;align-items:center;margin-bottom:32px;display:flex}.login-logo{justify-content:center;align-items:center;max-width:100%;height:90px;margin-bottom:24px;display:flex}.login-logo-img{object-fit:contain;width:auto;max-width:100%;height:100%;display:block}.login-title{color:#fff;letter-spacing:-.02em;margin-bottom:6px;font-size:1.6rem;font-weight:800}.login-subtitle{color:#fff9;text-align:center;font-size:.85rem}.login-form{flex-direction:column;gap:20px;display:flex}.form-group{flex-direction:column;gap:7px;display:flex}.form-label{color:#ffffffbf;letter-spacing:.04em;text-transform:uppercase;font-size:.82rem;font-weight:600}.input-wrap{align-items:center;display:flex;position:relative}.input-icon{color:#ffffff73;align-items:center;display:flex;position:absolute;left:14px}.form-input{border-radius:var(--radius-sm);color:#fff;width:100%;transition:var(--transition);caret-color:var(--color-primary);background:#ffffff14;border:1px solid #ffffff2e;outline:none;padding:13px 42px;font-family:inherit;font-size:.95rem}.form-input::placeholder{color:#ffffff59}.form-input:focus{border-color:var(--color-primary);background:#ffffff21;box-shadow:0 0 0 3px #00adef26}.input-toggle-pw{color:#ffffff73;cursor:pointer;transition:var(--transition);background:0 0;border:none;align-items:center;padding:0;display:flex;position:absolute;right:14px}.input-toggle-pw:hover{color:#ffffffd9}.login-options{justify-content:space-between;align-items:center;margin:4px 0 8px;animation:.5s .2s both fadeIn;display:flex}.remember-me{cursor:pointer;color:#ffffffb3;-webkit-user-select:none;user-select:none;transition:var(--transition);align-items:center;gap:10px;font-size:.88rem;display:flex}.remember-me:hover{color:#fff}.checkbox-custom{width:18px;height:18px;transition:var(--transition);background:#ffffff14;border:1.5px solid #fff3;border-radius:5px;justify-content:center;align-items:center;display:flex;position:relative}.remember-me input{opacity:0;cursor:pointer;width:0;height:0;position:absolute}.remember-me input:checked~.checkbox-custom{background:var(--color-primary);border-color:var(--color-primary);box-shadow:0 0 12px #00adef66}.checkbox-custom:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:9px;margin-top:-1px;display:none;position:absolute;transform:rotate(45deg)}.remember-me input:checked~.checkbox-custom:after{display:block}.forgot-password-link{color:var(--color-primary);transition:var(--transition);cursor:pointer;background:0 0;border:none;padding:0;font-size:.88rem;font-weight:600;text-decoration:none;position:relative}.forgot-password-link:after{content:"";width:0;height:1.5px;transition:var(--transition);background:currentColor;position:absolute;bottom:-2px;left:0}.forgot-password-link:hover{color:#fff;text-shadow:0 0 8px #ffffff4d}.forgot-password-link:hover:after{width:100%}.login-error{border-radius:var(--radius-sm);color:#ff8a8a;background:#e53e3e2e;border:1px solid #e53e3e66;align-items:center;gap:8px;padding:10px 14px;font-size:.875rem;animation:.3s both fadeInUp;display:flex}.forgot-success{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-sm);color:#a8ffb5;background:#32c8501f;border:1px solid #32c8504d;align-items:center;gap:10px;margin-bottom:20px;padding:12px 16px;font-size:.9rem;font-weight:500;animation:.4s both fadeInUp;display:flex}.login-submit-btn{background:linear-gradient(135deg, var(--color-primary) 0%, #0077b6 100%);color:#fff;border-radius:var(--radius-sm);letter-spacing:.02em;width:100%;transition:var(--transition);border:none;justify-content:center;align-items:center;gap:10px;margin-top:6px;padding:14px;font-size:1rem;font-weight:700;display:flex;position:relative;overflow:hidden}.login-submit-btn:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 8px 24px #00adef73}.login-submit-btn:disabled{opacity:.7;cursor:not-allowed}.login-submit-btn:before{content:"";background:linear-gradient(90deg,#0000,#ffffff26,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.login-submit-btn:not(:disabled):hover:before{left:100%}.back-to-login{color:#fffc;border-radius:var(--radius-sm);cursor:pointer;width:100%;transition:var(--transition);background:#ffffff0d;border:1px solid #ffffff26;justify-content:center;align-items:center;gap:8px;margin-top:12px;padding:14px;font-size:.95rem;font-weight:600;display:flex}.back-to-login:hover{color:#fff;background:#ffffff1f;border-color:#ffffff4d;transform:translateY(-1px)}.spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.login-footer{text-align:center;margin-top:28px}.login-footer-brand{color:#ffffff59;letter-spacing:.04em;font-size:.72rem}.login-page{background:radial-gradient(1200px 600px at 15% 20%,#00adef24,#0000 60%),radial-gradient(900px 500px at 90% 110%,#00adef1a,#0000 60%),#0b1a2e}.orb{opacity:.12}.orb-2{background:radial-gradient(circle,#00adef,#0000)}.login-grid-overlay{background-image:linear-gradient(#00adef0d 1px,#0000 1px),linear-gradient(90deg,#00adef0d 1px,#0000 1px);-webkit-mask-image:radial-gradient(at 30% 40%,#000 30%,#0000 80%);mask-image:radial-gradient(at 30% 40%,#000 30%,#0000 80%)}.login-card{background:#0e2038d1;border:1px solid #00adef2e;border-radius:18px;position:relative;overflow:hidden;box-shadow:0 24px 64px #00000073,inset 0 1px #ffffff0f}.login-card:before{content:"";background:linear-gradient(90deg,#0000,#00adef,#0000);height:2px;position:absolute;top:0;left:0;right:0}.form-input{background:#ffffff0a;border-color:#ffffff1f}.form-input:focus{border-color:#00adef;box-shadow:0 0 0 3px #00adef2e}.login-submit-btn{color:#04121f;background:#00adef;box-shadow:0 8px 24px #00adef40}.login-submit-btn:hover:not(:disabled){background:#33c0f5}.login-brand{display:none}@media (width>=1024px){.login-page{grid-template-columns:minmax(0,1.15fr) minmax(420px,1fr);align-items:center;gap:6vw;padding:0 6vw;display:grid}.login-brand{z-index:10;color:#fff;flex-direction:column;align-items:flex-start;max-width:560px;display:flex;position:relative}.login-container{justify-self:center}.login-header .login-logo{display:none}.login-header{align-items:flex-start}.login-subtitle{text-align:left}}.login-brand-logo{width:auto;height:92px;margin-bottom:36px}.login-brand-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:#00adef;margin-bottom:10px;font-size:12px;font-weight:700}.login-brand-title{letter-spacing:-.02em;margin-bottom:14px;font-size:2.4rem;font-weight:800;line-height:1.15}.login-header .login-logo{height:64px}.login-title-wide{display:none}@media (width>=1024px){.login-title-narrow{display:none}.login-title-wide{display:inline}.login-brand-title{margin-bottom:28px}}.lfc{width:100%;max-width:500px}.lfc-stack{height:266px;position:relative}.lfc-card{border:1px solid #ffffff14;border-top:2px solid var(--tone);transform-origin:50% 100%;background:linear-gradient(160deg,#142a46f5,#0c1c30f5);border-radius:16px;height:228px;padding:22px 24px;transition:transform .6s cubic-bezier(.4,0,.2,1),opacity .6s,filter .6s;position:absolute;inset:0 0 auto;box-shadow:0 18px 40px #00000059}.lfc-card.depth-0{z-index:3;opacity:1;transform:none}.lfc-card.depth-1{z-index:2;opacity:.55;filter:saturate(.6);cursor:pointer;transform:translateY(18px)scale(.95)}.lfc-card.depth-2{z-index:1;opacity:.25;filter:saturate(.4);cursor:pointer;transform:translateY(36px)scale(.9)}.lfc-card.depth-1 *,.lfc-card.depth-2 *{visibility:hidden}.lfc-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--tone);align-items:center;gap:8px;margin-bottom:8px;font-size:11px;font-weight:700;display:flex}.lfc-eyebrow i{background:var(--tone);width:8px;height:8px;box-shadow:0 0 8px var(--tone);border-radius:50%}.lfc-card h3{color:#fff;margin-bottom:16px;font-size:1.25rem;font-weight:700}.lfc-body{align-items:flex-end;gap:18px;display:flex}.lfc-body ul{flex-direction:column;flex:1;gap:9px;list-style:none;display:flex}.lfc-body li{color:#ffffffc7;padding-left:18px;font-size:.88rem;line-height:1.4;position:relative}.lfc-body li:before{content:"";border-left:2px solid var(--tone);border-bottom:2px solid var(--tone);width:8px;height:5px;position:absolute;top:.45em;left:0;transform:rotate(-45deg)}.lfc-visual{flex-shrink:0;width:150px;height:66px}.lfc-card.depth-0 .lfc-body{animation:.5s both lfc-in}@keyframes lfc-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.lfc-card,.lfc-card.depth-0 .lfc-body{transition:none;animation:none}}.login-title{text-align:center}@media (width>=1024px){.login-title{text-align:left}}.admt{z-index:1500;color:#e6edf3;background:#111821;flex-direction:column;display:flex;position:fixed;inset:0}.admt-head{background:var(--shell-bg,#0b1a2e);border-bottom:1px solid var(--shell-line,#ffffff14);flex-wrap:wrap;align-items:center;gap:10px;padding:16px 24px;display:flex}.admt-head>div{margin-right:auto}.admt-head h2{color:#f0f3f6;margin:0;font-size:1.2rem;font-weight:700}.admt-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary);margin:0 0 2px;font-size:11px;font-weight:700}.admt-search,.admt-form input,.admt-form select{color:#e6edf3;font:inherit;background:#ffffff0d;border:1px solid #ffffff24;border-radius:6px;outline:none;padding:8px 10px;font-size:13px}.admt-search{width:220px}.admt-search:focus,.admt-form input:focus,.admt-form select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #00adef26}.admt-form select option{background:#0b1a2e}.admt-btn{color:#e6edf3;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #ffffff2e;border-radius:6px;padding:8px 14px;font-size:13px;font-weight:600}.admt-btn:hover{background:#ffffff0f}.admt-btn.primary{background:var(--color-primary);border-color:var(--color-primary);color:#04121f}.admt-btn.primary:hover{background:#33c0f5}.admt-btn.small{padding:4px 10px;font-size:12px}.admt-btn.danger{color:#ff8a8a;border-color:#f8514966}.admt-btn.danger:hover{background:#f851491f}.admt-btn.danger.solid{color:#fff;background:#da3633;border-color:#da3633}.admt-btn.danger.solid:hover{background:#f85149}.admt-table td.act .admt-btn+.admt-btn{margin-left:6px}.admt-confirm{max-width:440px}.admt-confirm p{color:#c9d1d9;margin:0;font-size:13px;line-height:1.5}.admt-btn:disabled{opacity:.5;cursor:default}.admt-notice{color:#a8f0b4;background:#3fb9501f;border:1px solid #3fb9504d;border-radius:6px;margin:12px 24px 0;padding:8px 12px;font-size:13px}.admt-body{flex-direction:column;flex:1;min-height:0;padding:16px 24px;display:flex}.admt-scroll{border:1px solid #ffffff14;border-radius:10px;flex:1;min-height:0;overflow:auto}.admt-table{border-collapse:collapse;width:100%;font-size:13px}.admt-table th{z-index:1;color:#8b929e;letter-spacing:.06em;text-transform:uppercase;text-align:left;white-space:nowrap;background:#16202c;padding:10px 12px;font-size:11px;font-weight:700;position:sticky;top:0}.admt-table td{white-space:nowrap;border-top:1px solid #ffffff0f;padding:9px 12px}.admt-table tbody tr:hover{background:#ffffff08}.admt-table td.num{text-align:right;font-variant-numeric:tabular-nums}.admt-table td.url{text-overflow:ellipsis;max-width:240px;overflow:hidden}.admt-table td.act{text-align:right}.admt-muted{color:#6e7683}.admt-error{color:#ff8a8a;margin:8px 0 0;font-size:13px}.admt-count{margin:8px 0 0;font-size:12px}.admt-overlay{z-index:1600;background:#0009;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.admt-form{background:#0f1e33;border:1px solid #00adef33;border-radius:12px;width:100%;max-width:560px;max-height:calc(100vh - 32px);padding:22px 24px;overflow:auto;box-shadow:0 24px 60px #00000080}.admt-form h3{color:#fff;margin:0 0 16px;font-size:1.05rem}.admt-fields{grid-template-columns:1fr 1fr;gap:12px 14px;display:grid}.admt-fields label{flex-direction:column;gap:5px;min-width:0;display:flex}.admt-fields label.wide{grid-column:1/-1}.admt-fields label.admt-check{flex-direction:row-reverse;justify-content:flex-end;align-items:center;gap:8px}.admt-fields label.admt-check input{accent-color:#9085e9;width:16px;height:16px;margin:0}.admt-fields label>span{letter-spacing:.05em;text-transform:uppercase;color:#8b929e;font-size:11px;font-weight:600}.admt-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}@media (width<=767px){.admt-head{padding:12px 16px}.admt-search{order:3;width:100%}.admt-body{padding:12px 16px}.admt-fields{grid-template-columns:1fr}}.admt-deps{color:#f0d58c;background:#d299221f;border:1px solid #d2992259;border-radius:8px;margin-top:12px;padding:10px 12px;font-size:13px}.admt-deps ul{flex-direction:column;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.admt-deps li{color:#e6edf3}.admt-deps p{color:#ff8a8a;margin:8px 0 0}.admt-dep-effect{color:#d29922;font-size:12px;display:block}.admt-dep-effect.bad{color:#ff8a8a}.admt-deps-checking{margin:10px 0 0;font-size:13px}.admt-hint{margin:12px 0 0;font-size:12px;line-height:1.5}.admt-search.admt-filter{width:auto}.admt-form.admt-matrix{max-width:680px}.admt-matrix-scroll{max-height:55vh;margin-top:12px}.admt-table th.chk,.admt-table td.chk{text-align:center;white-space:nowrap;width:110px}.admt-table th.chk label{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.admt-table .chk input{accent-color:#9085e9;vertical-align:middle;width:16px;height:16px;margin:0}.admt-table tr.admt-dim td{opacity:.45}.rtd{max-width:620px}.rtd-text{color:#c9d1d9;margin:0;font-size:13px;line-height:1.5}.rtd-file{overflow-wrap:anywhere;font-size:13px}.rtd-label{color:#c9d1d9;margin:14px 0 6px;font-size:12px;font-weight:700}.rtd-cols{max-height:220px;overflow:auto}.rtd-cols table{border-collapse:collapse;width:100%;font-size:12px}.rtd-cols th,.rtd-cols td{text-align:left;border-bottom:1px solid #ffffff14;padding:4px 8px}.rtd-cols th{color:#8b949e;font-weight:600}.rtd-cols tr.warn td{color:#e3b341}.rtd-problems{color:#e3b341;margin:10px 0 0;padding-left:18px;font-size:12px;line-height:1.5}.rtd-confirm{color:#ff8a8a;align-self:center;margin-right:auto;font-size:13px}.rtd .admt-actions{flex-wrap:wrap}.admt-search.mm-site{width:200px}.admt-search.mm-site option{background:#0b1a2e}.mm-upload{max-width:620px}.mm-summary{color:#e6edf3;margin:0;font-size:14px}.mm-bad{color:#ff8a8a}.mm-list{color:#c9d1d9;overflow-wrap:anywhere;margin:10px 0 0;font-size:12px;line-height:1.5}.mm-list span{font-weight:700}@media (width<=767px){.sde-body{flex-direction:column}.sde-projects{border-bottom:1px solid #3a3d45;flex-shrink:0;gap:6px;display:flex;border-right:none!important;width:auto!important;overflow:auto hidden!important}.sde-project{white-space:nowrap;flex-shrink:0;gap:8px;width:auto!important;margin-bottom:0!important}.sde-table{padding:12px!important}}.admt-search.sfe-site{width:220px}.admt-search.sfe-site option{background:#0b1a2e}.sfe-body{gap:14px;overflow:auto}.sfe-card{background:#16202c;border:1px solid #ffffff14;border-radius:10px;flex-shrink:0;padding:16px 18px}.sfe-card h3{color:#f0f3f6;margin:0 0 10px;font-size:1rem}.sfe-card h4{color:#c9d1d9;margin:0 0 8px;font-size:.9rem}.sfe-card-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:4px;display:flex}.sfe-card-head h3{margin:0}.sfe-status{flex-wrap:wrap;align-items:center;gap:12px;font-size:14px;display:flex}.sfe-status>div{margin-right:auto}.sfe-status .admt-error{width:100%;margin:0}.sfe-switch{color:#c9d1d9;cursor:pointer;white-space:nowrap;align-items:center;gap:8px;font-size:13px;display:inline-flex}.sfe-switch input{accent-color:#9085e9;width:16px;height:16px;margin:0}.admt-form.sfe-inline,.admt-form.sfe-formulas{max-width:none;max-height:none;box-shadow:none;background:0 0;border:none;border-radius:0;padding:0;overflow:visible}.sfe-inline{flex-wrap:wrap;align-items:flex-end;gap:10px 14px;display:flex}.sfe-inline label,.sfe-formulas label{letter-spacing:.05em;text-transform:uppercase;color:#8b929e;flex-direction:column;gap:5px;font-size:11px;font-weight:600;display:flex}.sfe-inline .sfe-help{flex-basis:100%}.sfe-grow{flex:1;min-width:200px}.sfe-grow input{box-sizing:border-box;width:100%}.sfe-gap{width:16px}.sfe-help{margin:6px 0 10px;font-size:12px;line-height:1.5}.sfe-note{white-space:normal;margin-top:2px;font-size:12px}.sfe-table{max-height:320px}.admt-table td.sfe-wrap{white-space:normal;min-width:160px}.sfe-card code{color:#a5d6ff;font-size:12px}.sfe-chips{flex-wrap:wrap;gap:6px;margin:4px 0 14px;display:flex}.sfe-chip{color:#c9d1d9;font:inherit;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff2e;border-radius:999px;padding:3px 9px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.sfe-chip:hover{background:#ffffff1a}.sfe-chip-input{color:#a5d6ff;border-color:#00adef73}.sfe-esm{border-top:1px solid #ffffff0f;padding:12px 0}.sfe-formulas{grid-template-columns:repeat(3,minmax(0,1fr)) 130px;gap:10px 14px;display:grid}.sfe-formulas input{box-sizing:border-box;width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.sfe-problems{background:#d2992214;border-color:#d2992266}.sfe-problems ul{color:#f0d58c;margin:0;padding-left:18px;font-size:13px;line-height:1.6}.sfe-problems .admt-error{margin:0 0 6px}.sfe-results{flex-wrap:wrap;gap:18px;margin-top:14px;display:flex}.sfe-results>div{min-width:0;overflow-x:auto}.sfe-compare{margin-top:14px;overflow-x:auto}.sfe-label{color:#c9d1d9;margin:0 0 6px;font-size:12px;font-weight:700}.admt-table tr.sfe-differs td{color:#e3b341}.sfe-current{color:#3fb950;text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:700}.sfe-confirm{color:#ff8a8a;align-self:center;font-size:13px}.admt-form.sfe-input-form{max-width:680px}.sfe-field{flex-direction:column;gap:8px;display:flex}.sfe-field-label{letter-spacing:.05em;text-transform:uppercase;color:#8b929e;font-size:11px;font-weight:600}.sfe-field>.admt-btn{align-self:flex-start}.sfe-radio,.sfe-checks{flex-wrap:wrap;gap:6px 16px;font-size:13px;display:flex}.admt-fields .sfe-radio label,.admt-fields .sfe-checks label{cursor:pointer;flex-direction:row;align-items:center;gap:6px;display:inline-flex}.sfe-checks{max-height:180px;overflow:auto}.sfe-radio input,.sfe-checks input{accent-color:#9085e9;width:15px;height:15px;margin:0}.sfe-window{flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}@media (width<=767px){.admt-search.sfe-site{order:3;width:100%}.sfe-formulas{grid-template-columns:1fr}.sfe-card{padding:12px}}.alr-intro{flex-shrink:0;margin:0}.admt-table tr.alr-off td{color:#6e7681}.alr-sev{color:#e3b341;background:#d2992226;border-radius:999px;padding:1px 8px;font-size:12px;display:inline-block}.alr-sev.crit{color:#ff8a8a;background:#f8514926}.gwe-topic{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.admt-form.gwe-meters{flex-direction:column;width:100%;max-width:960px;max-height:90vh;display:flex}.gwe-meters .gwe-list{flex:auto;min-height:120px;overflow:auto}.gwe-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:10px;display:flex}.gwe-import label{flex-direction:column;gap:6px;font-size:13px;display:flex}.gwe-import textarea{box-sizing:border-box;resize:vertical;border:1px solid #d0d5dd;border-radius:6px;width:100%;padding:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.gwe-fields{white-space:nowrap;font-size:12px}.gwe-warn{color:#b54708}.gwe-unsaved{font-size:13px}.gwe-test{flex-direction:column;flex:auto;gap:8px;min-height:0;display:flex}.gwe-summary{border-radius:6px;padding:8px 12px;font-size:13px;line-height:1.5}.gwe-summary.good{color:#6ce9a6;background:#12b76a1f}.gwe-summary.bad{color:#fda29b;background:#f044381f}.gwe-result td,.gwe-result th{white-space:nowrap;padding:6px 8px;font-size:12px}.gwe-result td.gwe-check{white-space:normal;min-width:170px;max-width:240px}.gwe-result tr.gwe-flag td.gwe-check{color:#fdb022}.gwe-result td.gwe-stale{opacity:.55}.gwe-count{opacity:.6;margin-left:4px;font-size:10px}.vd{flex-direction:column;gap:10px;display:flex}.vd-table-wrap{overflow-x:auto}.vd-table{border-collapse:collapse;color:#e6edf3;min-width:320px;font-size:13px}.vd-table th,.vd-table td{text-align:left;vertical-align:middle;border:1px solid #2d323b;padding:7px 12px}.vd-table tr.vd-head th{color:#c9d1d9;background:#21262d;font-weight:600}.vd-table td{background:#161b22}.vd-value{color:#f0f3f6;font:inherit;cursor:pointer;text-align:left;background:#3fb9501a;border:1px solid #0000;border-radius:6px;flex-direction:column;align-items:flex-start;gap:1px;padding:3px 8px;display:inline-flex}.vd-value:hover{border-color:#388bfd}.vd-reading{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.vd-unit{color:#9ea3b0;font-weight:500}.vd-tag-label{color:#c9d1d9;white-space:nowrap;font-size:11px}.vd-value.vd-stale,.vd-value.vd-none{color:#8b929e;background:#8b929e1f}.vd-value.vd-stale .vd-reading,.vd-value.vd-none .vd-reading{font-weight:500}.vd-value.vd-alert{color:#ffa198;background:#f8514929;border-color:#f8514999}.vd-key{border-radius:4px;padding:0 5px;display:inline-block}.vd-key.vd-stale{color:#8b929e;background:#8b929e2e}.vd-key.vd-alert{color:#ffa198;background:#f8514929}.vd-picture{-webkit-user-select:none;user-select:none;width:100%;max-width:1100px;line-height:0;position:relative}.vd-picture img{border-radius:6px;width:100%;height:auto;display:block}.vd-pin{line-height:normal;position:absolute;transform:translate(-50%,-50%)}.vd-pin .vd-value{background:#0d1117e0;border-color:#3fb950;box-shadow:0 2px 8px #00000073}.vd-pin .vd-value.vd-stale,.vd-pin .vd-value.vd-none{border-color:#6e7683}.vd-pin .vd-value.vd-alert{background:#3c0e0ceb;border-color:#f85149}.vd-sheets{border-top:1px solid #2d323b;flex-wrap:wrap;gap:2px;padding-top:0;display:flex}.vd-sheet{color:#9ea3b0;cursor:pointer;background:#0d1117;border:1px solid #2d323b;border-top:none;border-radius:0 0 6px 6px;padding:6px 14px;font-size:12px;font-weight:600}.vd-sheet:hover{color:#e6edf3}.vd-sheet.vd-sheet-on{color:#79c0ff;background:#1f2937;border-color:#388bfd}.ve{z-index:1000;color:#e6edf3;background:#16181d;flex-direction:column;display:flex;position:fixed;inset:0}.ve-bar{background:#1a1d23;border-bottom:1px solid #3a3d45;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:12px 20px;display:flex}.ve-title{align-self:center;margin-right:auto;font-size:16px;font-weight:700}.ve-field{color:#9ea3b0;flex-direction:column;gap:4px;font-size:11px;display:flex}.ve input,.ve select{box-sizing:border-box;color:#e6edf3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#0d1117;border:1px solid #3a3d45;border-radius:4px;padding:6px 8px;font-size:13px}.ve-btn{color:#e6edf3;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #3a3d45;border-radius:6px;padding:7px 12px;font-size:12px;font-weight:600}.ve-btn:hover:not(:disabled){border-color:#388bfd}.ve-btn:disabled{opacity:.45;cursor:default}.ve-btn.ve-primary{color:#fff;background:#238636;border-color:#238636}.ve-btn.ve-danger{color:#ff7b72}.ve-msg{background:#1a1d23;border-bottom:1px solid #3a3d45;padding:8px 20px;font-size:13px}.ve-body{flex-direction:column;flex:1;gap:14px;padding:16px 20px 32px;display:flex;overflow:auto}.ve-row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.ve-hint{color:#8b929e;margin:0;font-size:12px}.ve-sheets .vd-sheet{border-top:1px solid #2d323b;border-radius:6px 6px 0 0}.ve-empty{text-align:center;color:#8b929e;padding:40px 0;font-size:14px}.ve-cell{flex-direction:column;gap:4px;min-width:150px;display:flex}.ve-cell-kind{gap:4px;display:flex}.ve-cell-kind button{color:#9ea3b0;cursor:pointer;background:0 0;border:1px solid #3a3d45;border-radius:4px;flex:1;padding:2px 6px;font-size:11px}.ve-cell-kind button.on{color:#79c0ff;background:#79c0ff26;border-color:#388bfd}.ve .vd-table td,.ve .vd-table th{padding:6px}.ve-picture-layout{flex-wrap:wrap;align-items:flex-start;gap:16px;display:flex}.ve-picture{cursor:crosshair;flex:560px}.ve-picture .vd-pin{cursor:grab}.ve-picture .vd-pin.dragging{cursor:grabbing}.ve-picture .vd-pin.selected .vd-value{outline-offset:2px;outline:2px solid #79c0ff}.ve-side{background:#1a1d23;border:1px solid #3a3d45;border-radius:8px;flex-direction:column;flex:0 0 260px;gap:10px;padding:12px;display:flex}.ve-side h4{margin:0;font-size:13px}.ve-side .ve-field input,.ve-side .ve-field select{width:100%}@media (width<=767px){.vd-pin .vd-value{padding:2px 5px;font-size:11px}.vd-pin .vd-tag-label{font-size:9px}}.vd-footer{border-top:1px solid #2d323b;flex-wrap:wrap;align-items:flex-start;gap:8px 16px;display:flex}.vd-footer .vd-sheets{border-top:none}.vd-stamp{color:#9ea3b0;margin-left:auto;padding-top:6px;font-size:12px}.vd-stamp strong{color:#e6edf3;font-weight:600}.navbar{background:var(--shell-bg-top);height:64px;box-shadow:0 1px 0 var(--shell-line), 0 4px 20px #00adef14;z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);justify-content:space-between;align-items:center;padding:0 24px;display:flex;position:sticky;top:0}.navbar-brand{align-items:center;gap:12px;display:flex}.navbar-logo-wrap{align-items:center;height:38px;display:flex}.navbar-logo-img{object-fit:contain;width:auto;max-width:180px;height:100%;display:block}.navbar-title-group{flex-direction:column;display:flex}.navbar-title{color:#fff;letter-spacing:.01em;font-size:1.05rem;font-weight:700;line-height:1.2}.navbar-subtitle{color:#ffffffa6;letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:400}.navbar-right{align-items:center;gap:16px;display:flex}.navbar-user-badge{transition:var(--transition);cursor:pointer;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:40px;align-items:center;gap:10px;padding:6px 14px 6px 8px;display:flex}.navbar-user-badge:hover{background:#ffffff26;border-color:#ffffff4d}.navbar-avatar{background:var(--color-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.9rem;font-weight:700;display:flex;box-shadow:0 0 10px #00adef66}.navbar-user-info{flex-direction:column;display:flex}.navbar-username{color:#fff;font-size:.85rem;font-weight:600;line-height:1.2}.navbar-user-role{color:#fff9;font-size:.68rem;line-height:1.2}.navbar-user-menu-container{position:relative}.navbar-dropdown{-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-md);transform-origin:100% 0;z-index:1000;background:#0a192fd9;border:1px solid #ffffff1f;flex-direction:column;gap:4px;width:340px;max-width:calc(100vw - 24px);padding:8px;animation:.25s cubic-bezier(.4,0,.2,1) both dropdownEnter;display:flex;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 16px 48px #00000080,inset 0 1px #ffffff1a}@keyframes dropdownEnter{0%{opacity:0;transform:scale(.95)translateY(-10px)}to{opacity:1;transform:scale(1)translateY(0)}}.dropdown-item{border-radius:var(--radius-sm);color:#ffffffd9;cursor:pointer;text-align:left;white-space:nowrap;transition:var(--transition);background:0 0;border:none;align-items:center;gap:12px;padding:10px 14px;font-size:.9rem;font-weight:500;display:flex}.dropdown-item svg{opacity:.7;transition:var(--transition)}.dropdown-item:hover{color:#fff;background:#ffffff14;transform:translate(4px)}.dropdown-item:hover svg{opacity:1;color:var(--color-primary)}.dropdown-item.logout{color:#ff8a8a}.dropdown-item.logout:hover{color:#ff5c5c;background:#e53e3e1f}.dropdown-item.logout:hover svg{color:#ff5c5c}.dropdown-divider{background:#ffffff14;height:1px;margin:4px 6px}.modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:2000;background:#000000bf;justify-content:center;align-items:center;animation:.3s both fadeIn;display:flex;position:fixed;inset:0}.modal-content{-webkit-backdrop-filter:blur(20px)saturate(1.4);border-radius:var(--radius-xl);background:#0f1e37d9;border:1px solid #ffffff26;width:100%;max-width:420px;padding:36px 32px;animation:.4s cubic-bezier(.16,1,.3,1) both modalEnter;position:relative;box-shadow:0 32px 64px #00000080,inset 0 1px #ffffff26}@keyframes modalEnter{0%{opacity:0;transform:translateY(20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-header{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}.modal-title{color:#fff;letter-spacing:-.01em;font-size:1.4rem;font-weight:800}.modal-close{color:#ffffff80;cursor:pointer;transition:var(--transition);background:#ffffff14;border:none;border-radius:50%;justify-content:center;align-items:center;padding:8px;display:flex}.modal-close:hover{color:#fff;background:#ffffff26;transform:rotate(90deg)}.modal-form{flex-direction:column;gap:20px;display:flex}.modal-group{flex-direction:column;gap:8px;display:flex}.modal-group label{color:#ffffffb3;text-transform:uppercase;letter-spacing:.06em;font-size:.82rem;font-weight:600}.modal-group input{border-radius:var(--radius-sm);color:#fff;transition:var(--transition);background:#ffffff0f;border:1px solid #ffffff26;outline:none;padding:12px 14px;font-size:.95rem}.modal-group input:focus{border-color:var(--color-primary);background:#ffffff1f;box-shadow:0 0 0 3px #00adef26}.modal-actions{justify-content:flex-end;gap:12px;margin-top:12px;display:flex}.btn-ghost{color:#ffffffb3;background:0 0;border:1px solid #fff3}.btn-ghost:hover{color:#fff;background:#ffffff0d;border-color:#fff6}.modal-success{border-radius:var(--radius-sm);color:#a8ffb5;background:#32c8501f;border:1px solid #32c8504d;align-items:center;gap:10px;margin-bottom:20px;padding:12px 16px;font-size:.9rem;font-weight:500;animation:.4s both fadeInUp;display:flex}.modal-error{border-radius:var(--radius-sm);color:#ff8a8a;background:#e53e3e26;border:1px solid #e53e3e4d;align-items:center;gap:10px;margin-bottom:20px;padding:12px 16px;font-size:.9rem;animation:.4s both fadeInUp;display:flex}@media (width<=767px){.navbar{height:56px;padding:0 12px}.navbar-brand{gap:8px;min-width:0}.navbar-logo-wrap{height:30px}.navbar-title{white-space:nowrap;font-size:.92rem}.navbar-subtitle,.navbar-user-info{display:none}}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.map-view-container{color:#d9dae1;background:#111821;flex-direction:column;height:100%;padding:24px;animation:.4s both fadeIn;display:flex}.map-header{margin-bottom:16px}.map-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary);margin-bottom:4px;font-size:11px;font-weight:700}.map-header h3{color:#f0f3f6;margin-bottom:4px;font-size:1.35rem;font-weight:700}.map-header p:last-child{color:#8b929e;font-size:.85rem}.map-canvas-wrap{background:#0b1a2e;border:1px solid #00adef2e;border-radius:14px;flex:1;min-height:320px;position:relative;overflow:hidden;box-shadow:0 10px 40px #00000059}.leaflet-map{width:100%;height:100%}.map-canvas-wrap .leaflet-container{background:#0b1a2e;font-family:inherit}.site-pin{width:22px;height:22px;display:block;position:relative}.site-pin i{background:var(--color-primary);border:2px solid #e6f7fe;border-radius:50%;transition:inset .2s;position:absolute;inset:6px;box-shadow:0 0 10px 2px #00adefbf}.site-pin:before{content:"";border:2px solid #00adef99;border-radius:50%;animation:2.4s ease-out infinite site-pulse;position:absolute;inset:0}.site-pin.active i{inset:3px}.site-pin.active:before{border-color:#fff}@keyframes site-pulse{0%{opacity:1;transform:scale(.6)}to{opacity:0;transform:scale(2.2)}}@media (prefers-reduced-motion:reduce){.site-pin:before{opacity:.5;animation:none}}.map-sites{z-index:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0b1a2ee0;border:1px solid #ffffff14;border-radius:12px;width:230px;max-height:calc(100% - 24px);padding:10px;position:absolute;top:12px;right:12px;overflow-y:auto}.map-sites-title{letter-spacing:.1em;text-transform:uppercase;color:#8b929e;justify-content:space-between;padding:2px 6px 8px;font-size:11px;font-weight:700;display:flex}.map-sites-title span{color:var(--color-primary)}.map-site{color:#e6edf3;width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;grid-template-columns:10px 1fr;align-items:center;column-gap:10px;padding:8px;display:grid}.map-site i{background:var(--color-primary);border-radius:50%;grid-row:span 2;width:8px;height:8px;box-shadow:0 0 6px #00adefcc}.map-site-name{font-size:13px;font-weight:600}.map-site-code{color:#8b929e;font-size:11px}.map-site:hover,.map-site:focus-visible{background:#ffffff0d;outline:none}.map-site.active{background:var(--shell-active);box-shadow:inset 3px 0 0 var(--color-primary);border-color:#00adef40}.map-canvas-wrap .leaflet-bar{box-shadow:none;border:1px solid #ffffff1a}.map-canvas-wrap .leaflet-bar a{color:#c9d1d9;background:#0b1a2ee6;border-bottom-color:#ffffff14}.map-canvas-wrap .leaflet-bar a:hover{color:#fff;background:#13263f}.map-canvas-wrap .leaflet-control-attribution{color:#6e7683;background:#0b1a2ebf}.map-canvas-wrap .leaflet-control-attribution a{color:#8b929e}.premium-popup .leaflet-popup-content-wrapper{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;background:#0b1a2ef2;border:1px solid #00adef40;border-radius:12px;padding:0;box-shadow:0 8px 30px #00000073}.premium-popup .leaflet-popup-content{margin:0;width:240px!important}.premium-popup .leaflet-popup-tip{background:#0b1a2ef2}.premium-popup a.leaflet-popup-close-button{color:#8b929e}.popup-content{gap:12px;padding:16px;display:flex}.popup-project-badge{width:36px;height:36px;color:var(--color-primary);background:#00adef26;border:1px solid #00adef59;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;display:flex}.popup-info h4{color:#fff;margin:0 0 4px;font-size:.95rem}.popup-info p{color:#fff9;margin:0 0 4px;font-size:.75rem;line-height:1.4}.popup-info .popup-coords{color:#6e7683;font-variant-numeric:tabular-nums;margin-bottom:12px}.popup-navigate-btn{background:var(--color-primary);color:#04121f;cursor:pointer;transition:var(--transition);border:none;border-radius:6px;padding:6px 12px;font-size:.75rem;font-weight:700}.popup-navigate-btn:hover{background:#33c0f5}.map-tag{white-space:nowrap;color:#ffffffc7;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;pointer-events:auto;background:#0b1a2eb8;border:1px solid #00adef38;border-radius:4px;padding:1px 6px;font-size:.68rem;font-weight:600;line-height:1.4;position:absolute;top:0;left:0}.map-tag:hover{color:#fff;border-color:#00adef8c}.map-tag-line{transform-origin:0;pointer-events:none;background:#00adef66;height:1px;display:none;position:absolute;top:0;left:0}.map-tags-hidden .map-tag,.map-tags-hidden .map-tag-line{visibility:hidden}@media (width<=767px){.map-view-container{padding:16px}.map-sites{gap:6px;width:auto;padding:6px;display:flex;inset:auto 8px 8px;overflow-x:auto}.map-sites-title{display:none}.map-site{flex:none;grid-template-columns:8px auto;width:auto;padding:6px 10px}.map-site-code{display:none}.map-site i{grid-row:auto}.map-canvas-wrap .leaflet-bottom{bottom:56px}}.map-tiles-dark{filter:invert()hue-rotate(185deg)brightness(.9)contrast(.9)saturate(.5)}.dashboard-layout{flex-direction:column;height:100vh;display:flex;overflow:hidden}.dashboard-body{flex:1;display:flex;overflow:hidden}.sidebar{background:var(--shell-bg);border-right:1px solid #ffffff0f;flex-direction:column;flex-shrink:0;transition:width .3s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}.sidebar-open{width:280px}.sidebar-collapsed{width:56px}.sidebar-header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;min-height:60px;padding:18px 14px;display:flex}.sidebar-title{color:#79c0ff;text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;align-items:center;gap:8px;font-size:.78rem;font-weight:700;display:flex;overflow:hidden}.sidebar-toggle{color:#fff9;width:28px;height:28px;transition:var(--transition);background:#ffffff14;border:1px solid #ffffff1f;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-toggle:hover{color:#fff;background:#ffffff26}.sidebar-content{scrollbar-width:thin;scrollbar-color:#ffffff2e transparent;flex:1;padding:12px 8px;overflow-y:auto}.sidebar-content::-webkit-scrollbar{width:6px}.sidebar-content::-webkit-scrollbar-track{background:0 0}.sidebar-content::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:3px}.sidebar-content::-webkit-scrollbar-thumb:hover{background:#ffffff52}.project-list{flex-direction:column;gap:4px;list-style:none;display:flex}.project-item{border-radius:var(--radius-sm);color:#ffffffb3;text-align:left;cursor:pointer;width:100%;transition:var(--transition);background:0 0;border:1px solid #0000;align-items:center;gap:10px;padding:10px 12px;display:flex;position:relative}.project-item:hover{color:#fff;background:#ffffff1f;border-color:#ffffff40;transform:translate(4px)}.project-item-active{box-shadow:inset 3px 0 0 var(--color-primary);background:var(--shell-active)!important;color:#fff!important;border-color:#00adef40!important}.project-item-icon{width:32px;height:32px;color:var(--color-primary);background:#ffffff1a;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.project-item-active .project-item-icon{background:#00adef2e}.project-item-text{flex-direction:column;flex:1;display:flex;overflow:hidden}.project-name{white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;font-weight:600;overflow:hidden}.project-code{text-transform:uppercase;letter-spacing:.02em}.project-desc{color:#ffffff73;white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.sidebar-separator{text-transform:uppercase;color:#ffffff4d;letter-spacing:.08em;padding:16px 12px 8px;font-size:.68rem;font-weight:700}.global-overview-btn{border-radius:var(--radius-sm);color:#fff;cursor:pointer;width:100%;transition:var(--transition);background:#ffffff0d;border:1.5px solid #ffffff1a;align-items:center;gap:12px;margin-bottom:8px;padding:12px;font-size:.9rem;font-weight:600;display:flex}.global-overview-btn:hover{background:#ffffff1f;border-color:#ffffff40;transform:translate(4px)}.global-overview-btn.active{background:var(--shell-active);box-shadow:inset 3px 0 0 var(--color-primary);border-color:#00adef40}.global-overview-btn .btn-icon{width:32px;height:32px;color:var(--color-primary);background:#ffffff1a;border-radius:8px;justify-content:center;align-items:center;display:flex}.global-overview-btn.active .btn-icon{color:var(--color-primary);background:#00adef2e}.project-off{color:#f0b45a;font-size:.68rem}.project-active-dot{background:var(--color-primary);border-radius:50%;flex-shrink:0;width:7px;height:7px;animation:2s ease-in-out infinite pulse-glow}.sidebar-footer{border-top:1px solid #ffffff14;padding:12px 16px}.sidebar-count{color:#ffffff59;font-size:.72rem}.sidebar-loading{flex-direction:column;gap:8px;padding:4px;display:flex}.skeleton-project{border-radius:var(--radius-sm);background:linear-gradient(90deg,#ffffff12 25%,#ffffff1f 50%,#ffffff12 75%) 0 0/1000px 100%;height:52px;animation:1.8s infinite shimmer}.sidebar-error,.sidebar-empty{color:#fff6;text-align:center;flex-direction:column;align-items:center;gap:8px;padding:24px 16px;font-size:.82rem;display:flex}.sidebar-error{color:#ff8a8a}.dashboard-main{background:#111821;flex-direction:column;flex:1;display:flex;overflow-y:auto}.dashboard-empty{color:#ffffff8c;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;padding:40px;display:flex}.dashboard-empty-icon{width:90px;height:90px;color:var(--color-primary);background:#ffffff0d;border:2px dashed #00adef59;border-radius:24px;justify-content:center;align-items:center;display:flex}.dashboard-empty h3{color:#f0f3f6;font-size:1.3rem;font-weight:700}.dashboard-empty p{max-width:320px;font-size:.9rem}.grafana-wrap{flex-direction:column;flex:1;display:flex;overflow:hidden}.grafana-header{background:var(--shell-bg);border-bottom:1px solid #ffffff14;flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 24px;display:flex}.grafana-header-left{align-items:center;gap:14px;display:flex}.grafana-project-badge{width:40px;height:40px;color:var(--color-primary);background:#00adef2e;border-radius:10px;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:flex}.grafana-project-name{color:#f0f3f6;font-size:1.05rem;font-weight:700;line-height:1.2}.grafana-project-desc{color:#ffffff80;font-size:.78rem}.grafana-header-right{align-items:center;gap:12px;display:flex}.live-badge{color:#56d364;background:#32c8501f;border:1px solid #32c85059;border-radius:20px;align-items:center;gap:6px;padding:5px 12px;font-size:.78rem;font-weight:600;display:flex}.live-dot{background:#32c850;border-radius:50%;width:7px;height:7px;animation:1.8s ease-in-out infinite pulse-glow;box-shadow:0 0 6px #32c85099}.open-grafana-btn{border-radius:var(--radius-sm);padding:8px 16px;font-size:.82rem;text-decoration:none}.grafana-iframe-container{flex:1;min-height:1200px;position:relative;overflow:hidden}.grafana-iframe{border:none;width:100%;height:100%;display:block}.iframe-overlay{background:var(--color-bg);z-index:5;color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;animation:.2s fadeIn;display:flex;position:absolute;inset:0}.iframe-spinner{border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}.report-download-btn{color:#79c0ff;cursor:pointer;background:#00adef1a;border:1px solid #00adef4d;border-radius:8px;align-items:center;gap:8px;margin-right:12px;padding:6px 14px;font-size:.82rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.report-download-btn:hover{background:#00adef33;border-color:#00adef80;transform:translateY(-1px)}.report-download-btn svg{transition:transform .2s}.report-download-btn:hover svg{transform:translateY(2px)}.sidebar-backdrop{display:none}@media (width<=767px){.dashboard-body{position:relative}.sidebar-collapsed{width:48px}.sidebar-open{z-index:40;width:min(300px,85vw);position:absolute;top:0;bottom:0;left:0;box-shadow:8px 0 32px #00000059}.sidebar-open+.dashboard-main{margin-left:48px}.sidebar-backdrop{z-index:35;background:#00142d73;display:block;position:absolute;inset:0}.sidebar-header{padding:14px 10px}}.savings-dashboard-page{box-sizing:border-box;color:#d9dae1;background:#111821;flex-shrink:0;min-height:100vh;padding:24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.savings-header{border-bottom:1px solid #2d323b;margin-bottom:24px;padding-bottom:16px}.savings-header h1{color:#e0e0e0;margin:0 0 4px;font-size:28px;font-weight:600}.savings-header p{color:#6e7683;margin:0;font-size:13px}.savings-controls{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.control-group{gap:8px;display:flex}.upload-label{cursor:pointer;color:#9ea3b0;white-space:nowrap;background:#1e2128;border:.5px solid #2d323b;border-radius:6px;padding:8px 12px;font-size:12px;transition:all .2s}.upload-label:hover{color:#79c0ff;background:#252830;border-color:#388bfd}.notification{color:#3fb950;background:#1f6030;border:.5px solid #3fb950;border-radius:6px;padding:8px 12px;font-size:12px;animation:.3s slideIn}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.savings-summary{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:24px;display:grid}.stat-box{background:#1e2128;border:.5px solid #2d323b;border-radius:6px;padding:12px}.stat-label{color:#6e7683;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px;font-size:10px;display:block}.stat-value{font-size:20px;font-weight:600;display:block}.panel-title{color:#9ea3b0;text-transform:uppercase;letter-spacing:.08em;margin:20px 0 8px;font-size:11px;font-weight:500}.panel{background:#1e2128;border:.5px solid #2d323b;border-radius:6px;margin-bottom:16px;padding:16px}.filter-row{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.pill{color:#9ea3b0;cursor:pointer;white-space:nowrap;background:#22252a;border:.5px solid #3a3d45;border-radius:4px;padding:4px 10px;font-size:11px;transition:all .2s}.pill:hover{color:#79c0ff;background:#2a2d33;border-color:#388bfd}.pill.active{color:#79c0ff;background:#1a3a5c;border-color:#388bfd}.heatmap-table{border-collapse:collapse;width:100%;font-size:10px}.heatmap-table thead{background:#22252a}.heatmap-table th{text-align:center;color:#9ea3b0;border:.5px solid #2d323b;padding:6px 4px;font-size:9px;font-weight:500}.heatmap-table td{text-align:center;border:.5px solid #2d323b;width:36px;height:28px;padding:6px 4px;font-weight:500}.heatmap-table .project-label{text-align:left;color:#9ea3b0;width:auto;font-weight:500}.summary-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin-top:8px;display:grid}.project-summary-card{background:#22252a;border:.5px solid #2d323b;border-radius:4px;padding:10px;font-size:10px}.card-header{color:#79c0ff;margin-bottom:6px;font-size:11px;font-weight:600}.card-stat{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.card-label{color:#6e7683}.card-value{font-weight:600}.lifecycle-panel{flex-direction:column;gap:8px;display:flex}.lifecycle-project{background:#22252a;border-left:3px solid #388bfd;border-radius:4px;padding:10px}@media (width<=768px){.savings-dashboard-page{padding:16px}.savings-header h1{font-size:22px}.savings-summary,.summary-grid{grid-template-columns:repeat(2,1fr)}.lc-stats{flex-direction:column;gap:2px}}@media (width<=480px){.savings-summary{grid-template-columns:1fr}.filter-row{gap:4px}.pill{padding:3px 8px;font-size:10px}}.impact-summary{margin-bottom:24px;container-type:inline-size}.impact-heading{color:#e0e0e0;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;margin-bottom:10px;font-size:13px;font-weight:600;display:flex}.impact-scope{color:#6e7683;font-size:12px;font-weight:400}.impact-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}@container (width<=1180px){.impact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (width<=600px){.impact-grid{grid-template-columns:minmax(0,1fr)}}.impact-card{background:radial-gradient(120% 140% at 0% 0%, color-mix(in srgb, var(--tone) 16%, transparent) 0%, transparent 55%), #1a1d23;border:1px solid #2d323b;border-radius:10px;gap:16px;height:100%;padding:20px;animation:.35s cubic-bezier(.4,0,.2,1) both impactIn;display:flex;position:relative;overflow:hidden}.impact-card:before{content:"";background:var(--tone);width:3px;position:absolute;inset:0 auto 0 0}.impact-wrap:nth-child(2) .impact-card{animation-delay:60ms}.impact-wrap:nth-child(3) .impact-card{animation-delay:.12s}.impact-wrap:nth-child(4) .impact-card{animation-delay:.18s}.impact-wrap.impact-energy{--tone:#4a9eff}.impact-wrap.impact-carbon{--tone:#2cc5d2}.impact-wrap.impact-trees{--tone:#3fb950}.impact-wrap.impact-projects{--tone:#f0883e}.impact-icon{width:44px;height:44px;color:var(--tone);background:color-mix(in srgb, var(--tone) 14%, transparent);border-radius:12px;flex:none;place-items:center;display:grid}.impact-body{flex:1;min-width:0}.impact-label{letter-spacing:.06em;text-transform:uppercase;color:#9ea3b0;font-size:11px;font-weight:600}.impact-value{color:#f0f3f6;font-variant-numeric:tabular-nums;white-space:nowrap;margin-top:4px;font-size:34px;font-weight:700;line-height:1.1}.impact-unit{color:var(--tone);margin-left:6px;font-size:15px;font-weight:500}.impact-detail{color:#8b929e;margin-top:8px;font-size:12px;line-height:1.5}.impact-progress{background:#2d323b;border-radius:3px;height:6px;margin-bottom:6px;overflow:hidden}.impact-progress>div{background:var(--tone);border-radius:3px;height:100%;transition:width .6s cubic-bezier(.4,0,.2,1)}.impact-good{color:#3fb950;font-weight:600}.impact-warn{color:#d29922;font-weight:600}@keyframes impactIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.impact-wrap{--tone:#4a9eff;cursor:default;border-radius:10px;outline:none;position:relative}.impact-wrap:focus-visible .impact-card{box-shadow:0 0 0 2px var(--tone)}.impact-card{transition:border-color .2s,transform .2s}.impact-wrap:hover .impact-card,.impact-wrap:focus-within .impact-card{border-color:color-mix(in srgb, var(--tone) 55%, #2d323b);transform:translateY(-2px)}.impact-hint{letter-spacing:.04em;color:#6e7683;font-size:10px;transition:opacity .2s;position:absolute;bottom:10px;right:14px}.impact-wrap:hover .impact-hint,.impact-wrap:focus-within .impact-hint{opacity:0}.impact-pop{z-index:30;border:1px solid color-mix(in srgb, var(--tone) 40%, #2d323b);opacity:0;visibility:hidden;pointer-events:none;background:#15181d;border-radius:10px;min-width:280px;padding:14px 16px 12px;transition:opacity .18s,transform .18s,visibility 0s linear .18s;position:absolute;top:calc(100% + 8px);left:0;right:0;transform:translateY(-4px);box-shadow:0 16px 40px #0000008c}.impact-wrap:focus-within .impact-pop{opacity:1;visibility:visible;transition:opacity .18s,transform .18s;transform:translateY(0)}@media (hover:hover){.impact-wrap:hover .impact-pop{opacity:1;visibility:visible;transition:opacity .18s,transform .18s;transform:translateY(0)}}.impact-pop-title{color:#e0e0e0;margin-bottom:6px;font-size:12px;font-weight:600}.impact-pop-empty{color:#6e7683;padding:12px 0;font-size:12px}.impact-pop svg{display:block;overflow:visible}.impact-pop-axis{stroke:#2d323b;stroke-width:1px}.impact-pop-bar{fill:var(--tone)}.impact-pop-target{stroke:#dab42f;stroke-width:2px;stroke-dasharray:4 3}.impact-pop-value{fill:#d9dae1;font-variant-numeric:tabular-nums;font-size:11px;font-weight:600}.impact-pop-year{fill:#8b929e;font-size:10px}.impact-pop-forecast{stroke:var(--tone);stroke-width:1px;stroke-dasharray:3 2}.impact-pop-hatch-bg{fill:color-mix(in srgb, var(--tone) 18%, transparent)}.impact-pop-hatch-line{stroke:color-mix(in srgb, var(--tone) 70%, transparent);stroke-width:2px}.impact-pop-value-forecast{fill:#f0f3f6}.impact-pop-sub{fill:#8b929e;font-size:9px}.impact-pop-inside{fill:#0d1117;font-variant-numeric:tabular-nums;font-size:10px;font-weight:700}.impact-pop-note{color:#6e7683;margin-top:6px;font-size:10.5px;line-height:1.45}.impact-pop-legend{color:#8b929e;flex-wrap:wrap;gap:14px;margin-top:6px;font-size:11px;display:flex}.impact-pop-sw{vertical-align:-1px;background:var(--tone);border-radius:2px;width:10px;height:10px;margin-right:4px;display:inline-block}.impact-pop-sw-forecast{background:repeating-linear-gradient(45deg, color-mix(in srgb, var(--tone) 70%, transparent) 0 2px, color-mix(in srgb, var(--tone) 18%, transparent) 2px 4px);outline:1px dashed var(--tone);outline-offset:-1px}.impact-pop-sw-target{vertical-align:3px;background:0 0;border-top:2px dashed #dab42f;height:0}@media (prefers-reduced-motion:reduce){.impact-card{transition:none;animation:none}.impact-pop,.impact-progress>div{transition:none}}@media (width<=767px){.savings-dashboard-page{padding:16px}}.health-card{background:#1e2128;border:.5px solid #2d323b;border-radius:10px;margin:20px 0 8px;padding:14px 16px 12px}.health-head{color:#9ea3b0;text-transform:uppercase;letter-spacing:.08em;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;font-size:11px;font-weight:500;display:flex}.health-hint{text-transform:none;letter-spacing:0;color:#6e7683}.health-row{grid-template-columns:140px 1fr;align-items:center;gap:12px;margin-bottom:8px;display:grid}.health-label{color:#c9d1d9;font-size:12px}.health-bar{gap:3px;height:34px;display:flex}.health-seg{border:1px solid color-mix(in srgb, var(--band) 55%, transparent);background:color-mix(in srgb, var(--band) 22%, #1e2128);color:#e6edf3;min-width:44px;font:inherit;cursor:pointer;border-radius:6px;flex-basis:0;align-items:center;gap:6px;padding:0 10px;transition:background .15s,opacity .15s,transform .15s;display:flex;position:relative}.health-seg:hover,.health-seg:focus-visible{background:color-mix(in srgb, var(--band) 38%, #1e2128);outline:none}.health-seg.active{background:color-mix(in srgb, var(--band) 55%, #1e2128);box-shadow:0 0 0 2px var(--band)}.health-seg.dimmed{opacity:.35}.health-count{font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.health-name{color:#c9d1d9;white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.health-tip{z-index:30;border:1px solid color-mix(in srgb, var(--band) 45%, #2d323b);text-align:left;pointer-events:none;background:#15181d;border-radius:8px;flex-direction:column;gap:4px;min-width:220px;padding:10px 12px;font-size:12px;display:none;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 12px 32px #0000008c}.health-seg:last-child:not(:first-child) .health-tip{left:auto;right:0}.health-tip strong{color:var(--band);margin-bottom:2px}.health-tip span{color:#c9d1d9;justify-content:space-between;gap:16px;display:flex}.health-tip em{color:#9ea3b0;font-variant-numeric:tabular-nums;font-style:normal}.health-seg:focus-visible .health-tip{display:flex}@media (hover:hover){.health-seg:hover .health-tip{display:flex}}.health-empty{color:#6e7683;align-self:center;font-size:12px}.health-legend{color:#9ea3b0;flex-wrap:wrap;gap:14px;margin-top:6px;font-size:11px;display:flex}.health-legend i{border-radius:2px;width:9px;height:9px;margin-right:5px;display:inline-block}.lb-wrap{overflow-x:auto}.lb-table{border-collapse:collapse;width:100%;min-width:760px;font-size:13px}.lb-table th{text-align:left;color:#6e7683;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;border-bottom:.5px solid #2d323b;padding:0 10px 8px;font-size:11px;font-weight:500}.lb-table th button{all:unset;cursor:pointer;gap:4px;display:inline-flex}.lb-table th button:focus-visible{outline-offset:2px;outline:2px solid #388bfd}.lb-sort{color:#4a505b;font-size:9px}.lb-table th[aria-sort] .lb-sort{color:#79c0ff}.lb-table .num{text-align:right;font-variant-numeric:tabular-nums}.lb-table th.num button{justify-content:flex-end}.lb-table td{color:#c9d1d9;vertical-align:middle;border-bottom:.5px solid #262a31;padding:10px}.lb-table td.num{font-weight:600}.lb-table tbody tr{cursor:pointer;transition:background .12s}.lb-table tbody tr:hover,.lb-table tbody tr:focus-visible{background:#252a33;outline:none}.lb-name{color:#e6edf3;font-weight:600}.lb-open{color:#388bfd;opacity:0;font-size:11px;font-weight:400;transition:opacity .12s;display:block}.lb-table tbody tr:hover .lb-open,.lb-table tbody tr:focus-visible .lb-open{opacity:1}.lb-mwh{flex-direction:column;gap:5px;min-width:150px;display:flex}.lb-mwh span{font-variant-numeric:tabular-nums}.lb-mwh em{color:#6e7683;font-size:12px;font-style:normal}.lb-bar{background:#2d323b;border-radius:3px;height:5px;overflow:hidden}.lb-bar>div{border-radius:3px;height:100%}.lb-spark{display:block}.lb-spark-target{stroke:#4a505b;stroke-dasharray:3 3}.lb-spark-line{fill:none;stroke:#9ea3b0;stroke-width:1.5px}.lb-badge{color:var(--band);background:color-mix(in srgb, var(--band) 16%, transparent);border:1px solid color-mix(in srgb, var(--band) 40%, transparent);white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:600;display:inline-block}.lb-muted{color:#6e7683}.pd-overlay{z-index:200;background:#05070a99;justify-content:flex-end;animation:.18s pd-fade;display:flex;position:fixed;inset:0}.pd-panel{background:#16191e;border-left:1px solid #2d323b;width:min(640px,100vw);height:100%;padding:20px 22px 28px;animation:.22s pd-slide;overflow-y:auto;box-shadow:-20px 0 50px #00000080}@keyframes pd-fade{0%{opacity:0}}@keyframes pd-slide{0%{opacity:0;transform:translate(40px)}}@media (prefers-reduced-motion:reduce){.pd-overlay,.pd-panel{animation:none}}.pd-head{justify-content:space-between;gap:12px;margin-bottom:18px;display:flex}.pd-head h2{color:#e6edf3;margin:0;font-size:20px}.pd-head p{color:#9ea3b0;margin:4px 0 0;font-size:12px}.pd-close{color:#c9d1d9;cursor:pointer;background:#1e2128;border:1px solid #2d323b;border-radius:8px;flex-shrink:0;width:32px;height:32px}.pd-close:hover,.pd-close:focus-visible{border-color:#388bfd;outline:none}.pd-kpis{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-bottom:18px;display:grid}.pd-kpis>div{background:#1e2128;border:.5px solid #2d323b;border-radius:8px;flex-direction:column;gap:3px;padding:12px;display:flex}.pd-kpis span{color:#6e7683;text-transform:uppercase;letter-spacing:.08em;font-size:10px}.pd-kpis strong{color:#e6edf3;font-variant-numeric:tabular-nums;font-size:22px}.pd-kpis em{color:#9ea3b0;font-size:11px;font-style:normal}.pd-section{background:#1e2128;border:.5px solid #2d323b;border-radius:8px;margin-bottom:14px;padding:14px}.pd-section h3{color:#9ea3b0;text-transform:uppercase;letter-spacing:.08em;margin:0 0 10px;font-size:11px;font-weight:500}.pd-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.pd-range{gap:4px;margin-bottom:10px;display:flex}.pd-range button{color:#9ea3b0;cursor:pointer;background:#22252a;border:.5px solid #3a3d45;border-radius:4px;padding:3px 9px;font-size:11px}.pd-range button.active{color:#e6edf3;background:#388bfd26;border-color:#388bfd}.pd-chart svg{display:block}.pd-grid{stroke:#2d323b;stroke-width:.5px}.pd-axis{fill:#6e7683;font-size:10px}.pd-bar{transition:opacity .12s}.pd-chart svg:hover .pd-bar{opacity:.45}.pd-chart svg .pd-hover .pd-bar{opacity:1}.pd-target{stroke:#e6edf3;stroke-width:1.5px;stroke-dasharray:3 2}.pd-readout{color:#c9d1d9;min-height:20px;margin-top:6px;font-size:12px}.pd-muted{color:#6e7683}.pd-empty{color:#6e7683;padding:20px 0;font-size:12px}.pd-table{border-collapse:collapse;width:100%;font-size:12px}.pd-table th{text-align:left;color:#6e7683;border-bottom:.5px solid #2d323b;padding:0 8px 6px;font-weight:500}.pd-table td{color:#c9d1d9;border-bottom:.5px solid #262a31;padding:7px 8px}.pd-table .num{text-align:right;font-variant-numeric:tabular-nums}@media (width<=767px){.health-row{grid-template-columns:1fr;gap:4px}.health-name{display:none}.health-seg{justify-content:center;min-width:34px}.pd-panel{padding:16px}}.fb-bar{z-index:40;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1e2128f2;border:.5px solid #2d323b;border-radius:10px;flex-wrap:wrap;align-items:flex-end;gap:14px 20px;margin-bottom:20px;padding:12px 16px;display:flex;position:sticky;top:0}.fb-field{position:relative}.fb-label{color:#6e7683;text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px;font-size:10px;display:block}.fb-dd{color:#e6edf3;min-width:200px;font:inherit;cursor:pointer;background:#22252a;border:.5px solid #3a3d45;border-radius:6px;justify-content:space-between;gap:12px;padding:6px 10px;font-size:12px;display:flex}.fb-dd:focus-visible,.fb-chips button:focus-visible,.fb-seg button:focus-visible,.fb-menu button:focus-visible{outline-offset:1px;outline:2px solid #388bfd}.fb-menu{z-index:60;background:#15181d;border:1px solid #2d323b;border-radius:8px;width:240px;max-height:320px;padding:6px;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto;box-shadow:0 12px 32px #0000008c}.fb-menu button{color:#c9d1d9;width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:8px;padding:6px 8px;font-size:12px;display:flex}.fb-menu button:hover{background:#252a33}.fb-cb{border:1px solid #4a505b;border-radius:3px;flex-shrink:0;width:12px;height:12px}.fb-cb.on{background:#388bfd;border-color:#388bfd}.fb-chips{flex-wrap:wrap;gap:4px;display:flex}.fb-chips button{border:1px solid color-mix(in srgb, var(--band) 70%, transparent);color:var(--band);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:4px 10px;font-size:12px}.fb-chips button.on{background:color-mix(in srgb, var(--band) 24%, transparent);color:#e6edf3}.fb-seg{border:.5px solid #3a3d45;border-radius:6px;display:inline-flex;overflow:hidden}.fb-seg button{color:#9ea3b0;font:inherit;cursor:pointer;white-space:nowrap;background:#22252a;border:0;padding:5px 11px;font-size:12px}.fb-seg button+button{border-left:.5px solid #3a3d45}.fb-seg button.on{color:#e6edf3;background:#388bfd2e}.fb-summary{color:#c9d1d9;flex-direction:column;align-items:flex-end;gap:4px;margin-left:auto;font-size:12px;display:flex}.fb-summary button{color:#388bfd;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px}.tl-controls{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.tl-controls .filter-row{margin-bottom:0}.tl-switches{flex-wrap:wrap;gap:8px;display:flex}.tl-legend,.lcal-legend{color:#9ea3b0;flex-wrap:wrap;gap:6px 14px;margin:12px 0 8px;font-size:11px;display:flex}.tl-legend i,.lcal-legend i{vertical-align:-1px;border-radius:2px;width:9px;height:9px;margin-right:5px;display:inline-block}.tl-legend i.tl-key-line{vertical-align:3px;background:#e6edf3;border-radius:1px;width:14px;height:2px}.tl-legend i.tl-key-dash{vertical-align:3px;border-top:2px dashed #dab42f;border-radius:0;width:16px;height:0}.tl-empty{text-align:center;color:#6e7683;padding:30px 0;font-size:13px}.lcal-legend{margin-top:0}.lcal-legend i.lcal-key-current{background:0 0;border:1.5px solid #9ea3b0}.lcal-legend i.lcal-key-today{vertical-align:-4px;border:5px solid #0000;border-top:7px solid #fff;border-radius:0;width:0;height:0}.lcal-hint{color:#6e7683}.lcal-scroll{padding-top:4px;overflow-x:auto}.lcal-row{grid-template-columns:140px repeat(10,minmax(72px,1fr));align-items:center;gap:3px;min-width:880px;display:grid}.lcal-head div{text-align:center;color:#9ea3b0;padding:4px 0;font-size:11px;font-weight:700}.lcal-group{border-radius:6px;padding:3px 0;transition:background .12s}.lcal-group:hover,.lcal-group.open{background:#252a33;box-shadow:inset 3px 0 #388bfd}.lcal-name{color:#79c0ff;white-space:nowrap;text-overflow:ellipsis;padding:0 10px;font-size:12px;font-weight:600;overflow:hidden}.lcal-group:hover .lcal-name,.lcal-group.open .lcal-name{color:#e6edf3}.lcal-cell{color:#e6edf3;height:26px;font:inherit;cursor:pointer;border:0;border-radius:3px;font-size:11px;font-weight:600;position:relative}.lcal-cell:disabled{color:#4a4d55;cursor:default}.lcal-cell:not(:disabled):hover{filter:brightness(1.3)}.lcal-cell.current{box-shadow:inset 0 0 0 1.5px #ffffff8c}.lcal-cell.active{box-shadow:inset 0 0 0 2px #388bfd}.lcal-cell:focus-visible{outline-offset:1px;outline:2px solid #388bfd}.lcal-today{pointer-events:none;border:5px solid #0000;border-top:7px solid #fff;width:0;height:0;margin-left:-5px;position:absolute;top:-5px}.lcal-today:after{content:"";background:#fff;width:2px;height:5px;position:absolute;top:21px;left:-1px}.lcal-months{background:#15181d;border:1px solid #2d323b;border-radius:8px;min-width:737px;margin:6px 0 4px 143px;padding:10px}.lcal-months-title{color:#9ea3b0;margin-bottom:8px;font-size:12px}.lcal-months-grid{grid-template-columns:repeat(12,1fr);gap:3px;display:grid}.lcal-months-grid button{color:#e6edf3;font:inherit;cursor:pointer;border:0;border-radius:4px;flex-direction:column;align-items:center;gap:1px;padding:5px 0;font-size:10px;display:flex}.lcal-months-grid button span{color:#c9d1d9}.lcal-months-grid button:disabled{color:#4a4d55;cursor:default}.lcal-months-grid button:disabled span{color:#4a4d55}.lcal-months-grid button.on{box-shadow:inset 0 0 0 2px #e6edf3}.lcal-months-grid button:focus-visible{outline-offset:1px;outline:2px solid #388bfd}.lcal-month-card{background:#388bfd12;border:1px solid #388bfd66;border-radius:6px;flex-wrap:wrap;align-items:baseline;gap:6px 22px;margin-top:10px;padding:10px 12px;font-size:12px;display:flex}.lcal-month-card strong{color:#e6edf3;width:100%}.lcal-month-card span{color:#9ea3b0}.lcal-month-card em{color:#e6edf3;margin-left:4px;font-style:normal;font-weight:600}@media (width<=767px){.fb-bar{position:static}.fb-summary{align-items:flex-start;margin-left:0}.tl-legend{display:none}}.hero{background:radial-gradient(90% 160% at 0 0,#388bfd38 0%,#0000 60%),radial-gradient(60% 120% at 100% 100%,#2cc5d21f 0%,#0000 60%),linear-gradient(135deg,#14202f 0%,#171b22 70%);border:1px solid #263243;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 24px;margin-bottom:20px;padding:22px 24px;display:flex;position:relative;overflow:hidden}.hero-main{flex:520px;min-width:0}.hero-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#79c0ff;margin:0 0 6px;font-size:11px;font-weight:600}.hero h1{letter-spacing:-.01em;color:#f0f3f6;margin:0 0 10px;font-size:30px;font-weight:700}.hero-headline{color:#c9d1d9;max-width:760px;margin:0;font-size:16px;line-height:1.55}.hero-headline strong{color:#f0f3f6;font-weight:600}.hero-headline .hero-figure{color:#4a9eff}.hero-attention{color:#ff7b72;font:inherit;cursor:pointer;white-space:nowrap;background:#f8514924;border:1px solid #f851498c;border-radius:999px;padding:1px 10px;font-size:14px;font-weight:600}.hero-attention:hover,.hero-attention:focus-visible{background:#f8514942;outline:none}.hero-ok{color:#3fb950;font-weight:600}.hero-side{flex-direction:column;align-items:flex-end;gap:12px;display:flex}.hero-chips{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.hero-chip{color:#9ea3b0;white-space:nowrap;background:#0d11178c;border:1px solid #2d3644;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;display:inline-flex}.hero-chip-status{color:#e6edf3;border-color:color-mix(in srgb, var(--band) 55%, transparent)}.hero-chip-status i{background:var(--band);width:8px;height:8px;box-shadow:0 0 0 3px color-mix(in srgb, var(--band) 25%, transparent);border-radius:50%}.hero-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.hero-download{color:#7fd6f7;font:inherit;cursor:pointer;background:#00adef1a;border:1px solid #00adef73;border-radius:6px;padding:7px 14px;font-size:12px;font-weight:600}.hero-download:hover,.hero-download:focus-visible{color:#fff;background:#00adef33;outline:none}.hero-download:disabled{opacity:.6;cursor:wait}@media (width<=767px){.hero{padding:18px 16px}.hero h1{font-size:24px}.hero-headline{font-size:15px}.hero-side{align-items:flex-start}.hero-chips,.hero-actions{justify-content:flex-start}.lb-table th:first-child,.lb-table td:first-child{z-index:1;background:#1e2128;position:sticky;left:0}.lb-table tbody tr:hover td:first-child{background:#252a33}.lcal-row{grid-template-columns:104px repeat(10,minmax(80px,1fr));min-width:940px}.lcal-name,.lcal-head>div:first-child{z-index:2;background:#1e2128;align-self:stretch;line-height:26px;position:sticky;left:0;box-shadow:0 -6px #1e2128}}.contract-ended{letter-spacing:.02em;vertical-align:middle;color:#9aa3ae;background:#8b929e1f;border:1px solid #8b929e73;border-radius:999px;margin-left:8px;padding:1px 7px;font-size:10px;font-weight:600;display:inline-block}.lcal-cell.outside,.lcal-key-outside{cursor:default;background:repeating-linear-gradient(135deg,#1b1e24 0 4px,#30343c 4px 8px)!important}.lcal-group.ended .lcal-name{color:#9aa3ae}.project-dashboard{color:#d9dae1;background:#111821;flex-direction:column;flex:1;gap:20px;padding:20px 24px 32px;display:flex;overflow:auto}.pd-section{background:#161b22;border:1px solid #2d323b;border-radius:10px;min-width:0;padding:16px 18px;position:relative}.pd-title{letter-spacing:.02em;color:#e0e0e0;margin:0 0 14px;font-size:14px;font-weight:600}.pd-muted{color:#8b929e;padding:8px 0;font-size:13px}.pd-error{color:#f85149;padding:8px 0;font-size:13px}.pd-hint{color:#6e7683;margin:8px 0 0;font-size:12px}.pd-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.pd-card{background:radial-gradient(120% 140% at 0% 0%, color-mix(in srgb, var(--tone) 14%, transparent) 0%, transparent 55%), #1a1d23;border:1px solid #2d323b;border-radius:10px;padding:16px 18px 14px;position:relative;overflow:hidden}.pd-card:before{content:"";background:var(--tone);width:3px;position:absolute;inset:0 auto 0 0}.pd-card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:10px;display:flex}.pd-card-title{letter-spacing:.06em;text-transform:uppercase;color:#d9dae1;font-size:12px;font-weight:700}.pd-card-period{color:#9ea3b0;font-size:12px}.pd-card-label{color:#9ea3b0;font-size:11px}.pd-card-value{color:#f0f3f6;font-variant-numeric:tabular-nums;white-space:nowrap;margin-top:2px;font-size:30px;font-weight:700;line-height:1.15}.pd-card-unit{color:#9ea3b0;margin-left:6px;font-size:14px;font-weight:500}.pd-progress{background:#2d323b;border-radius:3px;height:6px;margin:10px 0 12px;overflow:hidden}.pd-progress>div{background:var(--tone);border-radius:3px;height:100%}.pd-card-rows{gap:6px;margin:0;display:grid}.pd-card-rows>div{justify-content:space-between;gap:10px;font-size:13px;display:flex}.pd-card-rows dt{color:#8b929e}.pd-card-rows dd{color:#e6edf3;font-variant-numeric:tabular-nums;white-space:nowrap;margin:0}.pd-good{font-weight:600;color:#3fb950!important}.pd-warn{font-weight:600;color:#d29922!important}.pd-card-note{color:#6e7683;margin-top:8px;font-size:11px}.pd-controls{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:12px;display:flex}.pd-range{flex-wrap:wrap;align-items:flex-end;gap:8px;margin-bottom:12px;display:flex}.pd-controls .pd-range{margin-bottom:0}.project-dashboard .pd-chip{color:#d9dae1;cursor:pointer;background:0 0;border:1px solid #2d323b;border-radius:6px;padding:7px 12px;font-size:12px;font-weight:600}.project-dashboard .pd-chip:hover{border-color:#388bfd}.project-dashboard .pd-chip.pd-chip-on{color:#79c0ff;background:#79c0ff26;border-color:#388bfd}.pd-date{color:#8b929e;flex-direction:column;gap:4px;font-size:11px;display:flex}.pd-date input,.pd-date select{color:#e6edf3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#0d1117;border:1px solid #2d323b;border-radius:6px;padding:6px 8px;font-size:13px}.pd-chart{width:100%;position:relative}@media (width<=1000px){.pd-cards{grid-template-columns:minmax(0,1fr)}}@media (width<=767px){.project-dashboard{gap:14px;padding:12px 12px 24px}.pd-section{padding:14px 12px}.pd-card-value{font-size:26px}}.pd-section-actions{gap:8px;display:flex;position:absolute;top:12px;right:14px}.project-dashboard .pd-chip:disabled{opacity:.45;cursor:default}.pd-key{vertical-align:-1px;border-radius:2px;width:10px;height:10px;margin-right:4px;display:inline-block}.pd-alert-summary{color:#9ea3b0;font-size:13px}.pd-alert-summary strong{color:#f0f3f6}.pd-table-wrap{border:1px solid #2d323b;border-radius:8px;max-height:420px;overflow:auto}.pd-table{border-collapse:collapse;color:#d9dae1;width:100%;font-size:13px}.pd-table th{z-index:1;color:#8b929e;text-transform:uppercase;letter-spacing:.04em;text-align:left;background:#161c25;border-bottom:1px solid #2d323b;padding:8px 12px;font-size:11px;font-weight:600;position:sticky;top:0}.pd-table td{vertical-align:top;border-bottom:1px solid #1f252e;padding:8px 12px}.pd-table tr:last-child td{border-bottom:none}.pd-table .pd-row-active td{background:#e5484d0f}.pd-nowrap{white-space:nowrap}.pd-badge{white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.pd-badge-active{color:#ff8589;background:#e5484d29}.pd-badge-resolved{color:#4cc38a;background:#199e7024}.pd-key-band{border:1px solid #ffffff2e;width:14px;margin-left:6px}.pd-subtitle{color:#c9ced6;margin:16px 0 6px;font-size:13px;font-weight:600}.pd-picker{position:relative}.pd-picker summary{cursor:pointer;color:#e6edf3;background:#0d1117;border:1px solid #2d323b;border-radius:6px;min-width:180px;padding:6px 28px 6px 8px;font-size:13px;list-style:none;position:relative}.pd-picker summary::-webkit-details-marker{display:none}.pd-picker summary:after{content:"▾";color:#8b929e;position:absolute;right:9px}.pd-picker[open] summary{border-color:#388bfd}.pd-picker-list{z-index:20;background:#161b22;border:1px solid #2d323b;border-radius:6px;min-width:100%;max-height:320px;padding:6px;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto;box-shadow:0 8px 24px #00000073}.pd-picker-list label{color:#e6edf3;white-space:nowrap;cursor:pointer;border-radius:4px;align-items:center;gap:8px;padding:5px 6px;font-size:13px;display:flex}.pd-picker-list label:hover{background:#79c0ff14}.pd-picker-list label.pd-picker-off{color:#5c6370;cursor:default}.pd-picker-group{text-transform:uppercase;letter-spacing:.04em;color:#8b929e;margin:8px 6px 2px;font-size:11px;font-weight:600}.pd-picker-desc{color:#8b929e;margin-left:4px;font-size:12px}.pd-picker-note{color:#6e7683;white-space:normal;margin:6px 6px 2px;font-size:11px}.pd-tabs{border-bottom:1px solid #2d323b;flex-wrap:wrap;gap:4px;margin:-4px 0 14px;padding-right:110px;display:flex}.project-dashboard .pd-tab{color:#9ea3b0;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 14px;font-size:14px;font-weight:600}.project-dashboard .pd-tab:hover{color:#e0e0e0}.project-dashboard .pd-tab.pd-tab-on{color:#79c0ff;border-bottom-color:#388bfd}.pd-range-gap{width:12px}.pd-stats{background:#0d1117;border:1px solid #2d323b;border-radius:8px;flex-wrap:wrap;gap:10px 28px;margin:0 0 12px;padding:10px 14px;display:flex}.pd-stats>div{flex-direction:column;gap:2px;display:flex}.pd-stats dt{color:#8b929e;font-size:11px}.pd-stats dd{color:#f0f3f6;font-variant-numeric:tabular-nums;margin:0;font-size:15px;font-weight:600}.pd-heat-wrap{border:1px solid #2d323b;border-radius:8px;overflow-x:auto}.pd-heat{border-collapse:separate;border-spacing:2px;font-variant-numeric:tabular-nums;color:#d9dae1;min-width:100%;font-size:12px}.pd-heat th{color:#8b929e;text-align:center;white-space:nowrap;padding:6px 4px;font-size:11px;font-weight:600}.pd-heat td{text-align:center;white-space:nowrap;border-radius:4px;min-width:34px;height:30px;padding:0 3px}.pd-heat td.pd-heat-empty{background:#ffffff08}.pd-heat .pd-heat-meter{z-index:1;text-align:left;color:#e6edf3;background:#161b22;padding:4px 10px 4px 8px;font-size:12px;font-weight:600;position:sticky;left:0}.pd-heat .pd-heat-meter span{color:#8b929e;font-size:11px;font-weight:400;display:block}.pd-heat thead .pd-heat-meter{color:#8b929e;font-size:11px}.pd-heat .pd-heat-rated{text-align:right;color:#c9ced6;background:0 0;padding:0 8px}.pd-heat-key{color:#9ea3b0;flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:10px;font-size:12px;display:flex}.report-page{align-items:flex-start;height:auto;min-height:100vh;padding:40px 0;overflow-y:auto}.report-container{max-width:640px;margin:auto}.report-dates{grid-template-columns:1fr 1fr;gap:14px;display:grid}.report-frequency{gap:8px;display:flex}.report-frequency button{border-radius:var(--radius-sm);color:#fff;cursor:pointer;background:#ffffff0d;border:1px solid #fff3;flex:1;padding:10px 0;font-size:.9rem}.report-frequency button.active{background:var(--color-primary);border-color:var(--color-primary);font-weight:600}.report-frequency button:disabled{opacity:.4;cursor:not-allowed}.report-hint{color:#fff9;margin-top:6px;font-size:.8rem}.report-list-head{justify-content:space-between;align-items:center;display:flex}.report-list-actions button{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0 0 0 10px;font-size:.8rem}.report-checklist{border-radius:var(--radius-sm);background:#ffffff0a;border:1px solid #ffffff26;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:4px 12px;max-height:180px;padding:10px 12px;display:grid;overflow-y:auto}.report-checklist label{color:#fff;cursor:pointer;overflow-wrap:anywhere;align-items:center;gap:8px;font-size:.88rem;display:flex}.report-checklist .report-empty{color:#fff9;font-size:.85rem}@media (width<=520px){.report-dates{grid-template-columns:1fr}}@media (width>=1024px){.login-page.report-page{justify-content:center;align-items:flex-start;padding:40px 20px;display:flex}.report-page .login-header{align-items:center}.report-page .login-header .login-logo{display:flex}.report-page .login-subtitle{text-align:center}}.report-quick{flex-wrap:wrap;gap:8px;display:flex}.report-quick button{color:#fff;cursor:pointer;background:#ffffff0d;border:1px solid #fff3;border-radius:999px;padding:6px 12px;font-size:.82rem}.report-quick button:hover{border-color:var(--color-primary)}
