:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--canvas:#f7f7f7;--surface:#fff;--surface-nav:#fff;--surface-elevated:#f0f0f0;--surface-muted:#f5f5f5;--line:#ededed;--line-strong:#e2e2e2;--divider:#ededed;--ink:#0b0b0b;--ink-secondary:#696969;--ink-muted:#767676;--primary:#f36458;--primary-text:#c9402f;--secondary:#0052ef;--link:#0052ef;--on-accent:#fff;--success:#19d600;--warning:#f59e0b;--danger:#d00;--text-success:#1f6b4b;--text-warning:#8a520a;--text-danger:#b33a2b;--text-info:#0f5fd0;--tint-success:#e9f0ea;--tint-danger:#fae9e3;--tint-info:#eaf1ff;--tint-warning:#fbefd7;--shadow-card:0 1px 2px #0b0b0b0a, 0 1px 3px #0b0b0b08;--shadow-pop:0 12px 32px #0b0b0b1f;--radius-input:6px;--radius-card:6px;--radius-panel:12px;--radius-pill:999px;--muted:var(--ink-secondary);--border:var(--line);--card:var(--surface);--warning-soft:var(--tint-warning);--font-sans:var(--font-space-grotesk), "Space Grotesk", system-ui, sans-serif;--font-mono:var(--font-ibm-plex-mono), "IBM Plex Mono", ui-monospace, monospace}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--canvas:#0b0b0b;--surface:#212121;--surface-nav:#0b0b0b;--surface-elevated:#353535;--surface-muted:#2a2a2a;--line:#212121;--line-strong:#353535;--divider:#353535;--ink:#fff;--ink-secondary:#b9b9b9;--ink-muted:#797979;--primary-text:#f36458;--link:#55beff;--text-success:#19d600;--text-warning:#f59e0b;--text-danger:#f44;--text-info:#55beff;--tint-success:#16281a;--tint-danger:#2b1614;--tint-info:#12203c;--tint-warning:#2a2214;--warning-soft:var(--tint-warning);--shadow-card:none;--shadow-pop:0 18px 44px #0000008c}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}html{background:var(--canvas)}body{background:var(--canvas);min-height:100dvh;color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:13px;line-height:1.45}h1,h2,h3,p{margin:0}a{color:var(--link);text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}input{font:inherit;color:inherit}svg{flex:none;display:block}:focus-visible{outline:2px solid var(--secondary);outline-offset:2px;border-radius:4px}::selection{background:var(--secondary);color:#fff}.skip-link{z-index:200;border-radius:var(--radius-pill);background:var(--secondary);color:#fff;padding:10px 16px;font-weight:600;transition:transform .18s;position:fixed;top:12px;left:12px;transform:translateY(-200%)}.skip-link:focus-visible{transform:translateY(0)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tabular{font-variant-numeric:tabular-nums}.app-shell{background:var(--canvas);height:100dvh;display:flex;overflow:hidden}.sidebar{z-index:40;background:var(--surface-nav);border-right:1px solid var(--line);flex-direction:column;flex:0 0 240px;width:240px;display:flex;position:relative}.sidebar-brand{align-items:center;height:116px;padding:0 20px;display:flex;position:relative}.brand-link{display:block;position:relative}.brand-logo{z-index:2;width:132px;height:89px;display:block;position:relative;transform:none!important}.logo-flame-wrapper{display:none}html[data-theme=dark] .brand-link{position:relative}html[data-theme=dark] .brand-logo{filter:drop-shadow(0 4px 10px #ff4b0080);transform:none!important}html[data-theme=dark] .logo-flame-wrapper{pointer-events:none;z-index:1;display:block;position:absolute;inset:-14px -10px -4px;overflow:visible}.flame-tongue.flame-base{filter:blur(8px);background:radial-gradient(65% 55% at 50% 85%,#ff78008c 0%,#ff3c004d 45%,#0000 80%);border-radius:50%;width:140px;height:48px;animation:2s ease-in-out infinite alternate flameBasePulse;position:absolute;bottom:6px;left:50%;transform:translate(-50%)}.flame-tongue.flame-center{filter:blur(4px);transform-origin:50% 90%;background:linear-gradient(#0000 0%,#be0a004d 15%,#ff3c0099 35%,#ff8c00d9 70%,#ffe650f2 100%);border-radius:50% 50% 30% 30%/70% 70% 30% 30%;width:64px;height:88px;margin-left:-32px;animation:1.7s ease-in-out infinite alternate naturalFlameCenter;position:absolute;bottom:12px;left:50%}.flame-tongue.flame-left{filter:blur(4px);transform-origin:60% 90%;background:linear-gradient(#0000 0%,#e6140066 25%,#ff6e00bf 60%,#ffd232e6 100%);border-radius:60% 40% 30% 30%/75% 65% 35% 25%;width:48px;height:68px;margin-left:-48px;animation:1.4s ease-in-out infinite alternate naturalFlameLeft;position:absolute;bottom:10px;left:50%}.flame-tongue.flame-right{filter:blur(4px);transform-origin:40% 90%;background:linear-gradient(#0000 0%,#d20f0059 25%,#ff6400b3 60%,#ffc828e0 100%);border-radius:40% 60% 30% 30%/65% 75% 25% 35%;width:52px;height:72px;margin-left:-4px;animation:1.5s ease-in-out infinite alternate naturalFlameRight;position:absolute;bottom:10px;left:50%}.flame-tongue.flame-core{filter:blur(2.5px);background:radial-gradient(60% 60% at 50% 80%,#ffffebfa 0%,#ffe150d9 45%,#ff78004d 75%,#0000 100%);border-radius:50% 50% 35% 35%/60% 60% 40% 40%;width:46px;height:32px;margin-left:-23px;animation:.8s ease-in-out infinite alternate naturalFlameCore;position:absolute;bottom:10px;left:50%}.flame-spark{pointer-events:none;border-radius:50%;position:absolute}.flame-spark.spark-1{background:#fff8a5;width:3px;height:4px;animation:2.2s ease-out infinite emberFloat1;bottom:30px;left:45%;box-shadow:0 0 6px #f70}.flame-spark.spark-2{background:#ffdb4d;width:2.5px;height:3.5px;animation:2.7s ease-out .7s infinite emberFloat2;bottom:25px;left:55%;box-shadow:0 0 5px #f50}.flame-spark.spark-3{background:#ffe066;width:2px;height:3px;animation:2.4s ease-out 1.3s infinite emberFloat3;bottom:28px;left:36%;box-shadow:0 0 4px #f60}html[data-theme=dark] .brand-link:hover .flame-center{filter:blur(3.5px);height:105px;animation-duration:1.1s}html[data-theme=dark] .brand-link:hover .flame-left{height:80px;animation-duration:.9s}html[data-theme=dark] .brand-link:hover .flame-right{height:85px;animation-duration:1s}@keyframes naturalFlameCenter{0%{opacity:.88;transform:scaleX(.92)scaleY(.94)rotate(-1.5deg)}33%{opacity:.98;transform:scaleX(1.05)scaleY(1.06)rotate(1.5deg)}66%{opacity:.92;transform:scaleX(.96)scaleY(.98)rotate(-.5deg)}to{opacity:1;transform:scaleX(1.02)scaleY(1.08)rotate(2deg)}}@keyframes naturalFlameLeft{0%{opacity:.8;transform:rotate(-10deg)scaleX(.9)scaleY(.9)}50%{opacity:.95;transform:rotate(-16deg)scaleX(1.08)scaleY(1.1)}to{opacity:.85;transform:rotate(-11deg)scaleX(.95)scaleY(1.02)}}@keyframes naturalFlameRight{0%{opacity:.8;transform:rotate(8deg)scaleX(.92)scaleY(.92)}50%{opacity:.95;transform:rotate(15deg)scaleX(1.06)scaleY(1.08)}to{opacity:.85;transform:rotate(9deg)scaleX(.96)scaleY(1.04)}}@keyframes naturalFlameCore{0%{opacity:.85;transform:scale(.95)}to{opacity:1;transform:scale(1.08)}}@keyframes flameBasePulse{0%{opacity:.7;transform:translate(-50%)scaleX(.95)}to{opacity:.95;transform:translate(-50%)scaleX(1.06)}}@keyframes emberFloat1{0%{opacity:0;transform:translateY(0)translate(0)scale(1)}20%{opacity:.9}60%{opacity:.7;transform:translateY(-45px)translate(-8px)scale(.8)}to{opacity:0;transform:translateY(-80px)translate(6px)scale(.3)}}@keyframes emberFloat2{0%{opacity:0;transform:translateY(0)translate(0)scale(1)}25%{opacity:.85}65%{opacity:.6;transform:translateY(-40px)translate(10px)scale(.7)}to{opacity:0;transform:translateY(-75px)translate(-4px)scale(.2)}}@keyframes emberFloat3{0%{opacity:0;transform:translateY(0)translate(0)scale(1)}30%{opacity:.8}70%{opacity:.5;transform:translateY(-35px)translate(-5px)scale(.6)}to{opacity:0;transform:translateY(-65px)translate(8px)scale(.2)}}.sidebar-close{background:var(--surface-muted);width:30px;height:30px;color:var(--ink-secondary);border-radius:8px;place-items:center;display:none;position:absolute;top:14px;right:14px}.sidebar-close:hover{background:var(--surface-elevated);color:var(--ink)}.nav-scroll{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;flex:1;min-height:0;padding:6px 14px 14px;overflow-y:auto}.nav-scroll::-webkit-scrollbar{width:6px}.nav-scroll::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:var(--radius-pill)}.nav-group+.nav-group{margin-top:3px}.nav-group-label{color:var(--ink-secondary);font-family:var(--font-mono);letter-spacing:.09em;text-transform:uppercase;margin:0 0 3px;padding:0 8px;font-size:11px;font-weight:600}.nav-list{flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.nav-item{border-radius:var(--radius-input);color:var(--ink-secondary);align-items:center;gap:12px;padding:5px 8px;font-size:12px;font-weight:400;transition:background .14s,color .14s;display:flex}.nav-item svg{color:var(--ink-muted);transition:color .14s}.nav-item:hover{background:var(--surface-muted);color:var(--ink)}.nav-item:hover svg{color:var(--ink-secondary)}.nav-item.is-active{background:var(--secondary);color:#fff;font-weight:600}.nav-item.is-active svg{color:#fff}.nav-item.is-active:hover{background:var(--secondary);color:#fff}.sidebar-footer{background:var(--surface-muted);border-radius:var(--radius-panel);align-items:center;gap:10px;margin:0 24px 20px;padding:12px;display:flex}.sidebar-avatar{background:var(--surface-elevated);width:30px;height:30px;color:var(--ink);letter-spacing:.02em;border-radius:12px;flex:0 0 30px;place-items:center;font-size:10.5px;font-weight:600;display:grid}.sidebar-user{flex-direction:column;min-width:0;line-height:1.3;display:flex}.sidebar-user strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.sidebar-user span{color:var(--ink-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.sidebar-scrim{display:none}.main{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.topbar{justify-content:space-between;align-items:center;gap:16px;min-height:56px;display:flex}.topbar-context{flex-direction:column;gap:3px;min-width:0;margin-right:auto;display:flex}.breadcrumb{min-width:0;color:var(--ink-secondary);white-space:nowrap;align-items:center;gap:8px;font-size:13px;line-height:1.4;display:flex;overflow:hidden}.breadcrumb>span:last-child{text-overflow:ellipsis;overflow:hidden}.breadcrumb-sep{color:var(--ink-muted);font-size:11px}.page-title{color:var(--ink);letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;font-size:20px;font-weight:600;line-height:1.2;overflow:hidden}.topbar-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.search{background:var(--surface-nav);border:1px solid var(--line-strong);width:260px;max-width:440px;height:38px;color:var(--ink-muted);border-radius:8px;align-items:center;gap:8px;padding:0 12px;transition:border-color .14s,background .14s,width .2s;display:flex}.search:focus-within{border-color:var(--primary);background:var(--surface);width:320px}.search input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:none;font-size:12px}.search input::placeholder{color:var(--ink-muted)}.search-kbd{font-family:var(--font-mono,monospace);background:var(--surface-muted);color:var(--ink-muted);border:1px solid var(--line);pointer-events:none;border-radius:4px;margin-left:auto;padding:1px 5px;font-size:10px;font-weight:700}.user-menu-wrap{align-items:center;display:inline-flex;position:relative}.avatar-button{background:var(--surface-muted);border:1px solid var(--line-strong);height:38px;color:var(--ink);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:0 10px 0 6px;font-size:12px;font-weight:600;transition:all .14s;display:inline-flex}.avatar-button:hover,.avatar-button.is-active{background:var(--surface-elevated);border-color:var(--primary);color:var(--primary)}.avatar-initials-badge{background:var(--primary);color:#fff;border-radius:50%;place-items:center;width:26px;height:26px;font-size:10.5px;font-weight:700;display:grid}.user-menu-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;max-width:110px;font-size:12px;font-weight:600;overflow:hidden}.user-menu-chevron{color:var(--ink-muted);transition:transform .16s}.user-menu-chevron.rotate{transform:rotate(180deg)}.user-menu-popover{z-index:100;background:var(--surface);border:1px solid var(--line-strong);border-radius:12px;width:250px;padding:8px 0;animation:.15s ease-out popoverFadeIn;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 10px 25px -5px #0003,0 8px 10px -6px #00000026}@keyframes popoverFadeIn{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.user-menu-header{align-items:center;gap:10px;padding:6px 14px 10px;display:flex}.user-menu-avatar-large{width:36px;height:36px;color:var(--primary);background:#10b98124;border:1px solid #10b9814d;border-radius:9px;flex-shrink:0;place-items:center;font-size:13px;font-weight:700;display:grid}.user-menu-details{flex-direction:column;min-width:0;display:flex}.user-menu-full-name{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.user-menu-username{color:var(--ink-muted);font-size:11px;font-family:var(--font-mono,monospace)}.user-menu-role-badge{color:var(--primary);background:#10b9811f;border-radius:4px;align-items:center;gap:4px;width:fit-content;margin-top:4px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-flex}.user-menu-divider{background:var(--line-strong);height:1px;margin:6px 0}.user-menu-links,.user-menu-footer{flex-direction:column;padding:0 4px;display:flex}.user-menu-item{width:100%;color:var(--ink-secondary);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:9px;padding:8px 12px;font-size:12.5px;font-weight:500;text-decoration:none;transition:background .12s,color .12s;display:flex}.user-menu-item:hover,.user-menu-item:focus-visible{background:var(--surface-muted);color:var(--ink);outline:none}.user-menu-item.is-danger{color:var(--danger,#ef4444)}.user-menu-item.is-danger:hover,.user-menu-item.is-danger:focus-visible{color:var(--danger,#ef4444);background:#ef44441f}.theme-toggle{background:var(--surface-muted);border:1px solid var(--line);border-radius:var(--radius-pill);align-items:center;gap:1px;padding:3px;display:inline-flex}.theme-toggle button{border-radius:var(--radius-pill);width:28px;height:28px;color:var(--ink-muted);place-items:center;transition:background .16s,color .16s;display:grid}.theme-toggle button:hover{color:var(--ink)}html[data-theme=light] .theme-toggle .seg-light,html[data-theme=dark] .theme-toggle .seg-dark{background:var(--surface);color:var(--ink);outline:1px solid var(--line-strong);outline-offset:-1px;box-shadow:var(--shadow-card)}html[data-theme=light] .theme-toggle .seg-light:hover,html[data-theme=dark] .theme-toggle .seg-dark:hover{color:var(--ink)}.menu-button{flex:none;display:none}.content{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;flex-direction:column;flex:1;gap:24px;padding:32px;display:flex;overflow-y:auto}.page{flex-direction:column;flex:1;gap:24px;display:flex}.content::-webkit-scrollbar{width:10px}.content::-webkit-scrollbar-thumb{background:var(--line-strong);border:3px solid var(--canvas);border-radius:var(--radius-pill)}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.ops-grid{grid-template-columns:360px minmax(0,1fr);gap:16px;display:grid}.analytics-grid{grid-template-columns:minmax(0,1fr) 330px;gap:16px;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel);box-shadow:var(--shadow-card);flex-direction:column;display:flex}.panel{gap:14px;padding:20px}.service-panel,.activity-panel{gap:12px}.chart-panel{gap:16px}.attention-panel{gap:14px}.panel-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.panel-title{color:var(--ink);letter-spacing:-.01em;font-size:15px;font-weight:600}.panel-subtitle{color:var(--ink-secondary);margin-top:3px;font-size:13px}.panel-link{color:var(--link);white-space:nowrap;align-items:center;gap:4px;font-size:13px;font-weight:600;display:inline-flex}.panel-link:hover{text-underline-offset:3px;text-decoration:underline}.panel-count{color:var(--text-danger);font-size:13px;font-weight:600}.kpi{gap:14px;padding:20px}.kpi-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.kpi-label{color:var(--ink-secondary);font-size:13px;line-height:1.35}.kpi-icon{background:var(--surface-muted);width:30px;height:30px;color:var(--secondary);border-radius:6px;flex:0 0 30px;place-items:center;display:grid}.kpi-icon.tone-primary{color:var(--primary-text)}.kpi-icon.tone-warning{color:var(--warning)}.kpi-icon.tone-danger{color:var(--danger)}.kpi-value{color:var(--ink);letter-spacing:-.02em;font-size:24px;font-weight:600;line-height:1.15}.kpi-delta{color:var(--ink-secondary);font-size:13px;font-weight:600}.kpi-delta.tone-link{color:var(--link)}.kpi-delta.tone-primary{color:var(--primary-text)}.quick-actions{background:var(--surface-muted);border:1px solid var(--line);border-radius:var(--radius-panel);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px;display:flex}.quick-label{color:var(--ink);margin-right:4px;font-size:13px;font-weight:600}.quick-action{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-input);color:var(--link);align-items:center;gap:7px;padding:8px 10px;font-size:13px;font-weight:600;transition:background .14s,border-color .14s,transform .14s;display:inline-flex}.quick-action svg{color:var(--secondary)}.quick-action:hover{background:var(--surface-elevated);border-color:var(--line-strong)}.quick-action:active{transform:translateY(1px)}.service-panel{min-height:210px}.status-row{border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;display:flex}.status-row.tone-success{background:var(--tint-success)}.status-row.tone-warning{background:var(--surface-elevated)}.status-row.tone-danger{background:var(--tint-danger)}.status-label{color:var(--ink);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.status-dot{border-radius:3px;width:8px;height:8px}.status-row.tone-success .status-dot{background:var(--success)}.status-row.tone-warning .status-dot{background:var(--warning)}.status-row.tone-danger .status-dot{background:var(--danger)}.status-value{letter-spacing:.01em;font-size:13px;font-weight:600}.status-row.tone-success .status-value{color:var(--text-success)}.status-row.tone-warning .status-value{color:var(--text-warning)}.status-row.tone-danger .status-value{color:var(--text-danger)}.activity-list{flex-direction:column;gap:12px;display:flex}.activity-row{align-items:center;gap:10px;display:flex}.activity-dot{border-radius:3px;flex:0 0 8px;width:8px;height:8px}.activity-copy{flex-direction:column;flex:1;gap:2px;min-width:0;line-height:1.35;display:flex}.activity-actor{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.activity-event{color:var(--ink-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.activity-time{color:var(--ink-secondary);white-space:nowrap;font-size:13px}.chart-panel{min-height:300px}.chart-filter{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-input);color:var(--ink-secondary);align-items:center;gap:4px;padding:7px 10px;font-size:13px;display:inline-flex}.chart-bars{border-bottom:1px solid var(--divider);flex:1;align-items:flex-end;gap:16px;min-height:190px;padding:16px 8px;display:flex}.bar-col{flex-direction:column;flex:1;min-width:0;height:100%;display:flex}.bar-area{flex:1;justify-content:center;align-items:flex-end;width:100%;min-height:0;display:flex}.bar{width:22px;height:var(--bar);background:var(--secondary);border-radius:5px}.bar-label{color:var(--ink-secondary);padding-top:7px;font-size:13px}.attention-panel{min-height:300px}.alert-list{flex-direction:column;gap:14px;display:flex}.alert{background:var(--surface-muted);border-radius:6px;align-items:center;gap:10px;padding:10px;display:flex}.alert.tone-danger{background:var(--tint-danger)}.alert.tone-warning{background:var(--surface-elevated)}.alert.tone-info{background:var(--tint-info)}.alert-dot{background:var(--ink-muted);border-radius:50%;flex:0 0 7px;width:7px;height:7px}.alert.tone-danger .alert-dot{background:var(--danger)}.alert.tone-warning .alert-dot{background:var(--warning)}.alert.tone-info .alert-dot{background:var(--secondary)}.alert-copy{flex-direction:column;gap:3px;min-width:0;line-height:1.35;display:flex}.alert-title{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.alert-meta{color:var(--ink-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.attention-footer{margin-top:auto;padding-top:2px}.btn{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-pill);color:var(--ink);justify-content:center;align-items:center;gap:8px;padding:9px 14px;font-size:12px;font-weight:600;transition:background .14s,border-color .14s;display:inline-flex}.btn:hover{background:var(--surface-muted)}.btn-primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn-primary:hover{background:#d94e43;border-color:#d94e43}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.filter-bar{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel);align-items:center;gap:10px;padding:12px 16px;display:flex}.filter-search{min-width:0;color:var(--ink-muted);flex:1;align-items:center;gap:8px;display:flex}.filter-search input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:none;font-family:inherit;font-size:13px}.filter-search input::placeholder{color:var(--ink-secondary)}.filter-search:focus-within{border-radius:var(--radius-input);outline:2px solid var(--link);outline-offset:3px}.filter-select{flex:none;align-items:center;display:inline-flex;position:relative}.filter-select select{appearance:none;background:var(--surface);border-radius:var(--radius-input);color:var(--ink-secondary);cursor:pointer;border:0;padding:7px 26px 7px 10px;font-family:inherit;font-size:13px}.filter-select select:hover{background:var(--surface-muted)}.filter-select select:focus-visible{outline:2px solid var(--link);outline-offset:2px}.filter-select svg{pointer-events:none;color:var(--ink-secondary);position:absolute;right:9px}.demo-chip{border-radius:var(--radius-input);background:var(--surface-muted);color:var(--ink-secondary);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;flex:none;padding:4px 8px;font-size:10px}.crm-panel{border-radius:var(--radius-input);gap:12px;padding:18px}.crm-panel .panel-header{align-items:flex-start}.crm-export{white-space:nowrap;cursor:pointer;background:0 0;border:0;flex:none;padding:0;font-family:inherit;font-size:13px;font-weight:600}.crm-export:disabled{opacity:.45;cursor:not-allowed}.crm-table{--crm-cols:minmax(240px, 1fr) 120px 160px 130px 110px minmax(96px, auto);flex-direction:column;min-width:0;display:flex}.crm-head,.crm-row{grid-template-columns:var(--crm-cols);align-items:center;gap:16px;display:grid}.crm-head{min-height:34px;color:var(--ink-secondary);padding:10px 16px;font-size:13px;font-weight:600}.crm-body{flex-direction:column;display:flex}.crm-row{border-bottom:1px solid var(--divider);min-height:46px;padding:12px 16px}.crm-row:last-child{border-bottom:0}.crm-row:hover{background:var(--surface-muted)}.crm-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.crm-muted{color:var(--ink-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.crm-bill{color:var(--ink);white-space:nowrap;font-size:13px}.crm-status{white-space:nowrap;align-items:center;gap:6px;font-size:13px;font-weight:600;display:inline-flex}.crm-dot{background:var(--secondary);border-radius:3px;width:8px;height:8px}.crm-status.tone-success{color:var(--text-success)}.crm-status.tone-success .crm-dot{background:var(--success)}.crm-status.tone-warning{color:var(--text-warning)}.crm-status.tone-warning .crm-dot{background:var(--warning)}.crm-status.tone-danger{color:var(--text-danger)}.crm-status.tone-danger .crm-dot{background:var(--danger)}.crm-empty{color:var(--ink-secondary);text-align:center;flex-direction:column;align-items:center;gap:10px;padding:40px 16px;font-size:13px;display:flex}.billing-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.billing-card{border-radius:var(--radius-panel);gap:12px;padding:20px}.billing-label{color:var(--ink-secondary);font-size:13px}.billing-value{font-variant-numeric:tabular-nums;font-size:24px;font-weight:600}.billing-value.tone-link{color:var(--link)}.billing-value.tone-danger{color:var(--text-danger)}.billing-value.tone-warning{color:var(--text-warning)}.billing-value.tone-success{color:var(--text-success)}.billing-panel{border-radius:var(--radius-input);gap:12px;padding:18px}.billing-panel .panel-header{align-items:flex-start}.billing-head,.billing-row{grid-template-columns:112px minmax(160px,1fr) 120px 130px 120px 110px minmax(92px,auto);align-items:center;gap:16px;display:grid}.billing-head{min-height:34px;color:var(--ink-secondary);padding:10px 16px;font-size:13px;font-weight:600}.billing-body{flex-direction:column;display:flex}.billing-row{border-bottom:1px solid var(--divider);min-height:46px;padding:12px 16px}.billing-row:last-child{border-bottom:0}.billing-row:hover{background:var(--surface-muted)}.billing-number{color:var(--link);font-size:11px;font-weight:600}.billing-customer{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.billing-muted{color:var(--ink-secondary);white-space:nowrap;font-size:13px}.billing-total{color:var(--ink);white-space:nowrap;font-size:13px;font-weight:600}.billing-status{white-space:nowrap;align-items:center;gap:6px;font-size:13px;font-weight:600;display:inline-flex}.tone-link>.crm-dot{background:var(--link)}.tone-danger>.crm-dot{background:var(--danger)}.tone-warning>.crm-dot{background:var(--warning)}.tone-success>.crm-dot{background:var(--success)}.billing-status.tone-link{color:var(--link)}.billing-status.tone-danger{color:var(--text-danger)}.billing-status.tone-warning{color:var(--text-warning)}.billing-status.tone-success{color:var(--text-success)}.invoice-summary{border-radius:var(--radius-panel);justify-content:space-between;gap:12px;min-height:190px;padding:20px}.invoice-summary-head{align-items:center;gap:6px;display:flex}.invoice-number{color:var(--ink);font-size:11px;font-weight:600}.invoice-status{letter-spacing:.02em;align-items:center;gap:6px;font-size:11px;font-weight:600;display:inline-flex}.invoice-status.tone-link{color:var(--link)}.invoice-status.tone-danger{color:var(--text-danger)}.invoice-status.tone-warning{color:var(--text-warning)}.invoice-status.tone-success{color:var(--text-success)}.invoice-customer{color:var(--ink-secondary);font-size:13px}.invoice-amount-row{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.invoice-period{color:var(--ink-secondary);font-size:13px}.invoice-total{color:var(--ink);white-space:nowrap;font-size:24px;font-weight:600}.invoice-detail-grid{gap:14px;display:flex}.invoice-lines{border-radius:var(--radius-panel);flex:0 0 520px;gap:12px;padding:20px}.invoice-payments{border-radius:var(--radius-panel);flex:1;gap:12px;padding:20px}.invoice-line{justify-content:space-between;gap:12px;padding:10px 0;display:flex}.invoice-line-label{color:var(--ink-secondary);font-size:13px}.invoice-line-value{color:var(--ink);white-space:nowrap;font-size:13px;font-weight:600}.invoice-lines-footer{border:1px solid var(--line);border-radius:var(--radius-input);flex-direction:column;gap:8px;padding:12px;display:flex}.invoice-footer-row{color:var(--ink-secondary);justify-content:space-between;gap:12px;font-size:13px;display:flex}.invoice-footer-value{white-space:nowrap;font-weight:600}.invoice-footer-value.is-due{color:var(--text-danger)}.invoice-footer-value.is-clear{color:var(--text-success)}.payment-card{background:var(--surface-nav);border:1px solid var(--line);border-radius:var(--radius-input);flex-direction:column;gap:3px;padding:10px;display:flex}.payment-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.payment-method{color:var(--ink);font-size:13px;font-weight:600}.payment-status{white-space:nowrap;font-size:13px;font-weight:600}.payment-status.tone-link{color:var(--link)}.payment-status.tone-danger{color:var(--text-danger)}.payment-status.tone-warning{color:var(--text-warning)}.payment-status.tone-success{color:var(--text-success)}.payment-ref{color:var(--ink-secondary);font-size:11px}.approval-box{border-radius:var(--radius-input);background:var(--surface-elevated);flex-direction:column;gap:3px;padding:10px;display:flex}.approval-title{color:var(--text-warning);font-size:13px;font-weight:600}.approval-copy{color:var(--text-warning);font-size:11px}.approval-note{color:var(--ink-secondary);font-size:11px}.billing-paid-manual{align-self:flex-start;margin-top:8px}.btn:disabled{opacity:.5;cursor:not-allowed}.invoice-audit{border-radius:var(--radius-panel);gap:12px;padding:20px}.invoice-audit-list{flex-direction:column;gap:10px;display:flex}.invoice-audit-item{color:var(--ink-secondary);font-size:13px}.collector-toolbar{justify-content:space-between;align-items:center;gap:16px;min-height:42px;display:flex}.collector-toolbar>p{color:var(--ink-secondary);font-size:12px;font-weight:600}.collector-toolbar-actions,.collector-review-actions,.manual-paid-actions{align-items:center;gap:8px;display:flex}.collector-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.collector-stat{gap:10px;min-height:88px;padding:16px}.collector-stat p{color:var(--ink-secondary);font-size:10px}.collector-stat strong{color:var(--ink);font-size:21px;font-weight:600}.collector-stat .tone-link{color:var(--link)}.collector-stat .tone-warning,.collector-review-row .tone-warning{color:var(--text-warning)}.collector-stat .tone-danger,.collector-review-row .tone-danger{color:var(--text-danger)}.collector-stat .tone-success,.collector-review-row .tone-success{color:var(--text-success)}.collector-body,.manual-paid-body{grid-template-columns:minmax(0,700px) minmax(280px,1fr);gap:16px;display:grid}.collector-table-panel,.collector-review,.manual-paid-table,.manual-paid-confirm{gap:10px;min-height:420px;padding:16px}.collector-table-head,.collector-table-row{grid-template-columns:minmax(220px,1fr) 90px 110px 120px;align-items:center;gap:10px;padding:8px 10px;display:grid}.collector-table-head{background:var(--surface-muted);color:var(--ink-secondary);font-size:10px;font-weight:600}.collector-table-row{border:0;border-bottom:1px solid var(--divider);width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;font-family:inherit;font-size:10px}.collector-table-row:hover,.collector-table-row.is-selected,.manual-paid-row:hover,.manual-paid-row.is-selected{background:var(--surface-muted)}.collector-batch-name,.collector-state{font-weight:600}.collector-state.tone-warning{color:var(--text-warning)}.collector-state.tone-danger{color:var(--text-danger)}.collector-state.tone-success{color:var(--text-success)}.collector-paging,.collector-review-copy,.collector-disabled-note{color:var(--ink-secondary);font-size:10px}.collector-review{gap:7px}.collector-review-row{background:var(--surface-muted);color:var(--ink-secondary);border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;font-size:10px;display:flex}.collector-review-row strong{color:var(--ink);text-align:right;font-size:10px;font-weight:600}.collector-safety{background:var(--tint-warning);border-radius:8px;flex-direction:column;gap:4px;padding:10px;display:flex}.collector-safety strong{color:var(--text-warning);font-size:11px}.collector-safety p{color:var(--ink-secondary);font-size:10px}.collector-audit-banner,.manual-paid-banner{flex-direction:row;justify-content:space-between;align-items:center;gap:16px;min-height:90px;padding:16px;display:flex}.collector-audit-banner p,.manual-paid-banner p{color:var(--ink-secondary);font-size:12px;font-weight:600}.manual-paid-head,.manual-paid-row{grid-template-columns:110px minmax(100px,1fr) 120px 110px;align-items:center;gap:10px;padding:8px 10px;display:grid}.manual-paid-head{background:var(--surface-muted);color:var(--ink-secondary);font-size:10px;font-weight:600}.manual-paid-row{border:0;border-bottom:1px solid var(--divider);width:100%;color:var(--ink-secondary);text-align:left;cursor:pointer;background:0 0;font-family:inherit;font-size:10px}.manual-paid-row strong{color:var(--ink)}.manual-paid-action{color:var(--link)}.manual-paid-banner{background:var(--tint-info);border-radius:var(--radius-panel)}.migration-actions,.dry-run-nav{justify-content:flex-end;align-items:center;gap:8px;display:flex}.dry-run-nav{min-height:42px;color:var(--ink-secondary);justify-content:space-between;font-size:12px}.migration-search{background:var(--surface);border:1px solid var(--line);border-radius:3px;width:210px;padding:10px 14px;display:flex}.migration-search input{width:100%;min-width:0;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;font-size:11px}.migration-search input::placeholder{color:var(--ink-muted)}.migration-context,.dry-run-source-gate{background:var(--surface-muted);border-radius:var(--radius-input);color:var(--ink-secondary);justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;font-size:11px;display:flex}.migration-context strong{color:var(--text-success)}.migration-phases{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.migration-phase{background:var(--surface);border-radius:var(--radius-input);flex-direction:column;gap:5px;min-height:76px;padding:10px;display:flex}.migration-phase>div{color:var(--ink-secondary);justify-content:space-between;gap:8px;font-size:11px;display:flex}.migration-phase p,.migration-phase strong{font-size:11px;font-weight:600}.migration-phase.tone-success{background:var(--tint-success)}.migration-phase.tone-success>div{color:var(--text-success)}.migration-phase.tone-info{background:var(--tint-info)}.migration-phase.tone-info>div{color:var(--link)}.migration-phase.tone-warning{background:var(--surface-elevated)}.migration-phase.tone-warning>div{color:var(--text-warning)}.migration-metrics,.dry-run-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.dry-run-summary{grid-template-columns:repeat(6,minmax(0,1fr))}.migration-metric{gap:8px;min-height:92px;padding:16px}.migration-metric p,.migration-metric span{color:var(--ink-secondary);font-size:11px}.migration-metric strong{color:var(--ink);font-size:18px}.migration-metric .tone-success{color:var(--text-success)}.migration-metric .tone-link{color:var(--link)}.migration-body,.dry-run-body,.conflict-body{grid-template-columns:minmax(0,650px) minmax(300px,1fr);gap:16px;display:grid}.migration-parity,.migration-cutover,.dry-run-results,.dry-run-provenance,.conflict-compare,.conflict-resolution{gap:10px;padding:16px}.migration-tabs{flex-wrap:wrap;gap:6px;display:flex}.migration-tabs button{border-radius:var(--radius-pill);color:var(--ink-secondary);font:inherit;cursor:pointer;background:0 0;border:0;padding:6px 9px;font-size:11px}.migration-tabs button.is-active{background:var(--surface-nav);color:var(--ink)}.migration-discrepancies{flex-direction:column;gap:6px;display:flex}.migration-discrepancy{border:1px solid var(--line);border-radius:var(--radius-input);flex-direction:column;gap:3px;padding:8px 10px;display:flex}.migration-discrepancy>div{justify-content:space-between;gap:12px;font-size:11px;display:flex}.migration-discrepancy p,.migration-empty,.migration-cutover-copy{color:var(--ink-secondary);font-size:11px}.migration-discrepancy .tone-high{color:var(--text-danger)}.migration-discrepancy .tone-medium{color:var(--text-warning)}.migration-discrepancy .tone-low{color:var(--link)}.migration-review-note,.dry-run-gate{background:var(--surface-elevated);border-radius:var(--radius-input);color:var(--text-warning);padding:9px;font-size:11px;font-weight:600}.migration-readiness-row{border:1px solid var(--line);border-radius:var(--radius-input);color:var(--ink-secondary);justify-content:space-between;gap:12px;padding:7px 8px;font-size:11px;display:flex}.migration-readiness-row strong{color:var(--ink);text-align:right;font-size:11px}.migration-readiness-row .tone-success{color:var(--text-success)}.migration-readiness-row .tone-warning{color:var(--text-warning)}.migration-cutover-lock,.conflict-private,.conflict-409{background:var(--tint-danger);border-radius:var(--radius-input);flex-direction:column;gap:3px;padding:9px;display:flex}.migration-cutover-lock strong,.conflict-409 strong{color:var(--text-danger);font-size:11px}.migration-cutover-lock p,.conflict-private p,.conflict-409 p{color:var(--ink-secondary);font-size:9px}.migration-footer{flex-direction:row;justify-content:space-between;align-items:center;gap:16px;min-height:84px;padding:14px;display:flex}.migration-footer>div:first-child{flex-direction:column;gap:4px;display:flex}.migration-footer strong{font-size:13px}.migration-footer p{color:var(--ink-secondary);font-size:11px}.migration-footer>div:last-child{gap:8px;display:flex}.dry-run-source-gate{justify-content:flex-start}.dry-run-body{grid-template-columns:minmax(0,1fr) 360px}.dry-run-results .panel-header{align-items:flex-start}.dry-run-table-head,.dry-run-row{grid-template-columns:150px 110px 130px minmax(180px,1fr);align-items:center;gap:10px;padding:8px 10px;font-size:10px;display:grid}.dry-run-table-head,.conflict-head{background:var(--surface-muted);color:var(--ink-secondary);font-weight:600}.dry-run-row{border-bottom:1px solid var(--divider);color:var(--ink-secondary)}.dry-run-row strong{color:var(--ink)}.dry-run-row a{color:var(--link)}.dry-run-gate{flex-direction:column;gap:4px;display:flex}.dry-run-gate p{color:var(--ink-secondary);font-size:10px;font-weight:400}.dry-run-checklist{color:var(--text-danger);flex-direction:column;gap:5px;padding-left:16px;font-size:10px;display:flex}.dry-run-checklist .is-ok{color:var(--text-success)}.dry-run-checkbox{color:var(--ink-secondary);align-items:center;gap:8px;font-size:11px;display:flex}.dry-run-reason{resize:vertical;background:var(--surface-muted);border:1px solid var(--line);border-radius:var(--radius-input);width:100%;min-height:70px;color:var(--ink);font:inherit;padding:10px;font-size:11px}.conflict-alert{background:var(--tint-warning);border-radius:var(--radius-input);flex-direction:column;gap:4px;padding:12px;display:flex}.conflict-alert strong{color:var(--text-warning);font-size:11px}.conflict-alert p{color:var(--ink-secondary);font-size:10px}.conflict-body{grid-template-columns:minmax(0,1fr) 390px}.conflict-head,.conflict-row{grid-template-columns:150px minmax(150px,1fr) minmax(150px,1fr);gap:10px;padding:8px 10px;font-size:10px;display:grid}.conflict-row{border-bottom:1px solid var(--divider);color:var(--ink-secondary)}.conflict-row strong{color:var(--ink)}.conflict-private{background:var(--surface-elevated)}.conflict-private strong{color:var(--ink-secondary);font-size:10px}.conflict-option{background:var(--surface-muted);border-radius:var(--radius-input);color:var(--ink-secondary);align-items:center;gap:8px;padding:8px 10px;font-size:11px;display:flex}.conflict-409 a{color:var(--link);font-size:10px}.conflict-mapping{color:var(--text-warning);font-size:11px}.module-workbench-bar{background:var(--surface-muted);border-radius:var(--radius-input);justify-content:space-between;align-items:center;gap:16px;min-height:48px;padding:10px 12px;display:flex}.module-workbench-bar>div{align-items:center;gap:8px;display:flex}.module-workbench-bar>div:first-child{flex-direction:column;align-items:flex-start;gap:2px}.module-workbench-bar strong{color:var(--ink);font-size:12px}.module-workbench-bar span{color:var(--ink-secondary);font-size:10px}.workbench-metrics{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.workbench-metric{gap:8px;min-height:92px;padding:16px}.workbench-metric p,.workbench-metric span{color:var(--ink-secondary);font-size:11px}.workbench-metric strong{color:var(--ink);font-size:20px}.workbench-metric .tone-success{color:var(--text-success)}.workbench-metric .tone-warning{color:var(--text-warning)}.workbench-metric .tone-danger{color:var(--text-danger)}.workbench-metric .tone-link{color:var(--link)}.workbench-body{grid-template-columns:minmax(0,1fr) minmax(300px,390px);gap:16px;display:grid}.workbench-table-panel,.workbench-detail{gap:10px;min-height:430px;padding:16px}.workbench-head,.workbench-row{grid-template-columns:repeat(var(--workbench-columns), minmax(90px, 1fr));align-items:center;gap:10px;padding:8px 10px;display:grid}.workbench-head{background:var(--surface-muted);color:var(--ink-secondary);font-size:10px;font-weight:600}.workbench-row{border:0;border-bottom:1px solid var(--divider);width:100%;color:var(--ink-secondary);font:inherit;text-align:left;cursor:pointer;background:0 0;font-size:11px}.workbench-row:hover,.workbench-row.is-selected{background:var(--surface-muted)}.workbench-row>span:first-child{color:var(--ink);font-weight:600}.workbench-row .tone-success{color:var(--text-success);font-weight:600}.workbench-row .tone-warning{color:var(--text-warning);font-weight:600}.workbench-row .tone-danger{color:var(--text-danger);font-weight:600}.workbench-row .tone-link{color:var(--link);font-weight:600}.workbench-selected{color:var(--link);font-family:var(--font-mono);font-size:11px}.workbench-actions{flex-wrap:wrap;gap:8px;display:flex}.workbench-banner{flex-direction:row;justify-content:space-between;align-items:center;gap:16px;min-height:72px;padding:14px 16px;display:flex}.workbench-banner p{color:var(--ink-secondary);font-size:11px;font-weight:600}.workbench-banner span{background:var(--surface-muted);border-radius:var(--radius-input);color:var(--ink-secondary);font-family:var(--font-mono);text-transform:uppercase;flex:none;padding:4px 8px;font-size:10px}.module-page{flex:1;justify-content:center;align-items:center;padding:32px 0;display:flex}.module-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel);width:100%;max-width:560px;box-shadow:var(--shadow-card);flex-direction:column;align-items:flex-start;gap:14px;padding:32px;display:flex}.module-icon{background:var(--tint-info);width:40px;height:40px;color:var(--text-info);border-radius:10px;place-items:center;display:grid}.module-eyebrow{color:var(--ink-secondary);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:600}.module-title{letter-spacing:-.02em;font-size:20px;font-weight:600}.module-text{max-width:46ch;color:var(--ink-secondary);font-size:12.5px;line-height:1.6}.module-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}@media (max-width:1100px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1180px){.analytics-grid{grid-template-columns:minmax(0,1fr)}.attention-panel{min-height:0}}@media (max-width:1024px){.ops-grid{grid-template-columns:minmax(0,1fr)}.service-panel{min-height:0}.search{width:190px}}@media (max-width:1000px){.help-button{display:none}.search{width:190px}}@media (min-width:901px) and (max-width:960px){.quick-label{width:100%;margin-right:0}.quick-action{flex:calc(50% - 8px);justify-content:center}.chart-bars{gap:10px;padding:8px 4px}}@media (max-width:820px){.search{display:none}}@media (max-width:900px){.sidebar{z-index:60;border-right:1px solid var(--line-strong);width:264px;box-shadow:var(--shadow-pop);visibility:hidden;flex-basis:264px;transition:transform .22s,visibility 0s linear .22s;position:fixed;top:0;bottom:0;left:0;transform:translate(-102%)}.sidebar.is-open{visibility:visible;transition:transform .22s;transform:translate(0)}.sidebar-brand{padding:0 16px}.brand-logo{width:132px;height:89px}.sidebar-close{display:grid}.nav-scroll{padding:11px 16px 16px}.nav-group+.nav-group{margin-top:10px}.nav-group-label{margin-bottom:4px}.nav-item{padding:5px 8px}.sidebar-footer{margin:0 16px 16px}.sidebar-scrim{z-index:50;opacity:0;pointer-events:none;background:#00000073;width:100%;height:100%;transition:opacity .22s;display:block;position:fixed;inset:0}.sidebar-scrim.is-open{opacity:1;pointer-events:auto}.menu-button{display:grid}.content{padding:20px 24px 28px}}@media (max-width:760px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.notification-button,.help-button{display:none}.page-title{font-size:19px}.panel{gap:12px}.topbar{min-height:48px}.content{gap:16px;padding:16px 16px 24px}.page{gap:16px}}@media (max-width:460px){.kpi{padding:16px}.kpi-value{font-size:20px}.kpi-grid{gap:10px}.panel{padding:16px}.quick-label{width:100%;margin-bottom:2px}.quick-action{flex:calc(50% - 8px);justify-content:center}.topbar-actions{gap:6px}.theme-toggle{padding:2px}.theme-toggle button{width:26px;height:26px}.icon-button,.avatar-button{width:34px;height:34px}.module-card{padding:24px}.page-title{font-size:18px}}@media (max-width:359px){.kpi-grid{grid-template-columns:minmax(0,1fr)}.avatar-button{display:none}}@media (max-width:1100px){.crm-table{--crm-cols:minmax(180px, 1fr) 110px 120px 100px minmax(96px, auto)}.crm-col-service{display:none}}@media (max-width:900px){.filter-bar{flex-wrap:wrap}.filter-search{flex:100%}}@media (max-width:820px){.crm-table{--crm-cols:minmax(160px, 1fr) 110px 100px minmax(96px, auto)}.crm-col-site{display:none}}@media (max-width:560px){.crm-panel{padding:14px}.crm-table{--crm-cols:minmax(0, 1fr) 96px minmax(96px, auto)}.crm-col-bill{display:none}.crm-head,.crm-row{gap:10px;padding-left:8px;padding-right:8px}}.demo-inline-feedback,.form-error-banner{border:1px solid var(--line-strong);border-radius:var(--radius-input);background:var(--surface-muted);color:var(--ink-secondary);align-items:flex-start;gap:8px;margin:0 0 12px;padding:10px 12px;font-size:12px;display:flex}.form-error-banner{border-color:var(--danger);background:var(--tint-danger);color:var(--text-danger)}.sensitive-field-notice{border:1px dashed var(--line-strong);border-radius:var(--radius-input);background:var(--surface-muted);min-height:42px;color:var(--ink-secondary);align-items:center;gap:8px;padding:8px 10px;font-size:11px;display:flex}.sensitive-field-notice .font-mono{color:var(--ink);letter-spacing:.08em}.demo-status-note{color:var(--ink-secondary);margin-top:2px;font-size:10px;font-weight:500;display:block}.demo-confirm-dialog{max-width:440px}.portal-ticket-dialog{max-width:520px}.quickpaid-form{flex-direction:column;gap:12px;display:flex}.qris-preview-disclaimer{color:#7f1d1d;text-align:center;background:#ffffffeb;border-radius:4px;margin-top:8px;padding:2px 5px;font-size:9px;font-weight:700;line-height:1.2;display:block}@media (max-width:640px){.qris-preview-disclaimer{font-size:8px}}@media (max-width:1180px){.invoice-detail-grid{flex-direction:column}.invoice-lines{flex:auto}}@media (max-width:1240px){.billing-head,.billing-row{grid-template-columns:104px minmax(0,1fr) 104px 120px 96px minmax(92px,auto)}.billing-col-paid{display:none}}@media (max-width:1100px){.billing-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-head,.billing-row{grid-template-columns:104px minmax(0,1fr) 120px 96px minmax(92px,auto)}.billing-col-period{display:none}}@media (max-width:900px){.billing-head,.billing-row{grid-template-columns:96px minmax(0,1fr) 96px minmax(92px,auto)}.billing-col-total{display:none}}@media (max-width:560px){.billing-summary{gap:10px}.billing-card{padding:16px}.billing-value{font-size:20px}.billing-panel{padding:14px}.billing-head,.billing-row{gap:8px;padding-left:8px;padding-right:8px}.invoice-summary{min-height:0;padding:16px}.invoice-amount-row{flex-direction:column;align-items:flex-start;gap:8px}.invoice-lines,.invoice-payments,.invoice-audit{padding:16px}}.quickpaid-overlay{z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.quickpaid-modal{flex-direction:column;gap:.75rem;width:min(480px,100%);padding:1.25rem;display:flex}.quickpaid-header{justify-content:space-between;align-items:center;display:flex}.quickpaid-close{cursor:pointer;background:0 0;border:none}.quickpaid-banner{color:#8a6116;background:#fff7e6;border:1px solid #f0c36d;border-radius:.5rem;padding:.5rem .75rem;font-size:.85rem}.quickpaid-detail{gap:.25rem;margin:0;display:grid}.quickpaid-detail div{justify-content:space-between;gap:.5rem;display:flex}.quickpaid-detail dt{color:var(--muted);font-weight:600}.quickpaid-methods,.quickpaid-ref{flex-direction:column;gap:.35rem;display:flex}.quickpaid-label{font-size:.85rem;font-weight:600}.quickpaid-method-row{flex-wrap:wrap;gap:.5rem;display:flex}.quickpaid-method{border:1px solid var(--border);background:var(--card);cursor:pointer;border-radius:.5rem;padding:.4rem .7rem}.quickpaid-method.active{background:var(--primary);color:#fff;border-color:var(--primary)}.quickpaid-ref input{border:1px solid var(--border);border-radius:.5rem;width:100%;padding:.5rem}.quickpaid-actions{justify-content:flex-end;gap:.5rem;display:flex}.quickpaid-confirm{color:#fff;background:#16a34a;border-color:#16a34a}.quickpaid-trigger{margin-left:.5rem}.billing-row-wrap{align-items:center}.billing-row-link{display:contents}@media (max-width:480px){.billing-head{display:none}.billing-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"inv status""cust action";row-gap:2px;padding-top:10px;padding-bottom:10px}.billing-number{grid-area:inv}.billing-customer{grid-area:cust}.billing-status{grid-area:status}.billing-row-wrap>.quickpaid-trigger{grid-area:action;justify-self:end;margin-left:0}}@media (max-width:1180px){.collector-body,.manual-paid-body{grid-template-columns:minmax(0,1fr)}.collector-table-panel,.collector-review,.manual-paid-table,.manual-paid-confirm{min-height:0}}@media (max-width:900px){.collector-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.collector-stat:last-child{grid-column:1/-1}.collector-toolbar{flex-direction:column;align-items:flex-start}.collector-toolbar-actions{flex-wrap:wrap}}@media (max-width:640px){.collector-table-head{display:none}.collector-table-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name state""submitted amount";row-gap:4px}.collector-batch-name{grid-area:name}.collector-table-row>:nth-child(2){grid-area:submitted}.collector-table-row>:nth-child(2):before{content:"Submitted: ";color:var(--ink-secondary)}.collector-table-row>:nth-child(3){text-align:right;grid-area:amount}.collector-state{grid-area:state}.manual-paid-head{display:none}.manual-paid-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"invoice action""customer amount";row-gap:4px}.manual-paid-row>:first-child{grid-area:invoice}.manual-paid-row>:nth-child(2){grid-area:customer}.manual-paid-row>:nth-child(3){text-align:right;grid-area:amount}.manual-paid-row>:nth-child(4){grid-area:action}.collector-audit-banner,.manual-paid-banner{flex-direction:column;align-items:flex-start}}@media (max-width:400px){.collector-summary{gap:8px}.collector-stat{padding:14px}.collector-toolbar-actions .btn{flex:auto}}@media (max-width:1180px){.migration-body,.dry-run-body,.conflict-body,.workbench-body{grid-template-columns:minmax(0,1fr)}.workbench-table-panel,.workbench-detail{min-height:0}}@media (max-width:900px){.migration-phases,.migration-metrics,.dry-run-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.migration-metric:last-child,.migration-phase:last-child{grid-column:1/-1}.migration-context,.migration-footer,.dry-run-nav{flex-direction:column;align-items:flex-start}.migration-footer>div:last-child{flex-wrap:wrap}}@media (max-width:700px){.dry-run-table-head,.conflict-head{display:none}.dry-run-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"id result""domain action"}.dry-run-row>:first-child{grid-area:id}.dry-run-row>:nth-child(2){grid-area:domain}.dry-run-row>:nth-child(3){text-align:right;grid-area:result}.dry-run-row>:nth-child(4){text-align:right;grid-area:action}.conflict-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"field field""legacy gaznet"}.conflict-row>:first-child{grid-area:field}.conflict-row>:nth-child(2){grid-area:legacy}.conflict-row>:nth-child(3){grid-area:gaznet}.workbench-head{display:none}.workbench-row{flex-direction:column;align-items:flex-start;gap:3px;display:flex}.workbench-row>span:last-child{align-self:flex-start;margin-top:3px}}@media (max-width:480px){.migration-actions{flex-direction:column;align-items:stretch}.migration-search{width:100%}.migration-phases,.migration-metrics,.dry-run-summary{gap:8px}.migration-phase,.migration-metric,.collector-stat{min-height:0}.migration-phase>div{flex-direction:column;align-items:flex-start}.dry-run-results .panel-header{flex-direction:column;gap:10px}.migration-footer>div:last-child,.migration-footer .btn{width:100%}.module-workbench-bar,.module-workbench-bar>div:last-child{flex-direction:column;align-items:stretch}.module-workbench-bar .migration-search,.module-workbench-bar .btn{width:100%}.workbench-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.workbench-metric{min-height:0;padding:14px}.workbench-banner{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.collector-toolbar-left{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.collector-tabs{flex-wrap:wrap;gap:8px;display:flex}.collector-demo-banner{background:var(--warning-soft,#fff3cd);border-radius:8px;margin-top:8px;padding:8px 12px;font-size:13px}.collector-summary{grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0;display:grid}.collector-stat{padding:12px}.collector-fee-input,.collector-fee-mode{margin-top:8px;font-size:13px;display:block}.collector-fee-input input{width:100%;margin-top:4px}.collector-filter-row{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.collector-filter-row input,.collector-filter-row select{flex:1;min-width:160px}.collector-table-panel{padding:12px}.collector-table-head,.collector-table-row{border-bottom:1px solid var(--border,#eee);grid-template-columns:40px 1fr 1fr 1fr 1fr;align-items:center;gap:8px;padding:8px 4px;display:grid}.collector-table-row label{display:contents}.collector-actions{justify-content:flex-end;margin-top:12px;display:flex}.collector-modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:100;background:#0009;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.collector-modal{background:var(--surface,#212121);border:1px solid var(--divider,#333);border-radius:var(--radius-panel,12px);width:100%;max-width:520px;max-height:90vh;padding:20px;overflow-y:auto;box-shadow:0 12px 32px #00000080}.collector-panel-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.collector-panel-header h2{color:var(--ink);margin:0;font-size:16px;font-weight:700}.collector-panel-desc{color:var(--ink-secondary);margin-top:4px;font-size:12px}.collector-table-wrap{width:100%;overflow-x:auto}.collector-settings-head,.collector-settings-row{border-bottom:1px solid var(--divider,#ffffff14);grid-template-columns:minmax(150px,1.3fr) minmax(130px,1.1fr) minmax(110px,1fr) minmax(130px,1.1fr) 90px minmax(150px,1.2fr);align-items:center;gap:10px;padding:10px 8px;font-size:12px;display:grid}.collector-settings-head{background:var(--surface-muted);color:var(--ink-secondary);border-radius:var(--radius-input);font-weight:600}.collector-history-head,.collector-history-row{border-bottom:1px solid var(--divider,#ffffff14);grid-template-columns:minmax(110px,1fr) minmax(130px,1.2fr) minmax(110px,1fr) 80px minmax(100px,1fr) minmax(90px,.9fr) minmax(100px,1fr);align-items:center;gap:10px;padding:10px 8px;font-size:12px;display:grid}.collector-history-head{background:var(--surface-muted);color:var(--ink-secondary);border-radius:var(--radius-input);font-weight:600}.collector-status-pill{border-radius:var(--radius-pill);align-items:center;gap:5px;width:fit-content;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.collector-status-pill.is-active{color:#19d600;background:#19d60024;border:1px solid #19d6004d}.collector-status-pill.is-inactive{color:var(--ink-muted);background:#8c8c8c24;border:1px solid #8c8c8c4d}.collector-status-pill:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px;display:inline-block}.collector-actions-cell{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.collector-actions-cell .btn{height:auto;padding:4px 8px;font-size:11px}.collector-empty-box{text-align:center;color:var(--ink-secondary);padding:32px 16px;font-size:13px}.collector-toast-banner{border-radius:var(--radius-input);color:var(--text-success);background:#19d6001f;border:1px solid #19d60059;justify-content:space-between;align-items:center;margin-bottom:14px;padding:10px 14px;font-size:13px;display:flex}.collector-form-grid{flex-direction:column;gap:12px;display:flex}.collector-form-field{flex-direction:column;gap:4px;display:flex}.collector-form-field label{color:var(--ink);font-size:12px;font-weight:600}.collector-form-field input,.collector-form-field select{border-radius:var(--radius-input);border:1px solid var(--divider);background:var(--surface-elevated);width:100%;color:var(--ink);padding:8px 10px;font-size:13px}.collector-form-field input:focus,.collector-form-field select:focus{border-color:var(--primary);outline:none}.collector-form-field-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.collector-radio-group{align-items:center;gap:12px;margin-top:4px;display:flex}.collector-radio-group label{cursor:pointer;align-items:center;gap:6px;font-size:13px;font-weight:400;display:inline-flex}.collector-form-error{color:var(--text-danger);border-radius:var(--radius-input);background:#dd00001f;border:1px solid #dd00004d;padding:8px 12px;font-size:12px}@media (max-width:900px){.collector-summary{grid-template-columns:repeat(2,1fr)}.collector-table-head,.collector-table-row{grid-template-columns:32px 1fr 1fr}.collector-table-head span:nth-child(n+4),.collector-table-row span:nth-child(n+4){display:none}}@media (max-width:600px){.collector-summary{grid-template-columns:1fr}.collector-table-head,.collector-table-row{grid-template-columns:32px 1fr}.collector-table-head span:nth-child(n+3),.collector-table-row span:nth-child(n+3){display:none}}.customer-safety-banner{color:#92400e;background:#f59e0b1f;border:1px solid #f59e0b73;border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;padding:10px 14px;font-size:.9rem;display:flex}.customer-safety-banner strong{font-weight:700}.customer-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin-top:12px;display:grid}.customer-field{flex-direction:column;gap:2px;display:flex}.customer-field-label{color:var(--muted,#6b7280);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem}.customer-field-value{color:var(--text,#111827);font-weight:600}.customer-badge{border-radius:999px;padding:6px 12px;font-size:.85rem;font-weight:600}.customer-badge.tone-collector{color:#1d4ed8;background:#3b82f626}.customer-badge.tone-office{color:#374151;background:#6b728026}.customer-isolated{font-weight:600}.customer-isolated.is-isolated{color:#dc2626}.customer-isolated.is-active{color:#16a34a}.customer-history-table{margin-top:8px}.customer-history-head,.customer-history-row{grid-template-columns:1.1fr 1.3fr 1fr .9fr 1fr;align-items:center;gap:8px;padding:8px 4px;display:grid}.customer-history-head{color:var(--muted,#6b7280);border-bottom:1px solid var(--border,#e5e7eb);font-size:.85rem;font-weight:600}.customer-history-row{border-bottom:1px solid var(--border,#f3f4f6);font-size:.9rem}.customer-history-body .customer-history-row:last-child{border-bottom:none}.customer-detail-empty{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:24px;display:flex}@media (max-width:768px){.customer-profile-grid{grid-template-columns:1fr}.customer-history-head,.customer-history-row{grid-template-columns:1fr 1fr}.customer-history-head span:nth-child(n+3),.customer-history-row span:nth-child(n+3){display:none}}.new-customer-header,.customer-360-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.new-customer-header .page-title,.customer-360-header .page-title{color:var(--ink);margin:0;font-size:20px;font-weight:700}.new-customer-header .page-subtitle,.customer-360-header .page-subtitle{color:var(--ink-secondary);margin:4px 0 0;font-size:13px}.header-left{align-items:flex-start;gap:14px;display:flex}.back-btn{align-items:center;gap:6px;height:36px;padding:8px 12px;font-size:13px;display:inline-flex}.header-meta .title-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.header-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.edit-customer-btn{background:var(--surface-elevated);border-color:var(--divider)}.customer-safety-banner{background:var(--surface-muted);border:1px solid var(--text-warning);border-radius:var(--radius-card);color:var(--ink-secondary);align-items:flex-start;gap:12px;margin-bottom:20px;padding:12px 16px;font-size:12px;display:flex}.customer-safety-banner strong{color:var(--text-warning);margin-bottom:2px;font-weight:600;display:block}.new-customer-form{flex-direction:column;gap:20px;display:flex}.form-grid-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:20px;display:grid}.form-column{flex-direction:column;gap:20px;display:flex}.form-section{gap:16px;padding:20px}.form-field-group{flex-direction:column;gap:14px;display:flex}.form-row-two{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-row-three{grid-template-columns:1fr 1fr 1fr;gap:10px;display:grid}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label,.form-label-inline{color:var(--ink-secondary);font-size:12px;font-weight:600}.form-group .req{color:var(--text-danger)}.form-input,.form-select,.form-textarea{background:var(--surface);width:100%;color:var(--ink);border:1px solid var(--divider);border-radius:var(--radius-input);outline:none;padding:8px 12px;font-family:inherit;font-size:13px;transition:border-color .15s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--link)}.disabled-input{background:var(--surface-muted);color:var(--ink-secondary);cursor:not-allowed}.input-with-action{align-items:center;display:flex;position:relative}.input-with-action .form-input{padding-right:70px}.btn-input-addon{background:var(--surface-muted);border:1px solid var(--divider);border-radius:var(--radius-input);height:28px;color:var(--ink-secondary);cursor:pointer;justify-content:center;align-items:center;padding:0 8px;display:inline-flex;position:absolute;right:6px}.btn-input-addon:nth-of-type(2){right:38px}.btn-input-addon:hover{background:var(--surface-elevated);color:var(--ink)}.service-type-toggle,.status-selector-pill{background:var(--surface-muted);border-radius:var(--radius-pill);gap:4px;padding:3px;display:inline-flex}.pill-btn{color:var(--ink-secondary);border-radius:var(--radius-pill);cursor:pointer;background:0 0;border:none;padding:4px 10px;font-size:11px;font-weight:600}.pill-btn.active{background:var(--link);color:#fff}.pill-status.aktif.active{background:var(--text-success);color:#fff}.pill-status.grace.active{background:var(--text-warning);color:#fff}.pill-status.isolated.active{background:var(--text-danger);color:#fff}.plan-selection-cards{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.plan-card-option{background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-card);cursor:pointer;flex-direction:column;gap:4px;padding:12px;transition:all .15s;display:flex}.plan-card-option:hover{border-color:var(--ink-secondary);background:var(--surface-muted)}.plan-card-option.selected{border-color:var(--link);background:var(--surface-elevated);box-shadow:0 0 0 1px var(--link)}.plan-card-head{justify-content:space-between;align-items:center;display:flex}.plan-code-badge{background:var(--surface-muted);color:var(--link);border-radius:var(--radius-input);font-size:11px;font-weight:700;font-family:var(--font-mono);padding:2px 6px}.plan-price-text{color:var(--ink);font-size:13px;font-weight:700}.plan-name-text{color:var(--ink);font-size:12px;font-weight:600}.plan-speed-text{color:var(--text-success);font-size:11px;font-weight:600;font-family:var(--font-mono)}.plan-desc-text{color:var(--ink-secondary);font-size:10px}.addon-checkbox-list{flex-direction:column;gap:6px;display:flex}.addon-checkbox-item{background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-input);cursor:pointer;align-items:center;gap:10px;padding:8px 12px;font-size:12px;display:flex}.addon-checkbox-item.active{border-color:var(--link);background:var(--surface-elevated)}.addon-checkbox-item .addon-name{color:var(--ink);flex:1}.addon-checkbox-item .addon-price{color:var(--link);font-weight:600;font-family:var(--font-mono)}.billing-summary-box{background:var(--surface-muted);border-radius:var(--radius-input);flex-direction:column;gap:8px;padding:14px;display:flex}.summary-line{color:var(--ink-secondary);justify-content:space-between;align-items:center;font-size:12px;display:flex}.summary-line.discount{color:var(--text-success)}.summary-line.grand-total{border-top:1px dashed var(--divider);color:var(--ink);margin-top:4px;padding-top:8px;font-size:14px}.summary-line.grand-total strong:last-child{color:var(--link)}.automation-options{flex-direction:column;gap:10px;padding-top:8px;display:flex}.toggle-checkbox-row{cursor:pointer;align-items:flex-start;gap:10px;font-size:12px;display:flex}.toggle-checkbox-row input{margin-top:3px}.toggle-checkbox-row strong{color:var(--ink);font-size:12px;display:block}.toggle-checkbox-row p{color:var(--ink-secondary);margin:2px 0 0;font-size:11px}.new-customer-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:16px 20px;display:flex}.footer-left-info{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.footer-calc-text{color:var(--ink-secondary);font-size:13px}.footer-calc-text strong{color:var(--ink)}.footer-right-buttons{align-items:center;gap:10px;display:flex}.submit-customer-btn{align-items:center;gap:8px;padding:10px 20px;font-weight:600;display:inline-flex}.rx-power-bar-wrap{align-items:center;gap:10px;display:flex}.rx-status-indicator{border-radius:var(--radius-pill);padding:2px 8px;font-size:11px;font-weight:600}.rx-status-indicator.normal{color:var(--text-success);background:#19d60026}.customer-360-tabs{gap:6px;margin-bottom:20px;padding:6px;display:flex;overflow-x:auto}.customer-360-tabs .tab-btn{border-radius:var(--radius-input);color:var(--ink-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.customer-360-tabs .tab-btn:hover{background:var(--surface-muted);color:var(--ink)}.customer-360-tabs .tab-btn.active{background:var(--surface-elevated);color:var(--link);box-shadow:0 1px 3px #0000001a}.tab-pane-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.customer-field-card{flex-direction:column;gap:16px;padding:20px;display:flex}.field-grid-two{grid-template-columns:repeat(2,1fr);gap:14px 16px;display:grid}.field-item{flex-direction:column;gap:4px;display:flex}.field-item.span-two{grid-column:span 2}.field-label{text-transform:uppercase;color:var(--ink-secondary);letter-spacing:.04em;font-size:11px;font-weight:600}.field-value{color:var(--ink);font-size:13px;font-weight:600}.copyable-field{align-items:center;gap:6px;display:flex}.btn-copy-icon{color:var(--ink-secondary);cursor:pointer;background:0 0;border:none;padding:2px 4px}.btn-copy-icon:hover{color:var(--link)}.live-status-box{flex-direction:column;gap:16px;display:flex}.live-status-indicator{background:var(--surface-muted);border-radius:var(--radius-input);align-items:center;gap:12px;padding:12px 14px;display:flex}.live-pulse-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px}.live-pulse-dot.online{background:var(--text-success);box-shadow:0 0 0 3px #19d60040}.live-pulse-dot.isolated{background:var(--text-danger);box-shadow:0 0 0 3px #ff444440}.live-status-indicator strong{color:var(--ink);font-size:13px;display:block}.live-status-indicator p{color:var(--ink-secondary);margin:2px 0 0;font-size:11px}.live-metric-row{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.live-metric{background:var(--surface-muted);border-radius:var(--radius-input);flex-direction:column;gap:4px;padding:10px;display:flex}.live-metric span{color:var(--ink-secondary);text-transform:uppercase;font-size:10px}.live-metric strong{color:var(--ink);font-size:13px}.live-action-buttons{gap:10px;display:flex}.subscription-plan-box{flex-direction:column;gap:16px;display:flex}.plan-badge-large{background:var(--surface-muted);border-radius:var(--radius-input);color:var(--link);align-items:center;gap:14px;padding:14px;display:flex}.plan-badge-large h3{color:var(--ink);margin:0;font-size:16px}.plan-badge-large p{color:var(--ink-secondary);margin:2px 0 0;font-size:12px}.sub-price-breakdown{flex-direction:column;gap:8px;display:flex}.breakdown-row{color:var(--ink-secondary);justify-content:space-between;font-size:13px;display:flex}.breakdown-row.discount{color:var(--text-success)}.breakdown-row.total-highlight{border-top:1px dashed var(--divider);color:var(--ink);margin-top:4px;padding-top:10px;font-size:15px;font-weight:700}.quick-pay-action-banner{background:var(--surface-muted);border-radius:var(--radius-input);justify-content:space-between;align-items:center;gap:14px;margin-top:16px;padding:14px;display:flex}.quick-pay-action-banner strong{color:var(--ink);font-size:14px;display:block}.quick-pay-action-banner p{color:var(--ink-secondary);margin:2px 0 0;font-size:11px}.customer-history-panel{flex-direction:column;gap:16px;padding:20px;display:flex}.btn-icon-tiny{background:var(--surface-muted);border:1px solid var(--divider);border-radius:var(--radius-input);color:var(--ink);cursor:pointer;padding:4px 8px}.btn-icon-tiny:hover{background:var(--surface-elevated)}.crm-name-cell{flex-direction:column;display:flex}.crm-name-link{color:var(--ink);flex-direction:column;text-decoration:none;display:flex}.crm-name-link:hover strong{color:var(--link)}.crm-id-sub{color:var(--ink-secondary);font-size:11px;font-family:var(--font-mono)}.crm-sub-text{color:var(--ink-secondary);margin-top:2px;font-size:11px}.crm-actions-cell{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.btn-icon-link{border-radius:var(--radius-input);background:var(--surface-muted);border:1px solid var(--divider);width:36px;height:36px;color:var(--ink-secondary);flex:0 0 36px;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.btn-icon-link:hover{background:var(--surface-elevated);color:var(--link)}.add-customer-top-btn{align-items:center;gap:6px;font-weight:600;display:inline-flex}.panel-actions-group{align-items:center;gap:12px;display:flex}.invoice-action-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px;padding:12px 18px;display:flex}.toolbar-left-info{color:var(--ink-secondary);align-items:center;gap:10px;font-size:13px;display:flex}.toolbar-left-info strong{color:var(--ink);font-family:var(--font-mono)}.toolbar-buttons{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;background:#000000a6;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-content{background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-panel);flex-direction:column;gap:16px;width:100%;max-width:560px;max-height:90vh;padding:24px;display:flex;overflow-y:auto;box-shadow:0 10px 25px #0006}.modal-header{justify-content:space-between;align-items:center;display:flex}.modal-title-wrap{align-items:center;gap:10px;display:flex}.modal-title-wrap h3{color:var(--ink);margin:0;font-size:16px;font-weight:700}.btn-close{color:var(--ink-secondary);cursor:pointer;background:0 0;border:none;font-size:22px;line-height:1}.btn-close:hover{color:var(--ink)}.modal-desc{color:var(--ink-secondary);margin:0;font-size:13px}.cli-script-block,.wa-message-box{background:var(--surface-muted);border:1px solid var(--divider);border-radius:var(--radius-input);font-size:12px;font-family:var(--font-mono);color:var(--ink);white-space:pre-wrap;word-break:break-all;max-height:300px;padding:14px;line-height:1.5;overflow-y:auto}.modal-footer{justify-content:flex-end;align-items:center;gap:10px;padding-top:10px;display:flex}.success-modal{text-align:center;align-items:center;max-width:480px}.success-icon-wrap{width:64px;height:64px;color:var(--text-success);background:#19d60026;border-radius:50%;justify-content:center;align-items:center;display:flex}.success-title{color:var(--ink);margin:0;font-size:18px;font-weight:700}.success-desc{color:var(--ink-secondary);margin:0;font-size:13px}.success-details-card{background:var(--surface-muted);border-radius:var(--radius-input);text-align:left;flex-direction:column;gap:8px;width:100%;padding:14px;display:flex}.success-detail-row{color:var(--ink-secondary);justify-content:space-between;font-size:12px;display:flex}.success-detail-row strong{color:var(--ink)}.success-code{font-family:var(--font-mono);color:var(--link);font-weight:600}.success-actions{flex-wrap:wrap;justify-content:center;gap:10px;width:100%;display:flex}.invoice-print-modal-box{overscroll-behavior:contain;max-width:860px;max-height:92vh;padding:20px 24px;overflow-y:auto}.invoice-print-modal-box:focus{outline:none}.print-modal-top-header{border-bottom:1px solid var(--divider);justify-content:space-between;align-items:center;gap:14px;padding-bottom:12px;display:flex}.print-modal-top-header .modal-title-wrap{align-items:flex-start;min-width:0}.invoice-print-modal-title-copy{min-width:0}.invoice-print-modal-subtitle{max-width:520px;color:var(--ink-secondary);margin-top:3px;font-size:11px;line-height:1.35}.modal-header-actions{flex:none;align-items:center;gap:10px;display:flex}.btn-settings-company{background:var(--surface-muted);border:1px solid var(--divider);border-radius:var(--radius-pill);min-height:44px;color:var(--ink);cursor:pointer;align-items:center;gap:6px;padding:5px 12px;font-size:11px;font-weight:600;transition:all .15s;display:inline-flex}.btn-settings-company:hover,.btn-settings-company.active{background:var(--surface-elevated);border-color:var(--link);color:var(--link)}.company-edit-panel{background:var(--surface-muted);border:1px solid var(--link);border-radius:var(--radius-card);flex-direction:column;gap:12px;margin-top:10px;padding:16px;display:flex}.company-edit-grid{grid-template-columns:repeat(2,1fr);gap:10px 14px;display:grid}.company-edit-grid .span-two{grid-column:span 2}.company-edit-footer{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.print-format-tabs{border-bottom:1px solid var(--divider);gap:8px;padding:10px 0;display:flex}.format-tab-btn{background:var(--surface-muted);border:1px solid var(--divider);border-radius:var(--radius-input);min-height:44px;color:var(--ink-secondary);cursor:pointer;padding:6px 14px;font-size:12px;font-weight:600;transition:all .15s}.format-tab-btn.active{background:var(--link);color:#fff;border-color:var(--link)}.receipt-preview-container{border-radius:var(--radius-card);background:#1e293b;justify-content:center;max-height:540px;padding:24px;display:flex;overflow-y:auto}.invoice-print-modal-box .btn-close{border-radius:50%;flex:0 0 44px;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:inline-flex}.invoice-print-modal-box .btn-close:hover{background:var(--surface-muted)}.a4-invoice-paper{color:#1e293b;background:#fff;flex-direction:column;gap:20px;width:100%;max-width:720px;min-height:780px;padding:44px 52px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5;display:flex;position:relative;box-shadow:0 8px 30px #0006}.a4-watermark-paid{color:#10b98114;letter-spacing:12px;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:0;font-size:130px;font-weight:900;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-30deg)}.a4-header-row{z-index:1;justify-content:space-between;align-items:flex-start;gap:20px;display:flex;position:relative}.a4-brand-col{flex-direction:column;align-items:flex-start;display:flex}.a4-brand-logo-img{width:130px;height:auto;display:block}.a4-legal-title{color:#0f172a;letter-spacing:.5px;margin-top:4px;font-size:13px;font-weight:800}.a4-invoice-meta-col{text-align:right;flex-direction:column;align-items:flex-end;gap:6px;display:flex}.a4-doc-inv-num{color:#0f172a;font-size:26px;font-weight:800;font-family:var(--font-mono,monospace);letter-spacing:-.5px;margin:0}.a4-paid-date{color:#475569;align-items:center;gap:8px;font-size:12px;display:flex}.a4-status-chip{text-transform:uppercase;border-radius:4px;padding:3px 8px;font-size:10px;font-weight:800}.a4-status-chip.paid{color:#15803d;background:#dcfce7}.a4-status-chip.unpaid{color:#b45309;background:#fef3c7}.a4-divider-line{background:#e2e8f0;width:100%;height:2px}.a4-parties-grid{z-index:1;grid-template-columns:1fr 1fr;gap:32px;display:grid;position:relative}.a4-party-box{color:#475569;flex-direction:column;gap:2px;font-size:12px;display:flex}.a4-party-box.pay-to{text-align:right}.a4-party-label{letter-spacing:.5px;color:#94a3b8;margin-bottom:2px;font-size:10px;font-weight:800}.a4-party-name{color:#0f172a;font-size:14px}.a4-party-id{color:#3b82f6;font-size:12px;font-weight:700}.a4-party-site{color:#0f172a;font-size:12px;font-weight:700}.a4-party-email{color:#2563eb}.a4-items-section{z-index:1;position:relative}.a4-items-table{border-collapse:collapse;width:100%;font-size:12px}.a4-items-table thead th{color:#334155;text-align:left;text-transform:uppercase;letter-spacing:.5px;background:#f8fafc;border-bottom:2px solid #cbd5e1;padding:10px 12px;font-size:11px;font-weight:700}.a4-items-table tbody td{color:#334155;border-bottom:1px solid #e2e8f0;padding:10px 12px}.a4-items-table tbody tr.a4-total-row td{color:#0f172a;border-bottom:none;padding-top:14px;font-size:14px}.a4-payment-section{z-index:1;flex-direction:column;gap:8px;display:flex;position:relative}.a4-payment-table{border-collapse:collapse;width:100%;font-size:12px}.a4-payment-table thead th{color:#334155;text-align:left;background:#f8fafc;border-bottom:1.5px solid #cbd5e1;padding:8px 12px;font-size:11px;font-weight:700}.a4-payment-table tbody td{color:#0f172a;border-bottom:1px solid #e2e8f0;padding:8px 12px}.a4-terbilang-box{color:#475569;background:#f8fafc;border-left:3px solid #3b82f6;padding:8px 12px;font-size:11px}.terbilang-label{color:#1e293b;margin-right:6px;font-weight:700}.terbilang-text{color:#0f172a;font-style:italic}.a4-notice-box{color:#475569;z-index:1;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:10px 14px;font-size:11px;position:relative}.a4-notice-box strong{color:#0f172a;margin-bottom:2px;font-size:11px;display:block}.a4-notice-box p{margin:0;line-height:1.4}.a4-footer-signature-row{color:#64748b;z-index:1;border-top:1px dashed #cbd5e1;justify-content:space-between;align-items:center;margin-top:auto;padding-top:10px;font-size:11px;display:flex;position:relative}.receipt-paper{color:#111;background:#fff;padding:16px;font-family:Courier New,Courier,monospace;font-size:11px;line-height:1.4;box-shadow:0 4px 10px #0000004d}.format-thermal58 .receipt-paper{width:260px;font-size:10px}.format-thermal80 .receipt-paper{width:340px;font-size:11px}.receipt-header{text-align:center}.receipt-logo{letter-spacing:2px;font-size:16px;font-weight:800}.receipt-address,.receipt-sub{color:#444;font-size:9px}.receipt-divider{white-space:nowrap;color:#888;margin:6px 0;overflow:hidden}.receipt-meta{margin-bottom:6px}.receipt-item-row{justify-content:space-between;margin:3px 0;display:flex}.receipt-total-row{margin:6px 0;font-size:12px;font-weight:800}.receipt-footer{text-align:center;margin-top:10px;font-size:9px}.thermal-terbilang{color:#333;margin:4px 0 8px;font-size:9px}.thermal-verified-by{margin-top:6px;font-size:9px;font-weight:700}@media print{body *{visibility:hidden!important}.print-modal-backdrop,.invoice-print-modal-box,.receipt-preview-container,.receipt-preview-container *{visibility:visible!important}.print-modal-backdrop{background:0 0!important;padding:0!important;position:static!important;inset:auto!important}.invoice-print-modal-box{max-width:100%!important;max-height:none!important;box-shadow:none!important;background:0 0!important;border:none!important;padding:0!important;position:static!important;overflow:visible!important}.print-modal-top-header,.company-edit-panel,.print-format-tabs,.print-modal-bottom-actions{display:none!important}.receipt-preview-container{background:0 0!important;max-height:none!important;margin:0!important;padding:0!important;overflow:visible!important}.a4-invoice-paper{box-shadow:none!important;color:#000!important;width:100%!important;max-width:100%!important;min-height:auto!important;padding:24px 32px!important}.receipt-paper{box-shadow:none!important;color:#000!important}@page{size:auto;margin:10mm}}@media (max-width:640px){.invoice-print-modal-box{padding:16px 12px}.print-modal-top-header{flex-wrap:wrap;align-items:flex-start}.print-modal-top-header .modal-title-wrap{flex:100%}.modal-header-actions{justify-content:space-between;width:100%}.btn-settings-company{flex:auto;justify-content:center}.print-format-tabs{scrollbar-width:thin;overflow-x:auto}.format-tab-btn{white-space:nowrap;flex:none}.print-modal-bottom-actions{flex-wrap:wrap}.print-modal-bottom-actions .btn{min-height:44px}.receipt-preview-container{padding:12px 6px}.a4-invoice-paper{gap:14px;min-height:auto;padding:20px 14px;font-size:11px}.a4-header-row{flex-direction:column;align-items:flex-start;gap:10px}.a4-invoice-meta-col{text-align:left;align-items:flex-start}.a4-doc-inv-num{font-size:20px}.a4-brand-logo-img{width:95px}.a4-parties-grid{grid-template-columns:1fr;gap:16px}.a4-party-box.pay-to{text-align:left}.a4-watermark-paid{letter-spacing:6px;font-size:70px}.a4-items-table,.a4-payment-table{font-size:11px}.a4-footer-signature-row{flex-direction:column;align-items:flex-start;gap:6px}.company-edit-grid{grid-template-columns:1fr}.company-edit-grid .span-two{grid-column:span 1}}@media (max-width:1024px){.form-grid-layout,.tab-pane-grid{grid-template-columns:1fr}.customer-360-header{flex-direction:column;align-items:stretch}.header-actions{justify-content:flex-start}}@media (max-width:640px){.form-row-two,.form-row-three,.field-grid-two,.plan-selection-cards,.live-metric-row{grid-template-columns:1fr}.field-item.span-two{grid-column:span 1}.new-customer-footer{flex-direction:column;align-items:stretch}.footer-right-buttons{justify-content:stretch;width:100%}.footer-right-buttons .btn{flex:1}}.qris-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.qris-page-header .page-title{color:var(--ink);margin:0;font-size:20px;font-weight:700}.qris-page-header .page-subtitle{color:var(--ink-secondary);margin:4px 0 0;font-size:13px}.qris-header-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.qris-kpi-grid{grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:20px;display:grid}.qris-kpi-card{border-radius:var(--radius-card);align-items:center;gap:14px;padding:16px;display:flex}.qris-kpi-card.highlight{background:var(--surface-elevated);border-color:var(--divider)}.kpi-icon-wrap{border-radius:var(--radius-card);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.kpi-icon-wrap.success{color:var(--text-success);background:#19d6001f}.kpi-icon-wrap.pending{color:var(--link);background:#55beff1f}.kpi-icon-wrap.submitted{color:var(--text-warning);background:#f59e0b1f}.kpi-icon-wrap.matched{color:var(--text-success);background:#19d6001f}.kpi-icon-wrap.exception{color:var(--text-danger);background:#ff44441f}.kpi-info{flex-direction:column;gap:2px;min-width:0;display:flex}.qris-kpi-card .kpi-label{color:var(--ink-secondary);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:600;overflow:hidden}.qris-kpi-card .kpi-value{color:var(--ink);white-space:nowrap;font-size:17px;font-weight:700}.kpi-sub{color:var(--ink-secondary);font-size:11px}.qris-tabs{gap:6px;margin-bottom:20px;padding:6px;display:flex;overflow-x:auto}.qris-tab-btn{border-radius:var(--radius-input);color:var(--ink-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.qris-tab-btn:hover{background:var(--surface-muted);color:var(--ink)}.qris-tab-btn.active{background:var(--surface-elevated);color:var(--link);box-shadow:0 1px 3px #0000001a}.tab-counter-badge{border-radius:var(--radius-pill);background:var(--surface-muted);color:var(--ink);font-size:10px;font-weight:700;font-family:var(--font-mono);padding:2px 6px}.tab-counter-badge.alert{background:var(--text-danger);color:#fff}.qris-panel{flex-direction:column;gap:16px;padding:20px;display:flex}.qris-toolbar-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.status-filter-pills{background:var(--surface-muted);border-radius:var(--radius-pill);gap:4px;padding:3px;display:inline-flex}.filter-pill-btn{color:var(--ink-secondary);border-radius:var(--radius-pill);cursor:pointer;background:0 0;border:none;padding:4px 12px;font-size:12px;font-weight:600}.filter-pill-btn.active{background:var(--link);color:#fff}.qris-filter-bar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.filter-search-wrap{background:var(--surface-muted);border:1px solid var(--divider);border-radius:var(--radius-input);min-width:240px;height:38px;color:var(--ink-secondary);flex:1;align-items:center;gap:8px;padding:0 12px;display:flex}.qris-search-input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:13px}.filter-select-wrap{background:var(--surface-muted);border:1px solid var(--divider);border-radius:var(--radius-input);height:38px;color:var(--ink-secondary);align-items:center;gap:6px;padding:0 10px;display:flex}.qris-select-input{color:var(--ink);cursor:pointer;background:0 0;border:none;outline:none;font-size:13px}.qris-table-container{overflow-x:auto}.qris-table-head,.qris-table-row{grid-template-columns:140px 180px 100px 95px 110px 75px 110px 120px minmax(130px,1fr);align-items:center;gap:8px;padding:10px 8px;font-size:12px;display:grid}.qris-table-head{border-bottom:1px solid var(--divider);color:var(--ink-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:600}.qris-table-row{border-bottom:1px solid var(--divider)}.qris-table-row:hover{background:var(--surface-muted)}.cell-sub{color:var(--ink-secondary);font-size:10px;display:block}.cust-link,.inv-link{color:var(--ink);text-decoration:none}.cust-link:hover,.inv-link:hover{color:var(--link)}.method-badge{border-radius:var(--radius-pill);white-space:nowrap;padding:3px 6px;font-size:10px;font-weight:700;display:inline-block}.method-badge.qris,.method-badge.qris-cpm{color:#ff4d4f;background:#ed1c2426;border:1px solid #ed1c244d}.method-badge.transfer-bri,.method-badge.bri{color:var(--link);background:#0052ef26;border:1px solid #0052ef4d}.method-badge.bca{color:var(--text-warning);background:#f59e0b26;border:1px solid #f59e0b4d}.unique-code-tag{background:var(--surface-muted);color:var(--text-success);border-radius:4px;padding:2px 5px;font-size:11px;font-weight:700}.qris-status-badge{border-radius:var(--radius-pill);align-items:center;gap:6px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.qris-status-badge .status-dot{border-radius:50%;width:6px;height:6px}.status-matched{color:var(--text-success);background:#19d6001f}.status-matched .status-dot{background:var(--text-success)}.status-pending{color:var(--link);background:#55beff1f}.status-pending .status-dot{background:var(--link)}.status-submitted{color:var(--text-warning);background:#f59e0b1f}.status-submitted .status-dot{background:var(--text-warning)}.status-exception{color:var(--text-danger);background:#ff44441f}.status-exception .status-dot{background:var(--text-danger)}.col-actions{align-items:center;gap:5px;display:flex}.btn-sm{border-radius:var(--radius-input);cursor:pointer;white-space:nowrap;padding:4px 8px;font-size:11px;font-weight:600}.btn-primary-outline{border:1px solid var(--link);color:var(--link);background:0 0}.btn-primary-outline:hover{background:var(--link);color:#fff}.btn-success-sm{background:var(--text-success);color:#fff;border:none}.btn-danger-sm{background:var(--text-danger);color:#fff;border:none}.btn-icon-sm{background:var(--surface-muted);border:1px solid var(--divider);border-radius:var(--radius-input);color:var(--ink-secondary);cursor:pointer;justify-content:center;align-items:center;padding:4px 6px;display:inline-flex}.btn-icon-sm:hover{color:var(--ink);background:var(--surface-elevated)}.qris-empty-state{text-align:center;color:var(--ink-secondary);padding:40px}.qris-simulator-grid{grid-template-columns:minmax(0,1.2fr) minmax(360px,420px);align-items:start;gap:20px;display:grid}.simulator-control-panel{flex-direction:column;gap:16px;padding:20px;display:flex}.simulator-desc{color:var(--ink-secondary);margin:0;font-size:13px;line-height:1.5}.form-group-sim{flex-direction:column;gap:6px;display:flex}.form-group-sim label{color:var(--ink-secondary);font-size:12px;font-weight:600}.sim-meta-box{background:var(--surface-muted);border-radius:var(--radius-input);flex-direction:column;gap:8px;padding:14px;display:flex}.sim-meta-row{color:var(--ink-secondary);justify-content:space-between;font-size:12px;display:flex}.sim-meta-row strong{color:var(--ink)}.simulator-action-wrap{display:flex}.simulator-action-stack{flex-direction:column;gap:8px}.btn-sim-pay{justify-content:center;align-items:center;gap:8px;width:100%;padding:12px;font-size:13px;font-weight:700;display:inline-flex}.tlv-inspector-card{background:var(--surface-muted);border:1px solid var(--divider);border-radius:var(--radius-card);flex-direction:column;gap:10px;padding:14px;display:flex}.tlv-header{color:var(--link);align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.tlv-string-code{color:#38ef7d;font-family:var(--font-mono);white-space:pre-wrap;word-break:break-all;background:#000;border-radius:6px;max-height:140px;padding:10px;font-size:11px;line-height:1.4;overflow-y:auto}.qris-pwa-preview-wrapper{justify-content:center;display:flex}.qris-phone-mockup{background:#111827;border:4px solid #374151;border-radius:36px;width:100%;max-width:380px;padding:12px;box-shadow:0 12px 40px #0006}.phone-screen{color:#111827;text-align:center;background:#fff;border-radius:26px;flex-direction:column;align-items:center;padding:20px 16px;display:flex}.qris-screen-header{border-bottom:2px solid #ed1c24;justify-content:space-between;align-items:center;width:100%;margin-bottom:12px;padding-bottom:8px;display:flex}.qris-brand-logo{flex-direction:column;align-items:flex-start;display:flex}.qris-title-red{color:#ed1c24;letter-spacing:1px;font-size:20px;font-weight:900;line-height:1}.qris-subtitle-gray{color:#6b7280;letter-spacing:.5px;font-size:7px;font-weight:700}.gpn-logo-tag{color:#ed1c24;border:1.5px solid #ed1c24;border-radius:4px;padding:1px 6px;font-size:12px;font-weight:900}.merchant-info-banner{margin-bottom:10px}.merchant-info-banner h3{color:#111827;margin:0;font-size:13px;font-weight:800}.merchant-info-banner p{color:#6b7280;margin:2px 0;font-size:10px}.invoice-tag{color:#374151;background:#f3f4f6;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:600;display:inline-block}.qr-container-center{margin:6px 0 12px}.locked-amount-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;width:100%;margin-bottom:12px;padding:10px}.locked-label{color:#dc2626;letter-spacing:.5px;font-size:9px;font-weight:700;display:block}.locked-amount-val{color:#111827;margin:2px 0 6px;font-size:20px;font-weight:900;display:block}.countdown-pill{color:#d97706;background:#fef3c7;border-radius:999px;align-items:center;gap:5px;padding:3px 8px;font-size:10px;font-weight:600;display:inline-flex}.countdown-pill.is-expired{color:#b42318;background:#fdecea}.qris-instructions{width:100%;font-size:10px}.inst-title{color:#6b7280;margin:0 0 6px;font-size:10px}.supported-apps-icons{flex-wrap:wrap;justify-content:center;gap:6px;margin-bottom:8px;display:flex}.supported-apps-icons span{color:#374151;background:#f3f4f6;border-radius:4px;padding:2px 6px;font-size:9px;font-weight:700}.warning-note{color:#dc2626;margin:0;font-size:8px;line-height:1.3}.mutations-head,.mutations-row{grid-template-columns:110px 100px 150px 1.5fr 120px 100px 120px}.qris-settings-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.qris-settings-card{flex-direction:column;gap:16px;padding:20px;display:flex}.settings-field-list{flex-direction:column;gap:14px;display:flex}.code-range-preview{background:var(--surface-muted);border:1px solid var(--divider);border-radius:var(--radius-input);color:var(--ink);padding:8px 12px;font-size:13px}.setup-steps-list{flex-direction:column;gap:14px;margin:0;padding-left:20px;display:flex}.setup-steps-list li strong{color:var(--ink);margin-bottom:2px;font-size:13px;display:block}.setup-steps-list li p{color:var(--ink-secondary);margin:0;font-size:12px;line-height:1.4}.qris-match-modal,.qris-detail-modal{max-width:600px}.target-payment-card{background:var(--surface-muted);border-radius:var(--radius-input);border-left:3px solid var(--link);flex-direction:column;gap:4px;padding:12px 14px;display:flex}.target-label{text-transform:uppercase;color:var(--ink-secondary);font-size:10px;font-weight:700}.target-row{align-items:center;gap:12px;font-size:13px;display:flex}.target-notes{color:var(--text-warning);margin:4px 0 0;font-size:11px}.mutation-list-title{color:var(--ink);margin:10px 0 0;font-size:13px}.unclaimed-mutations-list{flex-direction:column;gap:8px;max-height:260px;display:flex;overflow-y:auto}.unclaimed-mutation-item{background:var(--surface-muted);border:1px solid var(--divider);border-radius:var(--radius-input);justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.mut-item-left{flex-direction:column;gap:2px;display:flex}.mut-bank-tag{color:var(--link);font-size:9px;font-weight:700}.mut-time{color:var(--ink-secondary);font-size:10px}.mut-desc{color:var(--ink-secondary);margin:2px 0 0;font-size:11px}.mut-item-right{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.diff-tag{border-radius:4px;padding:1px 6px;font-size:10px;font-weight:700}.diff-tag.under{color:var(--text-danger);background:#ff444426}.diff-tag.over{color:var(--text-warning);background:#f59e0b26}.no-mutations-box{text-align:center;color:var(--ink-secondary);padding:20px;font-size:12px}.detail-modal-body{flex-direction:column;gap:10px;display:flex}.detail-row{color:var(--ink-secondary);justify-content:space-between;font-size:13px;display:flex}.detail-row strong{color:var(--ink)}.detail-row.total-row{border-top:1px dashed var(--divider);padding-top:8px;font-size:15px}.detail-notes-box{background:var(--surface-muted);border-radius:var(--radius-input);padding:10px;font-size:12px}.detail-notes-box span{color:var(--ink);margin-bottom:4px;font-weight:600;display:block}.detail-notes-box p{color:var(--text-warning);margin:0}.proof-attachment-box{margin-top:6px}.proof-attachment-box span{color:var(--ink-secondary);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.proof-preview-frame{background:var(--surface-muted);border:1px solid var(--divider);border-radius:var(--radius-input);color:var(--link);align-items:center;gap:12px;padding:12px;display:flex}.proof-preview-frame strong{color:var(--ink);font-size:12px;display:block}.proof-preview-frame p{color:var(--ink-secondary);margin:2px 0 0;font-size:11px}.simulate-mutation-form{flex-direction:column;gap:14px;display:flex}.amount-quick-presets{color:var(--ink-secondary);flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;font-size:11px;display:flex}.preset-btn{background:var(--surface-muted);border:1px solid var(--divider);border-radius:var(--radius-pill);color:var(--link);cursor:pointer;padding:3px 8px;font-size:10px;font-weight:600}.preset-btn:hover{background:var(--surface-elevated)}.floating-qris-toast{border-radius:var(--radius-input);z-index:2000;align-items:center;gap:10px;max-width:420px;padding:12px 18px;font-size:13px;font-weight:600;animation:.25s ease-out slideUp;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 24px #0006}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.floating-qris-toast.tone-success{color:#fff;background:#15803d}.floating-qris-toast.tone-warning{color:#fff;background:#b45309}.floating-qris-toast.tone-info{color:#fff;background:#1d4ed8}@media (max-width:1280px){.qris-kpi-grid{grid-template-columns:repeat(3,1fr)}.qris-simulator-grid{grid-template-columns:1fr}}@media (max-width:900px){.qris-kpi-grid{grid-template-columns:repeat(2,1fr)}.qris-settings-grid{grid-template-columns:1fr}}@media (max-width:640px){.qris-kpi-grid{grid-template-columns:1fr}.qris-header-actions{width:100%}.qris-header-actions .btn{flex:1}}.qris-settings-wrapper{flex-direction:column;gap:20px;display:flex}.qris-settings-card-wide{flex-direction:column;gap:16px;padding:20px;display:flex}.qris-accounts-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;display:grid}.qris-account-card{background:var(--surface-muted);border:1px solid var(--divider);border-radius:var(--radius-card);flex-direction:column;gap:12px;padding:16px;transition:all .15s;display:flex}.qris-account-card.is-default{border-color:var(--link);background:var(--surface-elevated);box-shadow:0 0 0 1px var(--link)}.acc-card-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.acc-label{color:var(--ink);font-size:14px;font-weight:700;display:block}.acc-bank-tag{color:var(--link);font-size:11px;font-weight:600}.default-pill-badge{border-radius:var(--radius-pill);background:var(--link);color:#fff;letter-spacing:.5px;padding:2px 6px;font-size:9px;font-weight:800}.acc-card-body{flex-direction:column;gap:6px;font-size:12px;display:flex}.acc-info-row{color:var(--ink-secondary);justify-content:space-between;display:flex}.acc-info-row strong{color:var(--ink)}.acc-string-snippet{background:var(--surface);border:1px solid var(--divider);border-radius:4px;margin-top:4px;padding:6px 8px}.acc-string-snippet code{color:var(--link)}.acc-card-footer{border-top:1px dashed var(--divider);flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;padding-top:10px;display:flex}.qris-add-modal{max-width:620px}.add-qris-form{flex-direction:column;gap:14px;display:flex}.qris-val-card{border-radius:var(--radius-input);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.qris-val-card.valid{background:#19d60014;border:1px solid #19d60059}.qris-val-card.invalid{background:#ff444414;border:1px solid #ff444459}.val-header{justify-content:space-between;align-items:center;font-size:12px;display:flex}.qris-val-card.valid .val-header strong{color:var(--text-success)}.qris-val-card.invalid .val-header strong{color:var(--text-danger)}.val-crc-tag{color:var(--text-success);font-size:10px;font-weight:700;font-family:var(--font-mono);background:#19d60033;border-radius:4px;padding:1px 6px}.val-body{color:var(--ink-secondary);grid-template-columns:1fr 1fr;gap:6px 12px;font-size:11px;display:grid}.val-body strong{color:var(--ink)}.val-error{color:var(--text-danger);margin:0;font-size:12px}.portal-root{background:var(--bg,#0b0b0b);min-height:100vh;color:var(--ink,#fff);justify-content:center;display:flex}.portal-container{flex-direction:column;width:100%;max-width:480px;min-height:100vh;display:flex}.portal-mobile-frame{background:var(--bg,#0b0b0b);border-left:1px solid var(--divider,#333);border-right:1px solid var(--divider,#333);flex-direction:column;width:100%;min-height:100vh;display:flex;position:relative;box-shadow:0 0 50px #000000b3}.portal-topbar{background:var(--surface,#212121);border-bottom:1px solid var(--divider,#333);z-index:50;justify-content:space-between;align-items:center;padding:12px 16px;display:flex;position:sticky;top:0}.portal-brand-logo{width:90px;height:auto;display:block}.btn-portal-guide{background:var(--surface-elevated,#353535);border:1px solid var(--divider,#333);border-radius:var(--radius-pill,999px);min-height:44px;color:var(--ink,#fff);cursor:pointer;align-items:center;gap:6px;padding:8px 14px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.btn-portal-guide:hover{background:var(--primary,#0052ef);border-color:var(--primary,#0052ef)}.portal-demo-switcher{background:var(--surface-muted,#1a1a1a);border-bottom:1px solid var(--divider,#333);align-items:center;gap:8px;padding:8px 16px;font-size:11px;display:flex;overflow-x:auto}.switcher-label{color:var(--ink-secondary,#b9b9b9);white-space:nowrap;font-weight:700}.switcher-pills{gap:6px;display:flex}.switcher-pill{background:var(--surface,#212121);border:1px solid var(--divider,#333);border-radius:var(--radius-pill,999px);min-height:32px;color:var(--ink-secondary,#b9b9b9);cursor:pointer;white-space:nowrap;padding:4px 10px;font-size:11px;font-weight:600}.switcher-pill.active{background:var(--primary,#0052ef);border-color:var(--primary,#0052ef);color:#fff}.portal-content-body{flex:1;padding:16px 16px 84px;overflow-y:auto}.portal-tab-pane{flex-direction:column;gap:16px;display:flex}.portal-customer-greeting{background:var(--surface,#212121);border-radius:var(--radius-card,8px);border:1px solid var(--divider,#333);padding:16px}.greeting-sub{color:var(--ink-secondary,#b9b9b9);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:600}.greeting-name{color:var(--ink,#fff);margin:2px 0 4px;font-size:18px;font-weight:700}.greeting-meta{color:var(--ink-secondary,#b9b9b9);font-size:11px}.portal-status-card{background:var(--surface,#212121);border-radius:var(--radius-card,8px);border:1px solid var(--divider,#333);flex-direction:column;gap:12px;padding:16px;display:flex}.status-card-header{justify-content:space-between;align-items:center;display:flex}.status-indicator-wrap{color:var(--ink,#fff);align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.status-pulse-dot{border-radius:50%;width:10px;height:10px}.status-pulse-dot.active{background:var(--success,#19d600);box-shadow:0 0 0 3px #19d60040}.status-pulse-dot.isolated{background:var(--danger,#d00);box-shadow:0 0 0 3px #dd000040}.plan-badge{border-radius:var(--radius-input,6px);background:var(--surface-elevated,#353535);color:var(--primary,#55beff);padding:3px 8px;font-size:11px;font-weight:700}.status-card-body{border-top:1px solid var(--divider,#333);grid-template-columns:1fr 1fr;gap:12px;padding-top:8px;display:grid}.status-detail-item{flex-direction:column;gap:2px;display:flex}.detail-lbl{color:var(--ink-secondary,#b9b9b9);text-transform:uppercase;font-size:10px;font-weight:600}.detail-val{color:var(--ink,#fff);font-size:13px}.status-isolated-alert{border-radius:var(--radius-input,6px);color:#ff6b6b;background:#dd00001f;border:1px solid #dd000059;align-items:flex-start;gap:10px;padding:10px 12px;font-size:11px;line-height:1.4;display:flex}.status-isolated-alert p{margin:0}.portal-bill-card{border-radius:var(--radius-card,8px);background:linear-gradient(145deg,#182236 0%,#111a2c 100%);border:1px solid #0052ef66;flex-direction:column;gap:16px;padding:18px;display:flex}.bill-card-top{flex-direction:column;gap:4px;display:flex}.bill-label{text-transform:uppercase;color:var(--primary,#55beff);letter-spacing:.05em;font-size:11px;font-weight:700}.bill-amount{color:#fff;letter-spacing:-.5px;font-size:26px;font-weight:800}.bill-sub{color:var(--ink-secondary,#b9b9b9);font-size:11px}.btn-portal-primary{background:var(--primary,#0052ef);color:#fff;border-radius:var(--radius-input,6px);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;width:100%;min-height:48px;padding:12px 20px;font-size:14px;font-weight:700;transition:all .15s;display:inline-flex}.btn-portal-primary:hover{background:#0045c7}.portal-bill-card-clear{background:var(--surface,#212121);border-radius:var(--radius-card,8px);border:1px solid var(--divider,#333);padding:16px}.bill-clear-wrap{align-items:flex-start;gap:12px;display:flex}.bill-clear-wrap strong{color:var(--ink,#fff);margin-bottom:2px;font-size:14px;display:block}.bill-clear-wrap p{color:var(--ink-secondary,#b9b9b9);margin:0;font-size:12px;line-height:1.4}.portal-quick-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.quick-grid-btn{background:var(--surface,#212121);border:1px solid var(--divider,#333);border-radius:var(--radius-card,8px);text-align:left;cursor:pointer;min-height:96px;color:var(--ink,#fff);flex-direction:column;align-items:flex-start;gap:4px;padding:14px;text-decoration:none;transition:all .15s;display:flex}.quick-grid-btn:hover{background:var(--surface-elevated,#353535);border-color:var(--divider,#555)}.quick-icon{margin-bottom:4px}.quick-icon.wrench{color:var(--accent,#f36458)}.quick-icon.file{color:var(--primary,#55beff)}.quick-icon.wa{color:var(--success,#19d600)}.quick-icon.phone{color:#fbbf24}.quick-grid-btn strong{color:var(--ink,#fff);font-size:13px}.quick-grid-btn span{color:var(--ink-secondary,#b9b9b9);font-size:10px}.portal-payment-box{background:var(--surface,#212121);border-radius:var(--radius-card,8px);border:1px solid var(--divider,#333);flex-direction:column;gap:16px;padding:18px;display:flex}.payment-head{justify-content:space-between;align-items:center;display:flex}.section-title{color:var(--ink,#fff);margin:0;font-size:16px;font-weight:700}.cost-breakdown-box{background:var(--surface-muted,#1a1a1a);border-radius:var(--radius-input,6px);flex-direction:column;gap:8px;padding:12px 14px;font-size:12px;display:flex}.breakdown-line{color:var(--ink-secondary,#b9b9b9);justify-content:space-between;display:flex}.breakdown-line.total{border-top:1px dashed var(--divider,#333);color:var(--ink,#fff);margin-top:4px;padding-top:8px;font-size:14px}.breakdown-line.total strong:last-child{color:var(--primary,#55beff)}.qris-display-card{color:#111827;text-align:center;background:#fff;border-radius:16px;flex-direction:column;align-items:center;padding:18px 14px;display:flex}.scan-instructions{color:#4b5563;margin:8px 0 0;font-size:10px;line-height:1.4}.bank-alternative-card{background:var(--surface-muted,#1a1a1a);border:1px solid var(--divider,#333);border-radius:var(--radius-input,6px);flex-direction:column;gap:6px;padding:12px 14px;display:flex}.alt-title{color:var(--ink-secondary,#b9b9b9);font-size:11px;font-weight:600}.bank-copy-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.bank-copy-row strong{color:var(--ink,#fff);font-size:12px}.bank-acc-num{color:var(--primary,#55beff);font-size:13px;font-weight:700}.btn-copy-bank{background:var(--surface-elevated,#353535);border:1px solid var(--divider,#333);border-radius:var(--radius-input,6px);min-height:38px;color:var(--ink,#fff);cursor:pointer;align-items:center;gap:4px;padding:6px 12px;font-size:11px;font-weight:600;display:inline-flex}.sim-pay-wrap{flex-direction:column;gap:6px;margin-top:4px;display:flex}.sim-pay-note{color:var(--ink-secondary,#b9b9b9);text-align:center;font-size:10px}.bill-already-paid-card{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:32px 16px;display:flex}.bill-already-paid-card h3{color:var(--ink,#fff);margin:0;font-size:18px}.bill-already-paid-card p{color:var(--ink-secondary,#b9b9b9);max-width:320px;margin:0;font-size:12px;line-height:1.5}.btn-portal-secondary{background:var(--surface-elevated,#353535);min-height:44px;color:var(--ink,#fff);border:1px solid var(--divider,#333);border-radius:var(--radius-input,6px);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.portal-support-card{background:var(--surface,#212121);border-radius:var(--radius-card,8px);border:1px solid var(--divider,#333);padding:18px}.ticket-form{flex-direction:column;gap:14px;margin-top:12px;display:flex}.ticket-success-alert{border-radius:var(--radius-input,6px);color:#fff;background:#19d6001f;border:1px solid #19d60059;align-items:flex-start;gap:12px;padding:14px;display:flex}.ticket-success-alert strong{margin-bottom:2px;font-size:13px;display:block}.ticket-success-alert p{color:var(--ink-secondary,#b9b9b9);margin:0;font-size:11px}.portal-active-ticket-card{background:var(--surface,#212121);border-radius:var(--radius-card,8px);border:1px solid var(--divider,#333);flex-direction:column;gap:14px;padding:16px;display:flex}.ticket-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.ticket-id{color:var(--primary,#55beff);font-size:11px;display:block}.ticket-issue{color:var(--ink,#fff);font-size:13px}.ticket-status-pill{border-radius:var(--radius-pill,999px);color:var(--text-warning,#f59e0b);white-space:nowrap;background:#f59e0b26;border:1px solid #f59e0b4d;padding:3px 8px;font-size:10px;font-weight:700}.ticket-tracker-timeline{grid-template-columns:repeat(4,1fr);margin:8px 0;display:grid;position:relative}.ticket-tracker-timeline:before{content:"";background:var(--divider,#333);z-index:0;height:2px;position:absolute;top:6px;left:12%;right:12%}.tracker-step{color:var(--ink-secondary,#b9b9b9);text-align:center;z-index:1;flex-direction:column;align-items:center;gap:6px;font-size:10px;display:flex;position:relative}.tracker-step .step-dot{background:var(--surface-elevated,#353535);border:2px solid var(--divider,#333);border-radius:50%;width:14px;height:14px}.tracker-step.done .step-dot{background:var(--success,#19d600);border-color:var(--success,#19d600)}.tracker-step.in-progress .step-dot{background:var(--text-warning,#f59e0b);border-color:var(--text-warning,#f59e0b);box-shadow:0 0 0 3px #f59e0b40}.tracker-step.done span,.tracker-step.in-progress span{color:var(--ink,#fff);font-weight:600}.technician-dispatch-info{background:var(--surface-muted,#1a1a1a);border-radius:var(--radius-input,6px);color:var(--primary,#55beff);align-items:center;gap:10px;padding:10px 12px;font-size:12px;display:flex}.technician-dispatch-info strong{color:var(--ink,#fff)}.technician-dispatch-info p{color:var(--ink-secondary,#b9b9b9);margin:2px 0 0;font-size:11px}.portal-contact-card{background:var(--surface,#212121);border-radius:var(--radius-card,8px);border:1px solid var(--divider,#333);flex-direction:column;gap:6px;padding:16px;display:flex}.contact-title{color:var(--ink,#fff);font-size:13px;font-weight:700}.portal-contact-card p{color:var(--ink-secondary,#b9b9b9);margin:0 0 8px;font-size:11px}.contact-buttons-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.portal-history-panel{background:var(--surface,#212121);border-radius:var(--radius-card,8px);border:1px solid var(--divider,#333);padding:18px}.portal-history-list{flex-direction:column;gap:10px;margin-top:12px;display:flex}.portal-history-item{background:var(--surface-muted,#1a1a1a);border:1px solid var(--divider,#333);border-radius:var(--radius-input,6px);justify-content:space-between;align-items:center;padding:12px;display:flex}.history-item-left{flex-direction:column;gap:2px;display:flex}.history-period{color:var(--ink-secondary,#b9b9b9);font-size:11px}.history-amount{color:var(--ink,#fff);font-size:13px;font-weight:700}.history-item-right{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.status-badge{border-radius:var(--radius-pill,999px);padding:2px 6px;font-size:10px;font-weight:700}.status-badge.paid{color:var(--success,#19d600);background:#19d60026}.status-badge.unpaid{color:#ff6b6b;background:#dd000026}.btn-view-invoice{background:var(--surface-elevated,#353535);border:1px solid var(--divider,#333);border-radius:var(--radius-input,6px);min-height:36px;color:var(--ink,#fff);cursor:pointer;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.btn-view-invoice:hover{background:var(--primary,#0052ef);border-color:var(--primary,#0052ef)}.portal-bottom-nav{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--divider,#333);z-index:100;background:#212121f2;justify-content:space-around;align-items:center;width:100%;max-width:480px;height:64px;padding:0 8px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav-item{min-width:68px;min-height:48px;color:var(--ink-secondary,#b9b9b9);cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:10px;font-weight:600;transition:all .15s;display:flex;position:relative}.bottom-nav-item:hover,.bottom-nav-item.active{color:var(--primary,#55beff)}.bottom-nav-item .badge-dot{background:var(--danger,#d00);border-radius:50%;width:7px;height:7px;position:absolute;top:6px;right:20px}.bottom-nav-item .badge-dot.warning{background:var(--text-warning,#f59e0b)}.portal-guide-modal{max-width:440px}.guide-modal-content{flex-direction:column;gap:18px;max-height:68vh;padding-right:4px;display:flex;overflow-y:auto}.guide-section{flex-direction:column;gap:8px;display:flex}.guide-section-head{align-items:center;gap:8px;display:flex}.guide-section-head h4{color:var(--ink,#fff);margin:0;font-size:13px;font-weight:700}.guide-icon{color:var(--primary,#55beff);flex-shrink:0}.guide-step-card{background:var(--surface-muted,#1a1a1a);border:1px solid var(--divider,#333);border-radius:var(--radius-input,6px);padding:10px 12px;font-size:11px}.guide-step-card strong{color:var(--primary,#55beff);margin-bottom:4px;display:block}.guide-step-card ol{color:var(--ink-secondary,#b9b9b9);flex-direction:column;gap:4px;margin:0;padding-left:18px;display:flex}.guide-desc{color:var(--ink-secondary,#b9b9b9);margin:0;font-size:11px;line-height:1.4}.guide-bullet-list{color:var(--ink-secondary,#b9b9b9);flex-direction:column;gap:6px;margin:0;padding-left:18px;font-size:11px;display:flex}.guide-bullet-list strong{color:var(--ink,#fff)}.guide-ont-indicator-grid{flex-direction:column;gap:8px;display:flex}.indicator-item{background:var(--surface-muted,#1a1a1a);border:1px solid var(--divider,#333);border-radius:var(--radius-input,6px);align-items:flex-start;gap:10px;padding:10px 12px;font-size:11px;display:flex}.ind-bulb{border-radius:50%;flex-shrink:0;width:12px;height:12px;margin-top:2px}.ind-bulb.green{background:var(--success,#19d600);box-shadow:0 0 6px #19d60080}.ind-bulb.red-blink{background:var(--danger,#d00);animation:1s infinite alternate bulbBlink;box-shadow:0 0 8px #dd0000b3}@keyframes bulbBlink{0%{opacity:.3}to{opacity:1}}.indicator-item strong{color:var(--ink,#fff);margin-bottom:2px;display:block}.indicator-item p{color:var(--ink-secondary,#b9b9b9);margin:0;line-height:1.4}.portal-pay-success-modal{text-align:center;align-items:center;max-width:380px}.portal-pay-success-modal .success-icon-wrap{margin-bottom:6px}.bank-warning-box{border-radius:var(--radius-input,6px);color:var(--text-warning,#f59e0b);background:#f59e0b1a;border:1px solid #f59e0b4d;align-items:flex-start;gap:8px;padding:8px 10px;font-size:11px;line-height:1.4;display:flex}.portal-wifi-card{background:var(--surface,#212121);border-radius:var(--radius-card,8px);border:1px solid var(--divider,#333);flex-direction:column;gap:10px;padding:14px 16px;display:flex}.wifi-card-head{justify-content:space-between;align-items:center;display:flex}.wifi-head-title{color:var(--ink,#fff);align-items:center;gap:6px;font-size:12px;display:flex}.wifi-info-box{background:var(--surface-muted,#1a1a1a);border-radius:var(--radius-input,6px);flex-direction:column;gap:6px;padding:8px 12px;display:flex}.wifi-field{justify-content:space-between;align-items:center;font-size:11px;display:flex}.field-lbl{color:var(--ink-secondary,#b9b9b9)}.field-val{color:var(--ink,#fff)}.wifi-pass-row{align-items:center;gap:8px;display:flex}.btn-eye-pass{background:var(--surface-elevated,#353535);border:1px solid var(--divider,#333);border-radius:var(--radius-pill,999px);color:var(--ink,#fff);cursor:pointer;align-items:center;gap:3px;padding:2px 6px;font-size:10px;display:inline-flex}.portal-referral-card{background:var(--surface,#212121);border-radius:var(--radius-card,8px);border:1px solid var(--divider,#333);flex-direction:column;gap:8px;padding:14px 16px;display:flex}.referral-chip{color:#19d600;border-radius:var(--radius-pill,999px);letter-spacing:.5px;background:#d3fa9933;padding:2px 8px;font-size:9px;font-weight:700;display:inline-block}.referral-text strong{color:var(--ink,#fff);margin-bottom:2px;font-size:12px;display:block}.referral-text p{color:var(--ink-secondary,#b9b9b9);margin:0;font-size:11px;line-height:1.4}.referral-code-row{background:var(--surface-muted,#1a1a1a);border-radius:var(--radius-input,6px);justify-content:space-between;align-items:center;margin-top:4px;padding:6px 10px;display:flex}.ref-code{color:var(--primary,#55beff);font-size:13px;font-weight:700}.btn-copy-ref{background:var(--surface-elevated,#353535);border:1px solid var(--divider,#333);border-radius:var(--radius-pill,999px);color:var(--ink,#fff);cursor:pointer;align-items:center;gap:4px;padding:4px 10px;font-size:10px;font-weight:600;display:inline-flex}.portal-gis-card{background:var(--surface,#212121);border-radius:var(--radius-card,8px);border:1px solid var(--divider,#333);flex-direction:column;gap:8px;padding:14px 16px;display:flex}.gis-badge{color:var(--success,#19d600);border-radius:var(--radius-pill,999px);background:#19d60026;padding:2px 8px;font-size:9px;font-weight:700;display:inline-block}.gis-coords-box{background:var(--surface-muted,#1a1a1a);border-radius:var(--radius-input,6px);justify-content:space-between;align-items:center;padding:6px 10px;font-size:11px;display:flex}.btn-gps-action{background:var(--surface-elevated,#353535);border:1px solid var(--divider,#333);border-radius:var(--radius-pill,999px);min-height:36px;color:var(--ink,#fff);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:6px 14px;font-size:11px;font-weight:600;transition:all .15s;display:inline-flex}.btn-gps-action:hover{background:var(--primary,#0052ef);border-color:var(--primary,#0052ef)}.portal-admin-account-layout{grid-template-columns:minmax(280px,360px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.portal-admin-account-list,.portal-admin-service-panel{flex-direction:column;gap:12px;min-width:0;padding:16px;display:flex}.portal-admin-service-panel{gap:14px;padding:18px}.portal-admin-account-options{flex-direction:column;gap:8px;display:flex}.portal-admin-account-option{background:var(--surface-muted);border:1px solid var(--divider);width:100%;color:var(--ink);cursor:pointer;text-align:left;border-radius:6px;flex-direction:column;gap:4px;padding:12px;display:flex}.portal-admin-account-option:hover,.portal-admin-account-option.is-selected{background:var(--surface-elevated);border-color:var(--link)}.portal-admin-empty{color:var(--ink-secondary);text-align:center;padding:16px 8px}.portal-admin-account-actions,.portal-admin-service-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.portal-admin-service-row{background:var(--surface-muted);border:1px solid var(--divider);border-radius:6px;justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.portal-admin-service-row>:first-child{min-width:0}.portal-admin-service-form{flex-direction:column;gap:12px;display:flex}.portal-admin-service-dialog{max-width:440px}@media (max-width:480px){.portal-mobile-frame{box-shadow:none;border-left:none;border-right:none}}@media (max-width:900px){.portal-admin-account-layout{grid-template-columns:1fr}}.portal-admin-chat-layout{grid-template-columns:300px minmax(0,1fr) 260px;gap:16px;min-height:600px;display:grid}.portal-admin-gis-layout{grid-template-columns:minmax(0,1.2fr) minmax(320px,420px);align-items:start;gap:16px;display:grid}@media (max-width:1180px){.portal-admin-chat-layout{grid-template-columns:280px minmax(0,1fr);min-height:0}.portal-admin-chat-layout>:nth-child(3){grid-column:1/-1}.portal-admin-gis-layout{grid-template-columns:minmax(0,1fr)}}@media (max-width:900px){.portal-admin-chat-layout{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){.portal-admin-account-actions{width:100%}.portal-admin-account-actions .btn{flex:180px;justify-content:center}.portal-admin-service-row{flex-direction:column;align-items:stretch}.portal-admin-service-actions{justify-content:flex-start}}
