@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/plex-sans-400.woff2)format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/plex-sans-500.woff2)format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/plex-sans-600.woff2)format("woff2")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/plex-sans-700.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/plex-mono-400.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/plex-mono-500.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/plex-mono-600.woff2)format("woff2")}:root,[data-theme=light]{--bg-canvas:#f4f6f9;--bg-surface:#fff;--bg-raised:#fff;--bg-sunken:#eef1f5;--text-primary:#171e28;--text-secondary:#4f5b6a;--text-muted:#6d7a8a;--border:#e1e6ec;--border-strong:#cbd3dc;--teal:#1d4e85;--accent-soft:#eaf2fb;--scroll-thumb:#cbd3dc;--scroll-thumb-hover:#a7b4c2;--accent:#234465;--accent-hover:#1b3450;--accent-contrast:#fff;--focus:#2563a8;--focus-ring:0 0 0 3px #2563a840;--danger-solid:#b03434;--danger-solid-hover:#992d2d;--ok-text:#14603a;--ok-bg:#e9f5ee;--ok-border:#bce0ca;--err-text:#a32c2c;--err-bg:#fbeded;--err-border:#f0c5c5;--warn-text:#8a5606;--warn-bg:#fcf3e4;--warn-border:#eed4a6;--info-text:#1d4e85;--info-bg:#eaf2fb;--info-border:#bfd7ef;--neutral-text:#4f5b6a;--neutral-bg:#eef1f5;--neutral-border:#cbd3dc;--shadow-xs:0 1px 2px #0f1a2e0f;--shadow-sm:0 1px 3px #0f1a2e14, 0 1px 2px #0f1a2e0a;--shadow-md:0 4px 12px #0f1a2e1a, 0 1px 3px #0f1a2e0f;--shadow-lg:0 12px 32px #0f1a2e24, 0 2px 6px #0f1a2e14;--gradient-brand:linear-gradient(135deg, #234465 0%, #47719a 100%);--gradient-brand-deep:linear-gradient(160deg, #305880 0%, #142740 100%);--gradient-accent:linear-gradient(135deg, #c3d4e4 0%, #6d92b4 100%);--gradient-surface:linear-gradient(180deg, #fff 0%, #f2f6fa 100%);--logo-base-a:#305880;--logo-base-b:#142740;--overlay-scrim:#0f1a2e73}[data-theme=dark]{--bg-canvas:#0a1322;--bg-surface:#101c30;--bg-raised:#16263f;--bg-sunken:#0d1728;--text-primary:#e6ecf4;--text-secondary:#9fb0c4;--text-muted:#8b9aaf;--border:#22344e;--border-strong:#2c4160;--teal:#7fb3e8;--accent-soft:#12253b;--scroll-thumb:#2c4160;--scroll-thumb-hover:#3e5980;--accent:#9bb6cf;--accent-hover:#c3d4e4;--accent-contrast:#0c1a2e;--focus:#5e96d8;--focus-ring:0 0 0 3px #5e96d859;--danger-solid:#b03434;--danger-solid-hover:#c24444;--ok-text:#7bd3a0;--ok-bg:#12291d;--ok-border:#1f4630;--err-text:#f09a9a;--err-bg:#33191b;--err-border:#5a2a2c;--warn-text:#e8b45a;--warn-bg:#33270f;--warn-border:#5c4514;--info-text:#7fb3e8;--info-bg:#12253b;--info-border:#24405e;--neutral-text:#9fb0c4;--neutral-bg:#16263f;--neutral-border:#2c4160;--shadow-xs:0 1px 2px #00000052;--shadow-sm:0 1px 3px #0006, 0 1px 2px #0000003d;--shadow-md:0 4px 14px #00000070, 0 1px 3px #00000047;--shadow-lg:0 14px 36px #00000085, 0 2px 8px #00000052;--gradient-brand:linear-gradient(135deg, #9bb6cf 0%, #47719a 100%);--gradient-brand-deep:linear-gradient(160deg, #1d3150 0%, #0c1a2e 100%);--gradient-accent:linear-gradient(135deg, #6d92b4 0%, #2c4160 100%);--gradient-surface:linear-gradient(180deg, #16263f 0%, #101c30 100%);--logo-base-a:#e6ecf4;--logo-base-b:#9bb6cf;--overlay-scrim:#04091299}:root{--motion-instant:60ms;--motion-fast:.12s;--motion-normal:.18s;--motion-slow:.26s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-entrance:cubic-bezier(0, 0, .2, 1);--ease-exit:cubic-bezier(.4, 0, 1, 1);--control-h-sm:28px;--control-h-md:32px;--control-h-lg:40px}input,textarea,select,button{font-family:inherit}input::placeholder,textarea::placeholder{color:var(--text-muted);opacity:1}@keyframes aptus-spin{to{transform:rotate(360deg)}}@keyframes aptus-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes aptus-fade-in-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes aptus-scale-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}@keyframes aptus-slide-in-right{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:none}}@keyframes aptus-fade-out{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-family:IBM Plex Sans,Helvetica Neue,Arial,system-ui,sans-serif;font-size:14px;line-height:20px}body{background:var(--bg-canvas);color:var(--text-primary);margin:0}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=dark] body{background:var(--bg-canvas);color:var(--text-primary)}#root{min-height:100vh}*{scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);background-clip:padding-box;border:2px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover);background-clip:padding-box}html{scrollbar-gutter:stable}:root{--navy:#234465;--bg:#f4f6f9;--surface:#fff;--surface-2:#eef1f5;--border:#e1e6ec;--border-strong:#cbd3dc;--accent:#234465;--accent-hover:#1b3450;--teal-soft:#eaf2fb;--danger:#a32c2c;--danger-soft:#fbeded;--ok:#14603a;--ok-soft:#e9f5ee;--text:#171e28;--warn:#8a5606;--shadow-sm:0 1px 3px #0f1a2e14, 0 1px 2px #0f1a2e0a;--shadow-md:0 4px 12px #0f1a2e1a, 0 1px 3px #0f1a2e0f;--shadow-lg:0 12px 32px #0f1a2e24, 0 2px 6px #0f1a2e14;--radius:8px;--radius-sm:6px}[data-theme=dark]{--navy:#9bb6cf;--bg:#0a1322;--surface:#101c30;--surface-2:#16263f;--border:#22344e;--border-strong:#2c4160;--accent:#9bb6cf;--accent-hover:#c3d4e4;--teal-soft:#12253b;--danger:#f09a9a;--danger-soft:#33191b;--ok:#7bd3a0;--ok-soft:#12291d;--text:#e6ecf4;--warn:#e8b45a;--shadow-sm:0 1px 3px #0006, 0 1px 2px #0000003d;--shadow-md:0 4px 14px #00000070, 0 1px 3px #00000047;--shadow-lg:0 14px 36px #00000085, 0 2px 8px #00000052}*{box-sizing:border-box}.app{color:var(--text-primary);background:var(--bg-canvas);min-height:100vh;font-family:IBM Plex Sans,Helvetica Neue,Arial,system-ui,sans-serif;font-size:14px;line-height:20px;transition:background .25s,color .25s}h1{letter-spacing:-.01em;font-size:24px;font-weight:600;line-height:32px}h2{font-size:20px;font-weight:600;line-height:28px}h3{font-size:16px;font-weight:600;line-height:24px}h4{font-size:14px;font-weight:600;line-height:20px}button,.flow-step,.cmp-caret,.cmp-result-caret{-webkit-user-select:none;user-select:none}.dashdef-items-rowbtn,.dashdef-items-rowbtn *{-webkit-user-select:text;user-select:text}button:focus-visible,a:focus-visible,[role=button]:focus-visible,[tabindex]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{box-shadow:var(--focus-ring);outline:none}.topbar{border-bottom:1px solid var(--border);background:var(--bg-surface);z-index:10;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;height:52px;padding:0 16px;transition:background .25s;display:grid;position:sticky;top:0}.brand{letter-spacing:-.01em;color:var(--text-primary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:14px;font-weight:700;display:flex}.brand-logo{object-fit:contain;flex-shrink:0;width:20px;height:20px;display:block}.flow{counter-reset:flowstep;align-items:center;gap:6px;display:flex}.flow-step{counter-increment:flowstep;cursor:pointer;color:var(--text-muted);transition:color var(--motion-fast) var(--ease-standard);background:0 0;border:none;border-radius:4px;align-items:center;gap:7px;padding:3px 6px 3px 3px;font-size:12.5px;font-weight:400;display:inline-flex}.flow-step:before{content:counter(flowstep);font-variant-numeric:tabular-nums;background:var(--bg-surface);border:1px solid var(--border-strong);width:26px;height:26px;color:var(--text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:500;display:inline-flex}.flow-step:hover{color:var(--text-primary)}button.primary.blocked{opacity:.45;cursor:not-allowed}button.primary.blocked:hover{background:var(--accent)}button.primary.blocked:active{transform:none}.flow-step:disabled,.flow-step.blocked{cursor:not-allowed;opacity:.55}.flow-step:disabled:hover,.flow-step.blocked:hover{color:var(--text-muted)}.flow-step.active{color:var(--text-primary);font-weight:600}.flow-step.active:before{content:counter(flowstep);background:var(--accent);border-color:var(--accent);color:var(--accent-contrast);font-weight:600}.flow-step.done{color:var(--text-primary);font-weight:500;position:relative}.flow-step.done:before{content:"";background:var(--accent);border-color:var(--accent)}.flow-step.done:after{content:"";pointer-events:none;background-color:var(--accent-contrast);width:26px;height:26px;position:absolute;top:50%;left:3px;transform:translateY(-50%);-webkit-mask:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2020%2020%27%20fill%3D%27none%27%20stroke%3D%27%23000%27%20stroke-width%3D%272.6%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M4%2010.5%20L8.5%2015%20L16%205.5%27%2F%3E%3C%2Fsvg%3E) 50%/12px 12px no-repeat;mask:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2020%2020%27%20fill%3D%27none%27%20stroke%3D%27%23000%27%20stroke-width%3D%272.6%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M4%2010.5%20L8.5%2015%20L16%205.5%27%2F%3E%3C%2Fsvg%3E) 50%/12px 12px no-repeat}.flow-sep{background:var(--border-strong);-webkit-user-select:none;user-select:none;border-radius:1px;flex-shrink:0;width:18px;height:2px;font-size:0}:is(.flow-sep:has(+.flow-step.done),.flow-sep:has(+.flow-step.active)){background:var(--accent)}.save-indicator{color:var(--text-muted);text-align:right;font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:center;gap:4px;min-width:80px;font-size:12px;line-height:16px;display:inline-flex}.save-indicator-error{color:var(--err-text);align-items:center;gap:4px;display:inline-flex}.flow-toolbar{z-index:9;background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-xs), 0 -10px 0 0 var(--bg-canvas);border-radius:8px;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin-bottom:22px;padding:9px 16px;display:grid;position:sticky;top:60px}.flow-toolbar-side{min-width:0}.flow-toolbar-side.right{justify-content:flex-end;display:flex}.content{max-width:1240px;margin:0 auto;padding:32px 32px 48px}.step-header{text-align:center;flex-direction:column;align-items:center;gap:8px;margin-bottom:26px;display:flex}.step-header h2{letter-spacing:-.01em;margin:0;font-size:24px;font-weight:600;line-height:32px}.step-header .muted{max-width:640px}.actions{flex-shrink:0;gap:8px;display:flex}button{font-family:inherit}.actions button{height:var(--control-h-sm);background:var(--bg-surface);border:1px solid var(--border-strong);color:var(--text-primary);cursor:pointer;transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard), transform var(--motion-instant) var(--ease-standard);border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:0 11px;font-size:13px;font-weight:500;display:inline-flex}.actions button:hover{background:var(--bg-sunken)}.actions button:active{transform:scale(.98)}.muted{color:var(--text-muted)}.small{font-size:12px;line-height:16px}.empty{color:var(--text-secondary);text-align:center;border:1px solid var(--border);background:var(--bg-surface);box-shadow:var(--shadow-xs);border-radius:8px;padding:48px 24px;font-size:13px;line-height:19px}.error{color:var(--danger)}.grid-scroll{border:1px solid var(--border);background:var(--bg-surface);box-shadow:var(--shadow-xs);border-radius:8px;overflow-x:auto}table{border-collapse:collapse;width:100%}.doc-grid th,.doc-grid td,.map-table th,.map-table td{border:1px solid var(--border);text-align:left;vertical-align:middle;padding:9px 12px}.doc-grid thead th,.map-table thead th{background:var(--bg-sunken);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:8px 12px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:500}.corner,.row-head{background:var(--bg-sunken);width:130px}.header-cell{align-items:center;gap:4px;display:flex}.header-cell input{font:inherit;width:100%;transition:border-color var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);background:0 0;border:1px solid #0000;border-radius:4px;padding:3px 6px;font-weight:600}.header-cell input:hover,.header-cell input:focus{border-color:var(--border-strong);background:var(--bg-surface);outline:none}.header-cell input:focus-visible{border-color:var(--focus);box-shadow:var(--focus-ring)}.x{color:var(--text-muted);cursor:pointer;transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);background:0 0;border:none;border-radius:4px;padding:3px 5px;font-size:15px;line-height:1}.x:hover{color:var(--err-text);background:var(--err-bg)}.x.small{font-size:13px}.doc-cell{border-radius:6px;min-width:160px}.upload-btn{border:1px dashed var(--border-strong);background:var(--bg-sunken);width:100%;color:var(--text-secondary);cursor:pointer;transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard);border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:18px 8px;font-size:13px;font-weight:500;display:flex}.upload-btn:hover{border-color:var(--accent);background:var(--info-bg);color:var(--text-primary)}.multi-import{border:1px dashed var(--border-strong);background:var(--bg-surface);transition:border-color var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard);border-radius:8px;align-items:center;gap:14px;margin-bottom:12px;padding:8px 10px;display:flex}.multi-import.drag-over{border-color:var(--accent);background:var(--info-bg)}.multi-import-btn{flex:none;align-items:center;gap:8px;width:auto;padding:10px 14px;display:inline-flex}.multi-import-btn:disabled{cursor:progress}.multi-import-error{margin-bottom:12px}.multi-import-done{color:var(--ok-text);background:var(--ok-bg);border:1px solid var(--ok-border);border-radius:8px;align-items:center;gap:8px;margin-bottom:12px;padding:8px 10px;font-size:13px;display:flex}.multi-import-done-icon{color:var(--ok-text);display:inline-flex}.doc-loaded{flex-direction:column;gap:3px;padding:4px 2px;display:flex}.doc-name{white-space:nowrap;align-items:center;gap:6px;max-width:180px;font-size:13px;font-weight:600;display:flex;overflow:hidden}.doc-name-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.doc-cell-actions{gap:12px;margin-top:3px;display:flex}.link{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:500}.link:hover{text-decoration:underline}.link.danger{color:var(--danger)}.link:disabled{color:var(--text-muted);cursor:default;text-decoration:none}.add-btn{border:1px dashed var(--border-strong);background:var(--bg-sunken);color:var(--text-secondary);cursor:pointer;transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard);border-radius:6px;padding:7px 11px;font-size:13px;font-weight:500;line-height:1}.add-btn:hover{border-color:var(--accent);background:var(--info-bg);color:var(--text-primary)}.add-btn.wide{text-align:left;width:100%;padding:9px 12px}.add-col-head{text-align:center;width:46px;background:0 0!important;border:none!important}.add-col-head .add-btn{width:36px;padding:7px 0}.add-col-spacer,.add-row-spacer,.add-row-cell{background:0 0!important;border:none!important}.doc-cell.drag-over{outline:2px dashed var(--accent);outline-offset:3px}.doc-cell.drag-over .upload-btn{border-color:var(--accent);background:var(--info-bg);color:var(--text-primary)}.map-layout{align-items:flex-start;gap:24px;display:flex}.map-main{flex:1;min-width:0}.map-instructions{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);border-radius:8px;flex:0 0 260px;padding:18px 20px;font-size:13px;line-height:19px;position:sticky;top:92px}.map-instructions h4{margin:0 0 12px;font-size:14px}.map-instructions ol{color:var(--text);flex-direction:column;gap:11px;margin:0;padding-left:18px;display:flex}.map-instructions .red{color:var(--danger);font-weight:600}.map-section{margin-bottom:34px}.map-section h3,.cmp-section h3{letter-spacing:-.2px;text-align:center;margin:0 0 12px;font-size:16px;position:relative}.map-section-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.map-section-head h3{margin:0}.map-label-col{width:160px}.map-type-col{width:110px}.map-identical-col{width:118px}.map-auto{border:1px solid var(--border);background:var(--bg-sunken);height:22px;color:var(--text-secondary);cursor:help;border-radius:999px;align-items:center;padding:0 9px;font-size:12px;font-weight:500;display:inline-flex}.map-detecting{color:var(--text-muted);white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:inline-flex}.identical-wrap{flex-direction:column;gap:2px;display:flex}.map-detected{letter-spacing:.02em;color:var(--text-muted);white-space:nowrap;font-family:IBM Plex Mono,monospace;font-size:10px;line-height:13px}.line-detail{flex-direction:column;gap:12px;padding:4px 2px;display:flex}.line-detail dl{grid-template-columns:minmax(120px,max-content) 1fr;gap:2px 16px;margin:0;font-size:13px;line-height:19px;display:grid}.line-detail dl>div{display:contents}.line-detail dt{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);padding-top:3px;font-family:IBM Plex Mono,monospace;font-size:10.5px}.line-detail dd{color:var(--text-secondary);margin:0}.line-detail-docs{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.line-detail-doc{border:1px solid var(--border);background:var(--bg-surface);border-radius:6px;padding:10px 12px}.line-detail-doc-name{overflow-wrap:anywhere;color:var(--text-primary);margin-bottom:4px;font-size:12px;font-weight:600}.line-detail-note{color:var(--warn-text);margin-bottom:4px;font-size:12px;line-height:17px}.line-detail-doc ul{color:var(--text-secondary);margin:0;padding-left:16px;font-size:12.5px;line-height:18px}.totals-section{border:1px solid var(--border);background:var(--bg-surface);box-shadow:var(--shadow-xs);border-radius:8px;flex-direction:column;align-items:flex-start;gap:8px;margin-top:18px;padding:16px 18px;display:flex}.totals-section>p{max-width:70ch;margin:0}.totals-list{flex-direction:column;gap:6px;width:100%;margin:0;padding:0;list-style:none;display:flex}.totals-list li{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.totals-list select{height:var(--control-h-sm);border:1px solid var(--border-strong);font:inherit;color:var(--text-primary);background:var(--bg-surface);border-radius:6px;padding:0 8px;font-size:13px}.totals-list select:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.totals-fixed{color:var(--text-secondary);font-size:13.5px}.checks-table td{vertical-align:top}.checks-ignore-col{width:260px}.check-hint{padding-left:20px;line-height:16px;display:block}.checks-plan .check-hint{color:var(--text-muted);padding-left:0;font-size:12px}.checks-plan td:first-child{width:220px;font-weight:500}.checks-plan td:last-child{color:var(--text-secondary)}.checks-plan-off td{color:var(--text-muted)}.checks-plan-block{margin-top:18px}.checks-plan-block .vmap-title{margin-bottom:8px}.checks-plan-cols{color:var(--text-muted);margin-top:2px;font-size:11.5px;font-weight:400;line-height:15px;display:block}.activity-off{align-items:flex-start;max-width:70ch;margin:10px 0 0}.flow-notice-actions{flex:none;align-items:center;gap:14px;margin-left:auto;display:flex}.access-sub-check{cursor:pointer;align-items:center;gap:9px;margin-bottom:2px;font-size:13.5px;display:flex}.access-sub-check input[type=checkbox]{flex:none}.cmp-running{flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:60vh;display:flex}.cmp-run-loading-text{color:var(--text-secondary);font-size:14px}.recon-loader{--recon-loop:2s;justify-content:center;align-items:center;display:flex}.recon-sheet{background:var(--bg-surface);border:1px solid var(--border);width:268px;box-shadow:var(--shadow-md);z-index:2;border-radius:9px;padding:20px;position:relative;overflow:hidden}.recon-sheet-l{animation:recon-sheet-l var(--recon-loop) cubic-bezier(.22, .7, .2, 1) infinite}.recon-sheet-r{animation:recon-sheet-r var(--recon-loop) cubic-bezier(.22, .7, .2, 1) infinite}.recon-rows{flex-direction:column;display:flex}.recon-row{align-items:center;gap:10px;height:22px;display:flex}.recon-bar-fill{background:var(--bg-sunken);border-radius:3.5px;flex:1;height:7px}.recon-bar-key{background:var(--border-strong);border-radius:3.5px;height:7px}.recon-scan{background:var(--accent);height:2px;animation:recon-scan var(--recon-loop) linear infinite;position:absolute;top:20px;left:0;right:0;box-shadow:0 0 12px 2px #23446552}.recon-verdicts{z-index:3;flex-direction:column;align-items:center;width:72px;display:flex}.recon-verdict-row{justify-content:center;align-items:center;height:22px;display:flex}.recon-verdict{width:34px;height:18px;font-family:var(--font-mono,"IBM Plex Mono", monospace);animation:recon-verdict var(--recon-loop) cubic-bezier(.2, .8, .2, 1) infinite;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:inline-flex}.recon-verdict-ok{background:var(--ok-bg);border-color:var(--ok-border);color:var(--ok-text)}.recon-verdict-diff{background:var(--err-bg);border-color:var(--err-border);color:var(--err-text)}.recon-verdict-warn{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn-text)}@keyframes recon-sheet-l{0%{opacity:.25;transform:translate(-104px)rotate(-3deg)}32%{opacity:1;transform:translate(-6px)rotate(0)}40%,72%{opacity:1;transform:translate(0,0)rotate(0)}88%{opacity:.7;transform:translate(-14px)rotate(-1deg)}to{opacity:.25;transform:translate(-104px)rotate(-3deg)}}@keyframes recon-sheet-r{0%{opacity:.25;transform:translate(104px)rotate(3deg)}32%{opacity:1;transform:translate(6px)rotate(0)}40%,72%{opacity:1;transform:translate(0,0)rotate(0)}88%{opacity:.7;transform:translate(14px)rotate(1deg)}to{opacity:.25;transform:translate(104px)rotate(3deg)}}@keyframes recon-scan{0%,30%{opacity:0;transform:translate(0,0)}36%{opacity:.9}70%{opacity:.9;transform:translateY(132px)}78%,to{opacity:0;transform:translateY(132px)}}@keyframes recon-verdict{0%,34%{opacity:0;transform:scale(.7)}46%{opacity:1;transform:scale(1)}84%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.94)}}@media (prefers-reduced-motion:reduce){.recon-sheet-l,.recon-sheet-r,.recon-scan,.recon-verdict{animation:none}.recon-sheet-l,.recon-sheet-r{opacity:1;transform:none}.recon-scan{opacity:0}.recon-verdict{opacity:1;transform:none}}.mfa-skip{border-bottom:1px solid var(--border);flex-direction:column;gap:10px;margin-bottom:4px;padding-bottom:16px;display:flex}.ignore-editor{flex-direction:column;gap:6px;display:flex}.ignore-switches{flex-wrap:wrap;gap:4px 14px;display:flex}.ignore-chars{align-items:center;gap:8px;display:flex}.ignore-chars input{min-width:0;height:var(--control-h-sm);border:1px solid var(--border-strong);font:inherit;color:var(--text-primary);background:var(--bg-surface);border-radius:6px;flex:1;padding:0 8px;font-family:IBM Plex Mono,monospace;font-size:13px}.ignore-chars input:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.field-checks{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.field-checks .chk.inline{align-items:flex-start;gap:5px;font-size:12px;line-height:16px}.map-remove-col{width:32px}.field-label,.map-table select,.type-select{width:100%;height:var(--control-h-sm);border:1px solid var(--border-strong);font:inherit;color:var(--text-primary);background:var(--bg-surface);transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:6px;padding:0 8px;font-size:13px}.map-table select:hover,.type-select:hover{border-color:var(--text-muted)}.field-label:focus,.map-table select:focus,.type-select:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.header-pick{flex-direction:column;gap:4px;display:flex}.header-pick-row{align-items:center;gap:4px;display:flex}.header-pick-row select,.header-pick-row .header-pick-text{flex:auto;min-width:0}.header-pick-text{width:100%;height:var(--control-h-sm);border:1px dashed var(--border-strong);font:inherit;color:var(--text-primary);background:var(--bg-surface);transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:6px;padding:0 8px;font-size:13px}.header-pick-text:hover{border-color:var(--text-muted)}.header-pick-text:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.header-pick-missing{color:var(--warn-text);border-color:var(--warn-border)!important}.header-pick-warn{color:var(--warn-text);font-size:11px;line-height:15px}.header-pick-row.combined{padding-left:2px}.header-pick-plus{color:var(--text-muted);font-family:IBM Plex Mono,monospace;font-size:12px}.header-pick-add{border:1px solid var(--border-strong);background:var(--bg-surface);width:22px;height:22px;color:var(--text-muted);cursor:pointer;transition:border-color var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);border-radius:6px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.header-pick-add:hover{border-color:var(--focus);color:var(--text-primary)}.header-pick-add:focus-visible{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.header-pick select option:disabled{color:var(--text-muted)}.sub-row-links{flex-wrap:wrap;gap:10px;margin-top:5px;display:flex}.sub-row-links.nested{padding-left:20px}.desc-label-cell.nested{padding-left:22px}.field-amount-row{background:var(--surface-2)}.sub-type{letter-spacing:.04em;color:var(--text-muted);font-family:IBM Plex Mono,monospace;font-size:11px}.add-desc-link{color:var(--danger);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:500;display:inline-block}.add-desc-link:hover{text-decoration:underline}.field-desc-row{background:var(--surface-2)}.desc-label-cell{align-items:center;gap:5px;padding-left:8px;display:flex}.desc-prefix{color:var(--text-muted)}.field-label.desc{color:var(--text);font-size:13px}.desc-select{background:var(--surface-2)!important}.field-main-row td{vertical-align:top}.add-field-row td{border:1px solid var(--border);background:var(--surface);padding:8px}.allow-unmapped{color:var(--accent);gap:5px;margin-top:4px;font-size:12px}.spinner{border:2px solid #0000;border-top-color:var(--accent);vertical-align:-2px;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite aptus-spin;display:inline-block}.check-status{align-items:center;gap:5px;margin-top:3px;font-size:12px;display:inline-flex}.check-status.ok{color:var(--ok);font-weight:600}.check-status.bad{color:var(--danger);font-weight:600}.check-status.checking{color:var(--text-muted)}.missing-line{text-overflow:ellipsis;white-space:nowrap;max-width:160px;font-size:11px;font-weight:400;overflow:hidden}.chk{cursor:pointer;align-items:center;gap:9px;font-size:13.5px;display:flex}input[type=checkbox],input[type=radio],.chk input,.cmp-groupby input,.allow-unmapped input{accent-color:var(--accent)}.chk.inline{margin-left:18px;display:inline-flex}.cmp-section{margin-bottom:40px}.cmp-section-quiet{margin-bottom:0}.checks-plan-note{margin:8px 0 0}.line-detail-more{margin-top:4px}.updates-confirm-modal{flex-direction:column;gap:10px;max-width:620px;display:flex}.updates-confirm-modal .updates-required{margin-top:4px}.updates-required-tip{margin:-6px 0 2px 24px}.updates-msg-label{margin-bottom:-4px}.checks-allow-list{flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.checks-allow-list li{padding-left:13px;line-height:17px;position:relative}.checks-allow-list li:before{content:"";background:var(--text-muted);border-radius:50%;width:4px;height:4px;position:absolute;top:7px;left:2px}.checks-allow-edit,.checks-plan-more{text-align:left;margin-top:6px;line-height:17px;display:block}.checks-runs-col{text-align:center;width:64px}.checks-run-toggle{cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px;display:inline-flex}.checks-run-toggle:focus-visible{box-shadow:var(--focus-ring);outline:none}.checks-run-toggle:disabled{opacity:.4;cursor:not-allowed}.sign-panel-modal{max-width:min(880px,92vw)}.sign-panel-scroll{max-height:52vh;margin-top:12px;overflow:auto}.checks-sign-intro{max-width:70ch;color:var(--text-muted);margin:0 0 10px;font-size:12px;line-height:1.55}.checks-sign-intro b{color:var(--text-primary);font-variant-numeric:tabular-nums;font-weight:600}.checks-sign-table{background:var(--bg-surface);border:1px solid var(--border);table-layout:fixed;border-collapse:collapse;border-radius:6px;width:auto;min-width:240px;overflow:hidden}.sign-panel-modal .checks-sign-table th,.sign-panel-modal .checks-sign-table td{border:none;border-bottom:1px solid var(--border);text-align:left;padding:5px 12px;font-size:12px}.sign-panel-modal .checks-sign-table th{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);white-space:normal;overflow-wrap:anywhere;background:0 0;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:500}.sign-panel-modal .checks-sign-table td{font-variant-numeric:tabular-nums;color:var(--text-primary);overflow-wrap:anywhere;vertical-align:top;font-family:IBM Plex Mono,monospace}.checks-sign-code{white-space:nowrap;display:block}.checks-sign-desc{color:var(--text-muted);margin-top:2px;font-family:IBM Plex Sans,Helvetica Neue,Arial,sans-serif;font-size:11px;line-height:1.4;display:block}.sign-panel-modal .checks-sign-table tr:last-child td{border-bottom:none}button.primary.checks-sign-edit{height:var(--control-h-sm);white-space:nowrap;flex:none;gap:6px;padding:0 11px;font-size:13px}.checks-sign-codes{color:var(--text-primary);font-family:IBM Plex Mono,monospace;font-size:12px}.cmp-category-gap{height:10px}.cmp-subsection-row td{padding-top:6px}.cmp-subsection-row~.cmp-subsection-row td{border-top:1px solid var(--border);padding-top:14px}.cmp-subsection-row~.cmp-subsection-row td>*{margin-top:8px;display:inline-block}.cmp-subsection-text{color:var(--text-primary);font-size:13px;font-weight:600}.cmp-run-cta{height:var(--control-h-lg,40px);padding:0 22px;font-size:14px;font-weight:600}.cmp-var{color:var(--accent);font-weight:600}.line-detail li b{color:var(--text-primary);font-weight:600}.cmp-result-panel{border:1px solid var(--border);background:var(--bg-surface);box-shadow:var(--shadow-xs);border-radius:8px;overflow:hidden}.cmp-result-title{letter-spacing:-.01em;text-align:center;font-size:20px;font-weight:600;line-height:28px}.cmp-result-caret{color:var(--text-muted);flex-shrink:0;font-size:13px}.cmp-result-panel .cmp-result{padding:0 18px 18px}.cmp-result-head-static{flex-direction:column;align-items:center;gap:6px;padding:16px 18px 4px;display:flex}.cmp-category{margin-top:10px}.cmp-category+.cmp-category{margin-top:26px}.cmp-category-bar{border-top:1px solid var(--border);align-items:center;gap:12px;display:flex}.cmp-category-head{text-align:left;cursor:pointer;min-width:0;color:var(--text-primary);transition:color var(--motion-fast) var(--ease-standard);background:0 0;border:none;flex:1;align-items:center;gap:8px;padding:9px 0;display:flex}.cmp-category-head:hover{color:var(--accent)}.cmp-category-label{letter-spacing:-.1px;font-size:13.5px;font-weight:600}.cmp-category-count{color:var(--text-muted);white-space:nowrap;font-family:IBM Plex Mono,monospace;font-size:11px;line-height:16px}.cmp-category-intro{max-width:none;margin:0 0 8px}.cmp-category-bar .cmp-groupseg{flex-shrink:0;margin-left:0}.cmp-config{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);border-radius:8px;flex-wrap:wrap;justify-content:center;align-items:center;gap:28px;margin-bottom:16px;padding:18px 22px;display:flex}.cmp-config-block{flex-direction:column;gap:8px;display:flex}.cmp-config-title{text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);text-align:center;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:500}.cmp-groupby{flex-direction:column;gap:6px;display:flex}button.primary{height:var(--control-h-md);background:var(--accent);color:var(--accent-contrast);cursor:pointer;transition:background var(--motion-fast) var(--ease-standard), transform var(--motion-instant) var(--ease-standard);border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:13.5px;font-weight:500;display:inline-flex}button.primary:hover{background:var(--accent-hover)}button.primary:active:not(:disabled){transform:scale(.98)}button.primary:disabled{opacity:.45;cursor:not-allowed;transform:none}button.primary:has(.spinner){cursor:progress;gap:8px}button.primary:disabled:has(.spinner){opacity:1}.cmp-intro{max-width:640px;margin:0 auto}.modal-actions .primary:not(.danger-btn),.team-row-actions .primary,.team-row-actions .ghost,.admin-row-actions .primary,.map-open-actions .primary{justify-content:center;min-width:132px}.finalize-cta{justify-content:center;min-width:168px}.cmp-run-actions .primary,.cmp-run-actions .ghost{justify-content:center;min-width:148px}.cmp-run-actions{justify-content:center;align-items:center;gap:10px;margin-top:30px;display:flex}.period-bar{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:16px;display:flex}.period-label{color:var(--text-primary);font-size:13px;font-weight:500}.period-seg{background:var(--bg-sunken);border:1px solid var(--border);border-radius:6px;align-items:center;gap:4px;padding:3px;display:flex}.period-seg-btn{color:var(--text-muted);cursor:pointer;transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);background:0 0;border:none;border-radius:4px;padding:4px 12px;font-size:12.5px;font-weight:500}.period-seg-btn:hover{color:var(--text-primary)}.period-seg-btn.active{background:var(--bg-raised);color:var(--text-primary);box-shadow:var(--shadow-xs)}.period-seg[data-on]{grid-auto-columns:1fr;grid-auto-flow:column;gap:0;display:grid;position:relative}.period-seg[data-on]:before{content:"";background:var(--bg-raised);width:calc(50% - 3px);box-shadow:var(--shadow-xs);transition:transform var(--motion-normal) var(--ease-standard);border-radius:4px;position:absolute;top:3px;bottom:3px;left:3px;transform:translate(0)}.period-seg[data-on="1"]:before{transform:translate(100%)}.period-seg[data-on] .period-seg-btn{z-index:1;white-space:nowrap;position:relative}.period-seg[data-on] .period-seg-btn.active{box-shadow:none;background:0 0}@media (prefers-reduced-motion:reduce){.period-seg[data-on]:before{transition:none}}.period-input{height:var(--control-h-md);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);font:inherit;transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:6px;padding:0 10px;font-size:13.5px}.period-input:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.period-sep{color:var(--text-muted);font-size:13px}.period-hint{color:var(--text-muted);margin-top:8px;font-size:12px;line-height:17px}.finalize-done{height:var(--control-h-md);border:1px solid var(--ok-border);background:var(--ok-bg);color:var(--ok-text);border-radius:6px;flex-shrink:0;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:500;display:inline-flex}.cmp-finalize-note{margin:8px 18px 0}.period-select{height:var(--control-h-md);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);font:inherit;cursor:pointer;border-radius:6px;padding:0 8px;font-size:13.5px}.period-select:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.finalize-cta{height:var(--control-h-md);color:#fff;font:inherit;cursor:pointer;transition:background var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);background:#2e9e60;border:1px solid #268453;border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:0 16px 0 13px;font-size:13.5px;font-weight:600;display:inline-flex}.finalize-cta:hover:not(:disabled){box-shadow:var(--shadow-sm);background:#278b54}.finalize-cta:disabled{opacity:.5;cursor:not-allowed}.finalize-cta:has(.spinner){cursor:progress}.cmp-finalize-bar{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-sunken);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:24px;padding:14px 18px;display:flex}.btn-secondary{height:var(--control-h-md);background:var(--bg-surface);border:1px solid var(--border-strong);color:var(--text-primary);cursor:pointer;transition:background var(--motion-fast) var(--ease-standard);border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:13.5px;font-weight:500;display:inline-flex}.btn-secondary:hover:not(:disabled){background:var(--bg-sunken)}.btn-secondary:disabled{opacity:.45;cursor:not-allowed}.leave-modal{max-width:440px}.leave-why{margin:8px 0 0}.modal-overlay.confirm-overlay{z-index:150}.remove-modal{max-width:460px}.remove-when{flex-wrap:wrap;align-items:flex-end;gap:10px;margin:14px 0 10px;display:flex}.remove-when input[type=date]{font:inherit;height:var(--control-h-md);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);border-radius:6px;padding:0 10px;font-size:13.5px}button.primary.danger-btn.remove-confirm-btn{height:var(--control-h-md);padding:0 14px;font-size:13.5px}.modal-overlay.cascade-overlay{z-index:140}.cascade-modal{max-width:520px}.cascade-lede{color:var(--text-secondary);margin:0 0 10px;font-size:13.5px;line-height:20px}.cascade-lede strong{color:var(--text-primary);font-weight:600}.cascade-list{margin-top:14px}.cascade-list ul{color:var(--text-secondary);font-size:12.5px;line-height:18px}.cascade-list li strong{color:var(--text-primary);font-weight:600}.cascade-note{margin:0}.cascade-modal .modal-actions{flex-wrap:wrap}button.primary.danger-btn.cascade-danger-btn,button.primary.cascade-widen-btn,button.primary.danger-btn.leave-lose-btn{height:var(--control-h-md);padding:0 14px;font-size:13.5px}.cmp-summary{color:var(--text-muted);text-align:center;margin-bottom:10px;font-size:13px}.cmp-groupseg{vertical-align:middle;margin-left:14px;display:inline-flex}.cmp-unmapped{margin-top:20px}.cmp-unmapped h4{color:var(--text-primary);margin:0 0 4px;font-size:14px;line-height:20px}.cmp-unmapped-table .cmp-unmapped-rows,.cmp-unmapped-table .cmp-unmapped-amount{text-align:right;font-variant-numeric:tabular-nums}.cmp-unmapped-table .cmp-unmapped-rows{width:72px}.cmp-unmapped-table .cmp-unmapped-amount{white-space:nowrap;width:132px}.cmp-unmapped-table .cmp-unmapped-desc{width:22%}.cmp-table .cmp-caret-col{text-align:center;box-sizing:border-box;width:28px;min-width:28px;max-width:28px;padding:8px 5px}.cmp-unmapped-detail{margin:4px 0 6px}.start-mode-list{flex-direction:column;gap:8px;display:flex}.start-mode{text-align:left;border:1px solid var(--border);background:var(--bg-surface);cursor:pointer;width:100%;font:inherit;transition:border-color var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard);border-radius:8px;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;display:flex}.start-mode:hover{border-color:var(--accent);background:var(--info-bg)}.start-mode-title{color:var(--text-primary);font-size:13.5px;font-weight:600}.cmp-table th,.cmp-table td{border:1px solid var(--border);text-align:left;padding:9px 12px;font-size:13px;line-height:20px}.cmp-table thead th{background:var(--bg-sunken);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);z-index:1;padding:8px 12px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:500;position:sticky;top:0}.cmp-line-col{min-width:300px}.cmp-id-row td{background:var(--bg-sunken);border-top:2px solid var(--border-strong);padding:8px 12px;font-size:13px;font-weight:600}.cmp-id-cell{align-items:center;gap:6px;display:flex}.cmp-id-row .cmp-id-badge{width:18px;height:18px;color:var(--ok-text);background:var(--ok-bg);border:1px solid var(--ok-border);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.cmp-id-row .cmp-id-badge svg{display:block}.cmp-id-row.has-issue .cmp-id-badge{color:var(--err-text);background:var(--err-bg);border-color:var(--err-border)}.cmp-id-row.has-issue td{color:var(--err-text)}.cmp-line-label{white-space:nowrap}.cmp-id-desc,.cmp-desc{color:var(--text-muted);font-weight:400}.cmp-caret{cursor:pointer;color:var(--accent);background:0 0;border:none;padding:0 7px 0 0;font-size:11px}.cmp-caret-spacer{width:18px;display:inline-block}tr.line-issue>td:first-child{border-left:3px solid var(--err-text)}.cmp-table tbody tr:not(.cmp-id-row):not(.cmp-breakdown-row) td{transition:background var(--motion-instant) var(--ease-standard)}.cmp-table tbody tr:not(.cmp-id-row):not(.cmp-breakdown-row):hover td{background:var(--bg-sunken)}.cmp-ok,.cmp-wrong,.cmp-differs,.cmp-lonely,.cmp-gone,.cmp-missing{font-variant-numeric:tabular-nums;text-align:right;font-size:13px;line-height:20px}.cmp-ok{background:var(--ok-bg);color:var(--ok-text)}.cmp-wrong{background:var(--err-bg);color:var(--err-text);font-weight:500}.cmp-missing{background:var(--bg-sunken);color:var(--text-muted)}.cmp-gone{background:var(--warn-bg);color:var(--warn-text);font-weight:500}.cmp-lonely{background:var(--ok-bg);color:var(--ok-text)}.cmp-differs{background:var(--warn-bg);color:var(--warn-text);font-weight:500}.cmp-ok.cmp-text,.cmp-wrong.cmp-text,.cmp-differs.cmp-text,.cmp-lonely.cmp-text,.cmp-gone.cmp-text,.cmp-missing.cmp-text{text-align:left;font-variant-numeric:normal}.cmp-breakdown-row>td{background:var(--bg-sunken);padding:14px 18px}.bd-cards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:start;gap:16px;display:grid}.bd-card{border:1px solid var(--border);background:var(--bg-surface);min-width:0;box-shadow:var(--shadow-xs);border-radius:8px;padding:0;overflow:hidden}.bd-doc{text-overflow:ellipsis;white-space:nowrap;background:var(--bg-sunken);color:var(--text-secondary);border-bottom:1px solid var(--border);padding:8px 12px;font-size:12px;font-weight:600;overflow:hidden}.bd-card>.muted{padding:10px 12px}.bd-table{border-collapse:collapse;width:100%}.bd-table th,.bd-table td{border-bottom:1px solid var(--border);text-align:left;padding:5px 12px;font-size:12px}.bd-table th{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);background:0 0;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:500}.bd-table tr:last-child td{border-bottom:none}.bd-amount{text-align:right;font-variant-numeric:tabular-nums}.bd-total{font-variant-numeric:tabular-nums;background:var(--bg-sunken);border-top:1px solid var(--border);text-align:right;padding:7px 12px;font-size:12px;font-weight:600}.settings-textarea{resize:vertical;border:1px solid var(--border-strong);background:var(--bg-surface);width:100%;min-height:72px;color:var(--text-primary);word-break:break-all;transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:6px;padding:8px 10px;font-family:IBM Plex Mono,ui-monospace,Consolas,monospace;font-size:11px;line-height:16px}.settings-textarea:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.settings-actions{justify-content:flex-end;align-items:center;gap:14px;display:flex}.expected-hint{color:var(--accent);text-align:center;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:11px;overflow:hidden}.cell-check{text-align:center;margin-top:4px;font-size:11px;line-height:1.35}.cell-check.warn{color:var(--warn);font-weight:600}.cell-check.ok{color:var(--ok)}.cell-check.checking{color:var(--text-muted)}.cmp-warning{color:var(--warn-text);background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:6px;margin-bottom:10px;padding:11px 14px;font-size:13px;font-weight:500;line-height:19px}.modal-overlay{background:var(--overlay-scrim);z-index:100;animation:aptus-fade-in-up var(--motion-fast) var(--ease-entrance);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{background:var(--bg-raised);border:1px solid var(--border);box-shadow:var(--shadow-lg);width:100%;max-width:580px;max-height:80vh;animation:aptus-scale-in var(--motion-normal) var(--ease-entrance);scrollbar-gutter:stable both-edges;--modal-gutter:10px;border-radius:10px;padding:20px;overflow:auto}.modal h3{color:var(--text-primary);margin:0 0 12px;font-size:16px;font-weight:600;line-height:24px}.modal h3>svg{vertical-align:-2px;margin-right:4px}.modal-section{margin-bottom:14px}.modal-h{margin-bottom:6px;font-size:13px;font-weight:600}.modal-section ul{color:var(--text);flex-direction:column;gap:4px;margin:0;padding-left:18px;font-size:12px;display:flex}.modal-actions{justify-content:flex-end;gap:10px;margin-top:14px;display:flex}.modal-actions:last-child{margin:14px calc(-20px - var(--modal-gutter,0px)) -20px;padding:14px calc(20px + var(--modal-gutter,0px));border-top:1px solid var(--border);background:var(--bg-sunken);border-radius:0 0 9px 9px}.modal-actions:last-child .ghost:hover:not(:disabled){background:var(--bg-surface);color:var(--text-primary)}.cmp-code{font-weight:600}.activity-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.activity-filters{border-bottom:1px solid var(--border);flex-direction:column;gap:10px;margin:12px 0 16px;padding-bottom:12px;display:flex}.activity-filter-row{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.activity-chips{flex-wrap:wrap;gap:6px;display:flex}.activity-chip{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:12px;display:inline-flex}.activity-chip:hover{background:var(--bg-sunken)}.activity-chip.active{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.activity-chip-n{font-variant-numeric:tabular-nums;opacity:.7;font-size:11px}.activity-chip.active .activity-chip-n{opacity:.85}.activity-search{border:1px solid var(--border);background:var(--bg-surface);min-width:200px;color:var(--text-primary);border-radius:6px;flex:220px;padding:6px 11px;font-size:12.5px}.activity-dates{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.activity-date{color:var(--text-muted);align-items:center;gap:6px;font-size:11.5px;display:inline-flex}.activity-date input[type=date]{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-primary);font:inherit;border-radius:6px;padding:5px 8px;font-size:12px}.activity-date-clear{font-size:12px}.access-assign-hint{margin:8px 0 4px}.dash-bd,.dash-hist{border-top:1px dashed var(--border);margin-top:12px;padding-top:10px}.dash-bd-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:7px;font-family:IBM Plex Mono,monospace;font-size:10px}.dash-bd-cards{margin-top:2px}.dash-hist-list{flex-direction:column;display:flex}.dash-hist-row{border-bottom:1px dashed var(--border);flex-wrap:wrap;align-items:baseline;gap:6px 14px;padding:4px 0;font-size:12px;display:flex}.dash-hist-row:last-child{border-bottom:none}.dash-hist-period{color:var(--text-primary);font-variant-numeric:tabular-nums;flex:0 0 92px;font-weight:600}.dash-hist-values{gap:12px;display:inline-flex}.dash-hist-val{font-variant-numeric:tabular-nums;color:var(--text-secondary);min-width:64px}.dash-hist-changed{color:var(--warn-text);background:var(--warn-bg);border-radius:4px;padding:1px 6px;font-size:10.5px;font-weight:600}.dash-hist-date{margin-left:auto}.activity-day-head{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border);margin-bottom:2px;padding:12px 0 4px;font-family:IBM Plex Mono,monospace;font-size:10.5px}.activity-row{border-bottom:1px dashed var(--border);align-items:baseline;gap:10px;padding:5px 0;font-size:12.5px;display:flex}.activity-row:last-child{border-bottom:none}.activity-time{font-variant-numeric:tabular-nums;color:var(--text-muted);flex:0 0 38px;font-size:11.5px}.activity-cat{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;flex:0 0 118px;font-family:IBM Plex Mono,monospace;font-size:10.5px;overflow:hidden}.activity-main{min-width:0;color:var(--text-secondary);flex:1}.activity-actor{color:var(--text-primary);font-weight:600}.activity-detail{color:var(--text-muted);margin-top:1px;font-size:11.5px;display:block}.activity-more{margin-top:12px}.sign-modal{max-width:700px}.sign-modal h3{color:var(--text)}.sign-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.sign-head .sign-title{margin-bottom:0}.sign-scan-btn{flex-shrink:0;align-items:center;gap:7px;display:inline-flex}.sign-legacy{background:var(--warn-bg);color:var(--warn-text);border:1px solid var(--warn-border);border-radius:6px;margin:8px 0 0;padding:8px 10px}.sign-scan-msg{border:1px solid var(--info-border);background:var(--info-bg);color:var(--info-text);border-radius:6px;margin:8px 0 4px;padding:8px 11px;font-size:12.5px;line-height:18px}.sign-search{width:100%;height:var(--control-h-md);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);font:inherit;transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:6px;margin:10px 0 12px;padding:0 10px;font-size:13.5px}.sign-search:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.sign-cols{gap:14px;display:flex}.sign-col{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);flex-direction:column;flex:1;display:flex}.sign-col-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:8px 12px;font-size:13px;font-weight:600;display:flex}.sign-list{scrollbar-gutter:stable;overscroll-behavior-y:contain;flex-wrap:wrap;align-content:flex-start;gap:6px;max-height:320px;padding:10px;display:flex;overflow-y:auto}.sign-chip{border:1px solid var(--border-strong);cursor:pointer;background:var(--bg-surface);transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);text-align:left;border-radius:5px;flex-direction:column;align-items:flex-start;gap:1px;max-width:230px;padding:4px 10px;display:flex}.sign-chip-code{white-space:nowrap;font-size:12px;font-weight:500}.sign-chip-desc{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:210px;font-size:10px;overflow:hidden}.sign-chip.equal{border-color:var(--accent);background:var(--info-bg)}.sign-chip.equal .sign-chip-code{color:var(--accent)}.sign-chip:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong)}.sign-chip:focus-visible{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.sign-chip{cursor:grab;-webkit-user-select:none;user-select:none}.sign-chip:active{cursor:grabbing}.sign-chip.dragging{opacity:.4;box-shadow:none}.sign-col{transition:border-color var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard)}.sign-col.drop-over{border-color:var(--accent);background:var(--accent-soft)}.sign-col.drop-over .sign-col-head{border-bottom-color:var(--accent)}.sign-empty{text-align:center;border:1px dashed #0000;border-radius:6px;width:100%;padding:10px 0}.sign-col.drop-over .sign-empty{border-color:var(--accent);color:var(--accent)}.allow-modal{max-width:520px}.allow-intro{max-width:62ch;margin:0 0 14px}.allow-opts{flex-direction:column;gap:12px;display:flex}.allow-opt{align-items:flex-start;gap:10px}.allow-opt input[type=checkbox]{flex:none;margin-top:2px}.allow-opt-text{flex-direction:column;gap:4px;min-width:0;display:flex}.allow-opt-label{color:var(--text-primary);font-size:13px;font-weight:500}.allow-opt-help{color:var(--text-muted);font-size:12px;line-height:17px}.allow-opt-help code{background:var(--bg-sunken);color:var(--text-secondary);border-radius:4px;padding:1px 5px;font-family:IBM Plex Mono,monospace;font-size:11.5px}.allow-chars,.allow-num input{height:var(--control-h-sm);border:1px solid var(--border-strong);max-width:200px;font:inherit;color:var(--text-primary);background:var(--bg-surface);border-radius:6px;padding:0 10px;font-family:IBM Plex Mono,monospace;font-size:13px}.allow-chars:focus,.allow-num input:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.allow-num{flex-direction:column;gap:6px;display:flex}.topbar-right{justify-self:end;align-items:center;gap:12px;display:flex}.home-wrap{text-align:center;max-width:900px;margin:0 auto}.home-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px;display:grid}@media (width<=720px){.home-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}.home-divider{background:var(--border-strong);grid-column:1/-1;height:1px;margin:8px 0}.home-card{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);text-align:center;cursor:pointer;transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:8px;flex-direction:column;align-items:center;gap:8px;padding:26px 20px;display:flex;position:relative}.home-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.home-card.disabled{background:color-mix(in oklch, var(--bg-surface) 78%, var(--bg-canvas));border:1px dashed color-mix(in oklch, var(--border-strong) 80%, var(--bg-surface));box-shadow:none;cursor:default}.home-card.disabled:hover{border-color:color-mix(in oklch, var(--border-strong) 80%, var(--bg-surface));box-shadow:none}.home-card.disabled h3,.home-card.disabled p{color:var(--text-muted)}.home-card.disabled .home-card-icon{color:color-mix(in oklch, var(--accent) 62%, var(--text-muted));opacity:.9}.home-card-icon{width:56px;height:56px;margin-bottom:4px}.home-card h3{overflow-wrap:anywhere;margin:4px 0 0;font-size:16px}.home-card p{overflow-wrap:anywhere;margin:0;font-size:13px}.home-soon{color:var(--neutral-text);background:var(--neutral-bg);border:1px solid var(--neutral-border);white-space:nowrap;border-radius:999px;align-items:center;padding:2px 8px;font-size:11.5px;font-weight:500;line-height:15px;display:inline-flex;position:absolute;top:12px;right:12px}.start-wrap{text-align:center;max-width:880px;margin:0 auto}.start-cards{text-align:left;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:stretch;gap:18px;margin-top:28px;display:grid}.start-cards:has(.start-card:only-child){grid-template-columns:minmax(300px,760px);justify-content:center}.start-cards .start-card:only-child{grid-column:auto}.start-card{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:8px;flex-direction:column;gap:8px;padding:20px;display:flex}.start-card.clickable{cursor:pointer}.start-card.clickable:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.start-card.disabled{border-style:dashed;border-color:var(--border-strong);opacity:.75;box-shadow:none}.start-icon{background:var(--bg-sunken);width:44px;height:44px;color:var(--text-muted);border-radius:10px;justify-content:center;align-items:center;font-size:20px;display:flex}.start-card.teal .start-icon{background:var(--info-bg);color:var(--info-text)}.start-card h3{margin:4px 0 0;font-size:15px}.start-card .muted{font-size:13px}.start-paste{resize:vertical;border:1px solid var(--border-strong);background:var(--bg-surface);width:100%;min-height:64px;color:var(--text-primary);transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:6px;margin-top:4px;padding:8px 10px;font-family:IBM Plex Mono,ui-monospace,Consolas,monospace;font-size:11px;line-height:16px}.start-paste:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.start-card .primary{align-self:flex-start;margin-top:2px}.start-error{margin-top:16px}.start-saved{text-align:left}.start-card.start-paste-card,.start-card.start-saved{grid-column:span 2}.start-card.start-saved{min-height:400px}@media (width<=980px){.start-card.start-paste-card,.start-card.start-saved{grid-column:span 1;min-height:0}}.start-paste{min-height:150px}.start-saved .start-saved-list{max-height:430px}.saved-text{flex-direction:column;flex:1;min-width:0;display:flex}.saved-text .saved-name{flex:none}.saved-detail{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.saved-meta-col{color:var(--text-muted);white-space:nowrap;flex-direction:column;align-items:flex-end;gap:2px;font-size:10.5px;display:flex}.start-card.start-equal{grid-column:span 1;min-height:340px}.start-filter{font:inherit;height:var(--control-h-md);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);width:100%;transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:6px;padding:0 10px;font-size:13.5px}.start-filter:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.picked-company-head{margin-bottom:10px}.back-link{padding:0;font-size:12px}.picked-company-title{color:var(--text-primary);letter-spacing:0;margin:6px 0 0;font-size:20px;font-weight:600;line-height:28px}.company-countries-label{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin:4px 0 6px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:500}.start-collapse-head{cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;width:100%;padding:0;display:flex}.start-collapse-head h3{flex:1;margin:0}.start-collapse-head .start-icon{margin:0}.start-collapse-caret{color:var(--text-muted)}.start-paste-card.collapsed{min-height:0;padding:14px 20px}.start-card select,.start-card input[type=text]{font:inherit;height:var(--control-h-md);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:6px;padding:0 10px;font-size:13.5px}.start-card select:hover{border-color:var(--text-muted)}.start-card select:focus,.start-card input[type=text]:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.map-choice{flex-direction:column;gap:12px;margin:10px 0;display:flex}.map-choice-counts{color:var(--text-muted);flex-wrap:wrap;gap:8px 18px;font-size:12.5px;display:flex}.map-choice-options{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.map-choice-card{text-align:left;font:inherit;background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);cursor:pointer;transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:8px;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 16px 18px;display:flex;position:relative}.map-choice-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.map-choice-title{color:var(--text);font-size:14px;font-weight:600}.map-choice-badge{color:var(--info-text);background:var(--info-bg);border:1px solid var(--info-border);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-size:11.5px;font-weight:500;line-height:15px;display:inline-flex;position:absolute;top:12px;right:12px}.map-choice-badge:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.cb-change-inline{margin-left:10px;font-size:12px}.user-menu{position:relative}.user-menu-panel{background:var(--bg-raised);border:1px solid var(--border);min-width:220px;box-shadow:var(--shadow-md);z-index:60;animation:aptus-fade-in-up var(--motion-fast) var(--ease-entrance);border-radius:8px;flex-direction:column;gap:1px;padding:4px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.user-menu-item,.theme-switch{text-align:left;width:100%;font:inherit;color:var(--text-primary);cursor:pointer;transition:background var(--motion-fast) var(--ease-standard);background:0 0;border:0;border-radius:5px;justify-content:space-between;align-items:center;gap:12px;padding:7px 9px;font-size:13px;display:flex}.user-menu-item:hover,.theme-switch:hover{background:var(--bg-sunken)}.user-menu-sep{background:var(--border);height:1px;margin:4px 6px}.user-menu-item:disabled{opacity:.45;cursor:not-allowed}.user-menu-item:disabled:hover{background:0 0}.icon-btn:disabled{opacity:.45;cursor:not-allowed}.icon-btn:disabled:hover{border-color:var(--border-strong);color:var(--text-secondary);background:var(--bg-surface)}.user-menu-item.danger{color:var(--err-text)}.user-menu-item.danger:hover{background:var(--err-bg)}.user-menu-item:disabled:hover,.user-menu-item.danger:disabled:hover{background:0 0}.switch-track{background:var(--border-strong);width:34px;height:18px;transition:background var(--motion-fast) var(--ease-standard);border-radius:999px;flex:none;position:relative}.switch-track.on{background:var(--accent)}.switch-thumb{width:14px;height:14px;box-shadow:var(--shadow-xs);transition:left var(--motion-fast) var(--ease-standard);background:#fff;border-radius:50%;position:absolute;top:2px;left:3px}.switch-track.on .switch-thumb{left:17px}.settings-overlay{width:100%}.settings-page{max-width:900px;margin:0 auto;padding:8px 4px 48px}.settings-head{align-items:center;gap:16px;margin-bottom:20px;display:flex}.settings-head h2{margin:0}.settings-version{letter-spacing:.04em;color:var(--text-muted);margin-left:auto;font-family:IBM Plex Mono,monospace;font-size:11px}.settings-list{flex-direction:column;gap:10px;display:flex}.settings-item{text-align:left;background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);cursor:pointer;font:inherit;transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:8px;flex-direction:column;align-items:flex-start;gap:4px;padding:16px 18px;display:flex}.settings-item:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.settings-item-title{color:var(--text);font-size:15px;font-weight:600}.settings-password-form{width:100%;max-width:380px;margin:8px auto 0}.team-page-inner{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);border-radius:8px;padding:22px}.team-blocks{flex-direction:column;gap:18px;display:flex}.team-block{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);border-radius:8px;padding:18px 20px}.team-block-head{margin-bottom:14px}.team-block-head h4{color:var(--text);margin:0 0 2px;font-size:15px}.team-block-head p{margin:0}.idle-overlay{z-index:200}.idle-modal{text-align:center;max-width:420px}.idle-modal h3{margin-bottom:6px}.idle-clock{font-variant-numeric:tabular-nums;color:var(--warn-text);margin:18px 0 4px;font-family:IBM Plex Mono,monospace;font-size:34px;font-weight:600;line-height:42px}.idle-modal .modal-actions{justify-content:center}.dl-page-card{max-width:460px}.dl-page-cta{margin-top:4px}.dl-page-meta{text-align:center;margin-top:12px}.dl-page-exit-row{justify-content:center;margin-top:18px;display:flex}button.primary.danger-btn.dl-page-exit{height:var(--control-h-md);padding:0 26px;font-size:13.5px}.team-unassigned{align-items:flex-start;gap:10px;display:flex}.team-unassigned svg{flex-shrink:0;margin-top:2px}.team-gear{flex-shrink:0}.team-gear-panel{z-index:130;min-width:190px;position:fixed}.team-member{border-bottom:1px solid var(--border)}.team-member:last-child{border-bottom:0}.row-field{flex-direction:column;gap:3px;display:inline-flex}.row-field-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:500}.row-field select{font:inherit;height:var(--control-h-sm);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);min-width:120px;transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:6px;padding:0 8px;font-size:12.5px}.row-field select:hover{border-color:var(--text-muted)}.row-field .small-btn{justify-content:center;min-width:110px}.small-btn{height:var(--control-h-sm);padding:0 11px;font-size:12.5px}.access-role-field{margin:12px 0 2px}.access-dash-layout{align-self:flex-start;min-width:220px}.access-super-note{margin:14px 0 4px}.link.danger:disabled{opacity:.38;cursor:not-allowed}.link.danger:disabled:hover{background:0 0}.member-countries{flex-wrap:wrap;gap:5px;margin-top:4px;display:flex}.member-country-tag{background:var(--bg-sunken);color:var(--text-primary);border:1px solid var(--border);border-radius:5px;padding:2px 8px;font-size:12px}.country-selected{flex-wrap:wrap;align-items:center;gap:6px;min-height:24px;display:flex}.country-filter{font:inherit;height:var(--control-h-sm);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:6px;padding:0 10px;font-size:13px}.country-filter:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.country-options{scrollbar-gutter:stable;overscroll-behavior-y:contain;flex-wrap:wrap;gap:6px;max-height:150px;display:flex;overflow-y:auto}.country-chip{border:1px solid var(--ok-border);background:var(--ok-bg);color:var(--text-primary);border-radius:5px;align-items:center;gap:6px;padding:3px 5px 3px 9px;font-size:12.5px;display:inline-flex}.country-option{font:inherit;border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);cursor:pointer;transition:background var(--motion-fast) var(--ease-standard);border-radius:5px;align-items:center;gap:4px;padding:3px 9px 3px 7px;font-size:12.5px;display:inline-flex}.country-option:hover{background:var(--bg-sunken)}.chip-x{cursor:pointer;width:16px;height:16px;color:var(--text-muted);transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);background:0 0;border:0;border-radius:3px;justify-content:center;align-items:center;padding:0;font-size:11px;display:inline-flex}.chip-x:hover{background:var(--border);color:var(--text-primary)}.chip-plus{color:var(--text-muted);font-weight:600}.access-checks{flex-direction:column;gap:9px;margin:14px 0 4px;display:flex}.access-checks label{color:var(--text-primary);align-items:center;gap:8px;font-size:13.5px;display:flex}.access-sub{border-left:2px solid var(--border);flex-direction:column;gap:9px;margin:0 0 4px 26px;padding:10px 12px;display:flex}.access-sub label{font-size:13px}.access-countries-label{color:var(--text-secondary);margin-top:2px;font-size:12.5px;font-weight:600}.team-row-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.team-row-actions select{font:inherit;height:var(--control-h-sm);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);cursor:pointer;transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:6px;padding:0 8px;font-size:12.5px}.team-row-actions select:hover{border-color:var(--text-muted)}.start-saved-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.start-saved-head h3{margin:0;font-size:15px}.start-saved-list{scrollbar-gutter:stable;overscroll-behavior-y:contain;flex-direction:column;gap:6px;max-height:320px;display:flex;overflow-y:auto}.saved-row{text-align:left;background:var(--bg-surface);border:1px solid var(--border);cursor:pointer;width:100%;transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:8px;align-items:center;gap:12px;padding:10px 12px;display:flex}.saved-row:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.saved-name{text-align:left;white-space:normal;text-overflow:clip;overflow-wrap:anywhere;flex:0 0 58%;align-self:flex-start;max-width:58%;font-size:13.5px;font-weight:600;overflow:visible}.saved-right{text-align:left;flex:40%;grid-template-columns:max-content minmax(0,1fr);align-items:baseline;gap:2px 8px;min-width:0;display:grid}.saved-right .saved-detail{color:var(--text-muted);display:contents}.saved-right .saved-detail b{color:var(--text);font-size:11px;font-weight:600}.saved-detail-value{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:11px;overflow:hidden}.saved-del{color:var(--text-muted);border-radius:4px;padding:2px 6px;font-size:13px}.saved-del:hover{color:var(--err-text);background:var(--err-bg)}.flow-notice{align-items:flex-start;gap:10px;margin:10px 0 0;display:flex}.flow-notice svg{flex-shrink:0;margin-top:2px}.step-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:28px;padding-top:18px;display:flex}.ghost{height:var(--control-h-md);cursor:pointer;color:var(--text-secondary);transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard), transform var(--motion-instant) var(--ease-standard);background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:13.5px;font-weight:500;display:inline-flex}.ghost:disabled{opacity:.45;cursor:not-allowed}.ghost:hover:not(:disabled){background:var(--bg-sunken);color:var(--text-primary)}.ghost:active{transform:scale(.98)}.step-footer .primary,.step-footer .ghost{height:var(--control-h-lg);padding:0 18px;font-size:14px}.auth-screen{justify-content:center;align-items:center;padding:24px;display:flex}.auth-card{background:var(--bg-raised);border:1px solid var(--border);width:100%;max-width:420px;box-shadow:var(--shadow-lg);border-radius:10px;padding:30px 34px 28px}.auth-brand{color:var(--text-primary);letter-spacing:-.01em;text-align:center;flex-direction:column;align-items:center;gap:10px;margin-bottom:8px;font-size:16px;font-weight:600;line-height:24px;display:flex}.auth-brand img,.auth-brand svg{object-fit:contain;width:44px;height:44px;display:block}.auth-step-title{text-align:center;color:var(--text-primary);letter-spacing:-.01em;margin:0 0 6px;font-size:15px;font-weight:600;line-height:22px}.auth-sub{text-align:center;color:var(--text-muted);margin:0 0 20px;font-size:13px;line-height:1.5}.edition-card{text-align:center}.edition-logo{width:auto;height:40px;margin:0 auto 18px;display:block}.edition-cta{width:100%;height:var(--control-h-lg);justify-content:center;align-items:center;padding:0 18px;font-size:14px;text-decoration:none;display:inline-flex}.edition-foot{text-align:center;margin:16px 0 0}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-label{color:var(--text-primary);flex-direction:column;gap:6px;font-size:13px;font-weight:500;display:flex}.auth-input{height:var(--control-h-lg);border:1px solid var(--border-strong);font:inherit;background:var(--bg-surface);color:var(--text-primary);transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:6px;padding:0 12px;font-size:14px;font-weight:400}.auth-input:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.auth-remember{color:var(--text-primary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:9px;font-size:13.5px;font-weight:400;display:flex}.auth-hint{margin-top:-8px}:where(.auth-banner){margin-block:14px}.auth-banner{border-radius:6px;padding:11px 14px;font-size:13px;line-height:19px}.auth-banner.error{color:var(--err-text);background:var(--err-bg);border:1px solid var(--err-border)}.auth-banner.info{color:var(--info-text);background:var(--info-bg);border:1px solid var(--info-border)}.auth-banner.ok{color:var(--ok-text);background:var(--ok-bg);border:1px solid var(--ok-border)}.auth-banner.warn{color:var(--warn-text);background:var(--warn-bg);border:1px solid var(--warn-border)}.auth-submit{width:100%;height:var(--control-h-lg);padding:0 18px;font-size:14px}.auth-submit .spinner{border-top-color:var(--accent-contrast);margin-right:6px}.auth-links{flex-wrap:wrap;justify-content:center;gap:20px;margin-top:2px;display:flex}.auth-card>.auth-links{margin-top:14px}.auth-loading{min-height:100vh;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;font-size:14px;display:flex}.spinner.lg{border-width:3px;width:28px;height:28px}.user-chip{align-items:center;gap:8px;display:flex}.user-chip-text{flex-direction:column;align-items:flex-end;min-width:0;display:flex}.user-chip-email{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:200px;font-size:12px;font-weight:600;line-height:15px;overflow:hidden}.user-chip-org{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:200px;font-size:10.5px;line-height:13px;overflow:hidden}.user-menu-btn{height:40px;color:var(--text-muted);cursor:pointer;transition:background var(--motion-fast) var(--ease-standard);background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:9px;padding:0 8px 0 10px;display:inline-flex}.user-menu-btn:hover{background:var(--bg-sunken)}.avatar{background:var(--gradient-brand);color:#fff;border-radius:5px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-size:10px;font-weight:600;display:inline-flex;overflow:hidden}.avatar.has-logo{background:var(--bg-surface);border:1px solid var(--border)}.mail-prefs .mail-pref{border-top:1px solid var(--border);align-items:flex-start;gap:10px;padding:12px 0;display:flex}.mail-prefs .mail-pref input{flex:none;margin-top:2px}.mail-pref-text{flex-direction:column;gap:2px;min-width:0;display:flex}.mail-pref-title{color:var(--text-primary);font-size:13.5px;font-weight:600}.mail-prefs .mail-pref input:disabled+.mail-pref-text{opacity:1}.org-logo-row{flex-wrap:wrap;align-items:center;gap:12px;margin-top:6px;display:flex}.org-logo-hint{flex:240px;min-width:0}.avatar.has-logo img{object-fit:contain;width:24px;height:24px;display:block}.user-menu-label{align-items:center;gap:9px;display:inline-flex}.user-menu-label svg{color:var(--text-muted);flex:none}.user-menu-item.danger .user-menu-label svg{color:inherit}.team-modal h3{color:var(--text)}.team-add{flex-wrap:wrap;gap:8px;margin:14px 0 6px;display:flex}.team-add input{min-width:160px;height:var(--control-h-md);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);font:inherit;transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:6px;flex:180px;padding:0 10px;font-size:13.5px}.team-add input:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.team-add-role{height:var(--control-h-md);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);font:inherit;border-radius:6px;flex:none;padding:0 8px}.team-add-role:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-sunken)}.team-add-role:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.team-add-role-fixed{flex:none;align-self:center}.access-role-fixed{font-size:13.5px;font-weight:600}.start-loading{padding:28px 0}.country-head{border-bottom:2px solid var(--accent);margin-bottom:12px;padding-bottom:10px}.country-title{letter-spacing:-.01em;color:var(--text-primary);font-size:22px;font-weight:600;line-height:28px}.map-choice-loading{color:var(--text-secondary);align-items:center;gap:8px;padding:18px 0;display:flex}.period-warning{border:1px solid var(--warn-border);background:var(--warn-bg);color:var(--warn-text);border-radius:6px;width:fit-content;padding:8px 10px;font-size:12.5px}.bd-card-empty{background:var(--bg-sunken);box-shadow:none;border-style:dashed}.bd-card-empty .bd-doc{background:0 0}.bd-empty{flex-direction:column;gap:2px;padding:10px 12px;display:flex}.bd-empty-title{color:var(--warn-text);font-size:12px;font-weight:600}.bd-empty-text{color:var(--text-secondary);font-size:12px;line-height:17px}.np-country-row{align-items:center;gap:8px;display:flex}.np-country-row input{flex:1;min-width:0}.np-country-select{min-width:0;height:var(--control-h-md);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);font:inherit;border-radius:6px;flex:1;padding:0 8px}.np-country-select:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.np-add-country{white-space:nowrap;flex:none}.np-replace-note{border:1px solid var(--warn-border);background:var(--warn-bg);color:var(--warn-text);border-radius:6px;padding:8px 10px}.team-add-error{margin:2px 0 6px}.team-list{border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;margin-top:10px;display:flex;overflow:hidden}.team-list>div:not(:last-child){border-bottom:1px solid var(--border)}.team-row{background:var(--surface);justify-content:space-between;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.team-info{flex-direction:column;gap:2px;min-width:0;display:flex}.team-line{align-items:center;gap:8px;min-width:0;min-height:21px;display:flex}.team-meta{min-height:16px}.team-email{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.team-badge{color:var(--neutral-text);background:var(--neutral-bg);border:1px solid var(--neutral-border);white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:5px;padding:2px 8px;font-size:11.5px;font-weight:500;line-height:15px;display:inline-flex}.team-badge:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:5px;height:5px}.team-badge.danger{color:var(--err-text);background:var(--err-bg);border-color:var(--err-border)}.start-load-error{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.team-confirm{background:var(--err-bg);color:var(--err-text);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:12.5px;display:flex}.team-confirm-text{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.team-confirm-warn{letter-spacing:.04em;font-weight:600}.team-confirm-actions{flex-shrink:0;gap:10px;display:flex}.team-confirm-actions .ghost{height:var(--control-h-sm);background:var(--bg-surface);border-color:var(--border-strong);color:var(--text-primary);padding:0 11px;font-size:12.5px}button.primary.danger-btn{background:var(--danger-solid);color:#fff;height:var(--control-h-sm);border-color:#0000;padding:0 11px;font-size:12.5px}button.primary.danger-btn:hover{background:var(--danger-solid-hover)}.saved-del.is-busy{opacity:.45;cursor:default;pointer-events:none}.team-row-error{margin-top:6px}.team-empty{text-align:center;color:var(--text-muted);padding:18px;font-size:13px}.map-readonly{color:var(--text);font-size:13px;font-weight:600}.header-cell .header-name{padding:3px 6px;font-size:13px;font-weight:600;display:inline-block}.step-footer-right{align-items:center;gap:10px;display:flex}button.primary.generate-string-btn{background:var(--bg-surface);border-color:var(--border-strong);color:var(--text-primary);align-items:center;gap:7px;display:inline-flex}button.primary.generate-string-btn:hover{background:var(--bg-sunken)}.admin-console{text-align:left;max-width:980px}.admin-console>h2{text-align:left}.admin-section{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);border-radius:8px;margin-top:28px;padding:18px 20px}.admin-section>h3{color:var(--text);margin:0 0 4px;font-size:15px}.admin-row-error{margin:4px 0 8px}.admin-input{min-width:180px;height:var(--control-h-md);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);font:inherit;transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:6px;flex:1;padding:0 10px;font-size:13.5px}.admin-input:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.admin-date-label{flex-direction:column;gap:3px;display:flex}.admin-date-label input,.admin-license input[type=date]{height:var(--control-h-sm);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);font:inherit;transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:6px;padding:0 9px;font-size:13px}.admin-date-label input:focus,.admin-license input[type=date]:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.admin-org-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);margin-top:12px;padding:14px 16px}.admin-org-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;display:flex}.admin-org-title{font-size:15px;font-weight:600}.admin-org-head-actions{align-items:center;gap:12px;display:flex}.admin-org-dash-btn{align-items:center;gap:5px;font-size:12.5px;display:inline-flex}.admin-license{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-section-head h3{margin:0}.admin-new-btn{align-items:center;gap:6px;display:inline-flex}.icon-btn{width:var(--control-h-sm);height:var(--control-h-sm);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;transition:border-color var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard);border-radius:6px;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-btn:hover{border-color:var(--focus);color:var(--text-primary);background:var(--bg-raised)}.admin-org-users-wrap{border-top:1px solid var(--border);margin-top:10px;padding-top:8px}.admin-users-toggle{color:var(--text-primary);font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:7px;padding:2px 0;font-size:13px;font-weight:600;display:inline-flex}.admin-users-caret{color:var(--text-secondary);transition:transform var(--motion-fast) var(--ease-standard);display:inline-flex}.admin-users-caret.open{transform:rotate(180deg)}.admin-users-collapse{transition:grid-template-rows var(--motion-normal) var(--ease-standard);grid-template-rows:0fr;display:grid}.admin-users-collapse.open{grid-template-rows:1fr}.admin-users-collapse-inner{min-height:0;overflow:hidden}.admin-users-panel{flex-direction:column;gap:10px;padding-top:10px;display:flex}.admin-users-block{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-sunken);padding:12px}.admin-users-block-h{letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:8px;font-size:11px;font-weight:600}.admin-users-filter{flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0 2px;display:flex}.admin-users-filter select{height:var(--control-h-sm);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);font:inherit;border-radius:6px;padding:0 9px;font-size:13px}.admin-search{min-width:180px;height:var(--control-h-sm);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-secondary);transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:6px;flex:1;align-items:center;gap:6px;padding:0 9px;display:flex}.admin-search:focus-within{border-color:var(--focus);box-shadow:var(--focus-ring)}.admin-search input{min-width:0;color:var(--text-primary);font:inherit;background:0 0;border:none;flex:1;font-size:13px}.admin-search input:focus{outline:none}.admin-settings-name{margin-bottom:14px}.admin-settings-date{height:var(--control-h-sm);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);font:inherit;border-radius:6px;margin-top:8px;padding:0 9px;font-size:13px}.admin-settings-modal{scrollbar-gutter:stable both-edges;width:min(560px,100vw - 48px);max-width:560px;max-height:calc(100vh - 96px);overflow-y:auto}.admin-settings-sub{margin-top:-6px;margin-bottom:12px}.admin-settings-section{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);margin-bottom:12px;padding:12px 14px}.admin-settings-section-head{margin-bottom:6px}.admin-settings-section-head .modal-h{margin-bottom:2px}.admin-settings-section-head p{margin:0 0 4px}.admin-toggle-row{border:none;border-bottom:1px dashed var(--border);width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:14px;padding:7px 2px;display:flex}.admin-toggle-row:last-child{border-bottom:none}.admin-toggle-row:disabled{opacity:.6;cursor:default}.admin-toggle-text{flex-direction:column;gap:1px;min-width:0;display:flex}.admin-toggle-label{color:var(--text-primary);font-size:13px}.admin-toggle-row .switch-track{flex:none}.admin-app-row{border-bottom:1px dashed var(--border)}.admin-app-row:last-child,.admin-app-row .admin-app-toggle{border-bottom:none}.admin-app-scope{flex-wrap:wrap;align-items:center;gap:10px;padding:0 2px 10px 0;display:flex}.admin-app-scope .period-seg-btn{font-size:12px}.admin-settings-daterow{margin-top:8px}.admin-org-users{margin:0}.admin-addmgr{margin-top:0}.admin-addmgr .team-add{margin:0}.admin-overview-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.admin-overview-head h3{color:var(--text);margin:0 0 4px;font-size:15px}.admin-overview{margin-top:12px}.admin-table th,.admin-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;white-space:nowrap;padding:9px 12px;font-size:13px}.admin-table thead th{background:var(--bg-sunken);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:8px 12px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:500}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table th.num,.admin-table td.num{text-align:right;font-variant-numeric:tabular-nums}.team-badge.ok{color:var(--ok-text);background:var(--ok-bg);border-color:var(--ok-border)}.dlpass-section{padding-bottom:14px}.dlpass-intro{margin:8px 0 0}.dlpass-random{flex:none;align-self:center}.dlpass-days{flex:none;align-items:center;gap:6px;display:flex}.dlpass-days input{width:64px;height:var(--control-h-md);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);font:inherit;transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:6px;padding:0 8px;font-size:13.5px}.dlpass-days input:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.updates-published{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:18px;margin:6px 0 14px;padding:10px 12px;display:flex}.updates-row.is-published{background:var(--info-bg);border-radius:6px}.updates-channels{flex-shrink:0}.team-badge.updates-live{color:var(--ok-text);background:var(--ok-bg);border-color:var(--ok-border)}.updates-msg-count{text-align:right;font-variant-numeric:tabular-nums;flex:1 0 100%;margin-top:-6px}.news-form{flex-direction:column;gap:14px;margin-top:14px;display:flex}.news-body{resize:vertical;height:auto;padding:10px 12px;font-size:13.5px;line-height:20px}.news-count{color:var(--text-muted);text-align:right;font-variant-numeric:tabular-nums;margin-top:-8px;font-family:IBM Plex Mono,monospace;font-size:11px;line-height:16px}.news-count.is-over{color:var(--err-text)}.news-hint{margin:-6px 0 0}.news-audience{background:var(--bg-sunken);border:1px solid var(--border);border-radius:6px;margin-top:16px;padding:10px 12px}.news-actions{justify-content:flex-end;margin-top:16px;display:flex}.news-confirm-modal{max-width:640px}.news-preview-h{margin:16px 0 6px}.news-preview{background:var(--bg-sunken);border:1px solid var(--border);border-radius:6px;padding:14px 16px}.news-preview-subject{color:var(--text-primary);border-bottom:1px solid var(--border);margin-bottom:12px;padding-bottom:10px;font-size:14px;font-weight:600;line-height:20px}.news-preview-p{color:var(--text-primary);white-space:pre-wrap;margin:0 0 10px;font-size:13px;line-height:19px}.news-preview-greeting{color:var(--text-muted)}.news-preview-foot{border-top:1px solid var(--border);color:var(--text-muted);margin-top:12px;padding-top:10px;font-size:11px;line-height:16px}.gen-string-modal{width:min(680px,94vw);max-width:none}.gen-string-modal h3.gen-string-title{color:var(--text)}.gen-form{flex-direction:column;gap:14px;margin:14px 0 4px;display:flex}.gen-field{flex-direction:column;gap:5px;display:flex}.gen-field label{color:var(--text-secondary);font-size:12.5px;font-weight:500}.gen-field select,.gen-field input{width:100%;height:var(--control-h-md);border:1px solid var(--border-strong);font:inherit;background:var(--bg-surface);color:var(--text-primary);transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:6px;padding:0 10px;font-size:13.5px}.gen-field select:hover{border-color:var(--text-muted)}.gen-field select:focus,.gen-field input:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.gen-hint{color:var(--text-muted);font-size:12px;line-height:17px}.gen-submit{justify-content:flex-end;display:flex}.gen-submit .primary{align-items:center;gap:8px;display:inline-flex}.skeleton-line,.skeleton-block{background:linear-gradient(90deg, var(--bg-sunken) 25%, var(--border) 40%, var(--bg-sunken) 55%);background-size:400% 100%;animation:1.6s linear infinite aptus-shimmer}.skeleton-line{border-radius:4px;width:130px;height:10px}.skeleton-block{height:var(--control-h-md);border-radius:6px;width:100%}.gen-string-result{margin-top:12px}.gen-string-result .settings-textarea{width:100%}.update-banner{border:1px solid var(--info-border);background:var(--info-bg);color:var(--info-text);border-radius:6px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:11px 14px;display:flex}.update-banner-text{font-size:13px;line-height:19px}.update-banner-notes{color:var(--text-secondary)}.release-notes{text-align:left}.release-notes ul{margin:6px 0 0;padding-left:18px;list-style:outside}.release-notes li{margin:3px 0;line-height:19px}.update-banner-error{color:var(--err-text)}.update-banner-actions{flex-shrink:0;gap:10px;display:flex}.progress{text-align:left;flex-direction:column;gap:6px;width:100%;display:flex}.progress-label{color:var(--text-secondary);justify-content:space-between;font-size:12.5px;display:flex}.progress-value{font-variant-numeric:tabular-nums;color:var(--text-primary);font-weight:500}.progress-track{background:var(--bg-sunken);border-radius:999px;height:6px;overflow:hidden}.progress-fill{background:var(--accent);height:100%;transition:width var(--motion-slow) var(--ease-standard);border-radius:999px}.progress-fill.done{background:var(--ok-text)}.progress+.auth-sub{margin-top:18px}.value-panel{border:1px solid var(--border);background:var(--bg-surface);box-shadow:var(--shadow-xs);border-radius:8px;padding:18px 20px}.value-panel-head{flex-direction:column;align-items:flex-start;gap:3px;margin-bottom:12px;display:flex}.vmap-title{color:var(--text-primary);margin:0;font-size:17px;font-weight:600;line-height:24px}.vmap-var{color:var(--accent);font-weight:600}.cmp-ignored-explain{max-width:90ch;margin:0 0 10px}.automap{flex-direction:column;align-items:flex-end;gap:6px;max-width:420px;display:flex}.automap-btn{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.automap-note{border:1px solid var(--border);background:var(--bg-sunken);color:var(--text-secondary);text-align:left;border-radius:6px;padding:8px 10px;font-size:12px;line-height:18px}.automap-head{color:var(--text-primary);margin-bottom:3px;font-weight:600}.automap-list{margin:0;padding-left:16px}.value-panel-title{color:var(--text-primary);margin:0;font-size:15px;font-weight:600;line-height:21px}.value-panel-empty{border:1px solid var(--border);background:var(--bg-sunken);color:var(--text-secondary);border-radius:6px;padding:14px;font-size:13px;line-height:19px}.vmap-field{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);margin-bottom:14px;padding:14px 16px}.vmap-field:last-child{margin-bottom:0}.vmap-field-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:6px;display:flex}.vmap-field-title{flex-wrap:wrap;align-items:baseline;gap:10px;min-width:0;display:flex}.vmap-field-status:empty{display:none}.vmap-field-label{font-size:14px;font-weight:600}.vmap-actions{flex-shrink:0;align-items:center;gap:16px;display:flex}.vmap-import-status{flex-wrap:wrap;align-items:center;gap:12px;margin:2px 0 4px;display:flex}.vmap-import-status .imported{color:var(--ok);text-overflow:ellipsis;white-space:nowrap;max-width:260px;overflow:hidden}.vmap-config-note{border:1px solid var(--info-border);background:var(--info-bg);color:var(--info-text);border-radius:6px;max-width:90ch;margin:2px 0 6px;padding:8px 12px}.connect-board{margin-top:10px}.cb-empty{padding:8px 0}.cb-doc-cols{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:start;gap:12px;display:grid}.cb-doc-col{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);flex-direction:column;display:flex;overflow:hidden}.cb-doc-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.cb-doc-header{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:11px;font-weight:400;overflow:hidden}.cb-doc-count{background:var(--bg-sunken);color:var(--text-muted);font-variant-numeric:tabular-nums;border-radius:999px;flex-shrink:0;padding:0 6px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:400;line-height:16px}.cb-col-head{background:var(--surface-2);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:9px 12px;font-size:13px;font-weight:600;display:flex}.cb-doc-body{overscroll-behavior-y:contain;flex-direction:column;gap:10px;max-height:440px;padding:10px;display:flex;overflow-y:auto}.cb-items{flex-direction:column;gap:5px;display:flex}.cb-item{border:1px solid var(--border-strong);background:var(--bg-surface);cursor:pointer;transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard), background var(--motion-instant) var(--ease-standard);border-radius:6px;align-items:baseline;gap:7px;padding:6px 10px;display:flex;position:relative}.cb-item:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.cb-item.selected{background:var(--info-bg);box-shadow:0 0 0 2px var(--accent);border-color:var(--accent)!important}.cb-item-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:600;overflow:hidden}.cb-item-desc{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:11px;overflow:hidden}.cb-item.mapped{background:var(--ok-bg);border-color:var(--ok-border);border-right-width:5px}.cb-item.mapped.selected{background:var(--info-bg)}.cb-num{width:18px;height:18px;color:var(--group-ink);text-align:center;border-radius:50%;flex-shrink:0;justify-content:center;align-self:center;align-items:center;margin-left:auto;font-size:11px;font-weight:700;line-height:18px;display:inline-flex}.cb-hover-hint{z-index:1;letter-spacing:.02em;color:var(--text-muted);background:var(--bg-raised);border:1px solid var(--border);box-shadow:var(--shadow-xs);opacity:0;transition:opacity var(--motion-fast) var(--ease-standard);pointer-events:none;border-radius:4px;padding:1px 5px;font-family:IBM Plex Mono,monospace;font-size:9px;font-weight:500;position:absolute;bottom:2px;right:6px}.cb-item:hover .cb-hover-hint{opacity:1}.cb-bar{align-items:center;gap:12px;margin-bottom:10px;display:flex}.cb-status{flex-shrink:0;margin-bottom:0;font-size:13px}.cb-remaining{color:var(--warn-text);cursor:pointer;font-weight:600}.cb-remaining:hover{text-decoration:underline}.cb-remaining.active{color:var(--accent)}.cb-instruct{min-width:0;color:var(--ok);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13px;font-weight:600;overflow:hidden}.cb-undo{height:var(--control-h-sm);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);cursor:pointer;transition:background var(--motion-fast) var(--ease-standard), transform var(--motion-instant) var(--ease-standard);border-radius:6px;flex-shrink:0;align-items:center;margin-left:auto;padding:0 11px;font-size:12.5px;font-weight:500;display:inline-flex}.cb-undo:hover:not(:disabled){background:var(--bg-sunken)}.cb-undo:active:not(:disabled){transform:scale(.98)}.cb-undo:disabled{opacity:.45;cursor:not-allowed}.cb-unmap{height:var(--control-h-sm);border:1px solid var(--err-border);background:var(--bg-surface);color:var(--err-text);cursor:pointer;transition:background var(--motion-fast) var(--ease-standard), transform var(--motion-instant) var(--ease-standard);border-radius:6px;flex-shrink:0;align-items:center;gap:5px;padding:0 10px;font-size:12.5px;font-weight:500;display:inline-flex}.cb-unmap:hover{background:var(--err-bg)}.cb-unmap:active{transform:scale(.98)}.cb-none{height:var(--control-h-sm);border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard), transform var(--motion-instant) var(--ease-standard);border-radius:6px;flex-shrink:0;align-items:center;gap:5px;padding:0 10px;font-size:12.5px;font-weight:500;display:inline-flex}.cb-none:hover{background:var(--bg-sunken);color:var(--text-primary)}.cb-none:active{transform:scale(.98)}:root,[data-theme=light]{--group-1:#2a69b2;--group-2:#a96428;--group-3:#902ab2;--group-4:#b22a6e;--group-5:#352ab2;--group-6:#8c7221;--group-7:#b2572a;--group-8:#b22a2a;--group-9:#277ba5;--group-10:#b22a9b;--group-ink:#fff}[data-theme=dark]{--group-1:#5c95d6;--group-2:#d6955c;--group-3:#bb64d8;--group-4:#d65c99;--group-5:#857cde;--group-6:#d6b85c;--group-7:#d6855c;--group-8:#d86464;--group-9:#5cadd6;--group-10:#d65cc2;--group-ink:#171e28}.cb-item.none{background:var(--bg-sunken);border-color:var(--border-strong);border-right-width:5px;border-right-color:var(--border-strong)}.cb-item.none.selected{background:var(--info-bg)}.cb-none-badge{background:var(--border-strong);color:var(--text-primary)}.cb-num-inline{width:16px;height:16px;margin-left:0;font-size:10px;line-height:16px}.cb-col-filter{box-sizing:border-box;border:none;border-bottom:1px solid var(--border);width:100%;font:inherit;color:var(--text-primary);background:var(--bg-surface);transition:border-color var(--motion-fast) var(--ease-standard);padding:5px 12px;font-size:12.5px}.cb-col-filter:focus{border-bottom-color:var(--focus);background:var(--bg-surface);box-shadow:none;outline:none}.cb-add-value{border-bottom:1px solid var(--border);align-items:stretch;display:flex}.cb-add-value .cb-col-filter{border-bottom:none}.cb-add-btn{border:none;border-left:1px solid var(--border);background:var(--bg-sunken);width:26px;color:var(--text-secondary);cursor:pointer;transition:color var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard);flex:none;font-size:14px;line-height:1}.cb-add-btn:hover:not(:disabled){background:var(--bg-surface);color:var(--accent)}.cb-add-btn:disabled{color:var(--text-muted);cursor:default}.cb-show-existing-text{color:var(--accent);cursor:pointer;background:0 0;border:none;margin-top:10px;padding:0;font-size:12px;font-weight:600;text-decoration:underline;display:inline-block}.cb-col-allmapped{padding:4px 2px}.cb-foot{justify-content:space-between;align-items:center;gap:12px;margin-top:10px;display:flex}.cb-foot .cb-show-existing-text{margin-top:0}.cb-continue{align-items:center;gap:12px;display:flex}.cb-continue-text{color:var(--ok-text);font-size:13px;font-weight:600}@media (width<=720px){.cb-doc-cols{grid-template-columns:1fr}}.cb-done{border:1px solid var(--ok-border);background:var(--ok-bg);border-radius:6px;align-items:center;gap:14px;padding:16px 18px;display:flex}.cb-done-check{background:var(--bg-surface);width:32px;height:32px;color:var(--ok-text);border:1px solid var(--ok-border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:17px;font-weight:700;display:inline-flex}.cb-done-text{flex-direction:column;gap:1px;display:flex}.cb-done-title{color:var(--ok-text);font-size:15px;font-weight:600}.cb-done-sub{color:var(--text-muted);font-size:13px}.cb-change-mapping{color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-self:flex-start;margin-top:8px;padding:2px 0;font-size:12.5px;font-weight:600;text-decoration:underline}.cb-change-mapping:hover{color:var(--accent)}.primary .spinner{border-color:#0000;border-top-color:var(--accent-contrast)}.dash-page{flex-direction:column;gap:20px;display:flex}.dash-header{z-index:5;background:var(--bg-canvas);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex;position:sticky;top:52px}.dash-header:before{content:"";background:var(--bg-canvas);height:34px;position:absolute;top:-34px;left:0;right:0}.dash-header-title{flex-direction:column;gap:2px;display:flex}.dash-header-title h2{letter-spacing:-.01em;margin:0;font-size:22px;font-weight:600;line-height:30px}.dash-header-meta{color:var(--text-muted);white-space:nowrap;font-size:12.5px}.dash-controls{align-items:center;gap:8px;display:flex}.dash-month{align-items:center;gap:4px;display:inline-flex}.dash-month-label{border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:6px;align-items:center;padding:6px 12px;font-size:12.5px;display:inline-flex}.dash-icon-btn{border:1px solid var(--border-strong);background:var(--bg-surface);width:30px;height:30px;color:var(--text-secondary);cursor:pointer;transition:background var(--motion-fast) var(--ease-standard);border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.dash-icon-btn:hover:not(:disabled){background:var(--bg-sunken)}.dash-icon-btn:disabled{opacity:.45;cursor:not-allowed}.dash-select-wrap{display:inline-flex;position:relative}.dash-select{appearance:none;border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-primary);cursor:pointer;white-space:nowrap;border-radius:6px;padding:6px 26px 6px 12px;font-size:12.5px}.dash-select:hover{background:var(--bg-sunken)}.dash-select-chevron{color:var(--text-secondary);pointer-events:none;display:inline-flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.dash-error{border:1px solid var(--err-border);background:var(--err-bg);color:var(--err-text);border-radius:6px;justify-content:space-between;align-items:center;gap:16px;padding:11px 14px;font-size:13px;line-height:19px;display:flex}.dash-kpis{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.dash-kpi{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);border-radius:8px;flex-direction:column;gap:4px;padding:18px 22px;display:flex}.dash-kpi-label{color:var(--text-secondary);font-size:12px}.dash-kpi-value{font-variant-numeric:tabular-nums;font-size:25px;font-weight:600;line-height:31px}.dash-kpi-row{align-items:center;gap:7px;margin-top:2px;display:flex}.dash-kpi-caption{color:var(--text-muted);white-space:nowrap;font-size:11.5px}.dash-kpi-spark{justify-content:space-between;align-items:center;gap:10px;display:flex}.dash-sparkline{flex-shrink:0;width:90px;height:26px}.dash-chip{white-space:nowrap;font-variant-numeric:tabular-nums;border:1px solid var(--border);border-radius:4px;align-items:center;padding:2px 8px;font-size:11.5px;font-weight:600;display:inline-flex}.dash-chip-neutral{background:var(--bg-sunken);color:var(--text-secondary);border-color:var(--border)}.dash-chip-ok{background:var(--ok-bg);color:var(--ok-text);border-color:var(--ok-border)}.dash-chip-err{background:var(--err-bg);color:var(--err-text);border-color:var(--err-border)}.dash-mid{grid-template-columns:5fr 5fr 4fr;align-items:stretch;gap:20px;display:grid}.dash-panel{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.dash-panel-head{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;display:flex}.dash-panel-titles{flex-direction:column;display:flex}.dash-panel-title{font-size:14px;font-weight:600}.dash-panel-sub{color:var(--text-muted);white-space:nowrap;font-size:11.5px}.dash-panel-body{flex-direction:column;flex:1;justify-content:flex-end;padding:16px 20px 12px;display:flex}.dash-trend-svg{width:100%;height:auto}.dash-ytick{color:var(--text-secondary);fill:var(--text-secondary);font-variant-numeric:tabular-nums;font-family:IBM Plex Sans,Helvetica Neue,Arial,sans-serif;font-size:11px}text.dash-ytick{fill:var(--text-primary);font-size:14px;font-weight:500}.dash-axis{border-top:1px solid var(--border);justify-content:space-between;margin-top:2px;padding-top:5px;display:flex}.dash-axis-inset{padding-left:5%}.dash-axis span{color:var(--text-muted);font-size:11px}.dash-panel-foot{border-top:1px solid var(--border);justify-content:space-between;gap:12px;padding:9px 20px;display:flex}.dash-panel-foot span{color:var(--text-muted);font-size:11px}.dash-panel-empty{color:var(--text-secondary);padding:24px 20px;font-size:13px;line-height:19px}.dash-panel-empty-grow{flex:1;align-items:center;display:flex}.dash-panel-empty-inline{color:var(--text-muted);font-size:12px}.dash-seg{background:var(--bg-sunken);border:1px solid var(--border);border-radius:6px;gap:2px;padding:3px;display:inline-flex}.dash-seg-btn{color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);background:0 0;border:none;border-radius:4px;align-items:center;padding:3px 10px;font-size:11.5px;font-weight:500;display:inline-flex}.dash-seg-btn.active{color:var(--text-primary);background:var(--bg-surface);box-shadow:var(--shadow-xs);font-weight:600}.dash-seg-dot{border-radius:2px;flex-shrink:0;width:7px;height:7px;margin-right:5px}.dash-panel-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dash-donut-body{flex:1;align-items:center;gap:18px;padding:16px 20px;display:flex}.dash-donut-svg{flex-shrink:0;width:104px;height:104px}.dash-donut-total{fill:var(--text-primary);font-variant-numeric:tabular-nums;font-family:IBM Plex Sans,Helvetica Neue,Arial,sans-serif;font-size:17px;font-weight:600}.dash-donut-unit{fill:var(--text-muted);font-family:IBM Plex Sans,Helvetica Neue,Arial,sans-serif;font-size:8.5px}.dash-legend{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.dash-legend-row{align-items:center;gap:7px;display:flex}.dash-legend-swatch{border-radius:2px;flex-shrink:0;width:9px;height:9px}.dash-legend-label{color:var(--text-secondary);flex:1;font-size:12px}.dash-legend-value{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px;font-weight:600}.dash-tchip{border:1px solid var(--border);white-space:nowrap;border-radius:4px;padding:1px 7px;font-size:10.5px;font-weight:500}.dash-tchip-ok{background:var(--ok-bg);color:var(--ok-text);border-color:var(--ok-border)}.dash-tchip-warn{background:var(--warn-bg);color:var(--warn-text);border-color:var(--warn-border)}.dash-tchip-err{background:var(--err-bg);color:var(--err-text);border-color:var(--err-border)}.dash-tchip-info{background:var(--info-bg);color:var(--info-text);border-color:var(--info-border)}.dash-tchip-hist{background:var(--bg-sunken);color:var(--text-muted);border-color:var(--border)}.dash-seg-btn.dash-seg-btn-hist{color:var(--text-muted)}.dash-seg-btn.dash-seg-btn-hist.active{color:var(--text-secondary);font-weight:500}.dash-queue-loading{flex-direction:column;gap:10px;padding:14px 20px;display:flex}.dash-skel-row{width:100%}.dash-bars{flex-direction:column;gap:8px;display:flex}.dash-bar-row{align-items:center;gap:8px;display:flex}.dash-bar-label{width:72px;color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;font-size:10.5px;overflow:hidden}.dash-bar-desc{color:var(--text-muted);font-weight:400}.dash-bar-track{flex:1;align-items:center;height:13px;display:flex}.dash-bar-fill{background:var(--accent);height:100%;transition:width var(--motion-slow) var(--ease-entrance);border-radius:2px}.dash-bar-value{font-variant-numeric:tabular-nums;min-width:30px;color:var(--text-primary);text-align:right;flex-shrink:0;font-size:10.5px;font-weight:600}.dash-empty{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);text-align:center;border-radius:8px;flex-direction:column;align-items:center;gap:12px;padding:48px 24px;display:flex}.dash-empty-icon{background:var(--bg-sunken);width:44px;height:44px;color:var(--text-muted);border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.dash-empty h3{margin:0;font-size:15px;font-weight:600}.dash-empty p{color:var(--text-secondary);text-wrap:pretty;max-width:340px;margin:0;font-size:13px;line-height:19px}.skeleton-block.dash-skel-kpi{border-radius:8px;height:104px}.skeleton-block.dash-skel-panel{border-radius:8px;height:264px}.skeleton-block.dash-skel-queue{border-radius:8px;height:200px}.dash-kpi-stats{border-top:1px solid var(--border);flex-direction:column;gap:6px;margin-top:12px;padding-top:12px;display:flex}.dash-kpi-stat{align-items:center;gap:8px;display:flex}.dash-kpi-stat-label{color:var(--text-secondary);flex:1;align-items:center;gap:6px;min-width:0;font-size:12px;display:inline-flex}.dash-kpi-stat-value{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px;font-weight:600}.dash-stat-dot{border-radius:2px;flex-shrink:0;width:8px;height:8px}.dash-feature{flex-direction:column;gap:16px;display:flex}.dash-feature-head{align-items:center;gap:12px;display:flex}.dash-feature-icon{background:var(--bg-sunken);border:1px solid var(--border);width:36px;height:36px;color:var(--accent);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.dash-feature-titles{flex-direction:column;gap:1px;min-width:0;display:flex}.dash-feature-title{letter-spacing:-.01em;margin:0;font-size:16px;font-weight:600;line-height:22px}.dash-feature-sub{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.dash-feature-body{flex-direction:column;gap:20px;display:flex}.dash-kpi-primary{grid-column:span 2}.dash-kpi-value-lg{font-size:34px;line-height:40px}.dash-kpi-stat-muted{color:var(--text-muted)}.dash-kpi-tiles{gap:8px;margin-top:4px;display:flex}.dash-kpi-tile{border:1px solid var(--border);border-radius:6px;flex-direction:column;flex:1;gap:1px;min-width:0;padding:8px 10px;display:flex}.dash-kpi-tile-n{font-variant-numeric:tabular-nums;font-size:18px;font-weight:600;line-height:24px}.dash-kpi-tile-l{white-space:nowrap;font-size:10.5px}.dash-kpi-tile-new{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}.dash-kpi-tile-ongoing{background:var(--err-bg);border-color:var(--err-border);color:var(--err-text)}.dash-kpi-tile-changed{background:var(--warn-bg);border-color:var(--warn-border);color:var(--warn-text)}.dash-country-chips{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.dash-country-chip{color:var(--text-secondary);background:var(--bg-sunken);border:1px solid var(--border);white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:11.5px;font-weight:500}.dash-triple{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:20px;display:grid}.dash-stat-body{flex-direction:column;flex:1;justify-content:center;padding:16px 20px;display:flex}.dash-clegend{flex-wrap:wrap;gap:6px 8px;margin-bottom:12px;display:flex}.dash-clegend-item{color:var(--text-secondary);white-space:nowrap;cursor:pointer;transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard), opacity var(--motion-fast) var(--ease-standard);background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;padding:2px 9px 2px 7px;font-size:10.5px;display:inline-flex}.dash-clegend-item:hover{background:var(--bg-sunken);color:var(--text-primary)}.dash-clegend-item.active{border-color:var(--info-border);background:var(--info-bg);color:var(--info-text);font-weight:600}.dash-clegend-item.dim{opacity:.5}.dash-clegend-item:focus-visible{box-shadow:var(--focus-ring);outline:none}.dash-clegend-swatch{border-radius:2px;flex-shrink:0;width:9px;height:9px}.dash-unmapped-body{flex-direction:column;flex:1;gap:12px;min-height:0;padding:14px 20px 16px;display:flex}.dash-unmapped-stats{flex-wrap:wrap;align-items:center;gap:10px 24px;display:flex}.dash-unmapped-stat{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.dash-unmapped-value{font-variant-numeric:tabular-nums;font-size:25px;font-weight:600;line-height:31px}.dash-unmapped-label{color:var(--text-secondary);font-size:12.5px}.dash-utable-scroll{border:1px solid var(--border);border-radius:6px;max-height:236px;overflow-y:auto}.dash-utable{flex-direction:column;display:flex}.dash-utable-head,.dash-utable-row{grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr) 46px;align-items:center;gap:0 10px;padding:5px 12px;display:grid}.dash-utable-head{z-index:1;background:var(--bg-sunken);border-bottom:1px solid var(--border);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);padding-top:6px;padding-bottom:6px;font-family:IBM Plex Mono,monospace;font-size:10px;position:sticky;top:0}.dash-utable-row{border-bottom:1px solid var(--border);min-height:26px}.dash-utable-row:last-child{border-bottom:none}.dash-utable-val{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-family:IBM Plex Mono,monospace;font-size:11.5px;overflow:hidden}.dash-utable-desc{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.dash-utable-num{font-variant-numeric:tabular-nums;color:var(--text-primary);text-align:right;white-space:nowrap;font-size:11.5px;font-weight:600}.dash-chiprow{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:6px;padding:12px 20px;display:flex}.dash-fchip{color:var(--text-secondary);background:var(--bg-surface);border:1px solid var(--border-strong);cursor:pointer;white-space:nowrap;transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard);border-radius:999px;padding:3px 12px;font-size:11.5px;font-weight:500}.dash-fchip:hover{background:var(--bg-sunken);color:var(--text-primary)}.dash-fchip.active{color:var(--info-text);background:var(--info-bg);border-color:var(--info-border);font-weight:600}.dash-fchip:focus-visible{box-shadow:var(--focus-ring);outline:none}.dash-fchip-counts{gap:5px;margin-left:7px;display:inline-flex}.dash-fc{font-variant-numeric:tabular-nums;font-size:10.5px;font-weight:600}.dash-fc-new{color:var(--info-text)}.dash-fc-ongoing{color:var(--err-text)}.dash-fc-changed{color:var(--warn-text)}.dash-items{flex-direction:column;display:flex}.dash-items-header{grid-template-columns:var(--dash-item-grid,20px minmax(0, 1.5fr) minmax(0, 1fr) auto);background:var(--bg-sunken);border-bottom:1px solid var(--border);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;align-items:center;gap:0 14px;padding:7px 20px;font-family:IBM Plex Mono,monospace;font-size:10px;display:grid}.dash-items-header-num{text-align:right;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dash-items-header-status{text-align:right}.dash-item-group{border-bottom:1px solid var(--border)}.dash-item-group:last-child{border-bottom:none}.dash-item-group-head{align-items:baseline;gap:10px;min-width:0;padding:14px 20px 8px;display:flex}.dash-item-gid{color:var(--text-primary);white-space:nowrap;flex-shrink:0;font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:600}.dash-item-gdesc{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.dash-item-gmeta{color:var(--text-muted);white-space:nowrap;font-variant-numeric:tabular-nums;flex-shrink:0;margin-left:auto;font-size:11.5px}.dash-item{border-top:1px solid var(--border)}.dash-item-head{grid-template-columns:var(--dash-item-grid,20px minmax(0, 1.5fr) minmax(0, 1fr) auto);cursor:pointer;text-align:left;width:100%;color:var(--text-primary);transition:background var(--motion-fast) var(--ease-standard);background:0 0;border:none;align-items:center;gap:0 14px;padding:9px 20px;display:grid}.dash-item-head:hover,.dash-item.open>.dash-item-head{background:var(--bg-sunken)}.dash-item-head:focus-visible{box-shadow:inset var(--focus-ring);outline:none}.dash-item-caret{color:var(--text-muted);transition:transform var(--motion-fast) var(--ease-standard);display:inline-flex}.dash-item-caret.open{transform:rotate(180deg)}.dash-item-main{flex-direction:column;gap:2px;min-width:0;display:flex}.dash-item-metaline{min-width:0;color:var(--text-secondary);align-items:center;gap:8px;font-size:11.5px;display:flex}.dash-item-code{color:var(--text-primary);white-space:nowrap;flex-shrink:0;font-family:IBM Plex Mono,monospace;font-weight:600}.dash-item-desc{min-width:0;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.dash-item-fseen{color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11.5px}.dash-item-dvcell{font-variant-numeric:tabular-nums;justify-content:flex-end;min-width:0;font-family:IBM Plex Mono,monospace;font-size:11.5px;display:flex;overflow:hidden}.dash-item-head>.dash-tchip{justify-self:end}.dash-dv{white-space:nowrap;text-overflow:ellipsis;border-radius:4px;max-width:120px;padding:1px 6px;overflow:hidden}.dash-dv-ok{background:var(--ok-bg);color:var(--ok-text)}.dash-dv-wrong{background:var(--err-bg);color:var(--err-text);font-weight:600}.dash-dv-missing{background:var(--bg-sunken);color:var(--text-muted)}.dash-dv-none{color:var(--text-muted);background:0 0}.dash-item-collapse{transition:grid-template-rows var(--motion-normal) var(--ease-standard);grid-template-rows:0fr;display:grid}.dash-item-collapse.open{grid-template-rows:1fr}.dash-item-collapse-inner{min-height:0;overflow:hidden}.dash-item-detail{flex-direction:column;gap:12px;padding:2px 20px 16px 54px;display:flex}.dash-item-detail-meta{flex-wrap:wrap;align-items:baseline;gap:4px 14px;display:flex}.dash-item-detail-name{color:var(--text-primary);font-size:12.5px;font-weight:600}.dash-item-detail-seen{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:11.5px}.dash-item-detail-none{color:var(--text-muted);font-size:12.5px}.dash-diff-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.dash-diff-doc{border:1px solid var(--border);background:var(--bg-surface);border-radius:6px;flex-direction:column;gap:5px;padding:9px 12px;display:flex}.dash-diff-doc.wrong{border-color:var(--err-border)}.dash-diff-doc-name{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-family:IBM Plex Mono,monospace;font-size:10.5px}.dash-diff-doc-value{font-variant-numeric:tabular-nums;align-self:flex-start;font-size:14px}.dash-kpi-value,.dash-kpi-stat-value,.dash-unmapped-value,.dash-legend-value{color:var(--text-primary)}.dash-num{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-weight:600}@media (width<=1360px){.dash-mid{grid-template-columns:1fr 1fr}.dash-mid>.dash-panel:last-child{grid-column:1/-1}}@media (width<=1000px){.dash-kpis{grid-template-columns:repeat(2,1fr)}.dash-kpi-primary{grid-column:span 2}.dash-mid{grid-template-columns:1fr}.dash-mid>.dash-panel:last-child{grid-column:auto}.dash-triple{grid-template-columns:1fr}}@media (width<=720px){.dash-items-header{display:none}.dash-item-head{grid-template-columns:20px minmax(0,1fr) auto}.dash-col-opt{display:none}}@media (width<=640px){.dash-kpis{grid-template-columns:1fr}.dash-kpi-primary{grid-column:span 1}}.confirm-modal{max-width:460px}.confirm-message{color:var(--text-secondary);margin:4px 0 0;font-size:14px;line-height:21px}.confirm-detail{margin-top:8px}.admin-app-subrow{border-left:2px solid var(--border);margin-top:6px;padding-left:14px}.dash-title-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.dash-name-select{border:1px solid var(--border-strong);background:var(--bg-surface);max-width:320px;height:34px;color:var(--text-primary);border-radius:7px;padding:0 10px;font-size:16px;font-weight:600}.dash-name-select:focus{border-color:var(--focus);box-shadow:var(--focus-ring);outline:none}.dash-star-btn{cursor:pointer;border:1px solid var(--border-strong);background:var(--bg-surface);height:34px;color:var(--text-secondary);white-space:nowrap;transition:border-color var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard);border-radius:7px;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.dash-star-btn:hover:not(:disabled){border-color:var(--focus);color:var(--text-primary)}.dash-star-btn:disabled{cursor:default;opacity:.6}.dash-star-icon{color:var(--text-muted);font-size:16px;line-height:1}.dash-star-btn.on{border-color:var(--warn-text);color:var(--text-primary)}.dash-star-btn.on .dash-star-icon{color:var(--warn-text)}.dash-edit-btn{white-space:nowrap}.discover-modal{width:640px;max-width:640px}.discover-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.discover-filter{width:100%;margin:12px 0 0}.discover-list{scrollbar-gutter:stable;overscroll-behavior-y:contain;flex-direction:column;gap:4px;max-height:52vh;margin:12px 0;display:flex;overflow-y:auto}.discover-row{border:1px solid var(--border);background:var(--bg-surface);cursor:pointer;text-align:left;width:100%;transition:background var(--motion-fast) var(--ease-standard);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.discover-row:hover{background:var(--bg-sunken)}.discover-row.current{border-color:var(--accent)}.discover-main{flex-direction:column;gap:2px;min-width:0;display:flex}.discover-name{align-items:center;gap:6px;font-size:14px;font-weight:600;display:inline-flex}.discover-star{color:var(--warn-text)}.discover-meta{white-space:nowrap;flex-shrink:0}.dash-aptus-badge{letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--accent);color:var(--accent);border-radius:999px;padding:1px 7px;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:500}.create-dash-modal{width:520px;max-width:520px}.create-dash-modal .row-field{flex-direction:column;gap:6px;margin-top:12px;display:flex}.create-mode{flex-direction:column;gap:6px;display:flex}.create-mode label{align-items:center;gap:8px;font-size:13.5px;display:flex}.dash-tile-notice{text-align:center;color:var(--text-secondary);justify-content:center;align-items:center;padding:14px 16px;font-size:13px;line-height:1.5;display:flex}.dash-tile-notice b{color:var(--text-primary);font-weight:600}.hsl-defaults{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin:18px 0 22px;display:grid}.hsl-list{flex-direction:column;gap:8px;margin-bottom:20px;display:flex}.hsl-row{background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);border-radius:8px}.hsl-row.open{border-color:var(--border-strong)}.hsl-head{align-items:center;gap:12px;padding:10px 14px;display:flex}.hsl-order{flex-direction:column;line-height:1;display:flex}.hsl-order .link{padding:0 2px;font-size:12px}.hsl-name{cursor:pointer;text-align:left;font:inherit;color:var(--text-primary);background:0 0;border:0;flex-direction:column;flex:1;align-items:flex-start;gap:2px;padding:0;font-weight:600;display:flex}.hsl-name:hover{color:var(--accent)}.hsl-visible{flex-shrink:0}.hsl-body{border-top:1px solid var(--border);flex-direction:column;gap:16px;padding:16px 14px;display:flex}.hsl-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;display:grid}.hsl-roles{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding-top:4px;display:flex}.hsl-role{grid-template-columns:minmax(170px,1fr) minmax(150px,180px) minmax(200px,2fr);align-items:center;gap:10px;display:grid}.hsl-role-name{color:var(--text-primary);font-size:13px;font-weight:500}@media (width<=900px){.hsl-role{grid-template-columns:1fr;gap:6px}}.mfa-section{text-align:left;flex-direction:column;gap:18px;display:flex}.mfa-block{border:1px solid var(--border);background:var(--bg-surface);border-radius:8px;flex-direction:column;align-items:flex-start;gap:10px;padding:16px 18px;display:flex}.mfa-block-head{align-items:center;gap:10px;width:100%;display:flex}.mfa-title{color:var(--text-primary);font-size:15px;font-weight:600}.mfa-badge{border:1px solid var(--border);border-radius:999px;padding:2px 9px;font-size:12px;font-weight:600}.mfa-badge.on{background:var(--ok-bg);border-color:var(--ok-border);color:var(--ok-text)}.mfa-badge.off{color:var(--text-muted)}.mfa-required-note{margin:0}.mfa-setup{flex-direction:column;align-items:flex-start;gap:12px;width:100%;display:flex}.mfa-steps{color:var(--text-secondary);margin:0;padding-left:20px;font-size:13px}.mfa-steps li{margin:2px 0}.mfa-qr{border:1px solid var(--border);background:#fff;border-radius:8px;width:184px;height:184px;padding:10px}.mfa-key{font-family:var(--font-mono,ui-monospace, "IBM Plex Mono", monospace);letter-spacing:.06em;background:var(--bg-subtle,var(--bg-surface));border:1px solid var(--border);-webkit-user-select:all;user-select:all;border-radius:6px;padding:8px 12px;font-size:14px}.mfa-code{letter-spacing:.3em;text-align:center;font-size:20px}.mfa-code-label{width:100%}.mfa-code-label .mfa-code{max-width:190px}.mfa-actions{align-items:center;gap:10px;display:flex}.mfa-require{align-items:flex-start}.map-main[hidden],.map-instructions[hidden]{display:none}.map-loading{min-height:320px;color:var(--text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;font-size:13px;display:flex}.hsl-text{grid-template-columns:minmax(180px,1fr) minmax(260px,2fr);gap:14px;display:grid}.hsl-text-hint{grid-column:1/-1;margin:0}@media (width<=900px){.hsl-text{grid-template-columns:1fr}}.dashdef-grid{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:64px;gap:20px;display:grid}.dashdef-cell{flex-direction:column;min-width:0;min-height:0;display:flex}.dashdef-cell>.dash-panel,.dashdef-cell>.dash-kpi,.dashdef-cell>.dash-tile-forced{flex:1;min-height:0;overflow:hidden}.dash-tile-forced{flex-direction:column;display:flex;position:relative}.dash-tile-forced>.dash-panel,.dash-tile-forced>.dash-kpi{flex:1;min-height:0;overflow:hidden}.dash-tile-country-chip{z-index:2;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;max-width:55%;color:var(--accent);background:var(--bg-sunken);border:1px solid var(--border);border-radius:999px;padding:1px 8px;font-size:10.5px;font-weight:600;line-height:1.5;position:absolute;top:8px;right:8px;overflow:hidden}.dashdef-cell .dash-stat-body{overscroll-behavior-y:contain;justify-content:flex-start;overflow-y:auto}.dashdef-cell .dash-unmapped-body{flex-direction:column;flex:1;min-height:0;display:flex}.dashdef-cell .dash-utable-scroll{flex:1;min-height:0;max-height:none}.dashdef-skel{border-radius:8px;flex:1;min-height:48px}.dashdef-placeholder{border:1px dashed var(--border-strong);background:var(--bg-sunken);text-align:center;min-height:0;color:var(--text-muted);border-radius:8px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:6px;padding:14px 16px;display:flex}.dashdef-placeholder-icon{color:var(--text-muted);opacity:.7;display:inline-flex}.dashdef-placeholder-title{color:var(--text-secondary);font-size:12.5px;font-weight:600}.dashdef-placeholder-msg{max-width:260px;font-size:11.5px;line-height:16px}.dashdef-text-wrap{flex-direction:column;flex:1;justify-content:flex-end;gap:1px;min-height:0;padding:0 2px 2px;display:flex;overflow:hidden}.dashdef-text{letter-spacing:.01em;color:var(--text-primary);font-size:15px;font-weight:600}.dashdef-text-sub{color:var(--text-muted);font-size:11.5px}.dashdef-text-wrap-note{justify-content:flex-start}.dashdef-text-note{color:var(--text-muted);white-space:pre-wrap;font-size:12px;font-weight:400;line-height:17px;overflow:hidden}.dashdef-text.dashdef-text-sm{font-size:13px;line-height:18px}.dashdef-text.dashdef-text-md{font-size:15px;line-height:20px}.dashdef-text.dashdef-text-lg{font-size:18px;line-height:24px}.dashdef-text.dashdef-text-xl{font-size:22px;line-height:28px}.dashdef-text-note.dashdef-text-sm{font-size:11px;line-height:15px}.dashdef-text-note.dashdef-text-md{font-size:12px;line-height:17px}.dashdef-text-note.dashdef-text-lg{font-size:14px;line-height:20px}.dashdef-text-note.dashdef-text-xl{font-size:16px;line-height:22px}.dashdef-kpi-sub{color:var(--text-muted);margin-top:-4px;font-size:11px;line-height:14px}.dashdef-showall{color:var(--text-muted);cursor:pointer;transition:color var(--motion-fast) var(--ease-standard);background:0 0;border:none;align-self:flex-start;margin:6px 20px 8px;padding:0;font-size:11.5px;font-weight:500}.dashdef-showall:hover{color:var(--accent);text-decoration:underline}.dashdef-showall:focus-visible{box-shadow:var(--focus-ring);border-radius:3px;outline:none}.dash-stat-body .dashdef-showall{margin:8px 0 0}.dash-utable .dashdef-showall{margin:4px 10px 6px}.dashdef-items-scroll{overscroll-behavior-y:contain;flex:1;min-height:0;overflow-y:auto}.dashdef-items-head,.dashdef-items-row{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,.9fr) 96px 82px;align-items:center;gap:0 10px;padding:5px 20px;display:grid}.dashdef-items-head{z-index:1;background:var(--bg-sunken);border-bottom:1px solid var(--border);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);padding-top:6px;padding-bottom:6px;font-family:IBM Plex Mono,monospace;font-size:10px;position:sticky;top:0}.dashdef-items-row{border-bottom:1px solid var(--border);min-height:30px;transition:background var(--motion-fast) var(--ease-standard)}.dashdef-items-row:last-child{border-bottom:none}.dashdef-items-row:hover{background:var(--bg-sunken)}.dashdef-items-code{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-family:IBM Plex Mono,monospace;font-size:11.5px;overflow:hidden}.dashdef-items-cell{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.dashdef-items-date{color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px}.dashdef-items-status{justify-content:flex-end;display:flex}.dashdef-item{border-bottom:1px solid var(--border)}.dashdef-item:last-of-type,.dashdef-item .dashdef-items-row{border-bottom:none}.dashdef-items-rowbtn{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none}.dashdef-item-caret{width:12px;color:var(--text-muted);transition:transform var(--motion-fast) var(--ease-standard);margin-right:2px;font-size:10px;display:inline-block}.dashdef-item-caret.open{transform:rotate(90deg)}.dashdef-item-codetext{font-family:IBM Plex Mono,monospace}.dashdef-item-desc{color:var(--text-secondary);margin-left:8px;font-family:IBM Plex Sans,sans-serif;font-size:11px}.dashdef-item-detail{background:var(--bg-sunken);border-top:1px dashed var(--border);padding:8px 20px 12px 34px}.dashdef-item-detail-meta{flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin-bottom:8px;display:flex}.dashdef-item-detail-id{color:var(--text-primary);font-size:11.5px;font-weight:600}.dashdef-item-detail-label{color:var(--text-secondary);font-size:11px}.dashdef-item-delta{font-variant-numeric:tabular-nums;color:var(--err-text);font-size:11px;font-weight:600}.dashdef-item-detail-none{color:var(--text-muted);font-size:11.5px}.dashdef-item-hid{letter-spacing:.04em;color:var(--accent);background:var(--accent-weak,var(--bg-sunken));border:1px solid var(--border);vertical-align:1px;border-radius:4px;margin-right:7px;padding:0 5px;font-family:IBM Plex Mono,monospace;font-size:10.5px;font-weight:600;display:inline-block}.dashdef-item-detail-seen{color:var(--text-secondary);margin-bottom:8px;font-size:11.5px}.dashdef-items-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dashdef-items-search{border:1px solid var(--border);background:var(--bg-surface);min-width:150px;color:var(--text-primary);border-radius:6px;padding:4px 9px;font-size:12px}.dashdef-country-list{overscroll-behavior-y:contain;flex-direction:column;flex:1;min-height:0;padding:8px 20px;display:flex;overflow-y:auto}.dashdef-country-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:7px 0;display:flex}.dashdef-country-row:last-child{border-bottom:none}.dashdef-country-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.dashdef-country-counts{white-space:nowrap;align-items:baseline;gap:8px;display:inline-flex}.dashdef-country-none{color:var(--text-muted);white-space:nowrap;font-size:11px}.dashdef-country-users{color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px}.dashdef-stack-body{overscroll-behavior-y:contain;flex-direction:column;flex:1;gap:10px;min-height:0;padding:12px 20px 14px;display:flex;overflow-y:auto}.dashdef-stack-legend{flex-wrap:wrap;gap:4px 14px;display:flex}.dashdef-stack-legend-item{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:5px;font-size:10.5px;display:inline-flex}.dashdef-stack-rows{flex-direction:column;gap:8px;display:flex}.dashdef-stack-row{flex-direction:column;gap:3px;display:flex}.dashdef-stack-labels{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.dashdef-stack-name{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;overflow:hidden}.dashdef-stack-total{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:11px;font-weight:600}.dashdef-stack-bar{border-radius:2px;height:16px;display:flex;overflow:hidden}.dashdef-stack-seg{height:100%;transition:width .4s var(--ease-standard)}.dashdef-vplot{flex:1;min-height:72px;margin-top:4px;display:flex}.dashdef-vticks{flex:none;width:40px;position:relative}.dashdef-vtick{white-space:nowrap;position:absolute;right:7px;transform:translateY(-50%)}.dashdef-vtick:last-child{transform:translateY(-100%)}.dashdef-varea{flex:1;min-width:0;position:relative}.dashdef-vgridline{border-top:1px solid var(--border);pointer-events:none;position:absolute;left:0;right:0}.dashdef-vgroups{align-items:flex-end;gap:18px;padding:0 8px;display:flex;position:absolute;inset:0}.dashdef-vgroup{flex:1;justify-content:center;align-items:flex-end;gap:4px;min-width:0;height:100%;display:flex}.dashdef-vbar{min-width:2px;max-width:34px;transition:height var(--motion-slow) var(--ease-entrance), opacity var(--motion-fast) var(--ease-standard);border-radius:2px 2px 0 0;flex:1}.dashdef-vxlabels{border-top:1px solid var(--border);gap:18px;margin-left:40px;padding:4px 8px 0;display:flex}.dashdef-vxlabels span{text-align:center;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:10.5px;overflow:hidden}.dashdef-bars-controls{flex:none;align-items:center;gap:8px;display:flex}.dbb-canvas{min-height:192px;transition:height var(--motion-normal) var(--ease-standard);border-radius:8px;position:relative}.dbb-canvas.is-dragging{-webkit-user-select:none;user-select:none}.dbb-empty{border:1.5px dashed var(--border-strong);color:var(--text-muted);pointer-events:none;border-radius:8px;justify-content:center;align-items:center;font-size:13px;display:flex;position:absolute;inset:0}.dbb-ghost{z-index:0;border:1.5px dashed var(--focus);background:var(--bg-sunken);transition:transform var(--motion-normal) var(--ease-standard), width var(--motion-normal) var(--ease-standard), height var(--motion-normal) var(--ease-standard);pointer-events:none;border-radius:8px;position:absolute;top:0;left:0}.dbb-block{z-index:1;background:var(--bg-surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);transition:transform var(--motion-normal) var(--ease-standard), width var(--motion-normal) var(--ease-standard), height var(--motion-normal) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:8px;outline:none;flex-direction:column;display:flex;position:absolute;top:0;left:0}.dbb-block:hover{border-color:var(--border-strong)}.dbb-block:focus-visible{box-shadow:var(--focus-ring), var(--shadow-xs)}.dbb-block.is-selected{border-color:var(--focus);box-shadow:0 0 0 1px var(--focus), var(--shadow-sm)}.dbb-block.is-dragging{z-index:30;box-shadow:var(--shadow-lg);border-color:var(--border-strong);will-change:transform, width, height;transition:none}.dbb-block-head{background:var(--bg-sunken);border-bottom:1px solid var(--border);height:26px;color:var(--text-muted);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;transition:color var(--motion-fast) var(--ease-standard);border-radius:7px 7px 0 0;flex-shrink:0;justify-content:space-between;align-items:center;gap:6px;padding:0 5px 0 9px;display:flex}.dbb-block-head:hover{color:var(--text-secondary)}.dbb-block.is-dragging .dbb-block-head,.dbb-block.is-dragging .dbb-block-head:active{cursor:grabbing}.dbb-grip{align-items:center;display:inline-flex}.dbb-remove{width:18px;height:18px;color:var(--text-muted);cursor:pointer;transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;display:inline-flex}.dbb-remove:hover{background:var(--err-bg);color:var(--err-text)}.dbb-remove:focus-visible{box-shadow:var(--focus-ring);outline:none}.dbb-block-body{border-radius:0 0 7px 7px;flex:1;min-height:0;position:relative;overflow:hidden}.dbb-block>.dbb-block-body:first-child{border-radius:7px}.dbb-rs{z-index:2;touch-action:none;position:absolute}.dbb-rs-se{width:16px;height:16px;color:var(--text-muted);cursor:nwse-resize;opacity:0;transition:opacity var(--motion-fast) var(--ease-standard);justify-content:flex-end;align-items:flex-end;padding:0 3px 3px 0;display:inline-flex;bottom:-3px;right:-3px}.dbb-block:hover .dbb-rs-se,.dbb-block:focus-visible .dbb-rs-se,.dbb-block.is-selected .dbb-rs-se{opacity:1}.dbb-rs-e{cursor:ew-resize;width:8px;top:10px;bottom:10px;right:-4px}.dbb-rs-w{cursor:ew-resize;width:8px;top:10px;bottom:10px;left:-4px}.dbb-rs-s{cursor:ns-resize;height:8px;bottom:-4px;left:10px;right:10px}.dbb-rs-sw{cursor:nesw-resize;width:14px;height:14px;bottom:-3px;left:-3px}.dbb-page{flex-direction:column;gap:14px;display:flex}.dbb-topbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.dbb-topbar-title h2{margin:0}.dbb-topbar-org{color:var(--text-secondary);margin-top:2px;font-size:13px;display:block}.dbb-topbar-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dbb-name-input{flex:1;align-self:center;min-width:180px;max-width:320px}.dbb-pick-list{flex-direction:column;gap:10px;max-width:720px;display:flex}.dbb-pick-row{border:1px solid var(--border);background:var(--bg-surface);transition:border-color var(--motion-normal) var(--ease-standard);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.dbb-pick-row:hover{border-color:var(--border-strong)}.dbb-pick-row.legacy{border-style:dashed}.dbb-pick-info{flex-direction:column;gap:2px;min-width:0;display:flex}.dbb-pick-name{flex-wrap:wrap;align-items:center;gap:8px;font-weight:600;display:flex}.dbb-pick-badge{letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--accent);color:var(--accent);border-radius:999px;padding:1px 7px;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:500}.dbb-pick-badge.legacy{border-color:var(--border);color:var(--text-muted)}.dbb-pick-actions{flex-shrink:0;align-items:center;gap:12px;display:flex}.dbb-preview-bar{border:1px solid var(--border);background:var(--bg-sunken);z-index:6;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:8px 12px;display:flex;position:sticky;top:0}.dbb-body{align-items:flex-start;gap:16px;display:flex}.dbb-canvas-col{flex:1;min-width:0}.dbb-side{border:1px solid var(--border);background:var(--bg-surface);overscroll-behavior-y:contain;border-radius:8px;flex-direction:column;flex-shrink:0;gap:12px;width:300px;max-height:calc(100vh - 96px);padding:14px;display:flex;position:sticky;top:60px;overflow-y:auto}.dbb-preview{flex-direction:column;height:100%;min-height:0;display:flex}.dbb-preview>*{flex:1;min-height:0;overflow:hidden}.dbb-preview>.dash-panel,.dbb-preview>.dash-kpi{box-shadow:none;border:none;border-radius:0}.dbb-lib{flex-direction:column;gap:12px;display:flex}.dbb-lib-search{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-muted);transition:border-color var(--motion-fast) var(--ease-standard);border-radius:6px;align-items:center;gap:7px;padding:6px 10px;display:flex}.dbb-lib-search:focus-within{border-color:var(--focus)}.dbb-lib-search input{min-width:0;color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-size:13px}.dbb-lib-group-h{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:2px 0 6px;font-family:IBM Plex Mono,monospace;font-size:10px}.dbb-lib-card{border:1px solid var(--border);background:var(--bg-surface);width:100%;color:var(--text-primary);cursor:grab;text-align:left;transition:border-color var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border-radius:6px;flex-direction:column;align-items:flex-start;gap:2px;margin-bottom:6px;padding:8px 10px;display:flex}.dbb-lib-card:hover:not(:disabled){border-color:var(--border-strong);background:var(--bg-sunken);box-shadow:var(--shadow-xs)}.dbb-lib-card:focus-visible{box-shadow:var(--focus-ring);outline:none}.dbb-lib-card:disabled{opacity:.5;cursor:not-allowed}.dbb-lib-card-label{font-size:13px;font-weight:500}.dbb-lib-card-meta{color:var(--text-muted);font-size:11px}.dbb-lib-cap,.dbb-lib-empty{padding:4px 2px}.dbb-lib-hoverprev{z-index:210;pointer-events:none;border:1px solid var(--border);background:var(--bg-raised);box-shadow:var(--shadow-lg);animation:dbb-hoverprev-in var(--motion-normal) var(--ease-entrance) both;border-radius:10px;position:fixed;overflow:hidden}.dbb-lib-hoverprev-inner{transform-origin:0 0;flex-direction:column;min-height:0;display:flex}.dbb-lib-hoverprev-inner>.dbb-preview{flex:1;min-height:0}.dbb-lib-hoverprev .dash-panel,.dbb-lib-hoverprev .dash-kpi{box-shadow:none;border:none;border-radius:0}@keyframes dbb-hoverprev-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.dbb-cfg{flex-direction:column;gap:12px;display:flex}.dbb-cfg-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.dbb-cfg-type{color:var(--text-secondary);font-size:12px;font-weight:600}.dbb-cfg-field{flex-direction:column;gap:5px;display:flex}.dbb-cfg-label{color:var(--text-secondary);font-size:12px;font-weight:500}.dbb-cfg-field select{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-primary);border-radius:6px;padding:6px 8px;font-size:13px}.dbb-cfg-limit{width:90px}.dbb-cfg-textarea{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-primary);resize:vertical;transition:border-color var(--motion-fast) var(--ease-standard);border-radius:6px;padding:7px 9px;font-family:inherit;font-size:13px}.dbb-cfg-textarea:focus{border-color:var(--focus);outline:none}.dbb-cfg-seg{border:1px solid var(--border);border-radius:6px;width:fit-content;display:inline-flex;overflow:hidden}.dbb-cfg-seg-btn{background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;transition:background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);border:none;padding:4px 12px;font-size:12px}.dbb-cfg-seg-btn+.dbb-cfg-seg-btn{border-left:1px solid var(--border)}.dbb-cfg-seg-btn:hover{background:var(--bg-sunken)}.dbb-cfg-seg-btn.active{background:var(--accent);color:var(--accent-contrast)}.dbb-cfg-swatches{gap:8px;display:flex}.dbb-cfg-swatch{cursor:pointer;width:22px;height:22px;transition:border-color var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);border:2px solid #0000;border-radius:50%;padding:0}.dbb-cfg-swatch:hover{transform:scale(1.12)}.dbb-cfg-swatch.active{border-color:var(--focus);box-shadow:0 0 0 2px var(--bg-surface) inset}.dbb-cfg-swatch:focus-visible{box-shadow:var(--focus-ring);outline:none}.dbb-cfg-meta{border-top:1px solid var(--border);padding-top:4px}.dbb-cfg-remove{align-self:flex-start}.dbb-commit-facts{align-items:flex-start;gap:20px;margin:10px 0;display:flex}.dbb-commit-fact{flex-direction:column;gap:2px;display:flex}.dbb-commit-fact-n{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:18px;font-weight:600}.dbb-commit-budget{flex:1}.dbb-commit-budget-head{align-items:baseline;gap:6px;display:flex}.dbb-budget-track{background:var(--bg-sunken);border:1px solid var(--border);border-radius:3px;height:6px;margin-top:6px;overflow:hidden}.dbb-budget-fill{background:var(--accent);height:100%;transition:width var(--motion-normal) var(--ease-standard);border-radius:3px}.dbb-budget-fill.over{background:var(--err-text)}.dbb-commit-clear{margin-right:auto}.dbb-commit-warnings summary{cursor:pointer}.dbb-commit-warnings ul{margin:6px 0 0;padding-left:18px}.dbb-commit-warnings li+li{margin-top:2px}.dbb-load-failed{border:1.5px dashed var(--border-strong);border-radius:8px;flex-direction:column;align-items:flex-start;gap:12px;padding:24px;display:flex}.dbb-load-failed-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dbb-save-btn{align-items:center;gap:6px;display:inline-flex}.dbb-view-badge{vertical-align:middle;border:1px solid var(--warn-border);background:var(--warn-bg);color:var(--warn-text);letter-spacing:.02em;border-radius:999px;margin-left:10px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.dbb-picker-actions{align-items:center;gap:8px;display:inline-flex}.dbb-picker-actions .btn-secondary,.dbb-picker-actions .ghost{align-items:center;gap:6px;display:inline-flex}.dbb-org-dash-list{flex-direction:column;gap:8px;margin-top:8px;display:flex}.dbb-org-dash-row{border:1px solid var(--border);background:var(--bg-sunken);transition:border-color var(--motion-normal) var(--ease-standard);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:10px 14px;display:flex}.dbb-org-dash-row:hover{border-color:var(--border-strong)}.dbb-org-dash-info{flex-direction:column;gap:2px;min-width:0;display:flex}.dbb-org-dash-name{flex-wrap:wrap;align-items:center;gap:8px;font-size:13.5px;font-weight:600;display:flex}
