:root{--font-base: "Ubuntu", sans-serif;--sidebar-width: 236px;--primary: #00A27A;--secondary: #2081C0;--page-bg: #F6F7F5;--surface: #FFFFFF;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 18px;--radius-xl: 24px;--radius-pill: 999px;--shadow-sm: 0 1px 2px rgba(16, 24, 20, .06);--shadow-md: 0 4px 14px rgba(16, 24, 20, .08);--shadow-float: 0 10px 30px rgba(11, 40, 30, .1);--hero-bg: #0B6B52;--hero-bg-hover: #095a45;--hero-text-muted: #CDEEE2;--hero-text-soft: #DDF3EA;--brand-text: #00674C;--brand-text-hover: #004D39;--brand-tint: #E2F3EC;--line: #E3E8E5;--line-soft: #EDF1EF;--control-border: #D4DCD8;--hover-bg: #F1F4F2;--fill-ok: #00A27A;--fill-low: #E3A008;--fill-crit: #D9480F;--fill-off: #AEB6B2;--fill-track: #E6ECE9;--chip-ok-bg: #E2F3EC;--chip-ok-text: #00674C;--chip-warning-bg: #FDF1D2;--chip-warning-text: #6E4B00;--chip-danger-bg: #FDE4D8;--chip-danger-text: #9A330A;--chip-neutral-bg: #E6E9E8;--chip-neutral-text: #343A37;--font-mono: "Ubuntu Mono", ui-monospace, Consolas, monospace;--surface-2: #F6F8F6;--text-body: #3A403D;--fault-bg: #FDF1EB;--fault-border: #E8C9B8;--avatar-bg: #D7E3DD;--status-offline-text: #4A504D;--status-refill-text: #8A4B00;--overlay-bg: rgba(0, 0, 0, .4);--chart-grey: #696a6f;--chip-info-bg: #E6F1FB;--chip-info-text: #0C447C;--chip-ok-border: #A7E3CC;--chip-warning-border: #F0D58A;--chip-danger-border: #F5C2AE;--chip-info-border: #B5D4F4;--overlay-veil: rgba(255, 255, 255, .6)}:root[data-theme=dark]{--page-bg: #111614;--surface: #1A201E;--surface-2: #222927;--text-primary: #E8EDEA;--text-secondary: #A3ACA8;--text-muted: #7E8884;--text-body: #C9D0CD;--brand-text: #5ED3A8;--brand-text-hover: #8BE3C2;--brand-tint: #163D31;--line: #2C3431;--line-soft: #252C2A;--control-border: #3A4440;--hover-bg: #232B28;--fill-ok: #00A27A;--fill-low: #E3A008;--fill-crit: #F0703A;--fill-off: #5E6763;--fill-track: #2C3431;--chip-ok-bg: #163D31;--chip-ok-text: #6FDDB5;--chip-warning-bg: #3A2E0E;--chip-warning-text: #F2C55C;--chip-danger-bg: #42200F;--chip-danger-text: #FF9E7A;--chip-neutral-bg: #2C3431;--chip-neutral-text: #C9D0CD;--fault-bg: #2E1B14;--fault-border: #5A3626;--avatar-bg: #2C3431;--status-offline-text: #C9D0CD;--status-refill-text: #F2C55C;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 4px 14px rgba(0, 0, 0, .45);--shadow-float: 0 10px 30px rgba(0, 0, 0, .45);--overlay-bg: rgba(0, 0, 0, .6);--chart-grey: #8A918D;--chip-info-bg: #12283D;--chip-info-text: #8CC4F2;--chip-ok-border: #2A5E4C;--chip-warning-border: #5C4A1A;--chip-danger-border: #5A3626;--chip-info-border: #24476A;--overlay-veil: rgba(17, 22, 20, .7)}html,body,#root{margin:0;padding:0;width:100%;height:100%;font-family:var(--font-base);background-color:var(--page-bg);color:var(--text-primary)}.app-wrapper{display:flex;gap:16px;padding:16px;box-sizing:border-box;height:100vh;overflow:hidden}.layout{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.main-content{flex:1;overflow-y:auto;padding:8px 8px 24px;padding-bottom:calc(24px + env(safe-area-inset-bottom));background-color:var(--page-bg);min-width:0}@media(max-width:768px){input,select,textarea{font-size:16px!important}.app-wrapper{display:block;padding:0;height:100dvh;overflow:hidden}.layout{height:100dvh;display:flex;flex-direction:column;overflow:hidden}.main-content{padding:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom));flex:1;overflow-y:auto}}:root{--card-bg: var(--surface);--card-border: 1px solid var(--line);--card-radius: var(--radius-lg);--card-shadow: none;--card-padding: 20px;--input-border: var(--control-border);--input-radius: var(--radius-sm);--input-padding: 8px 12px;--input-height: 38px;--input-font-size: .875rem;--input-focus-border: var(--brand-text);--input-focus-shadow: 0 0 0 3px rgba(0, 162, 122, .15);--input-disabled-bg: var(--surface-2);--select-arrow: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' stroke='%236b7280' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--label-size: .875rem;--label-weight: 500;--label-color: var(--text-body);--color-success: #00A27A;--color-success-bg: rgba(0, 162, 122, .1);--color-success-border: rgba(0, 162, 122, .3);--color-success-text: var(--chip-ok-text);--color-danger: #ef4444;--color-danger-bg: rgba(239, 68, 68, .1);--color-danger-border: rgba(239, 68, 68, .3);--color-danger-text: var(--chip-danger-text);--color-warning: #f59e0b;--color-warning-bg: rgba(245, 158, 11, .1);--color-warning-border: rgba(245, 158, 11, .3);--color-warning-text: var(--chip-warning-text);--text-primary: #1D2320;--text-secondary: #5F6461;--text-muted: #8A918D;--divider-color: var(--line);--popup-overlay-bg: var(--overlay-bg)}.gw-card,.card-box{background:var(--card-bg);border:var(--card-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);padding:var(--card-padding)}.logo-theme-dark{display:none}:root[data-theme=dark] .logo-theme-light{display:none}:root[data-theme=dark] .logo-theme-dark{display:block}.gw-card-title{font-weight:600;color:var(--text-primary);font-size:1rem;margin:0 0 14px}.form-group{display:flex;flex-direction:column;gap:6px;margin:0;min-width:0}.form-group label{font-size:var(--label-size);font-weight:var(--label-weight);color:var(--label-color);display:block}input:not(:where([type=checkbox],[type=radio],[type=file],[type=range],[type=color],[type=submit],[type=button],[type=reset],[type=image])),select,textarea{min-height:var(--input-height);border:1px solid var(--input-border);background:var(--surface);border-radius:var(--input-radius);padding:var(--input-padding);font-size:var(--input-font-size);font-family:inherit;color:var(--text-primary);outline:none;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.form-group input:not([type=checkbox]):not([type=radio]),.form-group select,.form-group textarea,.gw-input,.gw-select,.gw-textarea{width:100%}textarea{min-height:auto}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:2rem;background-image:var(--select-arrow);background-repeat:no-repeat;background-position:right .75rem center;cursor:pointer}select:disabled{cursor:not-allowed;opacity:.75}.gw-input--compact,.gw-select--compact{min-height:30px;padding:4px 8px;font-size:.8125rem}.gw-select--compact{padding-right:1.75rem;background-position:right .5rem center}.gw-input--large{min-height:50px;padding:0 16px;border-radius:14px;font-size:15px}.gw-input--large.gw-input--with-action{padding-right:52px}input:not(:where([type=checkbox],[type=radio],[type=file],[type=range],[type=color],[type=submit],[type=button],[type=reset],[type=image])):focus,select:focus,textarea:focus{border-color:var(--input-focus-border);box-shadow:var(--input-focus-shadow)}input::placeholder,textarea::placeholder{color:var(--text-muted)}input:not(:where([type=checkbox],[type=radio],[type=file],[type=range],[type=color],[type=submit],[type=button],[type=reset],[type=image])):disabled,select:disabled,textarea:disabled{background:var(--input-disabled-bg);color:var(--text-muted);cursor:not-allowed}.gw-input--error,input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--color-danger);background:var(--chip-danger-bg)}.gw-input--error:focus,input[aria-invalid=true]:focus,select[aria-invalid=true]:focus,textarea[aria-invalid=true]:focus{border-color:var(--color-danger);box-shadow:0 0 0 3px #c6282826}input[type=checkbox],input[type=radio]{width:18px;height:18px;accent-color:var(--primary);cursor:pointer;flex-shrink:0}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--text-primary)}.form-group .checkbox-label{display:flex;font-size:.875rem;color:var(--text-primary)}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary);cursor:pointer;flex-shrink:0}.gw-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:999px;font-size:.75rem;font-weight:500;line-height:1.4;white-space:nowrap;background:var(--chip-neutral-bg);color:var(--chip-neutral-text);border:1px solid transparent}.gw-badge.success{background:var(--chip-ok-bg);color:var(--chip-ok-text)}.gw-badge.danger{background:var(--chip-danger-bg);color:var(--chip-danger-text)}.gw-badge.warning{background:var(--chip-warning-bg);color:var(--chip-warning-text)}.gw-badge.primary{background:var(--brand-tint);color:var(--brand-text)}.gw-badge.expired{background:var(--chip-warning-bg);border-color:var(--chip-warning-border);color:var(--chip-warning-text)}.gw-badge.rejected{background:var(--surface-2);border-color:var(--divider-color);color:var(--text-secondary)}.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:6px;border:1px solid var(--divider-color);background:var(--surface);font-size:.8rem;font-weight:500;color:var(--text-primary)}.chip strong{font-weight:600}.chip-ok{border-color:var(--color-success-border);background:var(--color-success-bg);color:var(--color-success-text)}.chip-bad{border-color:var(--color-danger-border);background:var(--color-danger-bg);color:var(--color-danger-text)}.chip-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.gw-table-locked{color:var(--text-muted);font-size:.875rem;cursor:default;-webkit-user-select:none;user-select:none}.gw-selection-card{display:flex;align-items:center;gap:.75rem;background-color:var(--surface);border:1px solid var(--divider-color);border-radius:6px;padding:10px 14px;cursor:pointer;transition:border-color .15s,background .15s;font-size:.875rem;font-weight:500}.gw-selection-card:hover{border-color:var(--primary);background-color:var(--hover-bg)}.gw-selection-card.selected{background-color:var(--brand-tint);border-color:var(--primary);color:var(--brand-text)}.gw-selection-card input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary);cursor:pointer}.popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--popup-overlay-bg);display:flex;align-items:center;justify-content:center;z-index:2000;padding:16px}.popup-window,.popup-content{width:min(520px,100%);border-radius:8px;background:var(--surface);box-shadow:0 20px 60px #00000026;padding:24px;position:relative;animation:gw-popup-in .18s ease}.popup-window h3,.popup-content h3{margin:0 0 16px;font-size:1rem;font-weight:600;color:var(--text-primary)}.popup-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.popup-close-button{position:absolute;top:12px;right:14px;background:none;border:none;font-size:1.4rem;color:var(--text-muted);cursor:pointer;line-height:1;padding:4px;border-radius:4px;transition:color .15s,background .15s}.popup-close-button:hover{color:var(--text-body);background:var(--surface-2)}.popup-title{margin:0 0 16px;font-size:1rem;font-weight:600;color:var(--text-primary)}.gw-actions{display:flex;justify-content:flex-end;gap:.5rem;padding-top:16px;margin-top:8px;border-top:1px solid var(--divider-color)}.gw-divider{height:1px;background:var(--divider-color);margin:0;border:none}.gw-section-title{font-weight:600;color:var(--text-primary);font-size:.9rem;margin:0 0 10px}.gw-hint{font-size:.8rem;color:var(--text-muted);margin-top:4px}.subtle{opacity:.75;font-size:.85rem}@media(max-width:640px){.popup-window,.popup-content{width:100%;border-radius:12px 12px 0 0;padding:20px 16px;position:fixed;bottom:0;left:0;right:0;top:auto;animation:gw-sheet-in .22s ease}.popup-overlay{align-items:flex-end;padding:0}@keyframes gw-sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}.gw-actions{flex-wrap:wrap}.gw-actions .gw-btn{flex:1;min-width:120px;justify-content:center}.chip-row{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes icon-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes gw-popup-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes gw-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.recharts-cartesian-grid line{stroke:var(--line)}.recharts-cartesian-axis-line,.recharts-cartesian-axis-tick-line{stroke:var(--control-border)}.recharts-cartesian-axis-tick-value{fill:var(--text-secondary)}.recharts-tooltip-cursor{fill:var(--hover-bg);stroke:var(--control-border)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.gw-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:500;padding:0 18px;border-radius:var(--radius-pill);background-color:var(--hero-bg);color:#fff;font-size:14px;line-height:1.25;min-height:44px;border:1px solid transparent;cursor:pointer;text-decoration:none;box-shadow:none;transition:background-color .15s,box-shadow .15s,border-color .15s;white-space:nowrap;font-family:inherit}.gw-btn svg{font-size:1rem;display:block}.gw-btn:hover{background-color:var(--hero-bg-hover)}.gw-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #0b6b524d}.gw-btn.secondary{background-color:var(--surface);color:var(--text-primary);border:1px solid var(--control-border)}.gw-btn.secondary:hover{background-color:var(--hover-bg);border-color:var(--control-border)}.gw-btn.danger{background-color:#b93a0b;color:#fff}.gw-btn.danger:hover{background-color:#9a330a}.gw-btn.ghost{background-color:var(--surface);color:var(--brand-text);border:1px solid var(--control-border)}.gw-btn.ghost:hover{background-color:var(--brand-tint);border-color:var(--brand-text)}.gw-btn.ghost.danger{background-color:var(--surface);color:var(--chip-danger-text);border-color:var(--fault-border)}.gw-btn.ghost.danger:hover{background-color:var(--chip-danger-bg);border-color:var(--chip-danger-text)}.gw-btn.sm{padding:0 14px;font-size:13px;min-height:36px}.gw-btn.sm svg{font-size:.875rem}.gw-btn.lg{min-height:52px;font-size:16px}.gw-btn.icon-only{padding:0;min-width:36px;min-height:36px}.gw-btn:disabled{opacity:.5;cursor:not-allowed}.gw-link-btn{background:none;border:none;padding:0;font-family:inherit;font-size:.82rem;color:var(--text-secondary);cursor:pointer;text-decoration:underline;text-underline-offset:2px;transition:color .12s}.gw-link-btn:hover{color:var(--text-body)}.fill-ring{width:64px;height:64px;border-radius:50%;background:conic-gradient(var(--ring-color) var(--ring-deg),var(--fill-track) 0deg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.fill-ring-value{width:50px;height:50px;border-radius:50%;background:var(--surface);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--text-primary);white-space:nowrap}.auth-page{--auth-accent: #8FE3C3;position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto;display:flex;gap:16px;padding:16px;box-sizing:border-box;background:var(--page-bg);color:var(--text-primary)}.auth-page a{color:var(--brand-text)}.auth-page a:hover{color:var(--brand-text-hover)}.auth-main{width:clamp(480px,34vw,680px);flex-shrink:0;box-sizing:border-box;padding:32px 64px 28px;display:flex;flex-direction:column;min-height:100%}.auth-header-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.auth-logo{height:31px;width:auto}.auth-logo--white,.auth-header-tagline{display:none}.auth-lang{position:relative;display:flex;align-items:center}.auth-lang-icon{position:absolute;left:12px;font-size:14px;color:var(--text-body);pointer-events:none}.auth-lang select{height:36px;min-height:36px;padding:0 30px 0 34px;border-color:var(--line);border-radius:var(--radius-pill);font-size:13px;color:var(--text-body);cursor:pointer}.auth-content{margin:auto 0;padding:32px 0;display:flex;flex-direction:column;gap:32px}.auth-card{display:flex;flex-direction:column;gap:32px}.auth-intro{display:flex;flex-direction:column;gap:10px}.auth-eyebrow{font-size:14px;font-weight:500;color:var(--brand-text);letter-spacing:.02em}.auth-title{margin:0;font-size:42px;font-weight:700;letter-spacing:-.03em;line-height:1.1;color:var(--text-primary)}.auth-subtitle{margin:0;font-size:16px;line-height:1.5;color:var(--text-secondary)}.auth-support{margin:0;font-size:14px;line-height:1.5;color:var(--text-secondary)}.auth-footer{display:flex;flex-wrap:wrap;gap:20px;font-size:13px;color:var(--text-secondary)}.auth-page .auth-footer a{color:var(--text-secondary)}.auth-panel{flex-grow:1;min-width:0;background:var(--hero-bg);border-radius:var(--radius-xl);padding:clamp(48px,4.5vw,96px);box-sizing:border-box;display:flex;flex-direction:column;gap:40px;color:#fff;overflow:hidden}.auth-panel-head{display:flex;flex-direction:column;gap:14px}.auth-panel-eyebrow{font-size:15px;color:var(--hero-text-muted)}.auth-panel-tagline{margin:0;font-size:clamp(48px,4vw,80px);font-weight:700;letter-spacing:-.035em;line-height:1.02}.auth-panel-tagline span{display:block}.auth-tagline-accent{color:var(--auth-accent)}.auth-panel-area{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;container-type:size;overflow:hidden}.auth-panel-stage{--stage-scale: clamp(.8, min(tan(atan2(100cqw, 700px)), tan(atan2(100cqh, 480px))), 1.4);position:relative;flex-shrink:0;width:640px;height:440px;transform:scale(var(--stage-scale))}.auth-sample{position:absolute;background:var(--surface);color:var(--text-primary);box-shadow:0 24px 50px #001e1447;box-sizing:border-box}.auth-sample--task{left:0;top:10px;width:400px;border-radius:22px;padding:22px;display:flex;flex-direction:column;gap:12px}.auth-sample-head{display:flex;align-items:center;gap:12px}.auth-sample-count{width:40px;height:40px;border-radius:12px;background:var(--chip-warning-bg);color:var(--chip-warning-text);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700}.auth-sample-titles{display:flex;flex-direction:column;gap:2px;font-size:13px;color:var(--text-secondary)}.auth-sample-titles strong{font-size:17px;color:var(--text-primary)}.auth-sample-line{display:flex;justify-content:space-between;padding-top:8px;border-top:1px solid var(--line-soft);font-size:14px;font-weight:500}.auth-sample-warn{font-weight:400;color:var(--chip-warning-text)}.auth-sample--device{left:300px;top:220px;width:330px;border-radius:20px;padding:18px;display:flex;align-items:center;gap:16px}.auth-sample--device strong{font-size:15px;font-weight:500}.auth-sample-ok{font-weight:500;color:var(--brand-text)}.auth-sample--pill{left:60px;top:360px;display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:var(--radius-pill);color:var(--brand-text);font-size:14px;font-weight:500}.auth-panel-benefits{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px 28px;font-size:14px;color:var(--hero-text-soft)}.auth-panel-benefits li{display:flex;align-items:center;gap:8px}@media(max-width:1279px){.auth-panel-area{visibility:hidden}}@media(max-width:1023px){.auth-page{display:block;padding:0}.auth-panel{display:none}.auth-main{width:auto;padding:0}.auth-header{background:var(--hero-bg);color:#fff;padding:28px 24px 92px;border-radius:0 0 28px 28px;display:flex;flex-direction:column;gap:26px}.auth-logo{height:24px}.auth-page .auth-header .auth-logo.auth-logo--positive{display:none}.auth-logo--white,.auth-header-tagline{display:block}.auth-lang-icon{color:#fff}.auth-lang select{background-color:transparent;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");border-color:#ffffff59;color:#fff}.auth-lang select option{color:var(--text-primary);background:var(--surface)}.auth-header-tagline{margin:0;font-size:32px;font-weight:700;letter-spacing:-.03em;line-height:1.05}.auth-content{margin:-64px 16px 0;padding:0;gap:20px}.auth-card{background:var(--surface);border-radius:22px;padding:24px 20px;gap:18px;box-shadow:var(--shadow-float)}.auth-intro{gap:6px}.auth-eyebrow{display:none}.auth-title{font-size:26px;letter-spacing:-.02em}.auth-subtitle{font-size:14px}.auth-support{padding:0 8px;text-align:center}.auth-footer{margin-top:auto;padding:20px 24px 28px;justify-content:center;gap:18px}}html,body,#root{margin:0;padding:0;height:100%;width:100%}.login-form{display:flex;flex-direction:column;gap:18px}.login-field{display:flex;flex-direction:column;gap:8px}.login-field label{font-size:14px;font-weight:500;color:var(--text-primary)}.login-label-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.login-label-row a{font-size:13px}.login-input{width:100%}.login-password{position:relative}.login-password-toggle{position:absolute;top:50%;right:3px;transform:translateY(-50%);width:44px;height:44px;border:0;border-radius:10px;background:transparent;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer}.login-password-toggle:hover{background:var(--hover-bg);color:var(--text-primary)}.login-password-toggle:focus-visible{outline:2px solid var(--hero-bg);outline-offset:-2px}.login-success{font-size:14px;line-height:1.4;color:var(--brand-text);background:var(--brand-tint);border:1px solid var(--chip-ok-border);border-radius:12px;padding:12px 14px}.login-error{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.4;color:var(--chip-danger-text);background:var(--chip-danger-bg);border-radius:12px;padding:12px 14px}.login-error svg{flex-shrink:0;margin-top:2px}.login-btn-block{width:100%;margin-top:6px}.login-back{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;font-size:14px}@media(max-width:1023px){.login-form{gap:16px}}.psm{display:flex;flex-direction:column;gap:6px;margin-top:6px}.psm-bar{display:flex;gap:4px;height:6px}.psm-segment{flex:1;border-radius:999px;transition:background .25s ease}.psm-segment--empty{background:var(--divider-color)}.psm-segment--weak{background:#ef4444}.psm-segment--medium{background:#f59e0b}.psm-segment--strong{background:#22c55e}.psm-label{font-size:.78rem;font-weight:600}.psm-label--weak{color:var(--chip-danger-text)}.psm-label--medium{color:var(--chip-warning-text)}.psm-label--strong{color:var(--brand-text)}.psm-rules{list-style:none;margin:2px 0 0;padding:0;display:flex;flex-direction:column;gap:3px}.psm-rule{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--text-secondary);transition:color .15s}.psm-rule--met{color:var(--brand-text)}.psm-rule-icon{font-size:.75rem;flex-shrink:0}.psm-rule-icon--met{color:#22c55e}.psm-rule-icon--unmet{color:var(--text-muted)}.access-denied{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;min-height:60vh;padding:2rem;text-align:center}.access-denied-icon{font-size:2.5rem;color:var(--gw-text-muted, var(--text-muted))}.access-denied-title{margin:0;font-size:1.5rem}.access-denied-message{margin:0;max-width:46ch;color:var(--gw-text-muted, var(--text-secondary));line-height:1.5}.access-denied-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:.5rem}.orgsel{position:relative;width:100%;display:block}.orgsel-trigger{width:100%!important;display:flex!important;align-items:center;justify-content:space-between;gap:6px;padding:7px 10px!important;background:var(--surface)!important;border:1px solid var(--control-border)!important;border-radius:6px!important;font-size:.875rem;font-weight:500;color:var(--text-body);cursor:pointer;font-family:inherit;text-align:left;transition:border-color .15s;box-shadow:none!important}.orgsel-trigger:hover{border-color:var(--text-muted)!important}.orgsel-trigger:focus{outline:none;border-color:var(--primary)!important;box-shadow:0 0 0 3px #00a27a26!important}.orgsel-trigger:disabled{opacity:.55;cursor:not-allowed;background:var(--surface-2)!important}.orgsel-trigger-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.875rem;font-weight:500}.orgsel-trigger--placeholder .orgsel-trigger-label{color:var(--text-muted);font-weight:400}.orgsel-caret{font-size:.75rem;color:var(--text-muted);flex-shrink:0;transition:transform .15s}.orgsel-caret.open{transform:rotate(180deg)}.orgsel-popover{position:absolute!important;top:calc(100% + 4px)!important;left:0!important;width:100%!important;min-width:200px;background:var(--surface)!important;border:1px solid var(--divider-color)!important;border-radius:6px!important;box-shadow:0 4px 12px #0000001a!important;z-index:9999;overflow:hidden}.orgsel-popover:before{display:none!important}.orgsel-top{padding:8px!important;border-bottom:1px solid var(--line);background:var(--surface-2)!important}.orgsel-title{display:none!important}.orgsel-search{width:100%;padding:6px 10px;border:1px solid var(--control-border);border-radius:5px;font-size:.8rem;font-family:inherit;color:var(--text-body);outline:none;background:var(--surface);box-sizing:border-box;transition:border-color .15s}.orgsel-search:focus{border-color:var(--primary);box-shadow:0 0 0 2px #00a27a26}.orgsel-search::placeholder{color:var(--text-muted)}.orgsel-list{max-height:300px;overflow-y:auto;overflow-x:hidden;padding:4px}.orgsel-item{width:100%;display:flex!important;align-items:center;gap:6px;padding:6px 8px;border-radius:5px;border:none!important;background:transparent!important;cursor:pointer;text-align:left;font-family:inherit;font-size:.875rem;color:var(--text-body);transition:background .1s;min-width:0;box-shadow:none!important}.orgsel-item:hover{background:var(--surface-2)!important}.orgsel-item.selected{background:var(--brand-tint)!important;color:var(--brand-text);font-weight:600}.orgsel-item-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.orgsel-pill{display:none!important}.orgsel-sep{height:1px;background:var(--surface-2);margin:4px 0}.orgsel-group{margin-bottom:1px}.orgsel-group-row{display:flex;align-items:center;gap:2px}.orgsel-expand{width:22px!important;height:22px!important;flex-shrink:0;border:none!important;background:transparent!important;cursor:pointer;font-size:.65rem;color:var(--text-muted);display:flex;align-items:center;justify-content:center;border-radius:3px;font-family:inherit;transition:color .1s,background .1s;box-shadow:none!important;padding:0!important}.orgsel-expand:hover{color:var(--text-body);background:var(--surface-2)!important}.orgsel-customer{flex:1;min-width:0;font-weight:600;font-size:.875rem;color:var(--text-primary)}.orgsel-customer.selected{color:var(--brand-text)}.orgsel-orgs{padding-left:22px}.orgsel-org{font-weight:400;font-size:.825rem;color:var(--text-secondary);padding-left:12px!important;position:relative}.orgsel-org:before{content:"";position:absolute;left:4px;top:50%;width:4px;height:4px;border-radius:50%;transform:translateY(-50%);background:var(--control-border)}.orgsel-org.selected{color:var(--brand-text);font-weight:600}.orgsel-org.selected:before{background:var(--primary)}.orgsel-empty{padding:10px 8px;font-size:.8rem;color:var(--text-muted);text-align:center}.sidebar-org .orgsel-trigger{gap:10px;padding:9px 10px!important;background:var(--surface-2)!important;border:1px solid var(--line)!important;border-radius:12px!important}.sidebar-org .orgsel-trigger:hover{border-color:var(--control-border)!important}.orgsel-initials{width:30px;height:30px;border-radius:8px;background:var(--hero-bg);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.orgsel-trigger-text{flex:1;min-width:0;display:flex;flex-direction:column}.orgsel-trigger-caption{font-size:11px;font-weight:400;color:var(--text-secondary)}.orgsel-trigger-text .orgsel-trigger-label{font-size:14px;color:var(--text-primary)}.sidebar{width:var(--sidebar-width);flex-shrink:0;background:var(--surface);border-radius:20px;padding:26px 14px 18px;box-sizing:border-box;color:var(--text-primary);display:flex;flex-direction:column;gap:22px;height:100%;overflow-y:auto;overflow-x:hidden;z-index:100;scrollbar-width:thin}.sidebar-logo{padding:0 10px;cursor:pointer;display:flex;align-items:center}.sidebar-logo-img{width:124px;height:auto}.sidebar-org .orgsel{width:100%;min-width:unset;max-width:100%}.sidebar-org .orgsel-popover{width:calc(var(--sidebar-width) - 28px);min-width:200px;max-width:calc(var(--sidebar-width) - 28px);left:0}.sidebar-nav{display:flex;flex-direction:column;gap:18px}.sidebar-group{display:flex;flex-direction:column;gap:2px}.sidebar-group-title{font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);padding:0 12px 6px}.sidebar-link{display:flex;align-items:center;gap:12px;padding:9px 12px;border-radius:10px;text-decoration:none;color:var(--text-body);font-size:14px;font-weight:400;transition:background .15s,color .15s}.sidebar-link:hover{background:var(--hover-bg);color:var(--text-primary)}.sidebar-link:focus-visible{outline:2px solid var(--brand-text);outline-offset:-2px}.sidebar-link.active{background:var(--brand-tint);color:var(--brand-text);font-weight:500}.sidebar-link-icon{font-size:16px;flex-shrink:0;width:18px;display:flex;align-items:center;justify-content:center}.sidebar-link-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-footer{margin-top:auto;padding:10px;border-radius:12px;background:var(--surface-2);display:flex;flex-direction:column;gap:10px}.sidebar-footer-row{display:flex;align-items:center;gap:4px}.sidebar-theme{display:flex;gap:2px;padding:2px;border-radius:var(--radius-pill);background:var(--page-bg)}.sidebar-theme-option{flex:1;border:none;background:none;border-radius:var(--radius-pill);padding:5px 4px;font:inherit;font-size:12px;color:var(--text-secondary);cursor:pointer}.sidebar-theme-option:hover{color:var(--text-primary)}.sidebar-theme-option[aria-pressed=true]{background:var(--brand-tint);color:var(--brand-text);font-weight:500}.sidebar-user{flex:1;display:flex;align-items:center;gap:10px;padding:0;border:none;background:none;cursor:pointer;font-family:inherit;font-size:14px;color:var(--text-primary);font-weight:500;text-align:left;min-width:0}.sidebar-user:hover .sidebar-user-name{color:var(--brand-text)}.sidebar-user-avatar{width:34px;height:34px;border-radius:50%;background:var(--avatar-bg);color:var(--text-primary);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0}.sidebar-user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.sidebar-icon-btn{width:30px;height:30px;border-radius:8px;border:none;background:none;cursor:pointer;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;font-size:15px;transition:background .15s,color .15s;flex-shrink:0}.sidebar-icon-btn:hover{background:var(--hover-bg);color:var(--brand-text)}.lang-dropdown{position:relative;flex-shrink:0}.lang-popover{position:absolute;bottom:calc(100% + 6px);right:0;background:var(--surface);border:1px solid var(--divider-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);overflow:hidden;z-index:200;min-width:60px}.lang-option{display:block;width:100%;padding:7px 14px;border:none;background:none;font-family:inherit;font-size:.82rem;font-weight:500;color:var(--text-body);cursor:pointer;text-align:center;letter-spacing:.5px;transition:background .1s}.lang-option:hover{background:var(--brand-tint)}.lang-option.active{background:var(--brand-tint);color:var(--brand-text)}@media(max-width:768px){.sidebar{position:fixed;top:0;left:0;height:100dvh;border-radius:0 20px 20px 0;z-index:1100;transform:translate(-100%);transition:transform .25s ease;box-shadow:none}.sidebar--open{transform:translate(0);box-shadow:4px 0 24px #0000002e}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:1099;animation:backdropIn .2s ease}@keyframes backdropIn{0%{opacity:0}to{opacity:1}}}.mobile-header{display:none}@media(max-width:768px){.mobile-header{display:flex;align-items:center;justify-content:space-between;height:52px;padding:0 14px;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:100;flex-shrink:0}.mobile-header-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;background:none;font-size:1.1rem;color:var(--text-primary);cursor:pointer;border-radius:6px;transition:background .12s}.mobile-header-btn:hover{background:var(--hover-bg)}.mobile-header-logo{height:26px;width:auto;position:absolute;left:50%;transform:translate(-50%)}.mobile-header-spacer{width:36px}}.error-boundary{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;min-height:60vh;padding:2rem;text-align:center}.error-boundary-title{margin:0;font-size:1.5rem}.error-boundary-message{margin:0;max-width:52ch;color:var(--gw-text-muted, var(--text-secondary));line-height:1.5}.error-boundary-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.page-loading{display:flex;flex-direction:column;gap:16px;padding:4px 0}.page-loading-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px}.page-loading-bar{border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-2) 0%,var(--hover-bg) 50%,var(--surface-2) 100%);background-size:200% 100%;animation:page-loading-shimmer 1.4s ease-in-out infinite}.page-loading-bar--title{height:32px;width:240px;max-width:60%}.page-loading-bar--tile{height:96px}.page-loading-bar--card{height:260px}.page-loading-message{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);margin:0}@keyframes page-loading-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.page-loading-bar{animation:none}}
