:root{color:#17324f;font-synthesis:none;text-rendering:optimizelegibility;--ink:#17324f;--muted:#687b91;--line:#dbe6ef;--paper:#fff;--white:#fff;--sidebar:#0b2f64;--orange:#1d50a2;--orange-soft:#e8f3fb;--purple:#409ad6;--green:#47bcc6;--amber:#f39800;--ecv-blue:#409ad6;--ecv-dark-blue:#1d50a2;--ecv-orange:#f39800;--ecv-sky:#00a3e5;--ecv-aqua:#47bcc6;--ecv-gradient:linear-gradient(90deg, #00a3e5 0%, #47bcc6 100%);--shadow:0 18px 50px #1d50a214;background:#f3f7fa;font-family:Proxima Nova,Calibri,Noto Sans Thai,Leelawadee UI,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:#092a59}body{background:#f3f7fa;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #409ad647}.app-shell{grid-template-columns:270px minmax(0,1fr);min-height:100vh;transition:grid-template-columns .22s;display:grid}.sidebar{z-index:30;scrollbar-width:thin;scrollbar-color:#fff3 transparent;color:#fff;background:linear-gradient(#0b326b 0%,#061f44 100%);flex-direction:column;width:270px;padding:26px 18px;transition:width .22s,padding .22s;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.sidebar-brand-row{justify-content:space-between;align-items:flex-start;gap:8px;min-width:0;display:flex}.brand{align-items:center;gap:13px;padding:0 9px 30px;display:flex}.brand>.brand-lockup{flex-direction:row;gap:9px;display:flex}.brand strong{letter-spacing:.01em;font-size:18px}.brand small{color:#898783;text-transform:uppercase;letter-spacing:.12em;font-size:13px}.brand-lockup{align-items:center;gap:10px;min-width:0;display:flex}.brand-color-stripe{background:linear-gradient(#00a3e5 0 72%,#f39800 72% 100%);border-radius:5px;flex:none;width:5px;height:34px;box-shadow:0 5px 16px #00a3e52e}.brand-lockup>strong{color:#fff;letter-spacing:-.025em;white-space:nowrap;min-width:0;font-size:20px;font-weight:700}.brand-lockup>strong>span{color:#66d2dd}.brand-mark{background:var(--orange);color:#fff;border-radius:12px 12px 12px 4px;place-items:center;width:40px;height:40px;display:grid;box-shadow:inset 0 0 0 1px #fff3}.brand-mark span{font:700 18px Proxima Nova,Calibri,sans-serif}.brand-mark.large{border-radius:15px 15px 15px 5px;width:52px;height:52px;margin-bottom:25px}.brand-mark.large span{font-size:26px}.sidebar-collapse-button{color:#ffffffbf;background:#ffffff12;border:1px solid #ffffff26;border-radius:8px;flex:none;place-items:center;width:29px;height:29px;padding:0;transition:background .16s,color .16s,transform .16s;display:grid}.sidebar-collapse-button:hover{color:#fff;background:#ffffff24}.sidebar-collapse-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:16px;height:16px}.source-switch{background:#0218374d;border:1px solid #ffffff1f;border-radius:13px;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 22px;padding:6px;display:grid}.source-switch button{color:#77746f;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:8px;min-width:0;padding:10px 8px;transition:all .16s;display:flex}.source-switch button:hover{color:#d7d2cb;background:#242424}.source-switch button.active{color:#fff;background:#302d2b;box-shadow:inset 0 0 0 1px #403b38}.source-switch button>span{color:#9d9791;background:#282625;border-radius:7px;flex:none;place-items:center;width:23px;height:23px;font-size:10px;font-weight:700;display:grid}.source-switch button.active>span{background:var(--orange);color:#fff}.source-switch button>div{flex-direction:column;gap:1px;min-width:0;display:flex}.source-switch strong{text-overflow:ellipsis;font-size:12px;overflow:hidden}.source-switch small{color:#74716c;font-size:10px}.source-switch.single-source{grid-template-columns:1fr}.source-card{color:#fff;background:#ffffff1a;border-radius:9px;align-items:center;gap:9px;min-width:0;padding:10px;display:flex;box-shadow:inset 0 0 0 1px #ffffff14}.source-card>span{background:var(--ecv-gradient);color:#fff;border-radius:7px;flex:none;place-items:center;width:25px;height:25px;font-size:10px;font-weight:700;display:grid}.source-card>div{flex-direction:column;gap:1px;min-width:0;display:flex}.source-card strong{text-overflow:ellipsis;font-size:12px;overflow:hidden}.source-card small{color:#ffffff9e;font-size:10px}.nav-caption{color:#ffffff75;letter-spacing:.1em;text-transform:uppercase;margin:0 8px 7px;font-size:10px;font-weight:700}.sidebar nav{flex-direction:column;gap:4px;display:flex}.sidebar nav button{color:#ffffffa8;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:13px;width:100%;min-height:49px;padding:9px 11px;font-size:16px;transition:all .16s;display:flex;position:relative}.sidebar nav button>span{color:#ffffff94;letter-spacing:.04em;background:#ffffff14;border-radius:7px;place-items:center;width:25px;height:25px;font-size:11px;display:grid}.sidebar nav button>b{min-width:0;font-weight:inherit;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar nav button:hover{color:#fff;background:#ffffff14}.sidebar nav button.active{color:#fff;box-shadow:inset 3px 0 var(--ecv-orange);background:#ffffff21}.sidebar nav button.active>span{color:#fff;background:var(--ecv-gradient)}.sidebar nav i{color:#ffd084;background:#f398002e;border-radius:20px;place-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 5px;font-size:13px;font-style:normal;display:grid}.main-shell{grid-column:2;min-width:0;min-height:100vh}.topbar{z-index:20;background:linear-gradient(#fff, #fff) padding-box, var(--ecv-gradient) border-box;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:3px solid #0000;border-bottom:1px solid #cddce9e6;justify-content:flex-end;align-items:center;gap:22px;height:78px;padding:0 36px;display:flex;position:sticky;top:0;box-shadow:0 7px 28px #1d50a20b}.mobile-title{display:none}.range-switch{background:linear-gradient(#fbfdff 0%,#f1f6fa 100%);border:1px solid #c9dceb;border-radius:14px;gap:3px;padding:5px;display:flex;box-shadow:inset 0 1px #fff,0 5px 16px #1d50a20f}.range-switch button{color:#687989;letter-spacing:-.01em;background:0 0;border:0;border-radius:10px;min-width:50px;min-height:38px;padding:7px 12px;font-size:13px;font-weight:650;transition:color .16s,background .16s,box-shadow .16s,transform .16s;position:relative;overflow:hidden}.range-switch button:hover:not(:disabled):not(.active){color:#173c70;background:#ffffffeb;transform:translateY(-1px);box-shadow:0 4px 11px #1d50a217}.range-switch button.active{color:#fff;background:linear-gradient(135deg,#143d78 0%,#1d50a2 52%,#3278b9 100%);box-shadow:0 7px 17px #1d50a247,inset 0 1px #fff3}.range-switch button.active:after{content:"";background:linear-gradient(90deg,#0000,#ffffffb8,#0000);height:1px;position:absolute;inset:0 0 auto}.range-switch button:disabled{cursor:wait;opacity:.55}.range-switch button.custom{text-overflow:ellipsis;white-space:nowrap;max-width:210px;overflow:hidden}.range-switch button.month-trigger{justify-content:center;align-items:center;gap:8px;min-width:104px;display:inline-flex}.range-switch button.month-trigger svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.45px;flex:none;width:15px;height:15px;overflow:visible}.date-range-control{position:relative}.date-popover{z-index:60;background:#fff;border:1px solid #d5e3ee;border-radius:13px;width:min(410px,100vw - 30px);padding:17px;position:absolute;top:calc(100% + 11px);right:0;box-shadow:0 22px 60px #14437733}.recommended-range{background:#e8f4fb;border-radius:9px;align-items:center;gap:10px;margin-bottom:15px;padding:10px 11px;display:flex}.recommended-range>span{background:var(--ecv-gradient);color:#fff;border-radius:8px;flex:none;place-items:center;width:25px;height:25px;font-size:13px;display:grid}.recommended-range p{flex-direction:column;gap:2px;margin:0;display:flex}.recommended-range strong{color:#5b453c;font-size:12px}.recommended-range small{color:#8b7166;font-size:10px}.date-fields{grid-template-columns:1fr auto 1fr;align-items:end;gap:9px;display:grid}.date-fields>span{color:#a09a92;padding-bottom:9px;font-size:13px}.date-fields label{color:#777068;flex-direction:column;gap:6px;font-size:11px;display:flex}.date-fields input{color:#46413c;background:#fff;border:1px solid #d8d2ca;border-radius:8px;width:100%;padding:8px 9px;font-size:12px}.date-help{color:#999189;margin:10px 0 0;font-size:10px;line-height:1.55}.date-error{color:#a74632;margin:8px 0 0;font-size:11px}.date-actions{justify-content:flex-end;gap:7px;margin-top:14px;display:flex}.date-actions button{color:#625c56;background:#fff;border:1px solid #d7d2ca;border-radius:8px;padding:8px 11px;font-size:11px}.date-actions .primary-button{border-color:var(--orange);background:var(--orange);color:#fff}.month-popover{width:min(460px,100vw - 30px)}.month-popover-heading{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:13px;display:flex}.month-popover-heading>div{flex-direction:column;gap:3px;display:flex}.month-popover-heading strong{color:#173c70;font-size:15px}.month-popover-heading small{color:#8f8982;font-size:10px}.month-popover-heading label{color:#777068;align-items:center;gap:7px;font-size:11px;display:flex}.month-popover-heading select{color:#173c70;background:#fff;border:1px solid #d5e2ec;border-radius:7px;padding:6px 24px 6px 8px;font-size:11px;font-weight:700}.month-overview-button{color:#315b86;background:#f7fafc;border:1px solid #d5e2ec;border-radius:8px;justify-content:space-between;align-items:center;width:100%;margin-bottom:10px;padding:10px 12px;font-size:11px;font-weight:700;display:flex}.month-overview-button.active{color:#173c70;background:#1d50a214;border-color:#1d50a247}.month-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.month-grid button{color:#4f4a45;text-align:left;background:#fff;border:1px solid #dce6ee;border-radius:8px;justify-content:space-between;align-items:center;gap:6px;min-height:48px;padding:8px 10px;font-size:11px;display:flex}.month-grid button:hover:not(:disabled){color:#173c70;background:#f4f9fc;border-color:#8db4d5}.month-grid button.active{border-color:var(--ecv-dark-blue);background:var(--ecv-dark-blue);color:#fff;box-shadow:0 5px 12px #1d50a22e}.month-grid button:disabled{cursor:not-allowed;opacity:.35}.month-grid button small{color:#a29b93;font-variant-numeric:tabular-nums;font-size:9px}.month-grid button.active small{color:#ffffffb3}.topbar-actions{align-items:center;gap:12px;display:flex}.language-switch{background:linear-gradient(#fff,#f4f7fa);border:1px solid #d2dce5;border-radius:12px;gap:2px;padding:4px;display:flex;box-shadow:inset 0 1px #fff}.language-switch button{color:#7f8992;background:0 0;border:0;border-radius:8px;min-width:38px;min-height:34px;padding:6px 8px;font-size:11px;font-weight:750;transition:all .16s}.language-switch button:hover:not(.active){color:#173c70;background:#fff}.language-switch button.active{color:#fff;background:linear-gradient(135deg,#143d78,#1d50a2 58%,#3278b9);box-shadow:0 5px 12px #1d50a23b}.refresh-button{color:#315b86;background:#fff;border:1px solid #d4e2ed;border-radius:9px;align-items:center;gap:8px;padding:10px 14px;font-size:13px;display:flex}.refresh-button:hover{background:#fff;border-color:#bcb5ab}.refresh-button.loading span{animation:1s linear infinite spin}.refresh-button:disabled{opacity:.6;cursor:wait}.user-menu{border-left:1px solid #d8d4cc;align-items:center;gap:11px;min-width:285px;padding-left:15px;display:flex}.user-menu>span{background:var(--ecv-gradient);color:#fff;border-radius:50%;place-items:center;width:31px;height:31px;font-size:12px;font-weight:700;display:grid}.user-menu>div{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.user-menu strong{text-overflow:ellipsis;white-space:nowrap;max-width:115px;font-size:13px;overflow:hidden}.user-menu small{color:#8b857e;font-size:11px}.user-menu .signout-button{color:#315b86;white-space:nowrap;background:#fff;border:1px solid #d8e3ec;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:38px;margin-left:auto;padding:8px 11px;font-size:11px;font-weight:700;transition:all .16s;display:inline-flex;box-shadow:0 3px 10px #1d50a20d}.user-menu .signout-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:16px;height:16px}.user-menu .signout-button:hover{color:#a74731;background:#fff5f1;border-color:#e1a38f;transform:translateY(-1px);box-shadow:0 5px 13px #a747311f}.user-menu .signout-button:focus-visible{outline-offset:2px;outline:3px solid #409ad640}.data-sync-status{color:#244b75;background:#f6f9fc;border-bottom:1px solid #d9e5ee;grid-template-columns:auto minmax(220px,.8fr) minmax(560px,2fr);align-items:center;gap:11px;min-height:52px;padding:8px 36px;display:grid}.data-sync-indicator{background:#3d9278;border-radius:50%;width:9px;height:9px;position:relative;box-shadow:0 0 0 5px #3d92781c}.data-sync-copy{flex-direction:column;gap:1px;min-width:0;display:flex}.data-sync-copy strong{font-size:12px}.data-sync-copy small{color:#788b9e;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.data-sync-meta{color:#718498;white-space:nowrap;justify-content:flex-end;align-items:center;gap:0;min-width:0;font-size:10px;display:flex}.data-sync-meta>span{border-left:1px solid #d8e4ed;padding:0 12px}.data-sync-meta strong{color:#315b86;margin-left:4px;font-weight:700}.data-sync-status.is-refreshing{background:#f1f8fc}.data-sync-status.is-refreshing .data-sync-indicator{background:var(--ecv-cyan);animation:1.4s ease-out infinite pulse;box-shadow:0 0 0 5px #47bcc621}.data-sync-status.is-error{background:#fff7f4;border-bottom-color:#efd8d0}.data-sync-status.is-error .data-sync-indicator{background:#c55f45;box-shadow:0 0 0 5px #c55f451c}.data-sync-status.is-error .data-sync-copy strong{color:#9c432f}.content{width:min(1580px,100%);margin:0 auto;padding:48px 44px 76px;transition:opacity .15s;position:relative}.content.is-refreshing{opacity:.94}.content.is-refreshing:before{z-index:3;background:linear-gradient(90deg, transparent, var(--ecv-cyan), var(--ecv-dark-blue), transparent);content:"";border-radius:999px;width:28%;height:3px;animation:1.05s ease-in-out infinite alternate loading-track;position:absolute;top:0;left:0;box-shadow:0 0 12px #47bcc659}.page-header{justify-content:space-between;align-items:flex-start;gap:34px;min-height:116px;margin-bottom:34px;display:flex}.eyebrow{color:var(--ecv-dark-blue);letter-spacing:.15em;text-transform:uppercase;margin:0 0 8px;font-size:12px;font-weight:700}.page-header h1{color:#173c70;letter-spacing:-.03em;margin:0;font:700 clamp(34px,3.2vw,48px)/1.14 Proxima Nova,Calibri,Noto Sans Thai,sans-serif}.page-copy{color:#6d8094;max-width:700px;margin:10px 0 0;font-size:15px;line-height:1.65}.page-actions{padding-top:4px}.sync-card{border:1px solid var(--line);background:#ffffff80;border-radius:11px;align-items:center;gap:10px;min-width:205px;padding:11px 13px;display:flex}.sync-card>div{flex-direction:column;gap:2px;display:flex}.sync-card strong{font-size:13px}.sync-card small{color:#8b857e;font-size:11px}.live-pulse{background:#3f9b7b;border-radius:50%;width:8px;height:8px;position:relative}.live-pulse:after{content:"";border:1px solid #58a88b;border-radius:50%;animation:2s ease-out infinite pulse;position:absolute;inset:-4px}.help-term{cursor:help;border-radius:4px;align-items:center;gap:5px;max-width:100%;display:inline-flex}.help-term:focus-visible{outline-offset:3px;outline:2px solid #409ad66b}.help-term-label{text-underline-offset:3px;min-width:0;-webkit-text-decoration:underline dotted #6f655c80;text-decoration:underline dotted #6f655c80;text-decoration-thickness:1px}.help-term-icon{color:#8a8179;border:1px solid #b9b1a9;border-radius:50%;flex:none;place-items:center;width:15px;height:15px;font:700 9px/1 Inter,sans-serif;transition:all .15s;display:inline-grid}.help-term:hover .help-term-icon,.help-term:focus .help-term-icon{border-color:var(--ecv-blue);background:var(--ecv-blue);color:#fff}.help-tooltip{z-index:1000;color:#fff;letter-spacing:0;text-align:left;text-transform:none;white-space:normal;pointer-events:none;background:#123d72;border:1px solid #2869af;border-radius:10px;width:min(284px,100vw - 24px);padding:11px 13px;font:400 12px/1.55 Proxima Nova,Calibri,Noto Sans Thai,sans-serif;animation:.14s ease-out tooltip-in;position:fixed;transform:translate(-50%);box-shadow:0 16px 42px #04234e47}.help-tooltip:after{content:"";background:#123d72;border-top:1px solid #2869af;border-left:1px solid #2869af;width:9px;height:9px;position:absolute;top:-5px;left:50%;transform:translate(-50%)rotate(45deg)}.help-tooltip.above{transform:translate(-50%,-100%)}.help-tooltip.above:after{border:1px solid #3c3733;border-top:0;border-left:0;top:auto;bottom:-5px}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:1fr;align-items:stretch;gap:18px;margin-bottom:18px;display:grid}.kpi-card{border:1px solid var(--line);background:var(--paper);min-width:0;height:100%;min-height:168px;box-shadow:var(--shadow);border-radius:15px;grid-template-rows:24px 30px 48px 24px;align-content:start;padding:20px 22px;display:grid;position:relative;overflow:hidden}.kpi-card:before{content:"";background:var(--ecv-gradient);opacity:.86;height:3px;position:absolute;inset:0 0 auto}.kpi-topline{justify-content:space-between;align-items:flex-start;height:24px;margin:0;display:flex}.kpi-index{color:#aaa49c;font:12px ui-monospace,SFMono-Regular,Menlo,monospace}.metric-dot{border-radius:50%;flex:none;width:7px;height:7px}.kpi-card>p{color:#77716a;align-items:flex-start;min-width:0;height:30px;margin:0;font-size:13px;font-weight:550;line-height:19px;display:flex}.kpi-card>strong{color:#173c70;font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1, "lnum" 1;letter-spacing:-.035em;white-space:nowrap;align-items:center;min-width:0;height:48px;margin:0;font-family:Proxima Nova,Calibri,Arial,sans-serif;font-size:40px;font-weight:600;line-height:48px;display:flex}.kpi-detail{color:#928c84;align-items:flex-start;min-width:0;height:24px;font-size:11px;line-height:16px;display:flex}.compact-grid .kpi-card{grid-template-rows:22px 28px 44px 22px;min-height:156px}.compact-grid .kpi-topline{height:22px}.compact-grid .kpi-card>p{height:28px}.compact-grid .kpi-card>strong{height:44px;font-size:36px;line-height:44px}.compact-grid .kpi-detail{height:22px}.overview-grid{grid-template-columns:minmax(0,1.65fr) minmax(320px,1fr);gap:18px;display:grid}.panel{border:1px solid var(--line);background:var(--paper);min-width:0;box-shadow:var(--shadow);border-radius:15px;padding:26px}.panel-wide{min-height:300px}.panel-heading{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:20px;display:flex}.chart-panel-heading{align-items:flex-end}.panel-heading h2{color:#173c70;letter-spacing:-.01em;margin:0;font:700 21px/1.3 Proxima Nova,Calibri,Noto Sans Thai,sans-serif}.panel-total{color:#36312d;font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1, "lnum" 1;letter-spacing:-.025em;white-space:nowrap;font:500 26px/1.05 Inter,Helvetica Neue,Arial,sans-serif}.health-panel{min-height:auto}.health-score{color:#3a7a66;text-transform:uppercase;letter-spacing:.04em;background:#e4efe9;border-radius:6px;padding:5px 8px;font-size:11px;font-weight:600}.bar-chart{contain:layout paint;height:220px;padding:8px 0 24px;position:relative;overflow:hidden}.chart-grid{flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:8px 0 25px}.chart-grid span{border-top:1px dashed #dedad2;width:100%}.bar-columns{align-items:end;gap:clamp(2px,.3vw,5px);min-width:0;display:grid;position:absolute;inset:8px 0 25px;overflow:hidden}.bar-columns.dense{gap:2px}.bar-column{cursor:crosshair;border-radius:3px;outline:0;align-items:flex-end;width:100%;min-width:0;height:100%;display:flex}.bar-fill{opacity:.84;transform-origin:bottom;background:linear-gradient(#00a3e5,#47bcc6);border-radius:3px 3px 1px 1px;width:100%;min-height:0;transition:opacity .15s,filter .15s;animation:.48s ease-out both rise}.bar-column:hover .bar-fill,.bar-column:focus .bar-fill{opacity:1;filter:saturate(1.18);box-shadow:0 0 0 2px #409ad62e}.chart-tooltip{z-index:1000;color:#dcecf8;white-space:nowrap;pointer-events:none;background:#123d72;border:1px solid #2b68aa;border-radius:8px;align-items:center;gap:7px;padding:8px 10px;font:500 11px/1.2 Proxima Nova,Calibri,Noto Sans Thai,sans-serif;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 12px 30px #04234e47}.chart-tooltip strong{color:#7ed6df;font-variant-numeric:tabular-nums;font-size:12px}.chart-tooltip:after{content:"";background:#292522;border-top:1px solid #3d3732;border-left:1px solid #3d3732;width:7px;height:7px;position:absolute;top:-4px;left:50%;transform:translate(-50%)rotate(45deg)}.chart-tooltip.above{transform:translate(-50%,-100%)}.chart-tooltip.above:after{border:1px solid #3d3732;border-top:0;border-left:0;top:auto;bottom:-4px}.chart-axis{color:#9a948d;justify-content:space-between;font-size:11px;display:flex;position:absolute;inset:auto 0 0}.metric-list{flex-direction:column;gap:15px;display:flex}.metric-row-label{align-items:center;gap:8px;min-width:0;display:flex}.metric-row-label>span:nth-child(2){color:#615c56;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;overflow:hidden}.metric-row-label strong{color:#504b46;font-size:12px;font-weight:600}.metric-track{background:#e2edf5;border-radius:6px;height:4px;margin:7px 0 0 15px;overflow:hidden}.metric-track span{border-radius:inherit;height:100%;display:block}.adoption-stat-list{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.adoption-stat-list>div{background:#f6fafc;border:1px solid #dce7ef;border-radius:9px;flex-direction:column;gap:5px;min-width:0;padding:13px 11px;display:flex}.adoption-stat-list span{color:#8b847d;text-transform:uppercase;font-size:11px}.adoption-stat-list strong{color:#173c70;font:700 23px Proxima Nova,Calibri,sans-serif}.adoption-stat-list small{color:var(--orange);font-size:11px}.enterprise-adoption-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.adoption-list{flex-direction:column;display:flex}.adoption-list>div{border-bottom:1px solid #e8e4dd;grid-template-columns:7px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 0;display:grid}.adoption-list>div:last-child{border-bottom:0}.adoption-list>div>div{flex-direction:column;gap:2px;min-width:0;display:flex}.adoption-list strong{color:#504b46;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.adoption-list small{color:#989189;font-size:10px}.adoption-list b{color:#403b37;font-size:13px;font-weight:600}.adoption-list.detailed details{border-bottom:1px solid #e8e4dd}.adoption-list.detailed details:last-child{border-bottom:0}.adoption-list.detailed summary{cursor:pointer;grid-template-columns:7px minmax(0,1fr) auto 16px;align-items:center;gap:10px;padding:11px 0;list-style:none;display:grid}.adoption-list.detailed summary::-webkit-details-marker{display:none}.adoption-list.detailed summary>div{flex-direction:column;gap:2px;min-width:0;display:flex}.adoption-list.detailed summary i{color:#9b948c;font-style:normal;transition:transform .16s}.adoption-list.detailed details[open] summary i{transform:rotate(180deg)}.adoption-metrics{grid-template-columns:1fr 1fr;gap:6px;padding:0 0 12px 17px;display:grid}.adoption-metrics span{background:#f2f8fb;border-radius:7px;flex-direction:column;gap:2px;min-width:0;padding:7px 8px;display:flex}.adoption-metrics small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.adoption-metrics strong{color:#4c4641;white-space:normal;font-size:11px}.adoption-detail-stack{padding-bottom:12px}.adoption-detail-stack .adoption-metrics{padding-bottom:0}.adoption-breakdown-grid{grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 0 17px;display:grid}.adoption-breakdown-grid section{background:#f8fbfd;border:1px solid #dce8f0;border-radius:8px;min-width:0;padding:9px 10px}.adoption-breakdown-grid header{color:#1d50a2;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font-size:9px;font-weight:700}.adoption-breakdown-grid section>div{color:#79736c;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:4px 0;font-size:9px;display:grid}.adoption-breakdown-grid section>div span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.adoption-breakdown-grid section>div strong{color:#244b82;font-variant-numeric:tabular-nums}.skill-user-list{border-top:1px solid #e2e9ee;margin:12px 0 0 17px;padding-top:12px}.skill-user-list>header{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:7px;display:flex}.skill-user-list>header>div{flex-direction:column;gap:2px;min-width:0;display:flex}.skill-user-list>header strong{color:#244b82;font-size:11px}.skill-user-list>header b{color:#605a54;white-space:nowrap;font-size:10px}.skill-user-list>p{color:#8d867f;margin:5px 0 0;font-size:10px;line-height:1.5}.skill-user-row{border-bottom:1px solid #edf1f4;grid-template-columns:29px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:44px;padding:6px 0;display:grid}.skill-user-row:last-child{border-bottom:0}.skill-user-row .entity-icon{border-radius:8px;width:29px;height:29px;font-size:9px}.skill-user-row>div{flex-direction:column;gap:1px;min-width:0;display:flex}.skill-user-row>div strong{color:#47413c;font-size:11px}.skill-user-row>div small{color:#8e8780;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.skill-user-row>b{color:#244b82;font-variant-numeric:tabular-nums;white-space:nowrap;flex-direction:column;align-items:flex-end;gap:1px;font-size:11px;display:flex}.skill-user-row>b small{color:#9a928b;font-size:8px;font-weight:500}.skill-user-row>b em{color:#8c857d;font-size:8px;font-style:normal;font-weight:500}.product-active-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.product-active-grid>div{background:#f7fafc;border:1px solid #dce8f0;border-radius:10px;grid-template-columns:7px minmax(0,1fr);align-items:center;gap:8px;padding:13px;display:grid}.product-active-grid>div>strong{color:#4c4742;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.product-active-grid dl{grid-column:1/-1;grid-template-columns:repeat(3,1fr);gap:5px;margin:4px 0 0;display:grid}.product-active-grid dl div{background:#fff;border-radius:6px;justify-content:space-between;align-items:baseline;gap:4px;padding:6px;display:flex}.product-active-grid dt{color:#9a938b;font-size:8px}.product-active-grid dd{color:#453f3a;margin:0;font-size:11px;font-weight:650}.availability-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.availability-item{background:#f7fafc;border:1px solid #dce8f0;border-radius:10px;align-items:center;gap:11px;min-width:0;padding:13px;display:flex}.availability-item>span{border-radius:50%;flex:none;place-items:center;width:23px;height:23px;font-size:12px;display:grid}.availability-item.ok>span{color:#2e7b61;background:#deede7}.availability-item.unavailable>span{color:#a36c18;background:#f3e5cd}.availability-item>div{flex-direction:column;gap:2px;min-width:0;display:flex}.availability-item strong{color:#4f4a45;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.availability-item small{color:#9b958d;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.freshness-strip{background:#cee0ed;border:1px solid #cee0ed;border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-bottom:20px;display:grid;overflow:hidden;box-shadow:0 8px 24px #133d700f}.freshness-strip>div{background:#fff;flex-direction:column;justify-content:center;gap:3px;min-width:0;min-height:72px;padding:13px 16px;display:flex}.freshness-strip span{color:#7a8794;letter-spacing:.03em;font-size:10px;font-weight:650}.freshness-strip strong{color:#173f76;font-size:15px}.freshness-strip small{color:#8d867f;font-size:9px;line-height:1.35}.freshness-strip .freshness-state{border-left:3px solid #47bcc6}.freshness-strip .freshness-state.provisional{background:#fffbf2;border-left-color:#f39800}.freshness-strip .freshness-state.provisional strong{color:#a66a00}.negative{color:#b54b35}.finance-command-panel{background:#fff;border:1px solid #c9dce9;border-radius:17px;margin-bottom:18px;padding:26px 27px 22px;position:relative;overflow:hidden;box-shadow:0 17px 46px #113d711a}.finance-command-panel:before{content:"";background:linear-gradient(90deg,#1d50a2,#00a3e5 56%,#47bcc6);height:4px;position:absolute;inset:0 0 auto}.finance-command-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px;display:flex}.finance-command-header h2{color:#173c70;letter-spacing:-.015em;margin:0;font:700 25px/1.2 Proxima Nova,Calibri,Noto Sans Thai,sans-serif}.finance-command-header>div>span{color:#8695a3;margin-top:5px;font-size:10px;display:inline-block}.monthly-budget-input{flex-direction:column;gap:6px;min-width:225px;display:flex}.monthly-budget-input>span{color:#65798d;font-size:10px;font-weight:650}.monthly-budget-input>div{background:#f8fbfd;border:1px solid #bdd4e5;border-radius:10px;grid-template-columns:34px minmax(0,1fr);height:43px;transition:border-color .15s,box-shadow .15s;display:grid;overflow:hidden}.monthly-budget-input>div:focus-within{border-color:#409ad6;box-shadow:0 0 0 3px #409ad61c}.monthly-budget-input b{color:#1d50a2;border-right:1px solid #d8e5ee;place-items:center;font-size:13px;display:grid}.monthly-budget-input input{color:#173c70;font-variant-numeric:tabular-nums;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:0 11px;font-size:15px;font-weight:700}.monthly-budget-input input::placeholder{color:#9aabb9;font-size:11px;font-weight:500}.finance-command-grid{grid-template-columns:minmax(0,1.22fr) minmax(390px,1fr);gap:14px;display:grid}.finance-budget-card{background:linear-gradient(135deg,#f6fbfe 0%,#edf6fb 100%);border:1px solid #cfe0eb;border-radius:13px;min-width:0;padding:20px}.finance-budget-card.is-over-budget{background:linear-gradient(135deg,#fffaf8 0%,#fff3ef 100%);border-color:#ebc9bf}.finance-budget-status{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2px 18px;display:grid}.finance-budget-status>span{color:#1d50a2;letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:750}.finance-budget-card.is-over-budget .finance-budget-status>span{color:#ad4f39}.finance-budget-status>strong{color:#173c70;font-variant-numeric:tabular-nums;letter-spacing:-.025em;white-space:nowrap;grid-row:span 2;font:700 35px/1 Proxima Nova,Calibri,sans-serif}.finance-budget-status>small{color:#8293a2;font-size:9px}.finance-budget-track{background:#dbe8f1;border-radius:99px;height:9px;margin-top:18px;position:relative}.finance-budget-track>span{border-radius:inherit;background:linear-gradient(90deg,#1d50a2,#00a3e5);height:100%;display:block}.finance-budget-card.is-over-budget .finance-budget-track>span{background:linear-gradient(90deg,#d06b4f,#f39800)}.finance-budget-track>i{background:#f39800;border-radius:2px;width:2px;height:19px;position:absolute;top:-5px;transform:translate(-1px);box-shadow:0 0 0 3px #f3980024}.finance-budget-legend{color:#7c8d9d;justify-content:space-between;align-items:center;gap:12px;margin-top:8px;font-size:8px;display:flex}.finance-budget-legend span{align-items:center;gap:5px;display:inline-flex}.finance-budget-legend i{background:#1d50a2;border-radius:50%;width:7px;height:7px}.finance-budget-legend i.forecast{background:0 0;border:2px solid #f39800}.finance-budget-values{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:17px 0 0;display:grid}.finance-budget-values>div{background:#ffffffb8;border:1px solid #bed3e1bf;border-radius:9px;min-width:0;padding:10px 11px}.finance-budget-values dt{color:#7a8b9b;min-height:25px;font-size:8px;line-height:1.35}.finance-budget-values dd{color:#173c70;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:15px;font-weight:750;overflow:hidden}.finance-budget-values dd.negative{color:#b54b35}.finance-budget-values dd.positive{color:#2f7b63}.finance-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.finance-metric-grid article{background:#fbfdfe;border:1px solid #d9e5ed;border-radius:11px;flex-direction:column;justify-content:center;min-width:0;min-height:106px;padding:14px 15px;display:flex}.finance-metric-grid article.needs-attention{background:#fffaf8;border-color:#ecd5cd}.finance-metric-grid span{color:#77899a;min-height:28px;font-size:9px;font-weight:600;line-height:1.35}.finance-metric-grid strong{color:#173c70;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font:700 22px/1.1 Proxima Nova,Calibri,sans-serif;overflow:hidden}.finance-metric-grid strong.negative{color:#b54b35}.finance-metric-grid strong.positive{color:#2f7b63}.finance-metric-grid small{color:#929da7;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:8px;line-height:1.4;overflow:hidden}.finance-command-note{color:#75889a;border-top:1px solid #e6edf2;align-items:center;gap:8px;margin-top:14px;padding-top:13px;display:flex}.finance-command-note>span{color:#1d50a2;background:#eaf3f9;border-radius:7px;flex:none;place-items:center;width:22px;height:22px;font-size:11px;display:grid}.finance-command-note p{margin:0;font-size:9px;line-height:1.45}.executive-decision-grid{grid-template-columns:minmax(0,1.65fr) minmax(300px,.72fr);gap:18px;margin-bottom:18px;display:grid}.executive-trend-card,.executive-signals{min-height:382px}.executive-panel-heading{align-items:flex-start}.trend-legend{align-items:center;gap:13px;padding-top:3px;display:flex}.trend-legend span{color:#75879a;white-space:nowrap;padding-left:16px;font-size:9px;position:relative}.trend-legend span:before{content:"";background:#1d50a2;border-radius:4px;width:10px;height:3px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.trend-legend span.seats:before{background:#f39800}.executive-trend-chart{height:260px;padding-bottom:28px;position:relative}.executive-trend-chart svg{width:100%;height:220px;overflow:visible}.executive-gridline{stroke:#dce7ef;stroke-dasharray:4 7;stroke-width:1px;vector-effect:non-scaling-stroke}.executive-active-area{fill:#409ad624;stroke:none}.executive-active-line,.executive-seat-line{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:3px;vector-effect:non-scaling-stroke}.executive-active-line{stroke:#1d50a2}.executive-seat-line{stroke:#f39800;stroke-width:2px}.executive-chart-axis{color:#8e9aa7;justify-content:space-between;font-size:9px;display:flex;position:absolute;inset:auto 0 0}.signal-list{flex-direction:column;display:flex}.signal-list>div{border-bottom:1px solid #e7edf2;grid-template-columns:31px minmax(0,1fr);align-items:start;gap:10px;min-width:0;padding:12px 0;display:grid}.signal-list>div:last-child{border-bottom:0}.signal-list>div>span{color:#315b86;background:#eaf3f9;border-radius:8px;place-items:center;width:27px;height:27px;font-size:12px;font-weight:750;display:grid}.signal-list>div.healthy>span{color:#2f7b63;background:#e2f1eb}.signal-list>div.attention>span{color:#a46a09;background:#fff1d8}.signal-list>div>div{min-width:0}.signal-list strong{color:#3f4953;font-size:11px}.signal-list p{color:#7b8997;margin:3px 0 0;font-size:9px;line-height:1.5}.executive-value-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;margin-bottom:18px;display:grid}.outcomes-card,.value-estimator{min-height:325px}.agentic-score,.value-total{text-align:right;flex-direction:column;align-items:flex-end;gap:2px;display:flex}.agentic-score small,.value-total small{color:#8795a3;font-size:8px}.agentic-score strong,.value-total strong{color:#173c70;font-variant-numeric:tabular-nums;font:700 24px/1.05 Proxima Nova,Calibri,sans-serif}.outcome-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.outcome-grid>div{background:linear-gradient(#fbfdff,#f3f8fb);border:1px solid #dce8f0;border-radius:10px;flex-direction:column;justify-content:center;gap:5px;min-width:0;min-height:92px;padding:13px;display:flex}.outcome-grid strong{color:#173c70;font-variant-numeric:tabular-nums;font:700 23px/1 Proxima Nova,Calibri,sans-serif}.outcome-grid span{color:#798898;font-size:9px;line-height:1.35}.metric-method-note{color:#87939f;margin:14px 0 0;font-size:9px;line-height:1.55}.value-assumptions{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.value-assumptions label{background:#f7fafc;border:1px solid #dce7ef;border-radius:9px;flex-direction:column;gap:5px;min-width:0;padding:10px;display:flex}.value-assumptions span{color:#788898;min-height:25px;font-size:8px;line-height:1.35}.value-assumptions input{color:#173c70;font-variant-numeric:tabular-nums;background:#fff;border:1px solid #cfdeea;border-radius:7px;outline:0;width:100%;min-width:0;height:34px;padding:0 8px;font-size:13px;font-weight:700}.value-assumptions input:focus{border-color:#409ad6;box-shadow:0 0 0 3px #409ad61c}.value-formula{background:#eaf3f9;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;padding:10px 12px;display:flex}.value-formula span{color:#52708d;font-size:9px}.value-formula strong{color:#173c70;font-variant-numeric:tabular-nums;font-size:14px}.stickiness-meter{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;margin-top:3px;display:grid}.stickiness-meter>span{background:#e1eaf1;border-radius:99px;height:5px;overflow:hidden}.stickiness-meter i{border-radius:inherit;background:linear-gradient(90deg,#1d50a2,#47bcc6);height:100%;display:block}.stickiness-meter b{color:#60758a;white-space:nowrap;font-size:8px;font-weight:650}.content-breakdown-button{color:#1d50a2;cursor:pointer;white-space:nowrap;background:#f4f9fc;border:1px solid #bcd6e8;border-radius:8px;align-items:center;gap:6px;padding:7px 10px;font-size:10px;font-weight:700;display:inline-flex}.content-breakdown-button span{color:#fff;background:#409ad6;border-radius:999px;place-items:center;min-width:18px;height:18px;font-size:8px;display:grid}.content-dialog-backdrop{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0a274c6b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.content-dialog{background:#fff;border:1px solid #c7dce9;border-radius:18px;width:min(720px,92vw);max-height:min(720px,86vh);padding:22px;overflow:auto;box-shadow:0 28px 80px #07244847}.content-dialog>header{border-bottom:1px solid #dfe9f0;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:16px;display:flex}.content-dialog>header p{color:#409ad6;letter-spacing:.12em;text-transform:uppercase;margin:0 0 4px;font-size:10px;font-weight:750}.content-dialog>header h2{color:#173f76;margin:0;font-size:23px}.content-dialog>header button{color:#476785;cursor:pointer;background:#f5f9fc;border:1px solid #cbdce8;border-radius:9px;flex:none;place-items:center;width:34px;height:34px;font-size:20px;display:grid}.content-dialog-grid{grid-template-columns:1fr 1fr;gap:20px;padding-top:18px;display:grid}.content-dialog-grid section{min-width:0}.content-dialog-grid section>header{color:#1d50a2;margin-bottom:8px;font-size:11px;font-weight:750}.content-dialog-grid section>div{border-top:1px solid #edf2f5;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:55px;padding:9px 0;display:grid}.content-dialog-grid section>div>span{flex-direction:column;gap:2px;min-width:0;display:flex}.content-dialog-grid section>div strong{color:#4e4944;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.content-dialog-grid section>div small,.content-dialog-grid p{color:#928b84;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:9px;overflow:hidden}.content-dialog-grid section>div>b{color:#173f76;font-variant-numeric:tabular-nums;white-space:nowrap;flex-direction:column;align-items:flex-end;gap:2px;font-size:11px;display:flex}.two-column-grid{grid-template-columns:1.4fr 1fr;gap:18px;display:grid}.two-column-grid>.panel{min-height:330px}.analytics-detail-grid{margin:18px 0}.acceptance-list{flex-direction:column;gap:14px;display:flex}.acceptance-list>div>div:first-child{color:#4f4944;text-transform:capitalize;justify-content:space-between;gap:10px;font-size:12px;display:flex}.acceptance-list>div>div:first-child span{color:#397765;font-weight:650}.acceptance-track{background:#e2edf5;border-radius:6px;height:6px;margin:6px 0 4px;overflow:hidden}.acceptance-track span{border-radius:inherit;background:var(--ecv-aqua);height:100%;display:block}.acceptance-list small{color:#918a83;font-size:10px}.model-cost-line{color:#766f68;border-top:1px solid #ece7e0;justify-content:space-between;gap:12px;margin-top:9px;padding-top:9px;font-size:11px;display:flex}.model-cost-line strong{color:#4a443f}.code-detail-table{min-width:1000px}.consumption-table{table-layout:fixed;min-width:1120px}.consumption-col-user{width:24%}.consumption-col-rbac{width:20%}.consumption-col-metric{width:11.2%}.consumption-heading{align-items:flex-end}.user-table-toolbar{justify-content:flex-end;align-items:center;gap:10px;display:flex}.activity-user-toolbar{flex:none}.activity-user-toolbar .user-table-search{width:min(300px,27vw)}.user-table-search{background:#fbfaf7;border:1px solid #d8d2ca;border-radius:9px;align-items:center;gap:9px;width:min(310px,32vw);height:40px;padding:0 12px;transition:border-color .15s,box-shadow .15s,background .15s;display:flex}.user-table-search:focus-within{border-color:var(--ecv-blue);background:#fff;box-shadow:0 0 0 3px #409ad61f}.user-table-search>svg{fill:none;stroke:#9b948c;stroke-linecap:round;stroke-width:1.8px;flex:none;width:16px;height:16px}.user-table-search input{color:#49443f;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:0;font:500 12px/1 Inter,sans-serif}.user-table-search input::placeholder{color:#a39c94;font-weight:400}.user-table-search input::-webkit-search-cancel-button{cursor:pointer;opacity:.55}.page-size-control{color:#8c857e;white-space:nowrap;background:#fbfaf7;border:1px solid #d8d2ca;border-radius:9px;align-items:center;gap:8px;height:40px;padding:0 7px 0 11px;font-size:10px;display:flex}.page-size-control select{color:#315b86;cursor:pointer;background-color:#e8f2f8;border:0;border-radius:6px;outline:0;height:28px;padding:0 24px 0 8px;font:650 11px/1 Proxima Nova,Calibri,sans-serif}.table-pagination{background:#f7fafc;border-top:1px solid #dce7ef;justify-content:space-between;align-items:center;gap:16px;min-height:58px;padding:10px 21px;display:flex}.table-pagination>span{color:#8f8880;font-size:11px}.table-pagination>div{align-items:center;gap:8px;display:flex}.table-pagination strong{color:#625c56;text-align:center;min-width:52px;font-size:11px}.table-pagination button{color:#59534d;background:#fff;border:1px solid #d8d2ca;border-radius:8px;place-items:center;width:32px;height:32px;font-size:14px;transition:all .15s;display:grid}.table-pagination button:hover:not(:disabled){border-color:var(--ecv-blue);color:#1d50a2;background:#e8f4fb}.table-pagination button:disabled{cursor:default;opacity:.35}.analytics-dimension-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:18px 0;display:grid}.dimension-panel{min-height:255px}.dimension-list{flex-direction:column;display:flex}.dimension-list>div{border-bottom:1px solid #ece8e1;grid-template-columns:7px minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:8px 0;font-size:10px;display:grid}.dimension-list>div:last-child{border-bottom:0}.dimension-list strong{color:#4e4944;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.dimension-list span:not(.metric-dot){color:#918a83}.dimension-list b{color:#3e3935;font-weight:650}.dimension-list.full-names>div{grid-template-columns:7px minmax(0,1fr);align-items:start;row-gap:5px}.dimension-list.full-names strong{overflow-wrap:anywhere;text-overflow:clip;white-space:normal;line-height:1.35;overflow:visible}.dimension-list.full-names .dimension-values{grid-column:2;justify-content:space-between;align-items:baseline;gap:12px;min-width:0;display:flex}.dimension-list.full-names .dimension-values>span{min-width:0}.cost-visual-grid{grid-template-columns:minmax(0,1.65fr) minmax(330px,.85fr);gap:18px;margin-bottom:18px;display:grid}.cost-trend-card,.cost-mix-card{min-height:412px}.cost-trend-card{border-color:var(--line);box-shadow:var(--shadow);color:#4e4944;background:#fff;position:relative;overflow:hidden}.cost-trend-card:before,.cost-trend-card:after{display:none}.cost-trend-card .panel-heading{z-index:2;position:relative}.cost-trend-card .panel-heading h2{color:#173c70}.cost-trend-card .panel-total{color:#173c70;font-size:30px}.cost-trend-card .help-term-label{text-decoration-color:#173c7040}.cost-trend-card .help-term-icon{color:#728395;border-color:#b9c5cf}.cost-area-chart{height:248px;margin-top:-2px;position:relative}.cost-area-chart svg{width:100%;height:calc(100% - 28px);position:absolute;inset:0 0 28px;overflow:visible}.cost-area-gridline{stroke:#dfe6ec;stroke-width:1px;stroke-dasharray:5 8;vector-effect:non-scaling-stroke}.cost-area-line{fill:none;stroke:#1d50a2;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.cost-area-guide{stroke:#1d50a24d;stroke-width:1px;stroke-dasharray:3 4;vector-effect:non-scaling-stroke}.cost-area-point-ring{fill:#1d50a21a;stroke:#1d50a259;stroke-width:1px;vector-effect:non-scaling-stroke}.cost-area-point{fill:#fff;stroke:#1d50a2;stroke-width:2px;vector-effect:non-scaling-stroke}.cost-area-hit-zones{display:grid;position:absolute;inset:0 0 28px}.cost-area-hit-zones button{cursor:crosshair;background:0 0;border:0;outline:0;min-width:0;padding:0}.cost-area-hit-zones button:focus-visible{outline-offset:-1px;outline:1px solid #1d50a266}.cost-area-tooltip{z-index:4;color:#c8bfb7;pointer-events:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f0e0de6;border:1px solid #ffffff21;border-radius:9px;flex-direction:column;gap:3px;min-width:104px;padding:8px 10px;font-size:8px;display:flex;position:absolute;transform:translate(-50%,calc(-100% - 12px));box-shadow:0 12px 28px #00000047}.cost-area-tooltip strong{color:#fff;font-variant-numeric:tabular-nums;font-size:13px}.cost-area-axis{color:#8d867f;justify-content:space-between;font-size:9px;display:flex;position:absolute;inset:auto 0 0}.cost-trend-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.cost-trend-stats>div{background:#faf9f7;border:1px solid #e7e2db;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:3px 10px;min-width:0;padding:11px 12px;display:grid}.cost-trend-stats span{color:#8f867e;letter-spacing:.04em;text-transform:uppercase;font-size:9px;font-weight:650}.cost-trend-stats strong{color:#3f3935;font-variant-numeric:tabular-nums;font-size:14px}.cost-trend-stats small{color:#8d867f;grid-column:1/-1;font-size:9px}.cost-history-note{z-index:2;color:#8d867f;margin:10px 2px 0;font-size:9px;line-height:1.5;position:relative}.monthly-cost-summary{margin-bottom:18px}.monthly-summary-total{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.monthly-summary-total small{color:#8f8880;font-size:9px}.monthly-summary-total strong{color:#173c70;font-variant-numeric:tabular-nums;font-size:22px}.monthly-cost-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;display:grid}.monthly-cost-row{border-bottom:1px solid #ece8e2;grid-template-columns:66px minmax(80px,1fr) 82px;align-items:center;gap:11px;min-height:42px;display:grid}.monthly-cost-row:nth-last-child(-n+2){border-bottom:0}.monthly-cost-row time{color:#5f5953;font-variant-numeric:tabular-nums;font-size:10px;font-weight:650}.monthly-cost-track{background:#e7edf2;border-radius:999px;height:6px;overflow:hidden}.monthly-cost-track span{border-radius:inherit;background:linear-gradient(90deg,#1d50a2,#47bcc6);height:100%;display:block}.monthly-cost-row strong{color:#3e3935;font-variant-numeric:tabular-nums;justify-self:end;font-size:11px}.monthly-cost-row.no-data time,.monthly-cost-row.no-data strong{color:#aaa39b;font-weight:500}.rbac-cost-allocation{margin-bottom:18px}.rbac-cost-heading{align-items:flex-start}.rbac-cost-total{text-align:right;justify-items:end;gap:2px;min-width:150px;display:grid}.rbac-cost-total small,.rbac-cost-total span{color:#918981;font-size:9px}.rbac-cost-total strong{color:#173c70;font-variant-numeric:tabular-nums;font:700 24px/1.1 Proxima Nova,Calibri,sans-serif}.rbac-cost-table{table-layout:fixed;min-width:760px}.rbac-cost-col-group{width:34%}.rbac-cost-col-number{width:12%}.rbac-cost-col-share{width:30%}.rbac-cost-group{grid-template-columns:30px minmax(0,1fr);align-items:center;gap:10px;min-width:0;display:grid}.rbac-cost-group>span{color:#1d50a2;font:650 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace}.rbac-cost-group>div{flex-direction:column;gap:3px;min-width:0;display:flex}.rbac-cost-group strong,.rbac-cost-group small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rbac-cost-group strong{color:#4d4843;font-size:11px}.rbac-cost-group small{color:#9a938c;font-size:8px}.rbac-cost-value{color:#173c70;font-weight:700}.rbac-cost-share{grid-template-columns:minmax(90px,1fr) 46px;align-items:center;gap:12px;display:grid}.rbac-cost-share>div{background:#e4edf3;border-radius:999px;height:7px;overflow:hidden}.rbac-cost-share>div>span{border-radius:inherit;background:#1d50a2;height:100%;display:block}.rbac-cost-share>strong{color:#6d665f;font-variant-numeric:tabular-nums;text-align:right;font-size:10px}.rbac-cost-note{color:#918981;margin:10px 20px 16px;font-size:9px;line-height:1.5}.allocation-page-header{min-height:105px}.allocation-save-actions{flex-direction:column;align-items:flex-end;gap:8px;min-width:235px;display:flex}.allocation-save-actions>div{justify-content:flex-end;min-height:18px;display:flex}.save-success,.save-error{font-size:11px;font-weight:650}.save-success{color:#28715f}.save-error{color:#a55135}.primary-action-button{color:#fff;background:linear-gradient(135deg,#143d78,#1d50a2 58%,#3278b9);border:0;border-radius:10px;min-height:42px;padding:10px 17px;font-size:12px;font-weight:700;transition:all .16s;box-shadow:0 9px 22px #1d50a22e}.primary-action-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 25px #1d50a240}.primary-action-button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.allocation-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.allocation-kpis article{border:1px solid var(--line);min-height:118px;box-shadow:var(--shadow);background:linear-gradient(#fff,#f8fbfd);border-radius:14px;grid-template-rows:18px 42px 18px;align-content:center;gap:3px;padding:17px 20px;display:grid;position:relative;overflow:hidden}.allocation-kpis article:before{background:var(--ecv-gradient);content:"";height:3px;position:absolute;inset:0 0 auto}.allocation-kpis article.attention:before{background:#f39800}.allocation-kpis small{color:#73879b;letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:700}.allocation-kpis strong{color:#173c70;font-variant-numeric:tabular-nums;font:700 31px/1.2 Proxima Nova,Calibri,sans-serif}.allocation-kpis span{color:#918981;font-size:10px}.allocation-layout{grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);align-items:start;gap:18px;display:grid}.allocation-buckets-panel,.allocation-rules-panel{min-height:590px}.allocation-buckets-panel .panel-heading>small{color:#315b86;background:#eaf3f9;border-radius:7px;padding:5px 8px;font-size:10px;font-weight:700}.allocation-create-form{grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-bottom:15px;display:grid}.allocation-create-form input{color:#3e464f;background:#f8fbfd;border:1px solid #d4e2ed;border-radius:9px;outline:0;min-width:0;height:41px;padding:0 12px;font-size:12px;transition:all .15s}.allocation-create-form input:focus{background:#fff;border-color:#409ad6;box-shadow:0 0 0 3px #409ad61c}.allocation-create-form button{color:#1d50a2;background:#edf6fb;border:1px solid #c7dcea;border-radius:9px;padding:0 13px;font-size:11px;font-weight:700}.allocation-create-form button:disabled{opacity:.45}.allocation-bucket-list{flex-direction:column;gap:9px;display:flex}.allocation-bucket-card{--bucket-color:#1d50a2;border:1px solid #dbe6ee;border-left:4px solid var(--bucket-color);background:#fff;border-radius:11px;padding:13px 14px}.allocation-bucket-head{grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.allocation-bucket-head>span{color:var(--bucket-color);font:700 9px/1 ui-monospace,SFMono-Regular,Menlo,monospace}.allocation-bucket-head input{color:#48443f;background:0 0;border:1px solid #0000;border-radius:6px;outline:0;min-width:0;padding:5px 7px;font-size:12px;font-weight:700}.allocation-bucket-head input:hover,.allocation-bucket-head input:focus{background:#f8fbfd;border-color:#d6e4ee}.allocation-bucket-head button{color:#a07465;background:0 0;border:0;border-radius:6px;padding:4px 7px;font-size:9px}.allocation-bucket-head button:hover{color:#a74731;background:#fff1eb}.allocation-bucket-value{justify-content:space-between;align-items:baseline;margin:10px 0 7px 33px;display:flex}.allocation-bucket-value strong{color:#173c70;font-variant-numeric:tabular-nums;font:700 20px/1 Proxima Nova,Calibri,sans-serif}.allocation-bucket-value span{color:#8e867e;font-variant-numeric:tabular-nums;font-size:9px}.allocation-progress{background:#e7eef3;border-radius:10px;height:6px;margin-left:33px;overflow:hidden}.allocation-progress span{border-radius:inherit;background:var(--bucket-color);height:100%;display:block}.allocation-bucket-card footer{color:#918981;flex-wrap:wrap;gap:11px;margin:9px 0 0 33px;font-size:9px;display:flex}.allocation-empty{text-align:center;background:#f8fbfd;border:1px dashed #cbdde9;border-radius:11px;justify-items:center;padding:30px 18px;display:grid}.allocation-empty>span{color:#1d50a2;background:#e4f2fa;border-radius:50%;place-items:center;width:31px;height:31px;margin-bottom:9px;font-size:18px;display:grid}.allocation-empty strong{color:#315b86;font-size:12px}.allocation-empty p{color:#8d9baa;max-width:260px;margin:5px 0 0;font-size:10px;line-height:1.5}.allocation-unassigned-card{background:#fffbf5;border:1px solid #eadfd1;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:11px 14px;display:flex}.allocation-unassigned-card>div{flex-direction:column;gap:2px;display:flex}.allocation-unassigned-card strong{color:#62594f;font-size:11px}.allocation-unassigned-card span{color:#9c9084;font-size:9px}.allocation-unassigned-card b{color:#7a5b33;font-variant-numeric:tabular-nums;font-size:14px}.allocation-rule-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px;display:flex}.allocation-mode-tabs{background:#f2f7fa;border:1px solid #d5e3ee;border-radius:9px;padding:3px;display:flex}.allocation-mode-tabs button{color:#71869a;background:0 0;border:0;border-radius:7px;min-height:31px;padding:6px 11px;font-size:10px;font-weight:700}.allocation-mode-tabs button.active{color:#1d50a2;background:#fff;box-shadow:0 3px 9px #1d50a21a}.allocation-search{background:#fff;border:1px solid #d5e3ed;border-radius:9px;align-items:center;gap:7px;min-width:210px;height:38px;padding:0 10px;display:flex}.allocation-search>span{color:#7390aa;font-size:16px}.allocation-search input{color:#4c5359;background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:11px}.allocation-rule-table{border:1px solid #dce7ef;border-radius:11px;max-height:525px}.allocation-rule-table table{min-width:690px}.allocation-rule-table th{z-index:1;padding:11px 13px;position:sticky;top:0}.allocation-rule-table td{padding:10px 13px}.allocation-rule-table select{color:#315b86;background:#f8fbfd;border:1px solid #d1e0eb;border-radius:8px;outline:0;width:100%;min-width:135px;height:32px;padding:0 27px 0 9px;font-size:10px;font-weight:650}.allocation-rule-table select:focus{border-color:#409ad6;box-shadow:0 0 0 3px #409ad61a}.allocation-user{grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;min-width:190px;display:grid}.allocation-user>span{color:#1d50a2;background:#dff0fa;border-radius:9px;place-items:center;width:34px;height:34px;font-size:9px;font-weight:750;display:grid}.allocation-user>div{flex-direction:column;gap:2px;min-width:0;display:flex}.allocation-user strong,.allocation-user small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.allocation-user strong{color:#4c4844;font-size:10px}.allocation-user small{color:#938c85;max-width:180px;font-size:8px}.allocation-group-tags{flex-wrap:wrap;gap:4px;max-width:180px;display:flex}.allocation-group-tags span,.allocation-group-tags i{color:#3b6c94;white-space:nowrap;background:#eaf4fa;border-radius:5px;padding:3px 5px;font-size:8px;font-style:normal}.allocation-group-tags i{color:#918a83;background:#f0efed}.allocation-group-row.expanded td{background:#f7fbfe;border-bottom-color:#0000}.allocation-member-button{color:#315f8b;font-variant-numeric:tabular-nums;background:#f4f9fc;border:1px solid #d3e3ee;border-radius:7px;justify-content:flex-end;align-items:center;gap:5px;min-width:74px;padding:5px 7px;font-size:10px;font-weight:700;display:inline-flex}.allocation-member-button:hover:not(:disabled),.allocation-member-button[aria-expanded=true]{color:#1d50a2;background:#e7f3fa;border-color:#9dc4df}.allocation-member-button:disabled{cursor:default;opacity:.55}.allocation-member-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:13px;height:13px;transition:transform .16s}.allocation-member-button[aria-expanded=true] svg{transform:rotate(180deg)}.allocation-group-detail-row>td{background:#f7fbfe;padding:0 12px 12px}.allocation-group-members{background:#fff;border:1px solid #d9e7f0;border-radius:10px;padding:12px;box-shadow:0 7px 18px #1d50a20d}.allocation-group-members>header{border-bottom:1px solid #e5edf3;justify-content:space-between;align-items:center;gap:14px;padding-bottom:9px;display:flex}.allocation-group-members>header>div{flex-direction:column;gap:2px;min-width:0;display:flex}.allocation-group-members>header strong{color:#173c70;font-size:11px}.allocation-group-members>header small,.allocation-group-members>header>span{color:#8796a4;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.allocation-group-members>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding-top:9px;display:grid}.allocation-group-members article{background:#f4f8fb;border-radius:8px;grid-template-columns:29px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:7px 8px;display:grid}.allocation-group-members article>span{color:#1d50a2;background:#dff0fa;border-radius:8px;place-items:center;width:29px;height:29px;font-size:8px;font-weight:750;display:grid}.allocation-group-members article>div{flex-direction:column;gap:1px;min-width:0;display:flex}.allocation-group-members article strong,.allocation-group-members article small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.allocation-group-members article strong{color:#4d4945;font-size:9px}.allocation-group-members article small{color:#929ca5;font-size:8px}.allocation-group-members article b{color:#173c70;font-variant-numeric:tabular-nums;font-size:9px}.allocation-rule-note{color:#8d97a0;margin:12px 2px 0;font-size:9px;line-height:1.55}.cost-mix-card{background:linear-gradient(#fff 0%,#f8fbfd 100%);flex-direction:column;display:flex}.cost-mix-content{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:18px;min-height:0;display:flex}.cost-donut{aspect-ratio:1;flex:none;place-items:center;width:min(194px,58%);display:grid;position:relative}.cost-donut svg{filter:drop-shadow(0 12px 18px #342b241c);width:100%;height:100%;position:absolute;inset:0;overflow:visible;transform:rotate(-18deg)}.cost-donut-track,.cost-donut-segment{fill:none;stroke-width:23px}.cost-donut-track{stroke:#e2edf5}.cost-donut-segment{cursor:pointer;transition:opacity .15s,stroke-width .15s}.cost-donut-segment:hover{stroke-width:27px}.cost-donut-segment.muted{opacity:.25}.cost-donut>div{z-index:1;text-align:center;flex-direction:column;align-items:center;max-width:94px;display:flex;position:relative}.cost-donut small{color:#999188;letter-spacing:.05em;text-transform:uppercase;font-size:8px;font-weight:700}.cost-donut strong{color:#173c70;font-variant-numeric:tabular-nums;margin:5px 0 2px;font:700 23px/1 Proxima Nova,Calibri,sans-serif}.cost-donut span{color:#aaa198;font-size:8px}.cost-mix-legend{grid-template-columns:1fr;width:100%;display:grid}.cost-mix-legend>button{text-align:left;background:0 0;border:0;border-bottom:1px solid #ece8e1;border-radius:5px;grid-template-columns:7px minmax(0,1fr) auto auto;align-items:center;gap:8px;min-width:0;padding:7px 5px;transition:background .15s;display:grid}.cost-mix-legend>button:last-child{border-bottom:0}.cost-mix-legend>button:hover,.cost-mix-legend>button:focus-visible{background:#edf6fb}.cost-mix-legend strong{color:#5a544f;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.cost-mix-legend>button>span:not(.metric-dot){color:#9a928a;font-variant-numeric:tabular-nums;font-size:9px}.cost-mix-legend b{color:#413b36;font-variant-numeric:tabular-nums;text-align:right;min-width:56px;font-size:10px}.cost-analytics-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.cost-ranking-card{min-height:442px}.top-five-badge{color:#1d50a2;letter-spacing:.08em;background:#e8f3fb;border-radius:6px;padding:5px 8px;font:700 9px/1 Proxima Nova,Calibri,sans-serif}.cost-rank-list{flex-direction:column;display:flex}.cost-rank-item{border-bottom:1px solid #ebe7e0;min-width:0;padding:0}.cost-rank-item:last-child{border-bottom:0}.cost-rank-item>summary{cursor:pointer;grid-template-columns:25px minmax(0,1fr) 16px;align-items:start;gap:10px;min-width:0;padding:13px 0;list-style:none;display:grid}.cost-rank-item>summary::-webkit-details-marker{display:none}.cost-rank-item>summary:focus{outline:0}.cost-rank-item>summary:focus-visible{outline-offset:2px;border-radius:8px;outline:2px solid #409ad666}.cost-rank-number{color:#aaa39b;padding-top:2px;font:11px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace}.cost-rank-main{min-width:0}.cost-rank-copy{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.cost-rank-copy>div{flex-direction:column;gap:2px;min-width:0;display:flex}.cost-rank-copy strong,.cost-rank-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cost-rank-copy strong{color:#4d4843;font-size:12px;font-weight:650}.cost-rank-copy small{color:#9a938c;font-size:9px}.cost-rank-copy b{color:#38332f;font-variant-numeric:tabular-nums;flex:none;font:650 13px/1.2 Inter,sans-serif}.cost-rank-track{background:#e2edf5;border-radius:5px;height:5px;margin-top:8px;overflow:hidden}.cost-rank-track span{border-radius:inherit;height:100%;display:block}.cost-rank-meta{color:#989189;font-variant-numeric:tabular-nums;justify-content:space-between;gap:10px;margin-top:5px;font-size:9px;display:flex}.cost-rank-chevron{color:#9b948d;padding-top:1px;font-size:13px;transition:transform .16s}.cost-rank-item[open] .cost-rank-chevron{transform:rotate(180deg)}.cost-rank-details{background:#f1f7fb;border-radius:9px;margin:-2px 0 12px 35px;padding:10px 11px}.cost-rank-details>p{color:#9a7163;letter-spacing:.03em;text-transform:uppercase;margin:0 0 6px;font-size:9px;font-weight:700}.cost-rank-details>div{border-bottom:1px solid #71675e1a;grid-template-columns:15px minmax(0,1fr) auto;align-items:center;gap:7px;min-width:0;padding:7px 0;display:grid}.cost-rank-details>div:last-child{border-bottom:0}.cost-rank-details>div>span{color:#aaa39c;font:9px ui-monospace,SFMono-Regular,Menlo,monospace}.cost-rank-details>div>div{flex-direction:column;gap:1px;min-width:0;display:flex}.cost-rank-details>div>div:last-child{align-items:flex-end}.cost-rank-details strong,.cost-rank-details small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.cost-rank-details strong{color:#514b46;font-size:10px}.cost-rank-details small{color:#9a938b;font-size:8px}.cost-rank-details b{color:#3f3935;font-variant-numeric:tabular-nums;font-size:10px}.cost-rank-detail-empty{color:#9a938b;padding:8px 0 3px;font-size:9px;line-height:1.45;display:block}.user-detail-section{margin-top:18px}.section-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin:26px 0 14px;display:flex}.section-heading h2{color:#173c70;margin:0;font:700 24px Proxima Nova,Calibri,Noto Sans Thai,sans-serif}.section-heading>p{color:#8d867f;text-align:right;max-width:520px;margin:0;font-size:11px}.activity-section-heading{margin-bottom:16px}.user-detail-list{flex-direction:column;gap:9px;display:flex}.user-detail-list>details{border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow);border-radius:13px;overflow:hidden}.user-detail-list summary{cursor:pointer;grid-template-columns:34px minmax(0,1fr) auto 18px;align-items:center;gap:11px;padding:13px 16px;list-style:none;display:grid}.user-detail-list summary::-webkit-details-marker{display:none}.user-detail-list summary>strong{color:#48423d;text-overflow:ellipsis;font-size:13px;overflow:hidden}.user-detail-list summary>small{color:#928a83;font-size:10px}.user-detail-list summary>b{color:#948d85;transition:transform .16s}.user-detail-list details[open] summary>b{transform:rotate(180deg)}.user-metric-groups{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:4px 16px 16px;display:grid}.user-metric-groups section{background:#f2f8fb;border-radius:10px;padding:13px}.user-metric-groups h3{color:#6f6760;align-items:center;min-height:20px;margin:0 0 9px;font-size:11px;display:flex}.user-metric-groups h3 .help-term-label{font-weight:650}.user-metric-groups section>div{grid-template-columns:1fr 1fr;gap:6px;display:grid}.user-metric-groups .activity-metric-card{background:#fffc;border-radius:8px;grid-template-rows:minmax(30px,auto) auto;align-content:space-between;gap:5px;min-width:0;min-height:65px;padding:9px 10px;display:grid}.user-metric-groups .activity-metric-card>small{color:#837b74;white-space:normal;min-width:0;font-size:9px;line-height:1.45;display:block;overflow:visible}.user-metric-groups .activity-metric-card .help-term{align-items:flex-start}.user-metric-groups .activity-metric-card .help-term-label{text-overflow:clip;white-space:normal;overflow:visible}.user-metric-groups .activity-metric-card>strong{color:#3f3935;font-variant-numeric:tabular-nums;font-size:13px}.content-data-grid{grid-template-columns:1fr;gap:18px;display:grid}.content-data-grid table{min-width:720px}.token-stack{background:#e2edf5;border-radius:20px;height:14px;margin:12px 0 29px;display:flex;overflow:hidden}.token-stack span{height:100%;box-shadow:inset -1px 0 #ffffff73}.cost-hero{color:#fff;background:linear-gradient(135deg,#1d50a2,#409ad6);border-radius:14px;grid-template-columns:minmax(220px,.62fr) 1.5fr;align-items:center;gap:35px;min-height:280px;margin-bottom:14px;padding:25px 28px;display:grid;box-shadow:0 22px 55px #1d50a233}.cost-hero>div:first-child{flex-direction:column;display:flex}.cost-hero p{color:#aaa29b;margin:0 0 9px;font-size:13px}.cost-hero strong{letter-spacing:-.04em;font:700 clamp(36px,5vw,61px)/1 Proxima Nova,Calibri,sans-serif}.cost-hero>div:first-child span{color:#9e968f;margin-top:14px;font-size:12px}.cost-hero .chart-grid span{border-color:#393532}.cost-hero .chart-axis{color:#817972}.table-panel{padding:0;overflow:hidden}.table-panel>.panel-heading{padding:20px 21px 0}.table-scroll{scrollbar-width:thin;scrollbar-color:#b8b0a7 transparent;overflow-x:auto}.table-scroll::-webkit-scrollbar{height:7px}.table-scroll::-webkit-scrollbar-track{background:0 0}.table-scroll::-webkit-scrollbar-thumb{background:#b8b0a7;border-radius:10px}table{border-collapse:collapse;width:100%}th{color:#6d8195;letter-spacing:.06em;text-align:left;text-transform:uppercase;white-space:nowrap;background:#f1f7fb;border-top:1px solid #dce7ef;border-bottom:1px solid #dce7ef;padding:14px 21px;font-size:11px;font-weight:600}td{color:#536d86;white-space:nowrap;border-bottom:1px solid #e3edf4;padding:17px 21px;font-size:12px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#f4f9fc}.numeric{font-variant-numeric:tabular-nums;text-align:right}.positive{color:#397765}.entity-cell{align-items:center;gap:10px;min-width:180px;display:flex}.entity-cell>div{flex-direction:column;gap:3px;min-width:0;display:flex}.entity-cell strong{color:#3f3a36;font-size:13px;font-weight:600}.entity-cell small{color:#979087;text-overflow:ellipsis;max-width:190px;font-size:10px;overflow:hidden}.entity-icon{color:#1d50a2;background:#e4f1f9;border-radius:8px;flex:none;place-items:center;width:30px;height:30px;font-size:11px;font-weight:700;display:grid}.entity-icon.orange{color:#b86f00;background:#fff0d6}.entity-icon.purple{color:#1d50a2;background:#dcecf7}.entity-icon.green{color:#31745d;background:#daebe5}.inline-progress{background:#e2edf5;border-radius:8px;width:110px;height:5px;overflow:hidden}.inline-progress span{border-radius:inherit;background:var(--orange);height:100%;display:block}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.status-pill{text-transform:capitalize;border-radius:20px;align-items:center;gap:5px;padding:4px 7px;font-size:10px;display:inline-flex}.status-pill span{border-radius:50%;width:5px;height:5px}.status-pill.success{color:#36735f;background:#e2efe9}.status-pill.success span{background:#3c9777}.status-pill.muted{color:#746e67;background:#e9e6e1}.status-pill.muted span{background:#8f8880}.status-pill.warning{color:#966b27;background:#f3e7d3}.status-pill.warning span{background:#ca8b27}.expiring{color:#bd5c40;font-weight:600}.resource-summary{background:linear-gradient(135deg,#e7f4fb,#dff2f4);border-radius:13px;align-items:baseline;gap:12px;min-height:102px;margin-bottom:14px;padding:22px 25px;display:flex}.resource-summary strong{color:#173c70;font:700 43px Proxima Nova,Calibri,sans-serif}.resource-summary span{color:#315b8b;font:600 16px Proxima Nova,Calibri,Noto Sans Thai,sans-serif}.resource-summary small{color:#83786f;margin-left:auto;font-size:11px}.activity-summary{background:linear-gradient(120deg,#e6f3fa 0%,#edf8f8 100%);border:1px solid #d3e4ef;border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:28px;min-height:118px;padding:24px 28px;display:grid;overflow:hidden;box-shadow:0 16px 38px #1d50a20f}.activity-summary-primary{align-items:center;gap:17px;min-width:0;display:flex}.activity-summary-primary>strong{color:#173c70;letter-spacing:-.04em;font:700 54px/.9 Proxima Nova,Calibri,sans-serif}.activity-summary-primary>div{flex-direction:column;gap:4px;display:flex}.activity-summary-primary>div>span{color:#403a35;font:650 15px/1.35 Inter,Noto Sans Thai,sans-serif}.activity-summary-primary small{color:#8a8179;margin:0;font-size:11px}.activity-summary-meta{align-items:stretch;display:flex}.activity-summary-meta>div{border-left:1px solid #6f605429;flex-direction:column;gap:5px;min-width:145px;padding:3px 20px;display:flex}.activity-summary-meta>div>span{color:#8b8178;letter-spacing:.06em;text-transform:uppercase;font:600 10px/1.4 Inter,Noto Sans Thai,sans-serif}.activity-summary .help-term,.activity-summary .help-term-label{font:inherit;letter-spacing:inherit}.activity-summary .help-term-icon{letter-spacing:0;font:700 9px/1 Inter,sans-serif}.activity-summary-meta strong{color:#3c3631;white-space:nowrap;font:600 14px/1.3 Inter,Noto Sans Thai,sans-serif}.activity-table-panel{border-radius:16px;box-shadow:0 18px 46px #2e261f11}.activity-table{table-layout:fixed;min-width:1440px}.activity-col-user{width:22%}.activity-col-rbac{width:18%}.activity-col-date{width:11%}.activity-col-metric{width:10%}.activity-col-metric-wide{width:13%}.activity-col-metric-compact{width:8%}.activity-table th{vertical-align:middle;color:#8d857d;letter-spacing:.065em;background:#f5f2ed;height:56px;padding:0 16px;font-size:9px;line-height:1.2}.activity-table th.numeric{text-align:center}.activity-table th .help-term{grid-template-columns:minmax(0,auto) 15px;justify-content:center;align-items:center;gap:6px;width:100%;display:grid}.activity-table th .help-term-label{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.activity-table th .help-term-icon{width:15px;height:15px}.activity-table td{vertical-align:middle;color:#57514c;height:76px;padding:13px 16px;font-size:13px;line-height:1.3}.activity-table td.numeric{color:#4e4944;text-align:center;font-size:13px;font-weight:500}.activity-table td.positive{color:#327561}.activity-table .entity-cell{gap:12px;min-width:0}.activity-table .entity-icon{border-radius:10px;width:36px;height:36px;font-size:11px}.activity-table .entity-cell strong{font-size:14px;font-weight:650}.activity-table .entity-cell small{max-width:100%;font-size:11px}.activity-table th:nth-child(3),.activity-date{text-align:center}.activity-date{color:#6c655f;font-variant-numeric:tabular-nums}.rbac-cell{white-space:normal}.rbac-chip-list{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.rbac-chip{color:#315f87;text-overflow:ellipsis;white-space:nowrap;background:#eaf4f8;border:1px solid #cadfea;border-radius:999px;max-width:100%;padding:5px 8px;font-size:10px;font-weight:650;line-height:1.2;overflow:hidden}.rbac-empty{color:#a19a92;font-size:10px;font-style:italic}.activity-table .rbac-cell,.consumption-table .rbac-cell{text-align:center}.activity-table .rbac-chip-list,.consumption-table .rbac-chip-list{justify-content:center}.activity-table .rbac-empty,.consumption-table .rbac-empty{text-align:center;display:block}.consumption-table th:nth-child(2){text-align:center}.activity-table th:first-child,.activity-table td:first-child{position:sticky;left:0;box-shadow:1px 0 #e4dfd7}.activity-table th:first-child{z-index:2}.activity-table td:first-child{z-index:1;background:var(--paper)}.activity-table tbody tr{transition:background .15s,box-shadow .15s}.activity-table tbody tr:hover{box-shadow:inset 3px 0 var(--orange);background:#f7f3ee}.activity-table tbody tr:hover td:first-child{background:#f7f3ee}.search-field{background:#fff9;border:1px solid #d8d3cb;border-radius:9px;align-items:center;gap:8px;min-width:220px;padding:8px 11px;display:flex}.search-field span{color:#827b74}.search-field input{color:#4a4540;background:0 0;border:0;outline:0;width:100%;font-size:13px}.search-field input::placeholder{color:#aaa39b}.notice-card{background:#f4eadc;border:1px solid #e4d9cb;border-radius:10px;align-items:center;gap:11px;margin-bottom:14px;padding:11px 14px;display:flex}.notice-card>span{color:#a76300;background:#fff0d6;border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font:700 14px Proxima Nova,Calibri,sans-serif;display:grid}.notice-card p{color:#766755;margin:0;font-size:12px;line-height:1.5}.notice-card strong{color:#5a4c3c}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:180px;padding:25px;display:flex}.empty-state>span{color:#409ad6;background:#e6f2fa;border-radius:50%;place-items:center;width:35px;height:35px;margin-bottom:10px;font:700 16px Proxima Nova,Calibri,sans-serif;display:grid}.empty-state strong{font-size:14px}.empty-state p{color:#969088;margin:5px 0 0;font-size:12px}.team-grid{grid-template-columns:1.35fr .8fr}.people-list,.invite-list{flex-direction:column;display:flex}.person-row,.invite-row{border-bottom:1px solid #e9e5de;align-items:center;gap:10px;padding:11px 0;display:flex}.person-row:last-child,.invite-row:last-child{border-bottom:0}.avatar{color:#5f5851;background:#ddd7ce;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:11px;font-weight:700;display:grid}.person-row>div,.invite-row>div{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.person-row strong,.invite-row strong{color:#45403b;text-overflow:ellipsis;font-size:13px;overflow:hidden}.person-row small,.invite-row small{color:#9b958d;text-overflow:ellipsis;font-size:11px;overflow:hidden}.role-tag,.mode-tag{color:#69635d;text-transform:capitalize;white-space:nowrap;background:#ebe7e0;border-radius:5px;padding:4px 7px;font-size:10px}.limit-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.limit-card{border:1px solid var(--line);background:var(--paper);min-height:230px;box-shadow:var(--shadow);border-radius:13px;padding:20px}.limit-card-head{border-bottom:1px solid #e5e1da;align-items:center;gap:11px;padding-bottom:15px;display:flex}.limit-card-head>span{color:#fff;background:#272421;border-radius:9px;place-items:center;width:33px;height:33px;font:12px ui-monospace,monospace;display:grid}.limit-card-head>div{flex-direction:column;gap:3px;min-width:0;display:flex}.limit-card-head p{color:var(--orange);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:10px;font-weight:700}.limit-card-head strong{color:#173c70;text-overflow:ellipsis;white-space:nowrap;font:700 17px Proxima Nova,Calibri,sans-serif;overflow:hidden}.limit-values{flex-direction:column;gap:11px;padding-top:15px;display:flex}.limit-values>div{grid-template-columns:1fr auto;align-items:baseline;gap:5px;display:grid}.limit-values span{color:#8b847d;text-transform:capitalize;font-size:10px}.limit-values strong{color:#49443f;font-variant-numeric:tabular-nums;font-size:14px}.limit-values small{color:#aaa39c;grid-column:1/-1;font-size:10px}.models-note{color:#9a938c;margin-top:13px;font-size:10px;display:block}.architecture-strip{color:#fff;background:#24211f;border-radius:15px;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;gap:15px;margin-bottom:18px;padding:23px;display:grid}.architecture-strip>div{grid-template-columns:28px 1fr;column-gap:8px;min-width:0;display:grid}.architecture-strip>div>span{color:#d9967e;background:#36312e;border-radius:8px;grid-row:1/3;place-items:center;width:28px;height:28px;font:11px ui-monospace,monospace;display:grid}.architecture-strip strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.architecture-strip small{color:#89827c;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:10px;overflow:hidden}.architecture-strip i{color:#5d5650;font-style:normal}.settings-grid{grid-template-columns:1.25fr .75fr}.settings-stack{flex-direction:column;gap:14px;display:flex}.settings-stack .panel{min-height:auto}.secret-setup-panel{background:linear-gradient(135deg,#fff 0%,#f6efe9 100%);border-color:#d9cec4;grid-template-columns:minmax(0,.85fr) minmax(340px,1.15fr);align-items:center;gap:34px;min-height:auto;margin-bottom:14px;padding:25px 28px;display:grid}.secret-setup-copy h2{color:#173c70;margin:3px 0 9px;font:700 24px Proxima Nova,Calibri,Noto Sans Thai,sans-serif}.secret-setup-copy>p:not(.eyebrow){color:#746d66;max-width:490px;margin:0;font-size:12px;line-height:1.7}.secret-guardrail{color:#5e766c;align-items:center;gap:7px;margin-top:13px;display:flex}.secret-guardrail span{background:#dfece6;border-radius:50%;flex:none;place-items:center;width:19px;height:19px;font-size:10px;display:grid}.secret-guardrail small{font-size:11px;line-height:1.5}.secret-form{background:#ffffffd1;border:1px solid #ded7d0;border-radius:12px;flex-direction:column;gap:9px;padding:18px;display:flex;box-shadow:0 12px 35px #392b220f}.secret-form>label{color:#5b554f;letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:700}.secret-input{background:#fff;border:1px solid #d5cfc7;border-radius:9px;align-items:center;transition:border-color .15s,box-shadow .15s;display:flex;overflow:hidden}.secret-input:focus-within{border-color:var(--ecv-blue);box-shadow:0 0 0 3px #409ad61f}.secret-input input{color:#393532;background:0 0;border:0;outline:0;flex:1;min-width:0;padding:11px 12px;font:13px ui-monospace,SFMono-Regular,Menlo,monospace}.secret-input input::placeholder{color:#aaa39b}.secret-input button{color:#766f68;background:#f7f4f0;border:0;border-left:1px solid #e6e1da;align-self:stretch;padding:0 12px;font-size:11px}.secret-submit{align-self:flex-start;min-width:160px;margin-top:2px}.secret-submit:disabled{cursor:not-allowed;opacity:.58}.secret-message{border-radius:7px;margin:0;padding:8px 10px;font-size:11px;line-height:1.5}.secret-message.error{color:#964c39;background:#f6e4df}.secret-message.success{color:#33745e;background:#e1eee8}.connection-settings-grid{grid-template-columns:minmax(280px,.72fr) minmax(480px,1.28fr);align-items:stretch;gap:18px;display:grid}.connection-status-card{flex-direction:column;justify-content:center;align-items:flex-start;min-height:300px;display:flex}.connection-status-card>p:not(.eyebrow){color:#6d8094;max-width:430px;margin:15px 0 0;font-size:14px;line-height:1.65}.connection-status-card>small{color:#8293a4;margin-top:18px;font-size:12px}.connection-status-badge{border-radius:10px;align-items:center;gap:10px;margin-top:6px;padding:10px 13px;display:inline-flex}.connection-status-badge span{border-radius:50%;place-items:center;width:27px;height:27px;font-weight:700;display:grid}.connection-status-badge strong{font-size:16px}.connection-status-badge.ready{color:#2e765e;background:#e6f2ed}.connection-status-badge.ready span{background:#cfe6dc}.connection-status-badge.missing{color:#956519;background:#fff4e5}.connection-status-badge.missing span{background:#f7dfb8}.connection-key-form{justify-content:center;min-height:300px;padding:30px}.connection-form-heading{margin-bottom:10px}.connection-form-heading h2{color:#173c70;margin:0;font:700 24px Proxima Nova,Calibri,Noto Sans Thai,sans-serif}.connection-form-heading>p:not(.eyebrow){color:#6d8094;max-width:620px;margin:8px 0 0;font-size:13px;line-height:1.6}.coverage-list{flex-direction:column;display:flex}.coverage-list>div{border-top:1px solid #e9e5df;grid-template-columns:22px 1fr auto;align-items:center;gap:10px;padding:9px 21px;display:grid}.coverage-list>div>div{flex-direction:column;gap:2px;min-width:0;display:flex}.coverage-list strong{color:#4d4843;font-size:12px}.coverage-list small{color:#9a938b;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.check-mark{color:#367a63;background:#dfece6;border-radius:50%;place-items:center;width:21px;height:21px;font-size:11px;display:grid}.check-list{flex-direction:column;gap:11px;margin:0;padding:0;list-style:none;display:flex}.check-list li{color:#625d57;align-items:center;gap:8px;font-size:12px;display:flex}.check-list li span{color:#3c7d66;background:#e0ece6;border-radius:50%;place-items:center;width:19px;height:19px;font-size:10px;display:grid}.details-list{margin:0}.details-list>div{border-bottom:1px solid #e9e5df;justify-content:space-between;gap:12px;padding:9px 0;display:flex}.details-list>div:last-child{border-bottom:0}.details-list dt{color:#938c84;font-size:11px}.details-list dd{color:#504b45;text-overflow:ellipsis;white-space:nowrap;max-width:60%;margin:0;font-size:11px;overflow:hidden}.global-error{color:#fff;background:#9b4b38;align-items:center;gap:12px;padding:10px 36px;font-size:12px;display:flex}.global-error span{opacity:.82}.global-error button{color:#fff;background:0 0;border:1px solid #ffffff4d;border-radius:5px;margin-left:auto;padding:5px 9px;font-size:11px}.page-loading{color:#77716b;flex-direction:column;justify-content:center;align-items:center;gap:13px;min-height:55vh;display:flex}.page-loading span{border:2px solid #d8d3cb;border-top-color:var(--orange);border-radius:50%;width:25px;height:25px;animation:.9s linear infinite spin}.page-loading strong{font-size:13px;font-weight:500}.login-screen{color:#fff;isolation:isolate;overscroll-behavior:none;background:linear-gradient(135deg,#061f44 0%,#0d4388 62%,#0a3269 100%);grid-template-rows:auto minmax(0,1fr) auto;width:100%;height:100dvh;min-height:0;padding:clamp(18px,2.7vh,28px) clamp(28px,5vw,80px) clamp(14px,2.2vh,22px);display:grid;position:relative;overflow:hidden auto}.login-screen:before{content:"";z-index:-3;opacity:.09;background-image:linear-gradient(#fff3 1px,#0000 1px),linear-gradient(90deg,#fff3 1px,#0000 1px);background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(115deg,#000 0%,#0000 72%);mask-image:linear-gradient(115deg,#000 0%,#0000 72%)}.login-grid-glow{z-index:-2;opacity:.82;pointer-events:none;background:radial-gradient(at 104% 58%,#47bcc69e 0%,#00a3e53d 36%,#0000 66%),linear-gradient(90deg,#041d3f6b 0 48%,#0000 66%);position:absolute;inset:0}.login-aurora{z-index:-1;filter:blur(5px);pointer-events:none;border-radius:50%;position:fixed}.login-aurora.orange{background:radial-gradient(circle,#f3980047,#f3980000 70%);width:620px;height:620px;top:-420px;right:-120px}.login-aurora.violet{background:radial-gradient(circle,#00a3e538,#00a3e500 70%);width:680px;height:680px;bottom:-510px;left:-190px}.login-topbar{z-index:3;justify-content:space-between;align-items:center;width:min(1440px,100%);margin:0 auto;display:flex;position:relative}.login-brand{align-items:center;gap:11px;display:flex}.login-brand .brand-color-stripe{height:38px}.login-brand .brand-lockup>strong{font-size:22px}.login-brand>.brand-lockup{flex-direction:row;gap:9px;display:flex}.login-brand strong{color:#f8f5ef;letter-spacing:.01em;font-size:17px}.login-brand small{color:#77726c;letter-spacing:.13em;text-transform:uppercase;font-size:10px}.login-language{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#05254f9e;border:1px solid #ffffff38;border-radius:10px;padding:3px;display:flex;box-shadow:0 8px 26px #0000001f}.login-language button{color:#ffffff9e;background:0 0;border:0;border-radius:6px;min-width:33px;padding:6px 7px;font-size:11px;font-weight:700}.login-language button.active{color:var(--ecv-dark-blue);background:#fff}.login-layout{z-index:2;grid-template-columns:minmax(0,1.08fr) minmax(430px,.82fr);align-items:center;gap:clamp(54px,7vw,112px);width:min(1380px,100%);min-height:0;margin:0 auto;padding:clamp(18px,3.2vh,34px) 0;display:grid;position:relative}.login-story{max-width:660px}.login-kicker{color:#a09a94;letter-spacing:.2em;text-transform:uppercase;align-items:center;gap:9px;margin-bottom:clamp(15px,2.2vh,22px);font-size:10px;font-weight:750;display:flex}.login-kicker span{background:var(--orange);width:28px;height:1px}.login-story h1{color:#fff;letter-spacing:-.055em;text-shadow:0 16px 46px #00173e38;text-wrap:balance;white-space:pre-line;max-width:660px;margin:0;font:700 clamp(62px,7vw,96px)/.94 Proxima Nova,Calibri,sans-serif}.login-story>p{color:#9d9791;max-width:560px;margin:clamp(18px,2.5vh,26px) 0 clamp(22px,3vh,30px);font-size:clamp(14px,1.15vw,16px);line-height:1.7}.login-capabilities{background:#302e2b;border:1px solid #302e2b;border-radius:14px;grid-template-columns:repeat(3,1fr);gap:1px;display:grid;overflow:hidden}.login-capabilities>div{background:#1d1c1beb;flex-direction:column;gap:4px;min-width:0;padding:clamp(13px,1.7vh,18px) 16px;display:flex}.login-capabilities>div>span{color:var(--orange);margin-bottom:5px;font:500 11px ui-monospace,SFMono-Regular,Menlo,monospace}.login-capabilities strong{color:#dad5ce;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.login-capabilities small{color:#6e6964;font-size:10px;line-height:1.4}.login-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff7;border:1px solid #ffffffa3;border-radius:24px;justify-self:end;width:100%;max-width:540px;padding:clamp(28px,3.4vw,44px);position:relative;overflow:hidden;box-shadow:0 35px 95px #001b494d,inset 0 1px #fffc}.login-card:before{content:"";background:radial-gradient(circle,#00a3e533,#0000 70%);border-radius:50%;width:220px;height:220px;position:absolute;top:-150px;right:-100px}.login-card-mark{background:var(--ecv-gradient);color:#fff;border:0;border-radius:13px 13px 13px 5px;place-items:center;width:44px;height:44px;margin-bottom:clamp(17px,2.2vh,24px);display:grid;box-shadow:0 12px 28px #1d50a238}.login-card-mark span{font-size:18px;transform:rotate(45deg)}.login-card-heading{margin-bottom:clamp(18px,2.5vh,25px)}.login-card-heading p{color:var(--ecv-dark-blue);letter-spacing:.2em;margin:0 0 10px;font-size:10px;font-weight:800}.login-card-heading h2{color:#173c70;letter-spacing:-.035em;margin:0 0 8px;font:700 clamp(31px,2.6vw,37px) Proxima Nova,Calibri,Noto Sans Thai,sans-serif}.login-card-heading>span{color:#708398;font-size:13px;line-height:1.65;display:block}.login-form{flex-direction:column;gap:clamp(13px,1.9vh,18px);display:flex}.login-field{flex-direction:column;gap:7px;display:flex}.login-field>span{color:#4f6780;letter-spacing:.035em;font-size:11px;font-weight:650}.login-input-wrap{background:#f8fbfd;border:1px solid #cbdbe8;border-radius:12px;align-items:center;height:clamp(50px,6.2vh,56px);transition:border-color .18s,box-shadow .18s,background .18s;display:flex;overflow:hidden}.login-input-wrap:focus-within{border-color:var(--ecv-blue);background:#fff;box-shadow:0 0 0 4px #409ad61f}.login-input-wrap>i{color:#7790a7;text-align:center;flex:none;width:43px;font-size:12px;font-style:normal}.login-input-wrap input{color:#17324f;background:0 0;border:0;outline:0;flex:1;min-width:0;height:100%;padding:0 13px;font-size:14px}.login-input-wrap>i+input{padding-left:0}.login-input-wrap input::placeholder{color:#a0b1bf}.login-input-wrap input:-webkit-autofill{-webkit-text-fill-color:#17324f;caret-color:#17324f;transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #f8fbfd}.login-input-wrap input:-webkit-autofill:hover{-webkit-text-fill-color:#17324f;caret-color:#17324f;transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #f8fbfd}.login-input-wrap input:-webkit-autofill:focus{-webkit-text-fill-color:#17324f;caret-color:#17324f;transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #f8fbfd}.login-input-wrap button{color:#52708d;background:#f2f7fa;border:0;border-left:1px solid #d6e3ed;align-self:stretch;padding:0 13px;font-size:11px}.login-input-wrap.code{height:58px}.login-input-wrap.code input{text-align:center;color:#173c70;letter-spacing:.32em;font:600 24px ui-monospace,SFMono-Regular,Menlo,monospace}.login-form-meta{justify-content:space-between;align-items:center;margin-top:-3px;display:flex}.login-form-meta label{color:#6f8295;align-items:center;gap:6px;font-size:11px;display:flex}.login-form-meta input{width:13px;height:13px;accent-color:var(--orange)}.login-form-meta button,.login-back{color:var(--ecv-dark-blue);background:0 0;border:0;padding:0;font-size:11px}.login-submit{background:var(--ecv-gradient);color:#fff;border:0;border-radius:12px;justify-content:space-between;align-items:center;min-height:clamp(51px,6.2vh,57px);margin-top:3px;padding:0 20px;font-size:13px;font-weight:700;transition:transform .16s,box-shadow .16s,opacity .16s;display:flex;box-shadow:0 12px 30px #1d50a238}.login-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 16px 34px #1d50a24d}.login-submit:disabled{cursor:not-allowed;opacity:.48}.login-submit b{font-size:16px;font-weight:400}.login-back{color:#5f7690;align-self:center;margin-top:1px}.login-message{border-radius:9px;align-items:flex-start;gap:9px;margin:-11px 0 17px;padding:10px 11px;font-size:11px;line-height:1.55;display:flex}.login-message>span{border-radius:50%;flex:none;place-items:center;width:17px;height:17px;font-size:10px;display:grid}.login-message.error{color:#9a4937;background:#fff2ef;border:1px solid #f0c9bf}.login-message.error>span{background:#f7ddd6}.login-message.success{color:#27715a;background:#edf8f4;border:1px solid #bfe2d5}.login-message.success>span{background:#d9eee7}.password-rules{flex-wrap:wrap;gap:5px;margin-top:-5px;display:flex}.password-rules span{color:#7890a6;border:1px solid #d5e2ec;border-radius:20px;padding:4px 7px;font-size:10px;transition:all .16s}.password-rules span.ok{color:#22828c;background:#47bcc61a;border-color:#47bcc66b}.button-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:17px;height:17px;margin:auto;animation:.8s linear infinite spin}.login-footer{z-index:2;color:#ffffff8a;letter-spacing:.05em;justify-content:flex-start;width:min(1440px,100%);margin:0 auto;font-size:10px;display:flex;position:relative}.primary-button{background:var(--orange);color:#fff;border:0;border-radius:9px;padding:11px 14px;font-size:13px;font-weight:600}.primary-button.wide{justify-content:space-between;align-items:center;width:100%;display:flex}.sidebar-backdrop{display:none}@media (width>=821px){.app-shell.sidebar-collapsed{grid-template-columns:82px minmax(0,1fr)}.sidebar.collapsed{width:82px;padding-inline:12px;overflow-x:hidden}.sidebar.collapsed .sidebar-brand-row{flex-direction:column;align-items:center;gap:12px}.sidebar.collapsed .brand{justify-content:center;width:100%;padding:0 0 5px}.sidebar.collapsed .brand-lockup{gap:6px}.sidebar.collapsed .brand-lockup>strong{font-size:0}.sidebar.collapsed .brand-lockup>strong:after{color:#fff;content:"eCV";letter-spacing:-.02em;font-size:14px}.sidebar.collapsed .brand-color-stripe{height:29px}.sidebar.collapsed .sidebar-collapse-button{width:34px;height:28px}.sidebar.collapsed .source-switch{width:54px;margin:18px auto 22px;padding:4px}.sidebar.collapsed .source-card{justify-content:center;padding:9px 4px}.sidebar.collapsed .source-card>div,.sidebar.collapsed .nav-caption{display:none}.sidebar.collapsed nav{align-items:center;width:100%}.sidebar.collapsed nav button{justify-content:center;gap:0;width:49px;padding-inline:0}.sidebar.collapsed nav button>b{display:none}.sidebar.collapsed nav button.active{box-shadow:inset 0 -3px var(--ecv-orange)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%{opacity:1;transform:scale(.7)}80%,to{opacity:0;transform:scale(1.5)}}@keyframes rise{0%{opacity:.2;transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes tooltip-in{0%{opacity:0;margin-top:-3px}to{opacity:1;margin-top:0}}@keyframes loading-track{0%{transform:translate(0)}to{transform:translate(255%)}}@media (width<=1100px){.app-shell{grid-template-columns:235px minmax(0,1fr)}.sidebar{width:235px;padding-inline:14px}.overview-grid{grid-template-columns:1fr 1fr}.panel-wide{grid-column:1/-1}.availability-grid{grid-template-columns:repeat(3,1fr)}.limit-grid{grid-template-columns:repeat(2,1fr)}.enterprise-adoption-grid{grid-template-columns:1fr}.analytics-dimension-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cost-visual-grid,.monthly-cost-list{grid-template-columns:1fr}.monthly-cost-row:nth-last-child(2){border-bottom:1px solid #ece8e2}.cost-mix-content{flex-direction:row}.cost-donut{width:180px}.cost-analytics-grid{grid-template-columns:1fr}.cost-ranking-card{min-height:auto}.allocation-layout{grid-template-columns:1fr}.allocation-buckets-panel,.allocation-rules-panel{min-height:auto}.user-metric-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.content-data-grid{grid-template-columns:1fr}.freshness-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.architecture-strip{grid-template-columns:1fr 1fr}.architecture-strip i{display:none}.user-menu{min-width:auto}.user-menu>div{display:none}.kpi-card>strong{font-size:36px}.executive-decision-grid{grid-template-columns:1fr}.executive-trend-card,.executive-signals{min-height:auto}.executive-value-grid,.finance-command-grid{grid-template-columns:1fr}}@media (height<=760px) and (width>=901px){.login-screen{padding-block:16px 12px}.login-layout{gap:clamp(42px,6vw,88px);padding-block:12px}.login-kicker{margin-bottom:12px}.login-story h1{font-size:clamp(46px,4.4vw,60px)}.login-story>p{margin-block:15px 18px;font-size:14px;line-height:1.55}.login-capabilities>div{padding-block:11px}.login-capabilities>div>span{margin-bottom:2px}.login-card{max-width:510px;padding:24px 30px}.login-card-mark{width:38px;height:38px;margin-bottom:13px}.login-card-heading{margin-bottom:16px}.login-card-heading p{margin-bottom:6px}.login-card-heading h2{margin-bottom:5px;font-size:30px}.login-card-heading>span{line-height:1.45}.login-form{gap:12px}.login-field{gap:5px}.login-input-wrap{height:48px}.login-submit{min-height:49px}}@media (width<=900px){.login-screen{height:auto;min-height:100svh;overflow:hidden visible}.login-layout{grid-template-columns:1fr;gap:38px;width:min(620px,100%);margin-block:56px 42px}.login-story{text-align:center;max-width:none}.login-kicker{justify-content:center}.login-story h1{margin-inline:auto;font-size:clamp(44px,9vw,66px)}.login-story>p{margin-inline:auto}.login-capabilities{text-align:left}.login-card{justify-self:center}}@media (width<=820px){.app-shell{display:block}.sidebar{width:270px;transition:transform .2s;transform:translate(-105%)}.sidebar.open{transform:translate(0)}.sidebar-collapse-button{display:none}.main-shell{width:100%}.topbar{flex-wrap:wrap;justify-content:space-between;gap:8px 12px;height:auto;min-height:106px;padding:10px 18px}.data-sync-status{grid-template-columns:auto 1fr;gap:8px 10px;padding:10px 18px}.data-sync-meta{white-space:normal;flex-wrap:wrap;grid-column:2;justify-content:flex-start;row-gap:5px}.data-sync-meta>span{border-left:0;margin-right:9px;padding:0 9px 0 0}.data-sync-copy small{white-space:normal}.mobile-title{align-items:center;gap:9px;display:flex}.mobile-title strong{color:#173c70;font:700 18px Proxima Nova,Calibri,Noto Sans Thai,sans-serif}.menu-button{color:#4e4944;background:0 0;border:0;font-size:17px}.user-menu{border-left:0;min-width:auto;padding-left:0;display:flex}.user-menu>span,.user-menu>div,.refresh-button{display:none}.allocation-page-header{display:block}.allocation-save-actions{align-items:stretch;min-width:0;margin-top:16px}.allocation-save-actions>div{justify-content:flex-start}.allocation-kpis{grid-template-columns:1fr}.allocation-rule-toolbar{flex-direction:column;align-items:stretch}.allocation-search{min-width:0}.allocation-group-members>div{grid-template-columns:1fr}.date-range-control{order:3;width:100%}.date-range-control .range-switch{width:100%}.date-range-control .range-switch button{flex:1}.date-range-control .range-switch button.custom{flex:2;max-width:none}.date-popover{width:100%;left:0;right:0}.content{padding:34px 22px 58px}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-header{flex-direction:column;gap:14px;min-height:auto}.page-actions,.search-field{width:100%}.finance-command-header{flex-direction:column;align-items:stretch;gap:14px}.monthly-budget-input{width:min(320px,100%);min-width:0}.outcome-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.two-column-grid,.team-grid,.settings-grid,.connection-settings-grid{grid-template-columns:1fr}.product-active-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-dimension-grid{grid-template-columns:1fr}.cost-mix-content{flex-direction:column}.cost-donut{width:min(180px,60%)}.consumption-heading{flex-direction:column;align-items:stretch}.user-table-toolbar{justify-content:stretch}.user-table-search{flex:1;width:auto}.activity-user-toolbar .user-table-search{width:auto}.user-metric-groups{grid-template-columns:1fr}.cost-hero{grid-template-columns:1fr;gap:5px}.cost-hero .bar-chart{height:170px}.resource-summary{flex-wrap:wrap;align-items:flex-start}.resource-summary small{width:100%;margin-left:0}.activity-summary{grid-template-columns:1fr;gap:18px}.activity-summary-meta{width:100%}.activity-summary-meta>div{border-left:0;flex:1;padding-left:0}.activity-summary-meta>div+div{border-left:1px solid #6f605429;padding-left:18px}.architecture-strip{grid-template-columns:1fr}.secret-setup-panel{grid-template-columns:1fr;gap:20px}.sidebar-backdrop{z-index:25;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#100f0e73;border:0;display:block;position:fixed;inset:0}}@media (width<=560px){.topbar{gap:8px}.data-sync-status{grid-template-columns:auto 1fr}.data-sync-meta>span:nth-child(3),.data-sync-meta>span:nth-child(4){display:none}.range-switch button{min-width:35px;padding-inline:5px}.date-fields{grid-template-columns:1fr}.date-fields>span{display:none}.page-header h1{font-size:34px}.finance-command-panel{padding:23px 17px 18px}.finance-command-header h2{font-size:22px}.monthly-budget-input{width:100%}.finance-budget-status{grid-template-columns:1fr}.finance-budget-status>strong{grid-row:auto;margin-top:4px;font-size:32px}.finance-budget-values{grid-template-columns:1fr}.finance-budget-values dt{min-height:0}.finance-metric-grid{grid-template-columns:1fr}.finance-metric-grid article{min-height:94px}.executive-panel-heading{flex-direction:column}.trend-legend{justify-content:flex-start;width:100%}.executive-trend-chart{height:225px}.executive-trend-chart svg{height:185px}.outcome-grid{grid-template-columns:1fr 1fr}.value-assumptions{grid-template-columns:1fr}.kpi-card{grid-template-rows:22px 34px 44px 28px;min-height:164px;padding:16px}.kpi-topline{height:22px}.kpi-card>p{height:34px}.kpi-card>p .help-term{align-items:flex-start;width:100%;padding-right:18px;position:relative}.kpi-card>p .help-term-icon{position:absolute;top:1px;right:0}.kpi-card>strong{height:44px;font-size:32px;line-height:44px}.kpi-detail{height:28px}.overview-grid,.cost-trend-stats,.product-active-grid{grid-template-columns:1fr}.section-heading{flex-direction:column;align-items:flex-start}.section-heading>p{text-align:left}.user-detail-list summary{grid-template-columns:34px minmax(0,1fr) 18px}.user-detail-list summary>small{display:none}.user-metric-groups section>div,.adoption-metrics,.freshness-strip,.adoption-breakdown-grid,.content-dialog-grid{grid-template-columns:1fr}.adoption-breakdown-grid{margin-left:0}.panel-wide{grid-column:auto}.availability-grid{grid-template-columns:1fr}.user-table-toolbar{flex-direction:column;align-items:stretch}.user-table-search{flex:none;width:100%}.page-size-control{justify-content:space-between}.table-pagination{flex-direction:column;align-items:flex-start}.limit-grid{grid-template-columns:1fr}.architecture-strip{padding:14px}.login-screen{padding:18px 17px}.login-brand small{display:none}.login-layout{gap:25px;margin-block:38px 26px}.login-kicker{margin-bottom:17px}.login-story h1{font-size:42px;line-height:1.02}.login-story>p,.login-capabilities{display:none}.login-card{border-radius:20px;padding:32px 24px}.login-card-mark{margin-bottom:19px}.login-card-heading{margin-bottom:22px}.login-card-heading h2{font-size:32px}.login-footer span:last-child{display:none}.login-footer{justify-content:center}.global-error{flex-wrap:wrap;padding-inline:18px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
