:root{color-scheme:light;--canvas: #f4f7fa;--surface: #ffffff;--surface-soft: #f8fafc;--border: #e9eef3;--border-strong: #d6dee6;--text: #1d2630;--muted: #5f6f82;--ink: #1d2630;--brand: #d42228;--brand-hover: #b01d22;--brand-active: #8f171b;--brand-tint: #fdeeee;--tb-blue: #8bb8e8;--tb-blue-tint: #eaf2fb;--tb-blue-ink: #285a86;--company-innowell: #d42228;--company-innowell-branch: #a4262c;--company-tb: #2f6f9f;--success: #1f8a5b;--success-bg: #e7f4ee;--warning: #c77700;--warning-ink: #8a4f00;--warning-bg: #fbf1e0;--danger: #c0392b;--danger-bg: #fbe9e7;--info: #2f6f9f;--info-bg: #e8f1f8;--viz-1: #2f6f9f;--viz-2: #1d9e75;--viz-3: #c77700;--viz-4: #6c5ce7;--viz-5: #8a8782;--stage-1: #5896c0;--stage-2: #4b84ad;--stage-3: var(--viz-1);--stage-4: #1b4d75;--stage-5: #21998a;--stage-6: var(--teal);--stage-7: #075f57;--stage-8: #33a06a;--stage-9: var(--success);--stage-10: #135f3e;--stage-none: #9aa7b3;--blue: var(--info);--green: var(--success);--teal: #087f75;--gold: var(--warning);--red: var(--danger);--slate: #3a4658;--shadow-1: 0 1px 12px 0 rgba(62, 76, 102, .06);--shadow-2: 0 2px 20px 0 rgba(62, 76, 102, .08);--shadow-8: 0 8px 28px 0 rgba(62, 76, 102, .12);--shadow: var(--shadow-1);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-05: 2px;--space-15: 6px;--space-25: 10px;--space-6: 32px;--fs-1: .72rem;--fs-2: .82rem;--fs-3: .95rem;--fs-4: 1.1rem;--fs-5: 1.4rem;--fs-6: 1.85rem;--fs-7: 2.4rem;--fs-8: 3.1rem;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--fw-extrabold: 800;--fw-black: 850;--space-7: 40px;--space-8: 48px;--space-10: 64px;--space-12: 80px;--motion-fast: .15s;--mesh-coral: #ff7a66;--mesh-pink: #f06bb3;--mesh-purple: #7c5ce7;--mesh-blue: #3b5bdb;--mesh-cyan: #3ec9d6;--chip-red-bg: #fdeeee;--chip-red-ink: #b01d22;--chip-purple-bg: #efeafd;--chip-purple-ink: #5b45c9;--chip-blue-bg: #e8f1f8;--chip-blue-ink: #2f6f9f;--chip-teal-bg: #e2f7f5;--chip-teal-ink: #0f766e;--chip-amber-bg: #fbf1e0;--chip-amber-ink: #975a00;--chip-pink-bg: #fdeaf4;--chip-pink-ink: #b02f74;--radius-xl: 16px;--shadow-card: 0 1px 2px rgba(46, 58, 89, .06), 0 8px 28px rgba(46, 58, 89, .09);--shadow-float: 0 2px 6px rgba(46, 58, 89, .07), 0 16px 44px rgba(46, 58, 89, .16);--panel-border: rgba(46, 58, 89, .09);font-family:Open Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Apple SD Gothic Neo,Malgun Gothic,Arial,sans-serif}*{box-sizing:border-box}.shell-loading-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}html{min-height:100%;background:var(--canvas)}body{min-height:100%;margin:0;background:radial-gradient(92vw 108vh at -6% -12%,color-mix(in srgb,var(--mesh-coral) 14%,transparent),transparent 72%),radial-gradient(82vw 100vh at 106% -10%,color-mix(in srgb,var(--mesh-purple) 11%,transparent),transparent 68%),radial-gradient(88vw 112vh at 108% 108%,color-mix(in srgb,var(--mesh-cyan) 21%,transparent),transparent 72%),radial-gradient(75vw 96vh at -8% 110%,color-mix(in srgb,var(--mesh-blue) 12%,transparent),transparent 68%),radial-gradient(58vw 114vh at 104% 44%,color-mix(in srgb,var(--mesh-pink) 10%,transparent),transparent 64%),#fff;background-attachment:fixed;color:var(--text);font-size:16px;line-height:1.45}button,input,select{font:inherit}.app-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.drawer{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;background:#ffffffdb;border-right:1px solid var(--border);padding:14px 12px}.drawer-brand{display:flex;align-items:center;gap:10px;padding:6px 8px 16px;border-bottom:1px solid var(--border);margin-bottom:12px}.drawer .brand-title{color:var(--text)}.drawer .brand-subtitle{color:var(--muted)}.brand-block-ui{display:flex;align-items:center;gap:12px;min-width:0}.brand-block-ui.is-compact{gap:10px}.brand-mark-img{display:block;width:42px;height:42px;border-radius:10px;object-fit:cover;flex-shrink:0;box-shadow:0 6px 14px -4px #d4222873}.brand-block-ui.is-compact .brand-mark-img{width:34px;height:34px;border-radius:8px;box-shadow:0 4px 10px -3px #d4222866}.brand-text{min-width:0;line-height:1.2}.brand-block-ui .brand-title{font-weight:800;font-size:1.08rem;letter-spacing:-.02em;color:var(--text)}.brand-block-ui.is-compact .brand-title{font-size:1rem}.brand-block-ui .brand-subtitle{margin-top:3px;font-size:.75rem;color:var(--muted)}.login-brand-hero{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;padding:0 0 6px;text-align:center}.login-brand-logo-panel{display:flex;align-items:center;justify-content:center;width:calc(100% + 56px);margin:0 -28px 2px;padding:28px 28px 24px;background:linear-gradient(135deg,#e23b40 0%,var(--brand) 48%,var(--brand-hover) 100%);box-shadow:inset 0 -1px #0000000f}.login-brand-logo{display:block;width:min(100%,320px);height:auto;max-height:64px;object-fit:contain;object-position:center}.login-brand-copy{display:flex;flex-direction:column;align-items:center;gap:4px;padding-top:2px}.login-brand-name{font-weight:800;font-size:1.35rem;letter-spacing:-.03em;color:var(--text);line-height:1.15}.login-brand-tagline{font-size:.8rem;color:var(--muted);letter-spacing:.01em}.drawer-nav{display:grid;gap:4px;flex:1;align-content:start;min-height:0;overflow-y:auto}.drawer-nav button{display:flex;align-items:center;gap:12px;width:100%;border:0;border-left:3px solid transparent;border-radius:8px;background:transparent;color:var(--slate);padding:11px 12px;font-weight:600;font-size:.92rem;text-align:left;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.drawer-nav button .nav-ico{display:inline-flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;border-radius:10px;background:var(--chip-blue-bg);color:var(--chip-blue-ink);transition:background .15s,color .15s,box-shadow .15s}.drawer-nav button:nth-of-type(6n+1) .nav-ico{background:var(--chip-blue-bg);color:var(--chip-blue-ink)}.drawer-nav button:nth-of-type(6n+2) .nav-ico{background:var(--chip-purple-bg);color:var(--chip-purple-ink)}.drawer-nav button:nth-of-type(6n+3) .nav-ico{background:var(--chip-teal-bg);color:var(--chip-teal-ink)}.drawer-nav button:nth-of-type(6n+4) .nav-ico{background:var(--chip-amber-bg);color:var(--chip-amber-ink)}.drawer-nav button:nth-of-type(6n+5) .nav-ico{background:var(--chip-pink-bg);color:var(--chip-pink-ink)}.drawer-nav button:nth-of-type(6n+6) .nav-ico{background:var(--chip-red-bg);color:var(--chip-red-ink)}.drawer-group-label{margin-top:var(--space-4);padding:0 12px;font-size:12px;line-height:1.4;font-weight:600;letter-spacing:.04em;color:var(--text-tertiary, #8a8782)}.drawer-group-label:first-child{margin-top:0}.drawer-nav button:hover{background:#2e3a590d;color:var(--text)}.drawer-nav button:hover .nav-ico{box-shadow:0 2px 8px -2px #2e3a5947}.drawer-nav button.active{background:var(--brand-tint);color:var(--brand-hover);border-left-color:var(--brand);border-radius:0 8px 8px 0}.drawer-nav button.active .nav-ico,.drawer-nav button.active:hover .nav-ico{background:var(--brand);color:#fff;box-shadow:0 4px 12px -4px #d422288c}.drawer-foot{display:grid;gap:12px;padding-top:12px;border-top:1px solid var(--border)}.drawer-foot .primary-button{width:100%}.drawer-user{display:flex;align-items:center;gap:10px}.drawer-user .avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:999px;background:var(--brand-tint);color:var(--brand-hover);font-weight:700;font-size:.82rem;flex:none}.drawer-user-meta{min-width:0}.drawer-user .u-name{font-size:.86rem;font-weight:600;color:var(--text)}.drawer-user .u-sub{font-size:.74rem;color:var(--muted)}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4)}.stat-card{display:grid;gap:var(--space-2);background:var(--surface);border:1px solid var(--panel-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:var(--space-5);min-width:0}.stat-head{display:flex;align-items:center;gap:10px;min-width:0}.stat-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;border-radius:10px;background:var(--chip-blue-bg);color:var(--chip-blue-ink)}.stat-icon svg{width:17px;height:17px}.stat-icon.tone-red{background:var(--chip-red-bg);color:var(--chip-red-ink)}.stat-icon.tone-purple{background:var(--chip-purple-bg);color:var(--chip-purple-ink)}.stat-icon.tone-blue{background:var(--chip-blue-bg);color:var(--chip-blue-ink)}.stat-icon.tone-teal{background:var(--chip-teal-bg);color:var(--chip-teal-ink)}.stat-icon.tone-amber{background:var(--chip-amber-bg);color:var(--chip-amber-ink)}.stat-icon.tone-pink{background:var(--chip-pink-bg);color:var(--chip-pink-ink)}.stat-label{font-size:var(--fs-4);color:var(--text);font-weight:var(--fw-extrabold);letter-spacing:-.01em;line-height:1.3}@media(max-width:420px){.stat-label{font-size:var(--fs-3)}}.stat-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.stat-value{font-size:var(--fs-7);font-weight:var(--fw-extrabold);letter-spacing:-.02em;line-height:1.1;font-variant-numeric:tabular-nums}.trend-chip{font-size:.74rem;font-weight:600;padding:2px 8px;border-radius:999px;white-space:nowrap}.trend-chip.up{background:#e7f4ee;color:#1f8a5b}.trend-chip.down{background:#fbe9e7;color:#c0392b}.trend-chip em,.mom-chip em{font-style:normal;font-size:.64rem;opacity:.7;font-weight:700;margin-left:1px}.mom-chip{font-size:.7rem;font-weight:600;padding:2px 7px;border-radius:999px;white-space:nowrap;background:#eef1f5;border:1px solid transparent}.mom-chip.up{color:#1f8a5b;border-color:#cfe9dc}.mom-chip.down{color:#c0392b;border-color:#f3d6d1}.stat-note{font-size:.76rem;color:var(--muted)}.sparkline{width:100%;height:40px;display:block}.sparkline-empty{height:40px}.appbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:18px;padding:10px 22px;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow-2)}.appbar-brand{display:flex;align-items:center;gap:10px;flex:none}.top-nav{display:flex;gap:4px;flex:1;flex-wrap:wrap}.top-nav button{border:0;border-radius:8px;background:transparent;color:var(--muted);padding:9px 14px;font-weight:500;cursor:pointer}.top-nav button:hover{background:var(--surface-soft);color:var(--text)}.top-nav button.active{background:transparent;color:var(--brand);font-weight:600;border-radius:0;box-shadow:inset 0 -2px 0 var(--brand)}.topline{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:18px}.topline h1{margin:2px 0 0;font-size:1.5rem}.app-header-dock{position:sticky;top:0;z-index:50;margin-bottom:18px}.app-header{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;background:var(--surface);border:1px solid var(--panel-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:18px 24px}.app-header h1{margin:3px 0 0;font-size:var(--fs-7);font-weight:var(--fw-black);letter-spacing:-.025em}.app-header .eyebrow{font-size:.82rem}.app-header-right{display:flex;align-items:center;gap:12px}.header-dd{position:relative}.icon-btn{position:relative;display:grid;place-items:center;width:40px;height:40px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--muted);cursor:pointer;transition:background .15s,color .15s}.icon-btn:hover,.icon-btn.active{background:var(--brand-tint);color:var(--brand);border-color:var(--brand-tint)}.notif-dot{position:absolute;top:-4px;right:-4px;min-width:16px;height:16px;padding:0 4px;display:grid;place-items:center;background:var(--brand);color:#fff;font-size:.62rem;font-weight:700;border-radius:999px}.user-chip{display:flex;align-items:center;gap:8px;padding:5px 12px 5px 5px;border-radius:999px;border:1px solid var(--border);background:var(--surface);cursor:pointer;font-weight:600;color:var(--text)}.user-chip:hover,.user-chip.active{border-color:var(--brand)}.avatar.sm{width:30px;height:30px;font-size:.72rem;border-radius:999px;background:var(--brand);color:#fff;display:grid;place-items:center;font-weight:700}.user-chip-name{font-size:.86rem}.dd-panel{position:absolute;top:calc(100% + 8px);right:0;width:264px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-8);z-index:100;overflow:hidden;animation:ddIn .15s ease-out}@keyframes ddIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.dd-head{display:flex;justify-content:space-between;align-items:baseline;padding:12px 14px;font-weight:700;border-bottom:1px solid var(--border)}.dd-head span{font-size:.72rem;color:var(--brand);font-weight:600}.dd-item{display:block;width:100%;text-align:left;padding:10px 14px;border:0;border-bottom:1px solid var(--border);background:transparent}.dd-item strong{display:block;font-size:.88rem;color:var(--text)}.dd-item span{font-size:.76rem;color:var(--muted)}.dd-item.btn{cursor:pointer;font-weight:600;color:var(--text)}.dd-item.btn:hover:not(:disabled){background:var(--surface-soft)}.dd-item.btn.danger{color:var(--red)}.dd-item.btn:disabled{color:var(--muted);cursor:default}.dd-foot{padding:9px 14px;font-size:.74rem;color:var(--muted);text-align:center}.input-warn{display:block;font-size:.72rem;color:#b07800;line-height:1.3;margin-top:-2px}.vat-auto-hint{font-weight:400;font-size:.72rem;color:var(--brand)}.vat-auto-check{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:.78rem;color:var(--muted);cursor:pointer}.vat-auto-check input{width:auto;margin:0;accent-color:var(--brand)}.primary-button.sm{padding:6px 13px;font-size:.82rem;box-shadow:none}.pay-sub{font-size:.74rem;color:var(--muted);margin-top:2px}.settle-actions{display:inline-flex;gap:var(--space-1);align-items:center;white-space:nowrap}.settle-actions .primary-button.sm,.settle-actions .text-button{border-radius:var(--radius-sm);padding:5px 11px;font-size:var(--fs-1);line-height:1.5;transition:background var(--motion-fast) ease,border-color var(--motion-fast) ease,color var(--motion-fast) ease}.settle-actions .text-button{border:1px solid var(--border-strong);background:var(--surface);color:var(--muted);font-weight:var(--fw-semibold)}.settle-actions .text-button:hover:not(:disabled){background:var(--surface-soft);border-color:var(--muted);color:var(--text)}.settle-actions .text-button.danger{color:var(--danger)}.settle-actions .text-button.danger:hover:not(:disabled){background:var(--danger-bg);border-color:var(--danger)}.settle-actions .text-button:disabled{opacity:.55;cursor:wait}.settle-actions button:focus-visible{outline:2px solid currentColor;outline-offset:2px}.pay-item-link{cursor:pointer}.pay-item-link:hover{color:var(--accent, #2f6fed);text-decoration:underline;text-underline-offset:2px}.pay-chip{display:inline-block;font-size:.74rem;font-weight:700;padding:2px 10px;border-radius:999px;white-space:nowrap}.pay-chip.paid{background:#e7f4ee;color:#1f8a5b}.pay-chip.due{background:#f1f4f8;color:#6b7a8d}.pay-chip.warn{background:#fdeeee;color:#c0392b}.pay-chip.forecast{background:var(--tb-blue-tint);color:var(--tb-blue-ink)}.fx-chip{display:inline-block;margin-left:6px;font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:6px;border:1px solid transparent;white-space:nowrap}.fx-chip.gain{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.fx-chip.loss{background:#fff7e8;color:#9a5b00;border-color:#f3d7a3}.fx-valuation-note{margin-top:12px;padding:12px 14px;font-size:.84rem;line-height:1.5}.fx-valuation-sub{color:#9a5b00;white-space:nowrap}.fx-preview{display:grid;gap:6px;margin-top:12px;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft)}.fx-preview-row{display:flex;justify-content:space-between;gap:12px;font-size:.84rem;color:var(--muted)}.fx-preview-row strong{color:var(--text);font-variant-numeric:tabular-nums}.fx-preview-row.total strong{font-size:.98rem}.eyebrow{color:var(--teal);font-weight:600;font-size:.74rem;letter-spacing:.04em;text-transform:uppercase}.dash-grid-2{display:grid;grid-template-columns:1.3fr .7fr;gap:14px}.dash-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.panel-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px}.panel-head h3{margin:0;font-size:var(--fs-4);font-weight:var(--fw-bold);letter-spacing:-.01em}.panel-note{color:var(--muted);font-size:.78rem}.donut-chart{display:flex;flex-direction:column;align-items:center;gap:14px}.donut-ring{width:100%;display:flex;justify-content:center}.donut-chart svg{width:100%;max-width:200px;height:auto;flex:none;filter:drop-shadow(0 2px 5px rgba(16,24,40,.07))}.donut-legend{display:grid;grid-template-columns:1fr 1fr;gap:7px 16px;font-size:.96rem;color:#45505d;width:100%}.company-sales-section .donut-legend{grid-template-columns:minmax(0,1fr);max-width:240px}.donut-legend span{display:inline-flex;align-items:center;gap:7px;min-width:0}.donut-legend i{width:10px;height:10px;border-radius:3px;display:inline-block;flex:none}.dl-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-pct{margin-left:auto;font-weight:700;color:#2f3a47;font-variant-numeric:tabular-nums}.rank-list{display:grid;gap:4px}.rank-row{position:relative;display:grid;grid-template-columns:22px minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:6px 10px;border-radius:7px;font-size:.9rem;overflow:hidden}.rank-delta{font-size:.72rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.rank-delta.up{color:#1f8a5b}.rank-delta.down{color:#c0392b}.rank-delta.new{color:var(--text);font-weight:600}.rank-fill{position:absolute;left:0;top:0;bottom:0;border-radius:7px;opacity:.15;z-index:0}.rank-row>:not(.rank-fill){position:relative;z-index:1}.rank-num{font-weight:800;font-size:.82rem;color:#9aa4b2;text-align:center}.rank-row.top3 .rank-num{color:#4c6ef5}.rank-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#2f3a47;font-weight:600}.rank-val{font-weight:700;font-variant-numeric:tabular-nums;color:#45505d}.rank-empty{color:#9aa4b2;font-size:.86rem;padding:8px}.hbar-chart{display:grid;gap:10px}.hbar-row{display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:8px;align-items:center;font-size:.82rem}.hbar-label{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hbar-track{height:10px;border-radius:999px;background:var(--surface-soft);overflow:hidden}.hbar-fill{display:block;height:100%;border-radius:999px}.hbar-val{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.chart-empty{color:var(--muted);font-size:.86rem;padding:16px 4px}.sidebar{position:sticky;top:0;height:100vh;padding:22px 16px;background:#1f2937;color:#fff}.brand-block{display:flex;gap:12px;align-items:center;padding:8px 8px 24px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:linear-gradient(135deg,#e23b40,#b01d22);color:#fff;font-weight:800;box-shadow:0 6px 14px -4px #d4222880}.brand-title{font-weight:800;font-size:1.04rem}.brand-subtitle{color:var(--muted);font-size:.78rem;margin-top:2px}.side-nav{display:grid;gap:8px}.side-nav button{width:100%;border:1px solid transparent;border-radius:8px;background:transparent;color:#e5e7eb;padding:12px;text-align:left;cursor:pointer}.side-nav button span{display:block;font-weight:760}.side-nav button small{display:block;margin-top:4px;color:#9ca3af;line-height:1.3}.side-nav button.active,.side-nav button:hover{background:#ffffff12;border-color:#ffffff24}.content{min-width:0;padding:24px 28px 48px}.topbar{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:20px}.topbar h1{margin:0;font-size:1.6rem;letter-spacing:0}.topbar p{margin:7px 0 0;color:var(--muted);font-size:.92rem}.topbar-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.meta-pill{border:1px solid var(--border);border-radius:999px;padding:8px 11px;background:var(--surface);color:var(--muted);font-size:.84rem;white-space:nowrap}.meta-pill-action{font:inherit;font-size:.84rem;cursor:pointer;transition:background var(--motion-fast) ease,color var(--motion-fast) ease,border-color var(--motion-fast) ease}.meta-pill-action:hover:not(:disabled){border-color:var(--brand);color:var(--brand-hover);background:var(--brand-tint)}.meta-pill-action:disabled{cursor:progress;opacity:.7}.primary-button{border:0;border-radius:8px;padding:10px 20px;background:linear-gradient(180deg,var(--brand),var(--brand-hover));color:#fff;font-weight:var(--fw-bold);box-shadow:0 6px 16px -5px #d4222880;cursor:pointer;transition:background .15s,box-shadow .15s}.primary-button:hover{background:linear-gradient(180deg,var(--brand-hover),var(--brand-active));box-shadow:0 8px 20px -6px #d4222873}.primary-button:disabled{opacity:.6;cursor:wait}.secondary-button,.ghost-button,.text-button{border-radius:8px;cursor:pointer}.secondary-button{border:1px solid var(--brand);background:var(--surface);color:var(--brand);padding:9px 17px;font-weight:var(--fw-bold)}.secondary-button:hover{background:var(--brand-tint)}.ghost-button{border:1px solid var(--border);background:var(--surface);color:#1f2937;padding:9px 13px;font-weight:720}.ghost-button:disabled,.secondary-button:disabled{opacity:.55;cursor:wait}.text-button{border:0;background:transparent;color:var(--brand);padding:6px 2px;font-weight:500}.text-button.danger{color:var(--red)}.text-button.inline{justify-self:start;padding:0;color:var(--green);font-size:.86rem}.page{display:grid;gap:var(--space-5)}.page-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;background:#ffffffb8;border:1px solid var(--panel-border);border-radius:var(--radius-xl);box-shadow:0 1px 2px #2e3a590d;padding:16px 20px}.section-heading{padding-bottom:var(--space-2);border-bottom:2px solid var(--border)}.page-toolbar .section-heading{padding-bottom:0;border-bottom:0}.section-heading h2{margin:0;font-size:var(--fs-6);font-weight:var(--fw-extrabold);letter-spacing:-.02em;line-height:1.15}.section-heading p{margin-top:var(--space-2);margin-bottom:0;color:var(--muted);font-size:var(--fs-2);line-height:1.5}.metric-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-4)}.metric-grid.compact{grid-template-columns:repeat(2,minmax(220px,1fr))}.metric-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:720px){.metric-grid.cols-3,.metric-grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}.center-cell{text-align:center}.company-cell{text-align:center;font-weight:600}.keep-phrase,.keep-identifier{white-space:nowrap;word-break:keep-all;overflow-wrap:normal}.keep-identifier{display:inline-block}.keep-date,.keep-caption-parenthetical{display:inline-block;white-space:nowrap;word-break:normal;overflow-wrap:normal}.keep-caption-parenthetical{margin-left:.12em}.keep-date{font-variant-numeric:tabular-nums}.keep-date.date-distant{color:var(--muted);opacity:.75}.date-cell{min-width:106px}.identifier-company-cell{min-width:84px}.identifier-customer-cell{min-width:96px}.company-cell.co-iw{background:#fdecec;color:#a4262c}.company-cell.co-tb{background:#e9f1fb;color:#285a86}.flow-total-badge{margin-left:auto;display:inline-flex;align-items:baseline;gap:4px;padding:4px 12px;border-radius:999px;background:var(--brand-tint, #fbf4f4);color:var(--brand, #d42228)}.flow-total-badge strong{font-size:var(--fs-5);font-weight:800;line-height:1}.flow-total-badge em{font-style:normal;font-size:.78rem;font-weight:600}.chart-tip{position:fixed;transform:translate(-50%,calc(-100% - 8px));z-index:90;padding:6px 11px;background:#1e293bf2;color:#fff;font-size:.78rem;font-weight:600;border-radius:8px;white-space:nowrap;pointer-events:none;box-shadow:0 6px 18px #0003}.toast-notify{position:fixed;top:18px;left:50%;z-index:200;max-width:90vw;padding:11px 22px;border-radius:999px;background:#1e293bf0;color:#fff;font-size:.88rem;font-weight:600;box-shadow:0 10px 28px #0000003d;pointer-events:none;animation:toastInOut 3s ease forwards}@keyframes toastInOut{0%{opacity:0;transform:translate(-50%,-14px)}12%{opacity:1;transform:translate(-50%)}85%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-14px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-delay:0s!important;transition-duration:.01ms!important}.toast-notify{animation:none!important}}.metric-card{background:var(--surface);border:1px solid var(--panel-border);border-radius:var(--radius-xl);padding:var(--space-4);min-width:0;box-shadow:var(--shadow-card)}.metric-card:before{content:"";display:block;width:44px;height:4px;border-radius:99px;background:var(--slate);margin-bottom:12px}.metric-blue:before{background:var(--blue)}.metric-green:before{background:var(--green)}.metric-gold:before{background:var(--gold)}.metric-red:before{background:var(--red)}.metric-label{color:var(--text);font-size:var(--fs-4);font-weight:var(--fw-extrabold);letter-spacing:-.01em;line-height:1.3}.metric-value{margin-top:var(--space-2);font-size:var(--fs-6);font-weight:var(--fw-extrabold);letter-spacing:-.01em;line-height:1.15;font-variant-numeric:tabular-nums}@media(max-width:420px){.metric-value{font-size:var(--fs-5)}.metric-label{font-size:var(--fs-3)}}.metric-note{margin-top:var(--space-1);color:var(--muted);font-size:var(--fs-2);line-height:1.45}.chart-panel,.table-panel,.issue-card,.product-card{background:var(--surface);border:1px solid var(--panel-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card)}.chart-panel{padding:var(--space-5);box-shadow:var(--shadow-card)}.combo-card{display:grid;gap:0;padding:0;align-items:stretch}.combo-card.combo-3{grid-template-columns:1fr 1fr 1fr}.combo-card.combo-2{grid-template-columns:1fr 1fr}.combo-section{padding:14px 16px;border-right:1px solid var(--border);min-width:0}.combo-card .combo-section:last-child{border-right:none}.combo-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px}.combo-head h4{margin:0;font-size:var(--fs-3);font-weight:var(--fw-extrabold);color:#2f3a47}.combo-head span{font-size:.76rem;color:var(--muted);white-space:nowrap}@media(max-width:900px){.combo-card.combo-3,.combo-card.combo-2{grid-template-columns:1fr}.combo-section{border-right:none;border-bottom:1px solid var(--border)}.combo-card .combo-section:last-child{border-bottom:none}}.customer-analysis-panel{display:grid;gap:var(--space-4);padding:var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow)}.customer-analysis-head,.customer-focus-head,.customer-change-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.customer-analysis-head h3,.customer-change-head h4{margin:0;color:var(--text)}.customer-analysis-head h3{font-size:var(--fs-4);font-weight:var(--fw-extrabold)}.customer-change-head h4{font-size:var(--fs-3);font-weight:var(--fw-extrabold)}.customer-analysis-head p{margin:var(--space-1) 0 0;color:var(--muted);font-size:.78rem;text-wrap:pretty}.customer-analysis-head>span{flex:none;color:var(--muted);font-size:.76rem}.customer-button-rail{display:flex;flex-wrap:wrap;gap:var(--space-2);max-height:160px;overflow-y:auto;padding:var(--space-1);scrollbar-gutter:stable}.customer-analysis-button,.customer-sort-buttons button{min-height:40px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);font:inherit;font-size:.78rem;font-weight:600;cursor:pointer;transition:background var(--motion-fast) ease-out,border-color var(--motion-fast) ease-out,color var(--motion-fast) ease-out}.customer-analysis-button{padding:var(--space-2) var(--space-3)}.customer-analysis-button:hover,.customer-sort-buttons button:hover{background:var(--surface-soft);color:var(--text)}.customer-analysis-button.active{border-color:var(--brand);background:var(--brand-tint);color:var(--brand-active)}.customer-analysis-button:focus-visible,.customer-sort-buttons button:focus-visible,.customer-change-table button:focus-visible{outline:2px solid color-mix(in srgb,var(--brand) 45%,transparent);outline-offset:2px}.customer-analysis-focus{display:grid;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-soft)}.customer-focus-head>div{display:grid;gap:var(--space-1)}.customer-focus-head strong{font-size:var(--fs-5);font-weight:var(--fw-extrabold);color:var(--text)}.customer-focus-head>div span{color:var(--muted);font-size:.76rem}.customer-growth{color:color-mix(in srgb,var(--success) 82%,var(--text));font-size:.76rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.customer-growth.down{color:var(--danger)}.customer-analysis-main{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);gap:var(--space-5);align-items:stretch}.customer-year-chart{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);min-height:176px;padding-top:var(--space-2)}.customer-year-column{display:grid;grid-template-rows:24px 128px 24px;gap:var(--space-1);min-width:0;text-align:center}.customer-year-value{overflow:hidden;color:var(--text);font-size:.78rem;font-weight:var(--fw-extrabold);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.customer-year-track{position:relative;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:color-mix(in srgb,var(--border) 55%,transparent)}.customer-year-track i{display:block;width:68%;min-height:var(--space-1);border-radius:var(--radius-sm) var(--radius-sm) 0 0;opacity:.9}.customer-year-column>strong{color:var(--muted);font-size:.72rem;font-weight:600;white-space:nowrap}.customer-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.customer-metric{display:grid;align-content:center;gap:var(--space-1);min-width:0;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}.customer-metric>span{color:var(--muted);font-size:.72rem}.customer-metric>strong{color:var(--text);font-size:var(--fs-4);font-weight:var(--fw-extrabold);font-variant-numeric:tabular-nums}.customer-metric>small{color:var(--muted);font-size:.68rem;text-wrap:pretty}.customer-sort-buttons{display:flex;flex-wrap:wrap;gap:var(--space-1)}.customer-sort-buttons button{padding:var(--space-1) var(--space-2)}.customer-sort-buttons button.active{border-color:var(--info);background:var(--info-bg);color:var(--info)}.customer-change-table-scroll{max-height:360px;overflow:auto;border:1px solid var(--border);border-radius:var(--radius-sm)}.customer-change-table{width:100%;min-width:720px;border-collapse:collapse;font-size:.78rem}.customer-change-table th,.customer-change-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.customer-change-table thead th{position:sticky;top:0;z-index:1;background:var(--surface-soft);color:var(--muted);font-size:.7rem}.customer-change-table th:first-child,.customer-change-table td:nth-child(2){text-align:left}.customer-change-table tbody tr:last-child th,.customer-change-table tbody tr:last-child td{border-bottom:none}.customer-change-table tbody tr.selected{background:var(--brand-tint)}.customer-change-table button{display:inline-flex;align-items:center;gap:var(--space-1);min-height:40px;padding:0;border:0;background:transparent;color:var(--text);font:inherit;font-weight:700;cursor:pointer}.customer-selected-mark{color:var(--brand);font-weight:800}.customer-change-table .outstanding{color:var(--danger);font-weight:700}.customer-analysis-empty{margin:0;color:var(--muted);font-size:.86rem}@media(max-width:900px){.customer-analysis-main{grid-template-columns:1fr}.customer-year-chart{max-width:480px;width:100%;margin:0 auto}}@media(max-width:560px){.customer-analysis-head,.customer-focus-head,.customer-change-head{align-items:stretch;flex-direction:column}.customer-button-rail{max-height:192px}.customer-analysis-button{flex:1 1 calc(50% - var(--space-2))}.customer-analysis-focus{padding:var(--space-3)}.customer-analysis-main{gap:var(--space-3)}.customer-metric{padding:var(--space-2)}.customer-metric>strong{font-size:.92rem}.customer-change-table-scroll{max-height:none;overflow:visible}.customer-change-table{min-width:0;table-layout:fixed;font-size:.72rem}.customer-change-table thead th{position:static}.customer-change-table th,.customer-change-table td{overflow:hidden;padding:var(--space-2) var(--space-1);text-overflow:ellipsis}.customer-change-table th:nth-child(2),.customer-change-table td:nth-child(2),.customer-change-table th:nth-child(4),.customer-change-table td:nth-child(4){display:none}.customer-change-table th:first-child{width:34%;overflow-wrap:anywhere;white-space:normal}.customer-change-table th:nth-child(3),.customer-change-table td:nth-child(3){width:24%}.customer-change-table th:nth-child(5),.customer-change-table td:nth-child(5){width:20%}.customer-change-table th:nth-child(6),.customer-change-table td:nth-child(6){width:22%}.customer-change-table button{text-align:left}}.chart-legend{display:flex;gap:10px;justify-content:flex-end;margin-bottom:12px}.legend-item{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:.84rem}.legend-item:before{content:"";width:10px;height:10px;border-radius:3px;background:var(--blue)}.legend-gold:before{background:var(--gold)}.bar-chart{display:grid;grid-template-columns:repeat(12,minmax(48px,1fr));gap:8px;align-items:end;min-height:235px;overflow-x:auto}.bar-month{display:grid;gap:8px;align-content:end;min-width:48px}.bar-stack{display:flex;align-items:end;justify-content:center;gap:4px;height:190px;border-bottom:1px solid var(--border)}.bar-col{display:flex;flex-direction:column-reverse;justify-content:flex-start;width:18px;height:190px}.bar-seg{position:relative;width:100%;min-height:0;flex:0 0 auto}.bar-seg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(180deg,#ffffff4d,#ffffff0a 58%,#1820300f);pointer-events:none}.bar-col .bar-seg:last-child{border-radius:6px 6px 0 0}.bar-col.ghost{width:12px}.bar-col.ghost .bar-seg{opacity:.35}.legend-item.plain:before{content:none}.legend-swatch{width:10px;height:10px;border-radius:3px;flex:0 0 auto}.legend-swatch.ghost{opacity:.35}.bar-label{text-align:center;color:var(--muted);font-size:.76rem}.table-panel{overflow:auto}.table-panel.wide{max-height:68vh}table{width:100%;border-collapse:collapse;min-width:820px}th,td{border-bottom:1px solid #eef1f5;padding:10px 13px;text-align:left;vertical-align:middle;font-size:.9rem}th{position:sticky;top:0;z-index:1;background:#f4f6f9;color:#5b6573;font-weight:700;font-size:.8rem;letter-spacing:.01em;white-space:nowrap;border-bottom:2px solid #d7dde6}td{background:var(--surface);transition:background .12s ease;color:#303a47}tbody tr:nth-child(2n) td{background:#fafbfd}tbody tr:hover td{background:#eef4fb}tbody tr.total-row td,tbody tr.sum-row td{border-top:2px solid #d7dde6;font-weight:700}.stat-card,.metric-card,.closed-group,.deal-row,.closed-row,.money-cell{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.deal-row:hover,.closed-row:hover{transform:translateY(-2px);box-shadow:var(--shadow-2);border-color:var(--brand-tint)}.closed-group:hover{box-shadow:var(--shadow-2)}.icon-btn:hover,.user-chip:hover{box-shadow:var(--shadow-1)}.table-panel::-webkit-scrollbar,.work-modal-body::-webkit-scrollbar,.drawer-nav::-webkit-scrollbar{width:9px;height:9px}.table-panel::-webkit-scrollbar-thumb,.work-modal-body::-webkit-scrollbar-thumb,.drawer-nav::-webkit-scrollbar-thumb{background:#cdd6e0;border-radius:999px}.table-panel::-webkit-scrollbar-thumb:hover,.work-modal-body::-webkit-scrollbar-thumb:hover,.drawer-nav::-webkit-scrollbar-thumb:hover{background:#aab6c4}.number{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.strong{font-weight:800}.wide-cell{min-width:190px;max-width:360px}.danger-text{color:var(--red);font-weight:780}.filter-row{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap}.btn-icon{width:15px;height:15px;vertical-align:-2px;margin-right:6px}.pay-chip .btn-icon{width:12px;height:12px;margin-right:0;margin-left:4px}.wcard-count .btn-icon{width:11px;height:11px;margin-right:3px;vertical-align:-1px}.progress-author .btn-icon{width:12px;height:12px;margin-right:4px}.ar-plan-editbtn .btn-icon{width:13px;height:13px;margin-right:0;display:block}.export-control{display:flex;flex-direction:column;align-items:flex-start;gap:3px}.export-note{margin:0;font-size:var(--fs-1);color:var(--muted);line-height:1.3}.week-nav{display:inline-flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.week-nav-arrow,.week-nav-today{min-height:40px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit;cursor:pointer}.week-nav-arrow{min-width:40px;padding:0;font-size:var(--fs-4);line-height:1}.week-nav-arrow:hover:not(:disabled),.week-nav-today:hover{border-color:var(--brand);background:var(--brand-tint);color:var(--brand)}.week-nav-arrow:disabled{color:var(--muted);opacity:.5;cursor:not-allowed}.week-nav-label{min-width:152px;text-align:center;font-size:var(--fs-2);font-weight:var(--fw-bold);color:var(--text)}.week-nav-today{padding:0 var(--space-3);font-size:var(--fs-1);color:var(--muted)}.seg-field{display:grid;gap:6px;color:var(--muted);font-size:.88rem}.seg-label{font-weight:600}.company-select-body{display:inline-flex;align-items:center;gap:8px;height:42px}.company-all{height:34px;padding:0 16px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface);color:var(--muted);font-size:.85rem;font-weight:600;cursor:pointer;transition:background .16s ease,color .16s ease,border-color .16s ease}.company-all.active{border-color:var(--ink);background:var(--ink);color:#fff}.company-toggle{position:relative;display:inline-grid;grid-template-columns:1fr 1fr;height:34px;background:#eef1f5;border:1px solid var(--border);border-radius:999px;overflow:hidden;transition:opacity .18s ease}.company-toggle.is-off{opacity:1}.company-toggle.is-off .ct-opt{color:var(--text)}.ct-knob{position:absolute;top:0;bottom:0;left:0;width:50%;border-radius:999px;opacity:0;transform:translate(0);transition:transform var(--motion-fast) cubic-bezier(.4,0,.2,1),opacity var(--motion-fast) ease}.company-toggle.on-iw .ct-knob{opacity:1;transform:translate(0);background:#f6d2d2}.company-toggle.on-tb .ct-knob{opacity:1;transform:translate(100%);background:#cfe0fb}.ct-opt{position:relative;z-index:1;border:none;background:transparent;padding:0 16px;font-size:.85rem;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap;transition:color .16s ease}.company-toggle.on-iw .ct-opt.active{color:#a4262c}.company-toggle.on-tb .ct-opt.active{color:#1b4f9c}.app-header.company-tint-iw,.app-header.company-tint-tb{transition:background .3s ease,border-color .3s ease}.app-header.company-tint-iw{background:linear-gradient(180deg,#d422281a,#d4222808),var(--surface);border-color:#d4222852}.app-header.company-tint-tb{background:linear-gradient(180deg,#2563eb1a,#2563eb08),var(--surface);border-color:#2563eb52}.segmented{display:inline-flex;background:#eef1f5;border:1px solid var(--border);border-radius:999px;padding:3px;gap:2px}.seg-item{border:none;background:transparent;color:#5b6573;font-size:.86rem;font-weight:600;padding:5px 14px;border-radius:999px;cursor:pointer;transition:background .15s,color .15s,box-shadow .15s;white-space:nowrap}.seg-item:hover{color:#2f3a47}.seg-item.active{background:#fff;color:var(--accent, #2f6db0);box-shadow:0 1px 3px #1018281f}.goal-empty{color:#9aa4b2;font-size:.95rem;padding:8px 2px}.goal-gauge{display:grid;gap:10px}.goal-top{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap}.goal-pct{display:flex;align-items:baseline;gap:6px}.goal-pct-num{font-size:var(--fs-7);font-weight:var(--fw-black);letter-spacing:-.02em;color:var(--accent, #2f6db0);font-variant-numeric:tabular-nums}.goal-pct-label{font-size:.9rem;color:#6b7480}.goal-amounts{text-align:right;font-size:.92rem}.goal-amounts b{font-variant-numeric:tabular-nums}.goal-muted{color:var(--muted);font-size:.84rem}.goal-bar{position:relative;height:16px;background:#edf1f5;border-radius:999px;overflow:visible}.goal-fill{height:100%;background:linear-gradient(90deg,#4a8fd0,#2f6db0);border-radius:999px;transition:width .4s ease}.goal-proj{position:absolute;top:-3px;width:3px;height:22px;background:#b03b3b;border-radius:2px;transform:translate(-50%)}.goal-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.88rem;color:#56606c}.goal-foot b{font-variant-numeric:tabular-nums}.goal-tag{font-size:.78rem;font-weight:700;padding:2px 9px;border-radius:999px}.goal-tag.good{background:#e8f6ee;color:#1f7a44}.goal-tag.warn{background:#fef3e7;color:#9a6a1e}.goal-tag.bad{background:#fdeaea;color:#b03b3b}.monthly-table-scroll{width:100%;overflow-x:auto}.table-panel th,.table-panel td{border-right:1px solid #eef1f5}.table-panel th:last-child,.table-panel td:last-child{border-right:none}.monthly-table-x th,.monthly-table-x td{border-right:1px solid #eef1f5}.monthly-table-x th:last-child,.monthly-table-x td:last-child{border-right:none}.monthly-flow-wrap{position:relative}.monthly-hover-table{max-height:0;opacity:0;overflow:hidden;transition:max-height .35s ease,opacity .28s ease,margin-top .3s ease}.monthly-flow-wrap:hover .monthly-hover-table,.monthly-hover-table.open{max-height:320px;opacity:1;margin-top:12px;overflow-x:auto;overflow-y:hidden}.monthly-trend{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:.82rem;color:#56606c;flex-wrap:wrap}.mt-item{font-weight:600}.mt-sep{color:#c4ccd6}.mt-hint{margin-left:auto;font-size:.74rem;color:var(--muted)}.mf-options{display:inline-flex;gap:6px}.mf-opt{border:1px solid var(--border);background:#fff;color:#56606c;border-radius:999px;padding:3px 12px;font-size:.76rem;font-weight:600;cursor:pointer;transition:all .12s ease}.mf-opt:hover{border-color:#b9c4d2}.mf-opt.on{background:#2f3b4a;border-color:#2f3b4a;color:#fff}.pct-tag{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.pct-tag.up{color:#1f8a5b}.pct-tag.down{color:#c0392b}.pct-flat{color:#b6bdc7}.monthly-table-x .pct-row th{color:var(--muted);font-weight:600}.monthly-table-x .pct-row td{font-size:.72rem}.monthly-hover-table .monthly-table-x{font-size:.74rem}.monthly-hover-table .monthly-table-x th,.monthly-hover-table .monthly-table-x td{padding:4px 6px}.monthly-table-x{width:100%;border-collapse:collapse;font-size:.84rem;text-align:center}.monthly-table-x th,.monthly-table-x td{padding:6px 8px;border-bottom:1px solid #eef1f4;text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap}.monthly-table-x thead th{color:var(--muted);font-weight:600;background:#f7f9fc}.monthly-table-x tbody th{color:#56606c;font-weight:700;background:#fafbfc;position:sticky;left:0}.monthly-table-x .total-col{font-weight:700;color:#2f3a47;background:#f4f6f9}.monthly-table-x .forecast-row td,.monthly-table-x .forecast-row th{color:#9a6a1e}.monthly-table-x .sum-row td,.monthly-table-x .sum-row th{border-top:2px solid #dde3ea;font-weight:700;color:#2f3a47}.control{display:grid;gap:6px;color:var(--muted);font-size:.88rem}.control select,.control input,.control textarea{height:42px;min-width:132px;border:1px solid var(--border-strong);border-radius:8px;padding:0 10px;background:var(--surface);color:var(--text)}.control select:focus,.control input:focus,.control textarea:focus{border-color:var(--brand);box-shadow:0 0 0 2px #d4222833}.control textarea{height:auto;padding:9px 10px;line-height:1.45}.search-control input{min-width:230px}.segmented{display:flex;gap:8px;flex-wrap:wrap}.segmented button{border:1px solid var(--border);border-radius:8px;padding:9px 13px;background:var(--surface);color:var(--muted);cursor:pointer}.segmented button.active{border-color:var(--brand);color:var(--brand);background:var(--brand-tint);font-weight:600}.sales-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,660px),1fr));gap:16px}.sales-actions{display:flex;align-items:flex-end;justify-content:flex-end;gap:8px;flex-wrap:wrap}.sales-workspace{display:block}.entry-panel,.sales-side-panel{border:1px solid var(--border);border-radius:8px;background:var(--surface)}.entry-panel{padding:14px}.entry-panel-head,.side-panel-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.side-panel-head{display:grid;align-items:start}.side-panel-head span{color:var(--muted);font-size:.78rem}.side-panel-head strong{line-height:1.35;overflow-wrap:anywhere}.image-upload-box{display:grid;gap:9px;margin-bottom:14px;padding:12px;border:1px solid #d6e1d9;border-radius:8px;background:#f5fbf7}.image-dropzone{border:2px dashed var(--border);border-radius:12px;background:#fafbfc;transition:border-color .15s ease,background .15s ease;margin-top:2px}.image-dropzone.drag{border-color:var(--brand, #d42228);background:var(--brand-tint, #fbf4f4)}.image-dropzone input[type=file]{display:none}.image-dropzone-inner{display:flex;flex-direction:column;align-items:center;gap:4px;padding:22px 14px;cursor:pointer;text-align:center}.image-dropzone-inner strong{font-size:.95rem;color:var(--brand, #d42228)}.image-dropzone-inner span{font-size:.8rem;color:var(--muted)}.image-dropzone-inner b{color:var(--ink)}.image-upload-box>div:first-child{display:grid;gap:3px}.image-upload-box strong{color:#173b34;font-size:.9rem}.image-upload-box span{color:var(--muted);font-size:.78rem}.selected-file-name{padding:7px 8px;border-radius:6px;background:#fff;color:#0f766e;font-size:.78rem;overflow-wrap:anywhere}.registered-image-list{display:grid;gap:7px;padding-top:8px;border-top:1px solid #d6e1d9}.registered-image-row{display:grid;grid-template-columns:54px minmax(0,1fr);gap:8px;align-items:center}.registered-image-row>button{display:block;width:54px;height:42px;overflow:hidden;border:1px solid var(--border);border-radius:6px;background:#fff;padding:0;cursor:pointer}.registered-image-row img{width:100%;height:100%;object-fit:cover;display:block}.registered-image-row div{min-width:0;display:flex;justify-content:space-between;align-items:center;gap:8px}.registered-image-row strong{min-width:0;color:#173b34;font-size:.78rem;overflow-wrap:anywhere}.entry-form-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;align-items:end}.entry-form-grid.single{grid-template-columns:1fr}.entry-form-grid.two-column{grid-template-columns:repeat(2,minmax(180px,1fr))}.modal-side-backdrop .side-form .entry-form-grid,.modal-stage.has-side .product-modal .entry-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-modal .product-category-control{grid-column:1 / -1}.wide-control{grid-column:span 2}.memo-control{grid-column:1 / -1}.memo-control textarea{min-height:78px;resize:vertical}.form-actions{display:flex;justify-content:flex-end;margin-top:12px}.check-control{display:flex;align-items:center;gap:8px;min-height:38px;color:#1f2937;font-size:.94rem;font-weight:760}.check-control input{width:17px;height:17px}.check-control.compact{min-height:auto;font-size:.9rem}.sales-side-panel{position:sticky;top:18px;padding:14px}.side-form-actions{display:grid;grid-template-columns:auto 1fr;gap:8px;margin-top:12px}.side-form-actions .side-submit{width:100%}.side-form-actions .side-submit:only-child{grid-column:1 / -1}.side-panel-empty{display:grid;gap:8px;color:var(--muted);line-height:1.5}.side-panel-empty strong{color:#1f2937}.log-toggle-row{display:flex;justify-content:space-between;align-items:center;gap:10px}.log-toggle{padding:6px 12px;font-size:.84rem}.change-log-list{display:grid;gap:8px;max-height:clamp(160px,30vh,320px);margin-top:14px;overflow-y:auto;overscroll-behavior:contain;padding-right:4px;padding-top:12px;scrollbar-gutter:stable;border-top:1px solid var(--border)}.change-log-hint{font-size:.78rem;color:var(--muted);margin-bottom:4px}.change-log-row{display:grid;grid-template-columns:44px minmax(0,1fr);gap:10px;align-items:start;padding:8px 0;border-bottom:1px solid var(--border)}.log-action{font-size:.72rem;font-weight:600;padding:2px 0;border-radius:999px;text-align:center}.log-action.create{color:#1f8a5b}.log-action.update{color:#185fa5}.log-action.delete{color:#c0392b}.change-log-main p{margin:0;font-size:.9rem;color:var(--text);overflow-wrap:anywhere}.change-log-main span{font-size:.74rem;color:var(--muted)}.actuals-panel .actuals-year{margin-top:12px}.actuals-year-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:4px 2px 8px}.actuals-year-head strong{font-size:.92rem}.actuals-year-head span{font-size:.78rem;color:var(--muted)}.actuals-panel tr.has-outstanding td{background:#fef6f5}.actuals-panel tr.is-forecast td{background:#f3f7fd;color:#555}.fc-badge{display:inline-block;margin-left:6px;font-size:.66rem;font-weight:600;color:#185fa5;background:#e3edf8;padding:1px 6px;border-radius:999px;vertical-align:middle}.money-cell.expected .money-value{color:#185fa5}.deal-money-line{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-25);margin-top:var(--space-05);font-size:.85rem;font-weight:500;color:var(--ink)}.deal-money-line .dm-out{color:#c0392b;font-weight:600}.deal-memos{margin-top:var(--space-05);font-size:.74rem;color:#185fa5;line-height:1.45;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deal-recent-memos{display:flex;flex-direction:column;gap:2px;margin-top:var(--space-05);padding-left:var(--space-2);border-left:2px solid var(--border)}.deal-recent-memo{display:flex;align-items:baseline;gap:var(--space-15);font-size:.76rem;line-height:1.45;min-width:0}.deal-recent-memo .drm-text{flex:1 1 auto;min-width:0;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deal-recent-memo .drm-meta{flex:none;color:var(--muted);font-size:.7rem}.deal-quick-memo-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-1);margin-top:var(--space-05);padding:var(--space-1) var(--space-2);border:1px dashed var(--border);border-radius:10px;background:none;color:var(--muted);font-size:.78rem;font-family:inherit;cursor:pointer;width:100%}.deal-quick-memo-btn:hover{color:var(--brand);border-color:var(--brand);background:var(--brand-tint)}.deal-quick-memo-btn .btn-icon{width:13px;height:13px}.deal-quick-memo{display:flex;flex-direction:column;gap:var(--space-1);margin-top:var(--space-05);cursor:default}.deal-quick-memo textarea{resize:none;width:100%;border:1px solid #7facd8;border-radius:10px;padding:var(--space-15) var(--space-2);font:inherit;font-size:13px;line-height:1.45;box-shadow:0 0 0 3px #7facd82e}.deal-quick-memo-actions{display:flex;gap:var(--space-1);justify-content:flex-end}.deal-quick-memo-cancel{border:1px solid var(--border);background:#fff;color:var(--muted);border-radius:10px;padding:var(--space-1) var(--space-2);font-size:12px;font-family:inherit;cursor:pointer}.ledger-memo{font-size:.76rem;color:var(--muted);max-width:180px;white-space:normal;word-break:break-word}.progress-add-form{margin-top:14px;padding-top:14px;border-top:1px dashed var(--border)}.progress-add-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:10px}.progress-add-head strong{font-size:.92rem;color:var(--brand, #d42228)}.progress-add-head span{font-size:.76rem;color:var(--muted)}.image-pop-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;padding:20px}.image-pop{background:#fff;border-radius:14px;padding:18px 20px;width:min(520px,94vw);max-height:86vh;overflow:auto;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;gap:8px}.report-export-actions{display:flex;gap:8px;align-items:center}.overdue-row td{background:#fef6f5}.overdue-badge{display:inline-block;margin-left:6px;font-size:.68rem;font-weight:700;color:#fff;background:#c0392b;padding:1px 7px;border-radius:999px}@media print{.drawer,.no-print,.report-export-actions,.filter-row,.page-toolbar .filter-row{display:none!important}.app-shell{display:block;background:#fff}.app-main,.page{padding:0!important;margin:0}.page-toolbar{background:none;border:0;box-shadow:none;padding:0}body{background:#fff}table{font-size:10px}.table-panel{overflow:visible!important}section,.dash-grid-2,.metric-grid{break-inside:avoid}}.reveal-toggle{margin-top:var(--space-3);padding:var(--space-2) var(--space-4);border:1px dashed var(--brand, #d42228);background:#fff;color:var(--brand, #d42228);border-radius:var(--radius-md);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;align-self:flex-start}.reveal-toggle:hover{background:#fdf2f2}.slide-reveal{animation:slideInDown var(--motion-fast) ease-out}.actuals-panel tr.has-outstanding td.number:last-of-type{color:#c0392b;font-weight:600}.actuals-empty{font-size:.84rem;color:var(--muted);margin:8px 2px 0;line-height:1.5}.progress-step.editing{outline:2px solid var(--brand, #d42228);outline-offset:1px;border-radius:8px}.progress-edit{display:flex;flex-direction:column;gap:10px;padding:13px;background:var(--brand-tint, #fbf4f4);border:1px solid var(--border);border-radius:10px}.progress-edit select,.progress-edit textarea,.progress-edit input{width:100%;padding:7px 9px;border:1px solid var(--border);border-radius:7px;font:inherit;background:#fff;box-sizing:border-box}.progress-edit textarea{resize:vertical}.progress-edit select:focus-visible,.progress-edit textarea:focus-visible,.progress-edit input:focus-visible{outline:2px solid var(--brand, #d42228);outline-offset:1px;border-color:var(--brand, #d42228)}.progress-edit-row{display:grid;grid-template-columns:1fr 1fr .8fr 1.1fr;gap:8px}.progress-date-field{display:flex;flex-direction:column;gap:2px}.progress-date-field>span{font-size:11px;color:var(--text-tertiary, #8a8782)}.progress-date-field>input{width:100%}.progress-edit-actions{display:flex;gap:8px;margin-top:2px}.progress-edit-actions .primary-button,.progress-edit-actions .ghost-button{padding:6px 16px;font-size:.85rem}.sales-view-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3)}.sales-left-controls{display:flex;align-items:center;gap:8px}.sales-view-row .view-right{margin-left:auto}.customer-filter-bar{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-2) 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.customer-filter-label{flex:0 0 auto;padding-top:var(--space-3);color:var(--muted);font-size:.75rem;font-weight:700;letter-spacing:.04em}.customer-filter-buttons{display:flex;flex-wrap:wrap;gap:var(--space-2);min-width:0}.customer-filter-button{min-height:40px;padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:999px;background:var(--surface);color:var(--text);cursor:pointer;font-size:.875rem;font-weight:600;transition:background-color var(--motion-fast) ease-out,border-color var(--motion-fast) ease-out,color var(--motion-fast) ease-out}.customer-filter-button:hover{border-color:var(--brand);background:var(--brand-tint)}.customer-filter-button:focus-visible{outline:2px solid color-mix(in srgb,var(--brand) 35%,transparent);outline-offset:2px}.customer-filter-button.active{border-color:var(--brand);background:var(--brand-tint);color:var(--brand-active);font-weight:700}@media(max-width:768px){.sales-view-row .view-right{margin-left:0}}.segmented.pill button{font-size:.82rem}.panel-hint{font-size:.76rem;color:var(--muted);font-weight:400}.money-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-25);margin:var(--space-25) 0 var(--space-1)}.money-cell{display:flex;flex-direction:column;gap:var(--space-05);padding:var(--space-25) var(--space-3);border:1px solid var(--border);border-radius:10px;background:var(--surface, #fff)}.money-label{font-size:.74rem;color:var(--muted)}.money-value{font-size:var(--fs-4);font-weight:var(--fw-extrabold);line-height:1.3}.money-sub{font-size:.7rem;line-height:1.4;color:var(--muted)}.money-cell.actual .money-value{color:#185fa5}.money-cell.out.has{background:#fef6f5;border-color:#f3c9c4}.money-cell.out.has .money-value{color:#c0392b}.closed-list,.closed-groups{display:grid;gap:var(--space-2)}.closed-group{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface, #fff)}.closed-group-head{display:flex;align-items:center;gap:var(--space-25);width:100%;padding:var(--space-3) var(--space-3);background:transparent;border:none;cursor:pointer;text-align:left;font:inherit}.closed-group-head:hover{background:#faf7f7}.cg-caret{color:var(--muted);font-size:.8rem;width:14px}.cg-name{font-weight:700;font-size:.95rem}.cg-cust{font-size:.8rem;color:var(--muted)}.cg-count{font-size:.74rem;color:var(--muted);margin-left:auto}.cg-total{font-size:.85rem;font-weight:600}.closed-group-body{display:grid;gap:var(--space-15);padding:0 var(--space-3) var(--space-3)}.closed-group-body .closed-row{background:#fbfbfc}.closed-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-3);border:1px solid var(--border);border-radius:10px;background:var(--surface, #fff);cursor:pointer}.closed-row:hover{border-color:var(--brand, #d42228)}.closed-main{display:flex;flex-direction:column;gap:var(--space-05)}.closed-main strong{font-size:.95rem}.closed-main span{font-size:.8rem;color:var(--muted)}.closed-money{display:flex;align-items:center;gap:var(--space-25);font-size:.85rem}.done-chip{font-size:.72rem;font-weight:var(--fw-extrabold);color:#1f8a5b;background:#e7f4ee;padding:2px 10px;border-radius:999px}.empty-hint{font-size:.86rem;color:var(--muted);padding:24px 12px;text-align:center;line-height:1.5}.event-edit-list{display:grid;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}.event-edit-list-title{color:#44505f;font-size:.82rem;font-weight:850}.event-edit-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:9px;border:1px solid #e8ebf1;border-radius:8px;background:#f9fafb}.event-edit-row.editing{border-color:#1f2937;background:#f0f5f7}.event-edit-row strong{display:block;margin-bottom:3px;font-size:.82rem}.event-edit-row span{display:block;color:var(--muted);font-size:.74rem}.event-edit-row p{margin:5px 0 0;line-height:1.4;font-size:.78rem;overflow-wrap:anywhere}.event-edit-actions{display:grid;align-content:start;gap:2px}.event-edit-empty{padding:10px;border-radius:8px;background:#f9fafb;color:var(--muted);font-size:.92rem}.product-card{padding:var(--space-4);display:grid;gap:var(--space-3);min-width:0}.product-card.new-development{border-color:#9bc6b8}.product-card.selected{border-color:#1f2937;box-shadow:0 0 0 2px #1f293714}.product-title-panel{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border:1px solid #dfe4ec;border-radius:var(--radius-md);background:#eef1f5}.product-title-main{min-width:0;display:grid;gap:var(--space-1)}.product-title-panel h3{margin:0;font-size:var(--fs-4);font-weight:var(--fw-extrabold);line-height:1.3;letter-spacing:-.01em;word-break:keep-all;overflow-wrap:anywhere}.product-title-panel p{margin:var(--space-15) 0 0;color:var(--muted);font-size:.9rem;line-height:1.45}.product-badges{display:flex;gap:var(--space-15);align-items:flex-start;flex-wrap:wrap;justify-content:flex-end;min-width:74px}.new-badge,.stage-badge,.issue-count-badge{border-radius:999px;padding:var(--space-1) var(--space-2);font-size:.84rem;font-weight:800;white-space:nowrap}.new-badge{background:#0f766e;color:#fff}.stage-badge{background:#e5edf7;color:#1d4ed8}.issue-count-badge{border:1px solid var(--border-strong);background:var(--surface);color:var(--muted)}.next-action-badge{border-radius:999px;padding:3px var(--space-25);background:#fff7ed;color:#b45309;font-size:.74rem;font-weight:700;white-space:nowrap}.next-action-badge.done{background:#e7f3ef;color:#0f766e}.product-card-actions{display:flex;justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap}.product-card-actions button:focus-visible{outline:2px solid currentColor;outline-offset:2px}.opportunity-list{display:grid;gap:9px}.opportunity-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid #e3e8ef;border-radius:8px;background:#fff;color:var(--text);text-align:left;cursor:pointer}.opportunity-row:hover,.opportunity-row.selected{border-color:#1f2937;background:#f5f8fb}.opportunity-main{min-width:0;display:grid;gap:5px}.opportunity-main strong{color:#1f2937;font-size:1.02rem;overflow-wrap:anywhere}.opportunity-main span{color:#44505f;font-size:.92rem;line-height:1.42;overflow-wrap:anywhere}.opportunity-meta{display:flex;justify-content:flex-end;gap:6px;flex-wrap:wrap;align-items:center}.opportunity-empty{padding:14px;border:1px dashed #cbd3df;border-radius:8px;background:#f9fafb;color:var(--muted);font-size:.94rem}.issue-card{padding:15px;display:grid;gap:12px}.issue-card-head{display:flex;justify-content:space-between;gap:12px}.issue-card h3{margin:0;font-size:1.02rem}.issue-card p{margin:5px 0 0;color:var(--muted);font-size:.82rem}.issue-card-head span{align-self:flex-start;border:1px solid var(--border);border-radius:999px;padding:4px 8px;color:var(--muted);white-space:nowrap}.latest-change{padding:10px 11px;border:1px solid var(--gold);background:var(--warning-bg);border-radius:4px;line-height:1.4;font-size:1rem}.sales-flow{display:grid;grid-template-columns:repeat(7,minmax(146px,1fr));gap:8px;overflow-x:auto;padding-bottom:2px}.flow-stage-card{position:relative;display:grid;align-content:start;gap:8px;min-width:146px;border:1px solid #e3e8ef;border-radius:8px;background:#f9fafb;padding:10px}.flow-stage-card.has-items{border-color:#c8d6cc;background:#f7fbf8}.flow-stage-card:not(:last-child):after{content:"";position:absolute;top:22px;right:-7px;width:7px;height:1px;background:#cbd3df}.flow-stage-title{color:#44505f;font-size:.88rem;font-weight:850;text-align:center;white-space:nowrap}.flow-items{display:grid;gap:6px;min-height:36px}.flow-item{display:grid;gap:6px;padding:8px;border:1px solid #e8ebf1;border-radius:6px;background:#fff;color:#262626;font-size:.88rem;line-height:1.42;word-break:keep-all;overflow-wrap:anywhere}.event-meta-line{color:var(--muted);font-size:.78rem;font-variant-numeric:tabular-nums}.quantity-row{display:flex;gap:4px;flex-wrap:wrap}.quantity-row strong{border-radius:999px;padding:2px 6px;background:#e7f3ef;color:#0f766e;font-size:.8rem;line-height:1.25}.flow-empty{display:grid;place-items:center;min-height:30px;color:#9aa3b1;font-size:.86rem}.issue-card ul{margin:0;padding-left:18px;color:#313131;line-height:1.55}.image-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.image-strip a,.image-strip button{display:block;aspect-ratio:4 / 3;overflow:hidden;border:1px solid var(--border);border-radius:6px;background:var(--surface-soft);padding:0;cursor:pointer}.image-strip img{width:100%;height:100%;object-fit:cover;display:block}.work-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;background:#11182780;animation:backdropFade var(--motion-fast) ease-out}.modal-parent-backdrop{justify-items:start;padding-left:max(24px,calc((100vw - 1200px)/2))}.modal-parent-backdrop .management-modal{width:min(720px,52vw)}.modal-side-backdrop{justify-items:end;padding-right:max(24px,calc((100vw - 1200px)/2));background:transparent;animation:none;pointer-events:none}.modal-side-backdrop .side-form{width:min(460px,40vw);pointer-events:auto}@media(max-width:980px){.modal-parent-backdrop,.modal-side-backdrop{justify-items:center;padding:12px}.modal-parent-backdrop .management-modal,.modal-side-backdrop .side-form{width:min(760px,94vw)}}.modal-stage{display:flex;gap:16px;align-items:flex-start;justify-content:center;flex-wrap:wrap;width:100%}.modal-stage .management-modal{width:min(1440px,98vw)}.modal-stage.has-side .management-modal{width:min(720px,52vw)}.modal-stage .product-modal{width:min(760px,94vw)}.modal-stage.has-side .product-modal{width:min(460px,40vw)}.side-form{animation:slideInRight var(--motion-fast) ease-out}@keyframes slideInRight{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:none}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}@keyframes backdropFade{0%{opacity:0}to{opacity:1}}.work-modal{width:min(1080px,96vw);max-height:90vh;overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--panel-border);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-float)}.product-modal{width:min(760px,94vw)}.management-modal{width:min(1440px,98vw)}.work-modal>form{min-width:0;display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.work-modal-head{display:flex;justify-content:space-between;gap:var(--space-4);align-items:flex-start;padding:var(--space-4) var(--space-4);border-bottom:1px solid var(--border);background:var(--canvas)}.work-modal-head>div{min-width:0;display:grid;gap:var(--space-1)}.work-modal-head span{color:var(--muted);font-size:.88rem;font-weight:760}.work-modal-head strong{color:var(--ink);font-size:var(--fs-5);font-weight:var(--fw-extrabold);line-height:1.3;letter-spacing:-.01em;overflow-wrap:anywhere}.work-modal-head p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.45}.modal-head-actions{display:flex;gap:var(--space-2);justify-content:flex-end;flex-wrap:wrap;align-items:center}.work-modal-head>div.modal-head-actions{display:flex;gap:var(--space-2);justify-content:flex-end;flex-wrap:wrap;align-items:center;flex:none}.modal-owner-line{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-1);padding-top:var(--space-25);border-top:1px solid var(--border)}.modal-owner-line .owner-label{font-size:.8rem;font-weight:700;letter-spacing:.01em;color:#475569;background:#eef2f7;padding:var(--space-1) 11px;border-radius:7px;white-space:nowrap}.owner-select{padding:6px 12px;font:inherit;font-size:.9rem;border:1px solid var(--border);border-radius:8px;background:#fff;min-width:140px;max-width:220px;cursor:pointer}.owner-value{font-size:.95rem;font-weight:700;color:var(--ink)}.account-row{display:flex;gap:8px;align-items:center}.account-row input{flex:1 1 auto;padding:8px 10px;border:1px solid var(--border);border-radius:8px;font:inherit}.account-form{display:grid;gap:10px;max-width:380px}.work-modal-body{display:grid;gap:var(--space-4);flex:1 1 auto;min-height:0;overflow:auto;padding:var(--space-4) var(--space-4) var(--space-4)}.modal-actions{display:flex;justify-content:flex-end;gap:10px;padding:14px 18px 16px;border-top:1px solid var(--border);background:#f9fafb}.modal-grid{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(360px,1.15fr);gap:14px;align-items:start}.modal-section{display:grid;gap:var(--space-3);min-width:0;border:1px solid #e3e8ef;border-radius:var(--radius-md);background:#fff;padding:var(--space-3)}.modal-section-head{display:grid;gap:var(--space-1);min-width:0}.modal-section-head strong{color:#1f2937;font-size:var(--fs-4);font-weight:var(--fw-black);letter-spacing:-.01em}.modal-section-head span{color:var(--muted);font-size:.85rem;line-height:1.5}.progress-thread{display:grid;gap:0}.thread-toggle{justify-self:start;display:inline-flex;align-items:center;gap:6px;margin-bottom:8px;padding:6px 12px;border:1px dashed var(--border);border-radius:8px;background:#fff;color:var(--muted);font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}.thread-toggle:hover{color:var(--brand, #d42228);border-color:var(--brand, #d42228)}.thread-toggle-arrow{font-size:.7rem;transition:transform var(--motion-fast) ease}.thread-toggle[aria-expanded=true] .thread-toggle-arrow{transform:rotate(180deg)}.thread-collapse{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease}.thread-collapse.open{grid-template-rows:1fr}.thread-collapse>div{overflow:hidden;min-height:0}.progress-step{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;padding-bottom:13px}.progress-step:not(:last-child):after{content:"";position:absolute;top:34px;bottom:0;left:16px;width:2px;background:#cbd3df}.progress-marker{position:relative;z-index:1;display:grid;place-items:center;width:34px;height:34px;border-radius:999px;border:2px solid #9fb7ad;background:#f7fbf8;color:#0f766e;font-size:.9rem;font-weight:850}.progress-step.current .progress-marker{border-color:#1f2937;background:#1f2937;color:#fff}.progress-step-body{min-width:0;padding:10px 12px;border:1px solid #e3e8ef;border-radius:8px;background:#fff}.progress-step.current .progress-step-body{border-color:#b8c2cc;background:#f5f8fb}.progress-step-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.progress-step-actions{display:flex;align-items:center;gap:8px;flex:none}.progress-step-actions .text-button{font-size:.8rem;padding:2px 0}.progress-step.editing .progress-step-body{border-color:var(--brand);background:var(--brand-tint)}.progress-step.editing .progress-marker{border-color:var(--brand);background:var(--brand);color:#fff}.progress-step-top strong{color:#1f2937;font-size:1rem}.progress-step-top span{border-radius:999px;padding:3px 8px;background:#edf4f1;color:#0f766e;font-size:.8rem;font-weight:850;white-space:nowrap}.progress-step.current .progress-step-top span{background:#1f2937;color:#fff}.progress-step-body p{margin:7px 0 0;color:#262626;font-size:.94rem;line-height:1.45;overflow-wrap:anywhere}.progress-meta{margin-top:5px;color:var(--muted);font-size:.86rem}.progress-author{margin-top:3px;color:var(--muted);font-size:.76rem;font-weight:600}.entity-tag{display:inline-block;margin-right:6px;padding:1px 6px;border:1px solid var(--border);border-radius:6px;background:var(--surface-soft);color:var(--muted);font-size:.68rem;font-weight:700;vertical-align:middle}.progress-thread-empty{padding:14px;border:1px dashed #cbd3df;border-radius:8px;background:#f9fafb;color:var(--muted);font-size:.94rem}.image-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;background:#11182794}.image-modal{display:grid;gap:10px;width:min(820px,94vw);max-height:88vh;overflow:hidden;border-radius:8px;background:#fff;box-shadow:0 20px 70px #11182747}.image-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--border);background:#eef1f5}.image-modal-head strong{min-width:0;overflow-wrap:anywhere}.image-modal-head button{border:1px solid var(--border-strong);border-radius:8px;background:#fff;color:#1f2937;padding:7px 10px;cursor:pointer;white-space:nowrap}.image-modal>img{display:block;width:100%;max-height:calc(88vh - 62px);object-fit:contain;background:#111827}.empty-state,.loading-screen,.inline-error,.inline-info{border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:18px;color:var(--muted)}.loading-screen{min-height:100vh;display:grid;place-items:center;font-weight:760}.error-screen{color:var(--red);gap:8px}.inline-error{border-color:#fecaca;background:#fef2f2;color:var(--red);margin-bottom:12px}.inline-info{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.toast-dock{position:absolute;top:100%;right:0;width:min(380px,100%);pointer-events:none}.toast-viewport{position:fixed;top:var(--space-5);right:var(--space-5);z-index:1200;display:flex;flex-direction:column;gap:var(--space-2);width:min(380px,calc(100vw - var(--space-6)));pointer-events:none}.toast-dock .toast-viewport{position:static;width:auto;padding-top:var(--space-2)}.toast{pointer-events:auto;display:flex;align-items:flex-start;gap:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-float);padding:var(--space-3);color:var(--muted);font-size:var(--fs-2);line-height:1.5;animation:toast-slide-in var(--motion-fast) ease-out}.toast-message{flex:1 1 auto;min-width:0}.toast-info{border-color:var(--info);background:var(--info-bg);color:var(--info)}.toast-success{border-color:var(--success);background:var(--success-bg);color:var(--success)}.toast-error{border-color:var(--danger);background:var(--danger-bg);color:var(--danger)}.toast-close{flex:0 0 auto;border:0;background:none;cursor:pointer;color:inherit;opacity:.6;font-size:var(--fs-4);line-height:1;padding:0 var(--space-05);border-radius:var(--radius-sm)}.toast-close:hover{opacity:1}.toast-close:focus-visible{outline:2px solid currentColor;outline-offset:2px}@keyframes toast-slide-in{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@media(prefers-reduced-motion:reduce){.toast{animation:none!important}}.document-filter{align-items:end}.document-filter .search-control{flex:1 1 320px}.document-metrics .metric-note{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.success-banner{border:1px solid #a7f3d0;border-radius:8px;background:#ecfdf5;color:#065f46;padding:10px 12px;font-weight:720}.doc-type-strip{display:flex;flex-wrap:wrap;gap:8px}.doc-type-chip,.doc-type-badge{display:inline-flex;align-items:center;border-radius:999px;border:1px solid var(--border);background:#eef1f5;color:#44505f;font-size:.8rem;font-weight:760;white-space:nowrap}.doc-type-chip{padding:6px 9px}.doc-type-badge{padding:4px 8px}.doc-link{display:flex;gap:6px;align-items:center}.doc-link span{font-size:.82rem;color:var(--green);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.doc-link-select{height:32px;max-width:220px;border:1px solid var(--border);border-radius:6px;padding:0 8px;background:var(--surface);color:var(--text)}.path-cell{max-width:360px;color:var(--muted);font-size:.82rem;word-break:break-all}.muted-text{color:var(--muted)}.pipeline{display:grid;gap:22px}.stage-group{border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow-2);overflow:hidden}.stage-toggle{margin-left:auto;width:27px;height:27px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--muted);font-size:.8rem;line-height:1;cursor:pointer;transition:transform var(--motion-fast) ease,color .15s ease,border-color .15s ease}.stage-toggle:hover{color:var(--brand, #d42228);border-color:var(--brand, #d42228)}.stage-toggle.collapsed{transform:rotate(-90deg)}.stage-collapse{display:grid;grid-template-rows:1fr;transition:grid-template-rows .26s ease}.stage-collapse.collapsed{grid-template-rows:0fr}.stage-collapse>.stage-deals{overflow:hidden;min-height:0}.stage-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--brand-tint);border-bottom:2px solid var(--brand)}.stage-name{font-weight:var(--fw-black);font-size:var(--fs-5);letter-spacing:-.02em;color:var(--brand-active)}.stage-count{color:var(--brand);font-size:.85rem;font-weight:700;background:var(--surface);border:1px solid var(--brand-tint);padding:var(--space-05) var(--space-25);border-radius:999px}.stage-bar{flex:1;height:6px;border-radius:3px;background:var(--surface);overflow:hidden;max-width:280px}.stage-bar i{display:block;height:100%;background:var(--brand);border-radius:3px}.stage-deals{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,268px),1fr));gap:var(--space-4);padding:var(--space-4)}@media(min-width:1500px){.stage-deals{grid-template-columns:repeat(5,minmax(0,1fr))}}.deal-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4) var(--space-4);border:2px solid var(--border);border-radius:14px;background:var(--surface);text-align:left;cursor:pointer;width:100%;min-width:0;transition:transform .13s ease,box-shadow .13s ease,border-color .13s ease}.deal-card:hover{transform:translateY(-2px);border-color:var(--brand);box-shadow:var(--shadow-2)}.deal-card.selected{border-color:var(--brand);background:var(--brand-tint);box-shadow:var(--shadow-2)}.deal-card-head{display:flex;flex-direction:column-reverse;align-items:stretch;gap:var(--space-15)}.deal-card-head .next-action-badge{align-self:flex-end}.deal-card-title{font-size:var(--fs-4);font-weight:var(--fw-extrabold);color:var(--ink);overflow-wrap:anywhere;line-height:1.3;letter-spacing:-.01em}button.deal-card-title{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;padding:0;font-family:inherit;text-align:left;cursor:pointer}.deal-card-sub{font-size:.85rem;color:var(--muted);overflow-wrap:anywhere;line-height:1.45}.deal-card-meta-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-width:0}.owner-chip{display:inline-flex;align-items:center;gap:var(--space-15);min-width:0;font-size:.78rem;font-weight:600;color:var(--ink)}.owner-chip .owner-ini{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--brand, #d42228);color:#fff;font-size:.72rem;font-weight:700;font-style:normal;flex-shrink:0}.owner-chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deal-rel-time{font-size:.72rem;color:var(--muted);white-space:nowrap;flex-shrink:0}.deal-stage-summary{display:flex;flex-wrap:wrap;gap:var(--space-1)}.stage-sum-chip{font-size:.72rem;font-weight:600;padding:1px var(--space-15);border-radius:999px;border:1px solid transparent}.stage-sum-chip.tg-quote{background:#eef2f7;color:#475569}.stage-sum-chip.tg-order{background:#eaf1fb;color:#285a86}.stage-sum-chip.tg-make{background:#fef3e7;color:#9a6a1e}.stage-sum-chip.tg-invoice{background:#fdeaea;color:#b03b3b}.stage-sum-chip.tg-done{background:#e8f6ee;color:#1f7a44}.deal-summary-strip{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;min-height:56px;padding:var(--space-2) var(--space-4);background:var(--surface-soft);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.dss-stage{display:flex;align-items:center;gap:var(--space-3);min-width:0}.dss-steps{display:flex;align-items:center;gap:var(--space-1)}.dss-step{width:6px;height:6px;border-radius:50%;background:var(--border);flex:none}.dss-step.done{background:currentColor}.dss-step.now{width:14px;height:14px;border:2px solid currentColor;background:currentColor;box-shadow:inset 0 0 0 2px var(--surface-soft)}.dss-stage-name{font-size:.82rem;font-weight:700;color:var(--ink);white-space:nowrap}.dss-money{display:flex;align-items:center;flex-wrap:wrap}.dss-cell{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-05);padding:0 var(--space-3);border-left:1px solid var(--border)}.dss-cell:first-child{border-left:0}.dss-cell:last-child{padding-right:0}.dss-label{font-size:.72rem;font-weight:600;color:var(--muted);white-space:nowrap;line-height:1.2}.dss-note{font-size:.64rem;font-weight:600;color:var(--muted);opacity:.75;margin-left:var(--space-1)}.dss-value{font-size:1.02rem;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;line-height:1.25}.dss-value.danger{color:var(--danger)}.dss-ratio{font-size:.7rem;font-weight:700;color:var(--muted);margin-left:var(--space-1)}.deal-log-footer{padding:var(--space-15) var(--space-3);grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:var(--space-25);row-gap:var(--space-2)}.deal-log-footer .log-toggle-row{grid-column:1;grid-row:1;justify-content:flex-start;gap:var(--space-25)}.deal-log-footer .deal-danger-row{grid-column:2;grid-row:1;border-top:0;padding-top:0}.deal-log-footer .change-log-list{grid-column:1 / -1;grid-row:2;margin-top:0}.dlf-label{flex:none;font-size:.78rem;font-weight:700;color:var(--ink);white-space:nowrap}.dlf-latest{flex:1 1 auto;min-width:0;font-size:.76rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deal-log-footer .log-toggle{flex:none;font-size:.78rem}.deal-split{display:flex;gap:var(--space-3);align-items:stretch;height:62vh;min-height:360px;max-height:640px}.deal-pane{display:flex;flex-direction:column;min-width:0;border:1px solid var(--border);border-radius:var(--radius-lg);background:#fff;overflow:hidden}.deal-timeline{flex:1 1 auto;min-width:0}.deal-money-rail{flex:0 0 380px;width:380px;min-width:0}.pane-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);background:#f7f9fc;font-size:13px;font-weight:700}.pane-head strong{display:inline-flex;align-items:center;gap:var(--space-15);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.01em}.pane-count{font-size:11px;font-weight:600;color:var(--muted);white-space:nowrap}.tl-stream{flex:1 1 auto;overflow-y:auto;min-height:0;padding:var(--space-3) var(--space-4) var(--space-1) var(--space-3);display:flex;flex-direction:column;background:#fbfcfe}.tl-row{display:grid;grid-template-columns:66px 18px minmax(0,1fr);column-gap:var(--space-25)}.tl-time{font-size:.72rem;font-weight:700;color:var(--muted);text-align:right;padding-top:var(--space-1);white-space:nowrap}.tl-axis{display:flex;flex-direction:column;align-items:center}.tl-axis i.line{width:2px;background:var(--border);flex:none}.tl-axis i.fill{width:2px;background:var(--border);flex:1 1 auto}.tl-dot-event{width:11px;height:11px;border-radius:50%;background:var(--surface);flex:none}.tl-dot-memo{width:7px;height:7px;border-radius:50%;background:var(--border-strong);flex:none}.tl-body{min-width:0;padding-bottom:var(--space-4)}.tl-event{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--surface);border:1px solid var(--border);border-left-width:3px;border-radius:10px;box-shadow:var(--shadow-1)}.tl-chip{flex:none;font-size:.72rem;font-weight:700;border:1px solid currentColor;border-radius:999px;padding:1px var(--space-2);background:var(--surface);white-space:nowrap}.tl-amount{flex:none;font-size:.9rem;font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}.tl-event .pay-chip{flex:none;font-size:.68rem;padding:1px var(--space-15)}.tl-event-meta{flex:1 1 auto;min-width:0;font-size:.74rem;color:var(--muted);line-height:1.45;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-edit{flex:none;border:0;background:transparent;color:var(--muted);padding:var(--space-05) var(--space-1);font-size:.76rem;font-weight:600;cursor:pointer;opacity:0;transition:opacity .12s ease}.tl-event:hover .row-edit,.tl-event:focus-within .row-edit{opacity:1}.row-edit:hover{color:var(--ink)}.row-edit:focus-visible{opacity:1;outline:2px solid currentColor;outline-offset:2px}.tl-edit{border:1px solid var(--border);border-radius:10px;background:#f7f9fc;padding:var(--space-3)}.tl-row-flash .tl-event,.tl-row-flash .memo-line{box-shadow:0 0 0 2px var(--tb-blue)}.memo-empty{margin:auto;color:var(--muted);font-size:13px;text-align:center;line-height:1.6}.memo-line{display:flex;align-items:baseline;gap:var(--space-15);padding:3px var(--space-15);border-radius:var(--radius-sm)}.memo-line:hover,.memo-line:focus-visible{background:#f4f7fb}.memo-meta{flex:0 0 auto;margin-left:auto;font-size:11px;color:var(--muted);white-space:nowrap;opacity:0;transition:opacity .12s ease}.memo-line:hover .memo-meta,.memo-line:focus-visible .memo-meta{opacity:1}.memo-del{flex:0 0 auto;border:none;background:none;color:#c4ccd6;cursor:pointer;font-size:12px;line-height:1;padding:var(--space-05) var(--space-1);opacity:0;transition:opacity .12s ease}.memo-line:hover .memo-del,.memo-line:focus-visible .memo-del{opacity:1}.memo-del:hover{color:#d4584a}.memo-del:focus-visible{opacity:1;outline:2px solid currentColor;outline-offset:2px}.memo-edit-btn{flex:0 0 auto;border:none;background:none;color:#c4ccd6;cursor:pointer;font-size:11px;line-height:1;padding:var(--space-05) var(--space-1);opacity:0;transition:opacity .12s ease}.memo-line:hover .memo-edit-btn,.memo-line:focus-visible .memo-edit-btn{opacity:1}.memo-edit-btn:hover{color:#2f6db0}.memo-edit-btn:focus-visible{opacity:1;outline:2px solid currentColor;outline-offset:2px}.memo-text{flex:1 1 auto;margin:0;font-size:14px;color:#303a47;line-height:1.5;white-space:pre-wrap;word-break:break-word}.memo-edit{flex:1 1 auto;display:flex;flex-direction:column;gap:var(--space-15);min-width:0}.memo-edit-input{resize:none;border:1px solid var(--border);border-radius:10px;padding:var(--space-2) var(--space-25);font:inherit;font-size:14px;line-height:1.45;max-height:120px;width:100%;box-sizing:border-box}.memo-edit-input:focus{border-color:#7facd8;box-shadow:0 0 0 3px #7facd82e}.memo-editing-meta{font-size:11px;color:#9aa4b2}.memo-edit-actions{display:flex;gap:var(--space-15)}.memo-edit-save{border:none;background:#2f6db0;color:#fff;border-radius:var(--radius-md);padding:5px var(--space-3);font-size:12px;font-weight:600;cursor:pointer}.memo-edit-save:disabled{background:#c0cad6;cursor:default}.memo-edit-cancel{border:1px solid var(--border);background:#fff;color:#475569;border-radius:var(--radius-md);padding:5px var(--space-3);font-size:12px;cursor:pointer}.memo-edit-cancel:disabled{color:#c0cad6;cursor:default}.memo-compose{display:flex;gap:var(--space-2);align-items:flex-end;padding:var(--space-25);border-top:1px solid var(--border);background:#fff}.memo-compose textarea{flex:1 1 auto;resize:none;border:1px solid var(--border);border-radius:10px;padding:var(--space-2) var(--space-25);font:inherit;font-size:14px;line-height:1.45;max-height:120px}.memo-compose textarea:focus{border-color:#7facd8;box-shadow:0 0 0 3px #7facd82e}.memo-send{border:none;background:#2f6db0;color:#fff;border-radius:10px;padding:var(--space-2) var(--space-3);font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}.memo-send:disabled{background:#c0cad6;cursor:default}.memo-send:focus-visible{outline:2px solid currentColor;outline-offset:2px}.memo-line .memo-stage-chip{flex:none;align-self:center}.memo-stage-chip{font-size:10px;font-weight:700;padding:1px var(--space-15);border-radius:999px;background:#eef2f7;color:#475569}.memo-stage-chip.tg-order{background:#eaf1fb;color:#285a86}.memo-stage-chip.tg-make{background:#fef3e7;color:#9a6a1e}.memo-stage-chip.tg-invoice{background:#fdeaea;color:#b03b3b}.memo-stage-chip.tg-done{background:#e8f6ee;color:#1f7a44}.wcards{display:flex;flex-direction:column;gap:6px}.wcard{border:1px solid var(--border);border-radius:10px;overflow:hidden}.wcard.open{border-color:color-mix(in srgb,var(--muted) 40%,transparent)}.wcard-head{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:none;background:none;cursor:pointer;text-align:left}.wcard-head:hover{background:color-mix(in srgb,var(--muted) 6%,transparent)}.wcard-caret{flex-shrink:0;font-size:.72rem;color:var(--muted);transition:transform .12s ease}.wcard-caret.open{transform:rotate(90deg)}.wcard-title{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:1px}.wcard-title b{font-size:.92rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wcard-title em{font-size:.74rem;color:var(--muted);font-style:normal}.wcard-chips{flex-shrink:0;display:flex;flex-wrap:wrap;align-items:center;gap:5px;justify-content:flex-end;max-width:55%}.wcard-amt{font-size:.76rem;font-weight:700;padding:2px 7px;border-radius:999px;white-space:nowrap}.wcard-amt.invoice{color:#1f6feb;background:#1f6feb1a}.wcard-amt.paid{color:#2f9e6f;background:#2f9e6f1a}.wcard-count{font-size:.74rem;color:var(--muted);padding:2px 6px;border-radius:999px;background:color-mix(in srgb,var(--muted) 10%,transparent);white-space:nowrap}.wcard-detail{padding:4px 14px 10px 30px;border-top:1px solid var(--border)}.wcard-ai{display:flex;align-items:baseline;gap:8px;padding:6px 14px 8px 30px;font-size:.86rem;line-height:1.45;color:var(--text, #1a2330);background:linear-gradient(90deg,color-mix(in srgb,#7c5cff 8%,transparent),transparent)}.wcard-ai-tag{flex-shrink:0;font-size:.68rem;font-weight:700;color:#7c5cff;border:1px solid color-mix(in srgb,#7c5cff 40%,transparent);border-radius:999px;padding:1px 7px}.ai-cost-bar{font-size:.78rem;color:var(--muted);padding:6px 10px;margin-bottom:8px;background:color-mix(in srgb,#7c5cff 6%,transparent);border-radius:8px}.ai-summary-entry{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--info-bg)}.ai-summary-entry-copy{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.ai-summary-entry-copy strong{color:var(--info);font-size:.875rem}.ai-summary-entry-copy span{color:var(--muted);font-size:.75rem}.inline-error.sm{font-size:.82rem;padding:6px 10px}.ai-brief{margin-bottom:12px;padding:12px 16px;border-radius:10px;background:linear-gradient(120deg,color-mix(in srgb,#7c5cff 10%,transparent),color-mix(in srgb,#7c5cff 3%,transparent));border:1px solid color-mix(in srgb,#7c5cff 22%,transparent)}.ai-brief-head{font-size:.74rem;font-weight:700;color:#7c5cff;margin-bottom:5px;letter-spacing:.02em}.ai-brief p{margin:0;font-size:.92rem;line-height:1.55;color:var(--text, #1a2330)}.ai-debug{margin-top:4px;font-size:.72rem;color:var(--muted)}.ai-debug code{font-size:.72rem;word-break:break-all}.health-banner{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;padding:14px 18px;border-radius:var(--radius-xl);margin-bottom:16px;border:1px solid var(--panel-border);background:var(--surface);box-shadow:var(--shadow-card)}.health-banner strong{font-size:1.05rem}.health-banner span{color:var(--muted);font-size:.88rem}.health-banner.ok{background:linear-gradient(0deg,#2f9e6f14,#2f9e6f14),var(--surface);border-color:#2f9e6f4d}.health-banner.warn{background:linear-gradient(0deg,#e0a80014,#e0a80014),var(--surface);border-color:#e0a80059}.health-banner.critical{background:linear-gradient(0deg,#c0392b14,#c0392b14),var(--surface);border-color:#c0392b59}.health-list{display:flex;flex-direction:column;gap:8px;max-width:760px}.health-item{border:1px solid var(--panel-border);border-radius:var(--radius-lg);overflow:hidden;background:var(--surface);box-shadow:var(--shadow-card)}.health-item.critical:not(.ok){border-color:#c0392b66}.health-item.warn:not(.ok){border-color:#e0a80066}.health-item-head{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;border:none;background:none;cursor:pointer;text-align:left}.health-item-head:hover{background:color-mix(in srgb,var(--muted) 6%,transparent)}.health-icon{flex-shrink:0;display:inline-flex;color:var(--muted)}.health-icon .btn-icon{width:16px;height:16px;margin-right:0}.health-item.ok .health-icon{color:var(--success)}.health-item.critical:not(.ok) .health-icon{color:#c0392b}.health-item.warn:not(.ok) .health-icon{color:var(--chip-amber-ink)}.health-banner.ok strong .btn-icon{color:var(--success)}.health-banner.warn strong .btn-icon{color:var(--chip-amber-ink)}.health-banner.critical strong .btn-icon{color:#c0392b}.health-label{flex:1 1 auto;font-size:.92rem;font-weight:500}.health-count{flex-shrink:0;font-weight:700;font-size:.9rem;min-width:26px;text-align:center;color:var(--muted)}.health-count.critical{color:#c0392b}.health-count.warn{color:var(--chip-amber-ink)}.health-caret{flex-shrink:0;font-size:.72rem;color:var(--muted);transition:transform .12s ease}.health-caret.open{transform:rotate(90deg)}.health-samples{padding:4px 14px 12px 40px;display:flex;flex-direction:column;gap:4px}.health-sample{font-size:.8rem;color:var(--text, #333);font-family:ui-monospace,monospace}.health-sample.muted{color:var(--muted);font-family:inherit}.wdigest{margin-top:10px;padding-top:10px;border-top:1px dashed var(--border)}.wdigest-wow-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:.76rem;color:var(--muted)}.wdigest-wow-item{display:inline-flex;align-items:center;gap:3px}.wdigest-wow{font-weight:700}.wdigest-wow.up{color:color-mix(in srgb,var(--success) 88%,var(--text))}.wdigest-wow.down{color:#c0392b}.wdigest-wow-item em{color:var(--muted);font-style:normal;opacity:.6}.wdigest-highlights{margin-top:8px;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px;font-size:.8rem}.wdigest-highlights.muted{color:var(--muted);font-size:.78rem}.wdigest-hl-label{font-size:.72rem;font-weight:700;color:var(--muted)}.wdigest-hl{white-space:nowrap}.wdigest-hl b{font-weight:600}.notif-dot.danger{background:#c0392b}.alerts-panel{width:340px}.alerts-empty{padding:22px 12px;text-align:center;color:var(--muted);font-size:.88rem}.alerts-scroll{max-height:380px;overflow-y:auto;padding:4px 0}.alerts-group{padding:2px 0 6px}.alerts-group-head{font-size:.74rem;font-weight:700;letter-spacing:.02em;padding:8px 12px 4px;color:var(--muted)}.alerts-group-head.overdue{color:#c0392b}.alerts-group-head.upcoming{color:#b8860b}.alerts-more{padding:3px 12px;font-size:.75rem;color:var(--muted)}.alert-row{display:flex;align-items:center;gap:9px;width:100%;padding:7px 12px;border:none;background:none;cursor:pointer;text-align:left;border-radius:6px}.alert-row:hover{background:color-mix(in srgb,var(--muted) 9%,transparent)}.alert-dot{flex-shrink:0;width:7px;height:7px;border-radius:50%;background:var(--muted)}.alert-row.overdue .alert-dot{background:#c0392b}.alert-row.upcoming .alert-dot{background:#e0a800}.alert-row.stale .alert-dot{background:#9aa4b2}.alert-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:1px}.alert-cust{font-size:.86rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.alert-item{font-size:.76rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.alert-side{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:1px}.alert-amt{font-size:.82rem;font-weight:700}.alert-meta{font-size:.72rem;color:var(--muted)}.alert-row.overdue .alert-meta{color:#c0392b;font-weight:600}.focus-dot{background:#2f9e6f}.nchk-box.sm{width:16px;height:16px;border-radius:4px}.focus-panel{width:300px}.focus-quickadd{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border)}.focus-plus{color:color-mix(in srgb,var(--muted) 60%,transparent);font-size:1.05rem}.focus-quickadd input{flex:1 1 auto;border:none;background:transparent;font-size:.88rem;font-family:inherit;color:inherit}.focus-items{max-height:240px;overflow-y:auto;padding:4px 0}.focus-item{display:flex;align-items:center;gap:9px;padding:6px 12px}.focus-item:hover{background:color-mix(in srgb,var(--muted) 8%,transparent)}.focus-item-text{font-size:.88rem;line-height:1.35;word-break:break-word}.focus-empty{padding:16px 12px;color:var(--muted);font-size:.85rem;text-align:center}.focus-more{padding:4px 12px 2px;font-size:.76rem;color:var(--muted)}.focus-openall{width:100%;border:none;background:none;cursor:pointer;text-align:center;color:var(--muted);font-weight:600}.focus-openall:hover{color:var(--text, #1a2330);background:color-mix(in srgb,var(--muted) 8%,transparent)}.nchk-page{max-width:680px}.nchk-head{margin-bottom:18px}.nchk-title{font-size:var(--fs-6);font-weight:var(--fw-extrabold);margin:0 0 4px;letter-spacing:-.01em}.nchk-sub{font-size:.83rem;color:var(--muted);margin:0}.nchk-list{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--panel-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:10px 12px}.nchk-row{display:flex;align-items:center;gap:10px;padding:3px 8px;min-height:34px;border-radius:6px;transition:background .1s ease}.nchk-row:hover{background:color-mix(in srgb,var(--muted) 8%,transparent)}.nchk-box{flex-shrink:0;width:18px;height:18px;border:1.6px solid color-mix(in srgb,var(--muted) 55%,transparent);border-radius:5px;background:transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:#fff;transition:background .12s ease,border-color .12s ease;padding:0}.nchk-box:hover{border-color:var(--muted)}.nchk-row.done .nchk-box{background:#2f9e6f;border-color:#2f9e6f}.nchk-text{flex:1 1 auto;font-size:.95rem;line-height:1.4;word-break:break-word;cursor:text;padding:2px;border-radius:4px}.nchk-text:hover{background:color-mix(in srgb,var(--muted) 6%,transparent)}.nchk-row.done .nchk-text{text-decoration:line-through;color:var(--muted);cursor:default}.nchk-row.done .nchk-text:hover{background:transparent}.nchk-edit{flex:1 1 auto;font-size:.95rem;line-height:1.4;border:none;background:transparent;padding:2px;color:inherit;font-family:inherit}.nchk-del{flex-shrink:0;border:none;background:none;color:var(--muted);cursor:pointer;padding:4px;border-radius:5px;opacity:0;display:inline-flex;align-items:center;transition:opacity .1s ease,background .1s ease,color .1s ease}.nchk-row:hover .nchk-del{opacity:.6}.nchk-del:hover{opacity:1!important;color:#c0392b;background:#c0392b1a}.nchk-add{display:flex;align-items:center;gap:10px;padding:3px 8px;min-height:34px;border-radius:6px}.nchk-plus{flex-shrink:0;width:18px;text-align:center;color:color-mix(in srgb,var(--muted) 60%,transparent);font-size:1.1rem;font-weight:400}.nchk-add-input{flex:1 1 auto;border:none;background:transparent;font-size:.95rem;font-family:inherit;padding:2px;color:inherit}.nchk-add-input::placeholder{color:color-mix(in srgb,var(--muted) 65%,transparent)}.nchk-add:focus-within{background:color-mix(in srgb,var(--muted) 6%,transparent)}.nchk-empty{color:var(--muted);font-size:.88rem;padding:14px 8px}.nchk-done-wrap{margin-top:14px;border-top:1px solid var(--border);padding-top:8px}.nchk-done-toggle{border:none;background:none;color:var(--muted);font-size:.8rem;font-weight:600;cursor:pointer;padding:4px 8px;display:inline-flex;align-items:center;gap:6px;border-radius:5px}.nchk-done-toggle:hover{background:color-mix(in srgb,var(--muted) 8%,transparent)}.nchk-caret{display:inline-block;transition:transform .12s ease;font-size:.7rem}.nchk-caret.open{transform:rotate(90deg)}.nchk-done-list{margin-top:2px}.term-form{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end;margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--panel-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);background:var(--surface)}.term-field{display:flex;flex-direction:column;gap:var(--space-1);font-size:.74rem;color:var(--muted)}.term-field>span{font-weight:600}.term-field input,.term-field select{padding:var(--space-15) var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.88rem;background:#fff}.term-field input[type=number]{width:120px}.term-preview{font-size:.85rem;color:var(--muted);padding-bottom:var(--space-15)}.term-two-stage-toggle{align-items:flex-start}.term-two-stage-toggle input[type=checkbox]{width:16px;height:16px;accent-color:var(--brand, #d42228);cursor:pointer}.term-actions{white-space:nowrap;text-align:right}.term-actions button+button{margin-left:var(--space-2)}.term-actions button:focus-visible{outline:2px solid currentColor;outline-offset:2px}.term-form.meeting-form{display:grid;grid-template-columns:minmax(160px,1fr) 150px minmax(220px,2fr) minmax(160px,1fr);gap:var(--space-3);align-items:end;margin-bottom:0;padding:var(--space-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow)}.meeting-form-head{grid-column:1 / -1;margin:0;padding-bottom:var(--space-2);border-bottom:1px solid var(--border);font-size:var(--fs-3);font-weight:var(--fw-semibold);color:var(--text)}.term-form.meeting-form .term-field{min-width:0}.term-form.meeting-form .term-field>span{font-size:var(--fs-1);font-weight:var(--fw-semibold);color:var(--muted)}.term-form.meeting-form .term-field input{width:100%;min-width:0;min-height:34px;box-sizing:border-box;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text)}.term-form.meeting-form .meeting-content-field{grid-column:1 / -1}.term-form.meeting-form .meeting-content-field textarea{width:100%;box-sizing:border-box;padding:var(--space-15) var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit;font-size:.88rem;line-height:1.55;resize:vertical;min-height:96px}.term-form.meeting-form input:focus-visible,.term-form.meeting-form textarea:focus-visible{outline:2px solid var(--brand);outline-offset:1px;border-color:var(--brand)}.term-form.meeting-form .term-meta{grid-column:1 / -1;flex:none;padding-top:0}.term-form.meeting-form .meeting-form-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;align-items:center;gap:var(--space-2);text-align:right}.term-form.meeting-form .meeting-form-actions button:focus-visible{outline:2px solid var(--brand);outline-offset:2px}@media(max-width:900px){.term-form.meeting-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media(max-width:560px){.term-form.meeting-form{grid-template-columns:minmax(0,1fr)}}.meeting-table{width:100%;min-width:720px;table-layout:fixed}.meeting-table col.meeting-col-date{width:6.75rem}.meeting-table col.meeting-col-attendees{width:13rem}.meeting-table col.meeting-col-meta{width:8.5rem}.meeting-table col.meeting-col-actions{width:6.25rem}.meeting-table th,.meeting-table td{vertical-align:middle}.meeting-table thead th{z-index:3;height:42px;padding-top:0;padding-bottom:0;box-shadow:inset 0 -2px 0 0 var(--border-strong)}.meeting-table tbody tr.meeting-row td{background:var(--surface);border-bottom:1px solid var(--border)}.meeting-table tbody tr.meeting-row:hover td{background:var(--surface-soft)}.meeting-table tbody tr.meeting-row.is-open td,.meeting-table tbody tr.meeting-row.is-open:hover td{background:color-mix(in srgb,var(--brand-tint) 55%,var(--surface));border-bottom:0;border-right:0}.meeting-table tbody tr.meeting-row.is-open td:first-child{box-shadow:inset 3px 0 0 0 var(--brand)}.meeting-table tbody tr.meeting-group-row td,.meeting-table tbody tr.meeting-group-row:hover td{position:sticky;top:42px;z-index:2;padding:var(--space-2) var(--space-3);background:var(--surface-soft);border-bottom:0;box-shadow:inset 3px 0 0 0 var(--brand),inset 0 2px 0 0 var(--border-strong),inset 0 -1px 0 0 var(--border)}.meeting-table tbody tr.meeting-group-row:first-child td,.meeting-table tbody tr.meeting-group-row:first-child:hover td{box-shadow:inset 3px 0 0 0 var(--brand),inset 0 -1px 0 0 var(--border)}.meeting-group-head{position:sticky;left:var(--space-3);display:flex;align-items:center;gap:var(--space-2);width:max-content;max-width:100%;min-width:0}.meeting-group-name{font-size:.92rem;font-weight:var(--fw-semibold);color:var(--text)}.meeting-group-count{display:inline-flex;align-items:center;padding:1px var(--space-15);border-radius:999px;background:color-mix(in srgb,var(--muted) 10%,transparent);font-size:var(--fs-1);font-weight:var(--fw-semibold);color:var(--muted);font-variant-numeric:tabular-nums}.meeting-archive-toggle{white-space:nowrap;color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.28rem .65rem;background:var(--surface)}.meeting-archive-toggle:hover{color:var(--text);border-color:var(--border-strong);background:var(--surface-muted)}.meeting-archive-toggle.is-on{color:var(--brand);border-color:color-mix(in srgb,var(--brand) 35%,var(--border));background:var(--brand-tint)}.meeting-cell-date{white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--muted)}.meeting-cell-title{overflow:hidden}.meeting-cell-attendees{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.meeting-cell-meta{overflow:hidden}.meeting-cell-actions{text-align:right;white-space:nowrap}.meeting-actions-head{width:6.25rem}.meeting-row{cursor:pointer}.meeting-meta{display:flex;flex-direction:column;gap:1px;min-width:0}.meeting-meta-author{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-2);font-weight:var(--fw-semibold);color:var(--text);line-height:1.3}.meeting-meta-date{white-space:nowrap;font-size:.74rem;color:var(--muted);font-variant-numeric:tabular-nums;line-height:1.3}.meeting-title-button{display:flex;align-items:flex-start;gap:var(--space-15);width:100%;min-width:0;margin:0;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;font:inherit;font-size:.9rem;font-weight:var(--fw-semibold);color:var(--text);text-align:left;cursor:pointer}.meeting-title-button:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.meeting-caret{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;height:1.45em;color:var(--muted);transition:transform var(--motion-fast) ease-out,color var(--motion-fast) ease-out}.meeting-row.is-open .meeting-caret{transform:rotate(90deg);color:var(--brand)}.meeting-title-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meeting-row.is-open .meeting-title-text{overflow:visible;white-space:normal}.meeting-table tbody tr.meeting-detail-row td,.meeting-table tbody tr.meeting-detail-row:hover td{padding:0 var(--space-3) var(--space-3);background:color-mix(in srgb,var(--brand-tint) 55%,var(--surface));border-bottom:1px solid var(--border);box-shadow:inset 3px 0 0 0 var(--brand)}.meeting-detail{display:grid;gap:var(--space-25);padding:var(--space-25) var(--space-3);background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--radius-sm)}.meeting-detail-label{margin-bottom:var(--space-05);font-size:var(--fs-1);font-weight:var(--fw-semibold);color:var(--muted);letter-spacing:.02em}.meeting-detail-attendees{font-size:.88rem;line-height:1.5;color:var(--text);overflow-wrap:anywhere}.meeting-detail-body{white-space:pre-wrap;font-size:.88rem;line-height:1.6;color:var(--text)}.term-meta{flex:1 1 100%;font-size:.78rem;color:var(--muted);padding-top:var(--space-1)}.tranche-edit-cell{padding:var(--space-3) var(--space-3);background:#f7f9fc}.tranche-edit-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-25) var(--space-3);align-items:start}.tef-field{display:flex;flex-direction:column;gap:var(--space-1);font-size:.74rem;color:var(--muted);min-width:0}.tef-field>span{font-weight:600}.tef-field>span em{font-weight:400;font-style:normal;opacity:.75}.tef-field input,.tef-field select{width:100%;padding:var(--space-15) var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.85rem;box-sizing:border-box;background:#fff;color:#1a2330}.tef-amount{grid-column:span 2;min-width:220px}.tef-amount-row{display:flex;flex-wrap:wrap;gap:var(--space-1);align-items:center}.tef-amount-row>input,.tef-amount-row>select{width:auto}.tef-amount-row>input{flex:1 1 120px;min-width:108px}.tef-amount-row>select{flex:0 0 78px;min-width:78px}.tef-amount-row>input.fx{flex:1 1 96px;min-width:96px}.tef-note{grid-column:1 / -1}.tef-actions{grid-column:1 / -1;display:flex;gap:var(--space-2);justify-content:flex-end;margin-top:var(--space-05)}.tranche-amount-edit{display:flex;flex-wrap:wrap;gap:var(--space-1);align-items:center;min-width:300px;white-space:normal}.tranche-amount-edit input{flex:1 1 112px;min-width:112px}.tranche-amount-edit select{flex:0 0 66px;min-width:66px}.tranche-amount-edit input.fx{flex:1 1 92px;min-width:92px}.tranche-adding td{background:#f3f8ff}.tranche-empty{text-align:center;color:#9aa4b2;padding:var(--space-4) var(--space-2);font-size:13px;line-height:1.5}.content-scroll{flex:1 1 auto;overflow:auto;min-height:0;padding:var(--space-3);display:grid;gap:var(--space-3);align-content:start}.rail-note{margin:0;font-size:.76rem;color:var(--muted);line-height:1.5}.rail-kv{display:flex;align-items:center;justify-content:space-between;gap:var(--space-25);padding:var(--space-15) var(--space-25);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-soft)}.rail-kv span{font-size:.76rem;font-weight:700;color:var(--muted);white-space:nowrap}.rail-kv strong{font-size:.86rem;font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}.rail-jump{border:0;background:none;padding:0;font:inherit;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;cursor:pointer;text-decoration:underline dotted transparent}.rail-jump:hover{text-decoration-color:var(--border-strong)}.rail-jump:focus-visible{outline:2px solid currentColor;outline-offset:2px}.rail-more{font-size:.78rem;color:var(--muted)}.rail-foot{flex:none;display:grid;gap:var(--space-2);padding:var(--space-25) var(--space-3);border-top:1px solid var(--border);background:var(--surface)}.rail-more>summary{cursor:pointer}.rail-more .modal-section{border:0;padding:var(--space-2) 0 0}@media(max-width:1040px){.deal-split{flex-direction:column;height:auto;max-height:none;min-height:auto}.deal-pane{flex:none!important;min-width:0}.tl-stream{max-height:38vh}.content-scroll{max-height:60vh}}.tranche-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:10px}.tranche-table{width:100%;min-width:960px;border-collapse:collapse;font-size:.85rem}.tranche-table th{text-align:left;font-size:.74rem;font-weight:700;color:var(--muted);background:var(--surface-soft, #f7f7f8);padding:var(--space-15) var(--space-2);border-bottom:1px solid var(--border);white-space:nowrap}.tranche-table td{padding:var(--space-15) var(--space-2);border-bottom:1px solid var(--border);vertical-align:middle}.tranche-table tr:last-child td{border-bottom:none}.tranche-table td.number{text-align:right;font-variant-numeric:tabular-nums}.tranche-table .tranche-stage{font:inherit;font-size:.82rem;padding:3px var(--space-15);border:1px solid var(--border);border-radius:7px;background:#fff;cursor:pointer;max-width:150px}.tranche-row.tg-quote{background:#fafbfc}.tranche-row.tg-order{background:#f4f8fd}.tranche-row.tg-make{background:#fffaf3}.tranche-row.tg-invoice{background:#fef6f6}.tranche-row.tg-done{background:#f3faf5}.tranche-table-wrap.tranche-compact{overflow-x:visible}.tranche-table-wrap.tranche-compact .tranche-table{min-width:0;table-layout:fixed;font-size:.82rem}.tranche-table-wrap.tranche-compact th,.tranche-table-wrap.tranche-compact td{padding:var(--space-15) var(--space-2)}.tranche-table-wrap.tranche-compact th:nth-child(2),.tranche-table-wrap.tranche-compact td:nth-child(2){width:52px}.tranche-table-wrap.tranche-compact th:nth-child(3),.tranche-table-wrap.tranche-compact td:nth-child(3){width:96px}.tranche-table-wrap.tranche-compact .tranche-stage{max-width:100%;font-size:.76rem;padding:2px var(--space-1)}.tranche-pay{display:block;margin-top:var(--space-05)}.tranche-table-wrap.tranche-compact .pay-chip{font-size:.66rem;padding:1px var(--space-15)}.tranche-table td.tranche-pay-cell{white-space:nowrap}.tranche-table-wrap.tranche-compact .reveal-toggle{margin:var(--space-2);padding:var(--space-15) var(--space-25);border:1px solid var(--border);color:var(--muted);font-size:.78rem}.tranche-table-wrap.tranche-compact .reveal-toggle:hover{background:var(--surface-soft)}.tranche-stage-cell{display:flex;align-items:center;gap:var(--space-15);min-width:0}.tranche-stage-cell>i{width:7px;height:7px;border-radius:50%;flex:none}.tranche-stage-name{font-size:.78rem;color:var(--ink)}.tranche-stage-cell .tranche-stage-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tranche-editing{background:var(--brand-tint, #fbf4f4)}.tranche-editing input,.tranche-editing select{width:100%;font:inherit;font-size:.82rem;padding:var(--space-1) var(--space-15);border:1px solid var(--border);border-radius:var(--radius-sm);box-sizing:border-box;background:#fff}.tranche-editing .tranche-amount-edit input,.tranche-editing .tranche-amount-edit select{width:auto}.tranche-memo{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.row-kebab{border:none;background:none;color:#9aa4b2;font-size:15px;line-height:1;padding:var(--space-05) var(--space-2);border-radius:var(--radius-sm);cursor:pointer;opacity:0;transition:opacity .12s ease,background .12s ease}tr:hover .row-kebab,tr:focus-within .row-kebab{opacity:1}.row-kebab[aria-expanded=true]{opacity:1}.row-kebab:focus-visible{opacity:1;outline:2px solid currentColor;outline-offset:2px}.row-kebab:hover{background:#eef2f7;color:#45505d}.row-actions-open{display:inline-flex;gap:var(--space-15);align-items:center}.tranche-actions{white-space:nowrap;text-align:right;vertical-align:middle}.tranche-actions button+button{margin-left:var(--space-15)}.deal-danger-row{display:flex;justify-content:flex-end;align-items:center;padding-top:var(--space-2);border-top:1px solid var(--border)}.deal-delete-button{border:none;background:none;color:var(--muted);font-size:.78rem;padding:4px 10px;border-radius:6px;cursor:pointer;opacity:.6;transition:opacity .12s ease,background .12s ease,color .12s ease}.deal-delete-button:hover:not(:disabled){color:#c0392b;background:#c0392b14;opacity:1}@media(max-width:900px){.tranche-table{font-size:.78rem;min-width:780px}.tranche-table th,.tranche-table td{padding:4px 6px}.tranche-table .tranche-stage{max-width:110px}.tranche-memo{max-width:120px}}@media(max-width:768px){.customer-filter-bar,.ai-summary-entry{align-items:stretch;flex-direction:column}.customer-filter-label{padding-top:0}}.primary-button.sm{padding:4px 10px;font-size:.8rem}.deal-thumbs{display:flex;align-items:center;gap:var(--space-15);flex-wrap:wrap;margin-top:var(--space-05)}.deal-thumb{height:40px;width:auto;max-width:90px;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border);background:#f1f3f5;cursor:pointer;transition:border-color .13s ease,transform .13s ease}.deal-thumb:hover{border-color:var(--brand, #d42228);transform:translateY(-1px)}.deal-thumb-more{font-size:.72rem;font-weight:600;color:var(--muted)}.img-hover-preview{position:fixed;z-index:80;transform:translate(-50%,calc(-100% - 4px));padding:4px;background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-2);pointer-events:none;animation:previewFade .14s ease-out}.img-hover-preview.below{transform:translate(-50%)}.img-hover-preview img{display:block;max-width:340px;max-height:340px;width:auto;height:auto;border-radius:7px}@keyframes previewFade{0%{opacity:0}to{opacity:1}}.deal-card-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-05);padding-top:var(--space-2);border-top:1px solid var(--border)}.deal-card-badges{display:flex;align-items:center;gap:var(--space-15);flex-wrap:wrap}.deal-card-actions{display:flex;align-items:center;gap:var(--space-15);flex-wrap:wrap;justify-content:flex-end}.deal-type-badge{border-radius:999px;padding:3px var(--space-2);font-size:.78rem;font-weight:500;white-space:nowrap}.deal-type-badge.mass{background:#e6f1fb;color:#185fa5}.deal-type-badge.project{background:#e1f5ee;color:#0f6e56}.advance-btn{border:1px solid var(--brand);background:var(--brand-tint);color:var(--brand);border-radius:var(--radius-sm);padding:3px var(--space-2);font-size:.74rem;font-weight:500;white-space:nowrap;cursor:pointer}.advance-btn:hover{background:var(--brand);color:#fff}.advance-btn:focus-visible{outline:2px solid currentColor;outline-offset:2px}.advance-btn:disabled{opacity:.5;cursor:wait}.advance-btn.back{border-color:var(--border-strong);background:var(--surface);color:var(--muted)}.advance-btn.back:hover{background:var(--surface-soft);color:var(--text)}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.drawer{position:static;height:auto;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px}.drawer-brand{border-bottom:0;margin-bottom:0;padding:4px 8px}.drawer-nav{grid-auto-flow:column;grid-template-columns:none;flex:1;overflow-x:auto}.drawer-nav .drawer-group-label{display:none}.drawer-nav button{padding:9px 12px}.drawer-nav button .nav-ico{width:25px;height:25px;border-radius:8px}.drawer-foot{border-top:0;padding-top:0;grid-auto-flow:column;align-items:center}.topbar{display:grid}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-grid-2,.dash-grid-3{grid-template-columns:1fr}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sales-workspace{display:block}.sales-side-panel{position:static}.entry-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-grid{grid-template-columns:1fr}}@media(max-width:620px){.content{padding:18px 14px 36px}.stat-grid,.metric-grid,.metric-grid.compact,.metric-grid.cols-3,.metric-grid.cols-4,.sales-grid{grid-template-columns:1fr}.search-control input,.control select,.control input,.control textarea{min-width:100%}.sales-actions{justify-content:stretch}.sales-actions>*{width:100%}.entry-form-grid,.entry-form-grid.single,.entry-form-grid.two-column,.modal-side-backdrop .side-form .entry-form-grid,.modal-stage.has-side .product-modal .entry-form-grid{grid-template-columns:1fr}.wide-control,.memo-control{grid-column:auto}.work-modal-backdrop{padding:12px;align-items:start}.work-modal{max-height:calc(100vh - 24px)}.work-modal-head{display:grid}.work-modal-body{max-height:calc(100vh - 118px);padding:14px}.content-scroll{max-height:none;overflow:visible}.modal-actions{padding:12px 14px}.product-title-panel{display:grid}.product-badges{justify-content:flex-start}.opportunity-row{grid-template-columns:1fr}.opportunity-meta{justify-content:flex-start}}.flow-board{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-2);padding:var(--space-5);margin-bottom:var(--space-5)}.page>.chart-panel,.page>.flow-board{content-visibility:auto;contain-intrinsic-size:auto 360px}.dashboard-detail-load{display:block;margin:0 auto 18px}.flow-board-head{display:flex;align-items:baseline;gap:12px;margin-bottom:12px;flex-wrap:wrap}.flow-board-title{font-size:.95rem;font-weight:700;color:var(--ink)}.flow-board-sub{font-size:.78rem;color:var(--muted)}.flow-chart{display:flex;gap:2px;align-items:stretch;width:100%;overflow-x:auto;padding-bottom:2px}.flow-node{--node: var(--stage-none);position:relative;flex:1 1 0;min-width:62px;height:58px;border:1px solid color-mix(in srgb,var(--node) 45%,var(--border));border-top:3px solid var(--node);border-radius:9px;background:color-mix(in srgb,var(--node) calc(var(--fill, 9) * 1%),var(--surface));cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:4px 6px;transition:transform .13s ease,box-shadow .13s ease,background .13s ease}.flow-node:hover:not(.empty){transform:translateY(-2px);background:color-mix(in srgb,var(--node) 18%,var(--surface));box-shadow:var(--shadow-2)}.flow-node.active{background:color-mix(in srgb,var(--node) 22%,var(--surface));box-shadow:var(--shadow-2)}.flow-node.pinned{outline:2px solid var(--node);outline-offset:-2px}.flow-node.empty{cursor:default;opacity:.5;background:var(--surface-soft);border-top-color:var(--border-strong)}.flow-node-count{font-size:var(--fs-5);font-weight:var(--fw-black);line-height:1;color:var(--node)}.flow-node.empty .flow-node-count{color:var(--muted)}.flow-node-label{font-size:.68rem;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.flow-arrow{flex:0 0 auto;align-self:center;color:var(--border-strong);font-size:1.3rem;font-weight:700;line-height:1;padding:0 1px;-webkit-user-select:none;user-select:none}.flow-empty{flex:1;text-align:center;color:var(--muted);font-size:.82rem;padding:14px 0}.flow-expand{margin-top:12px;border-top:1px dashed var(--border-strong);padding-top:12px;animation:flowReveal var(--motion-fast) ease}@keyframes flowReveal{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.flow-expand-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.flow-expand-head strong{font-size:.88rem;color:var(--ink)}.flow-expand-count{font-size:.72rem;font-weight:700;color:var(--brand);background:var(--brand-tint);padding:2px 8px;border-radius:999px}.flow-expand-hint{font-size:.74rem;color:var(--muted)}.flow-expand-close{margin-left:auto;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:.74rem;padding:3px 10px;border-radius:999px;cursor:pointer}.flow-expand-close:hover{border-color:var(--brand);color:var(--brand)}.flow-expand-list{display:flex;flex-wrap:wrap;gap:8px}.flow-deal-chip{display:flex;flex-direction:column;align-items:flex-start;gap:1px;text-align:left;border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;padding:7px 12px;cursor:pointer;max-width:260px;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.flow-deal-chip:hover{transform:translateY(-1px);border-color:var(--brand);box-shadow:var(--shadow-2);background:var(--brand-tint)}.flow-deal-chip strong{font-size:.82rem;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:236px}.flow-deal-chip span{font-size:.72rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:236px}@media(max-width:720px){.flow-node-label{display:none}.flow-node{min-width:46px;height:50px}.flow-arrow{font-size:1rem}}.spark-axis{display:flex;justify-content:space-between;margin-top:2px;font-size:.66rem;color:var(--muted);letter-spacing:-.02em}.forecast-toggle{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;color:var(--muted);cursor:pointer;margin:-4px 0 8px;-webkit-user-select:none;user-select:none}.forecast-toggle input{width:15px;height:15px;accent-color:var(--brand);cursor:pointer}.login-screen{min-height:100vh;display:grid;place-items:center;background:radial-gradient(66vw 82vh at 6% -8%,color-mix(in srgb,var(--mesh-coral) 62%,transparent),transparent 64%),radial-gradient(60vw 74vh at 96% 0%,color-mix(in srgb,var(--mesh-purple) 54%,transparent),transparent 62%),radial-gradient(62vw 80vh at 102% 98%,color-mix(in srgb,var(--mesh-cyan) 58%,transparent),transparent 64%),radial-gradient(64vw 84vh at -2% 102%,color-mix(in srgb,var(--mesh-blue) 46%,transparent),transparent 62%),radial-gradient(50vw 68vh at 52% 44%,color-mix(in srgb,var(--mesh-pink) 30%,transparent),transparent 68%),var(--canvas);background-attachment:fixed;padding:24px}.login-card{width:100%;max-width:400px;display:flex;flex-direction:column;gap:14px;background:var(--surface);border:1px solid rgba(255,255,255,.72);border-radius:var(--radius-xl);box-shadow:var(--shadow-float);overflow:hidden;padding:0 28px 32px}.login-title{margin:8px 0 0;font-size:1.4rem;color:var(--text)}.login-sub{margin:0;color:var(--muted);font-size:.9rem}.login-card .control input{min-width:0;width:100%}.login-submit{margin-top:6px;width:100%}.weekly-feed{display:grid;gap:16px}.weekly-group{display:grid;gap:6px}.weekly-group-head{display:flex;align-items:baseline;gap:8px;font-weight:700;font-size:.92rem;color:var(--text)}.weekly-group-head span{font-size:.74rem;font-weight:600;color:var(--muted)}.weekly-group-list{margin-top:0;padding-top:0;border-top:0}.weekly-row .weekly-who{display:block;opacity:0;max-height:0;overflow:hidden;transition:opacity .12s ease-out}.weekly-row:hover .weekly-who,.weekly-row:focus-visible .weekly-who,.weekly-row:focus-within .weekly-who{opacity:1;max-height:1.6rem}.weekly-row{cursor:default;border-radius:6px}.change-diff-list{list-style:none;margin:.2rem 0 0;padding:.3rem .5rem;display:flex;flex-direction:column;gap:.15rem;background:color-mix(in srgb,var(--muted) 7%,transparent);border-left:2px solid color-mix(in srgb,var(--muted) 35%,transparent);border-radius:4px}.change-diff-line{display:flex;align-items:baseline;gap:.4rem;font-size:.78rem;line-height:1.35}.change-diff-field{color:var(--muted);flex-shrink:0;min-width:4.2rem}.change-diff-before{color:var(--muted);text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--muted) 55%,transparent);word-break:break-all}.change-diff-arrow{color:var(--muted);flex-shrink:0}.change-diff-after{font-weight:600;word-break:break-all}.weekly-row:hover{background:var(--surface-soft)}.weekly-row.clickable{cursor:pointer}.weekly-row.clickable:hover{background:#eef4fb}.weekly-empty{padding:16px;color:var(--muted);font-size:.86rem}.weekly-two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}@media(max-width:900px){.weekly-two-col{grid-template-columns:1fr}}.weekly-actor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.weekly-edit-strip .metric-card{padding:10px 12px}.weekly-edit-strip .metric-card:before{width:20px;height:2px;margin-bottom:8px}.weekly-edit-strip .metric-value{font-size:1rem;font-weight:700}.weekly-edit-strip .metric-label{font-size:.74rem}.weekly-movement-list{display:grid;gap:2px;margin-top:4px}.weekly-movement-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border-radius:6px;border:none;background:none;text-align:left;cursor:pointer;width:100%;color:var(--text);font-size:.86rem;transition:background .1s}.weekly-movement-row:hover{background:var(--surface-soft)}.weekly-movement-row:disabled{cursor:default}.weekly-movement-main{display:flex;flex-direction:column;gap:2px;min-width:0}.weekly-movement-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.weekly-movement-stage{color:var(--muted);font-size:.78rem}.weekly-movement-meta{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.weekly-movement-amount{font-weight:700;font-size:.9rem;white-space:nowrap}.weekly-movement-date{color:var(--muted);font-size:.75rem}.weekly-movement-skipped{padding:4px 10px 6px;color:var(--muted);font-size:.78rem}.movement-basis-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.movement-basis-hint{font-size:.76rem;color:var(--muted)}.weekly-summary-chips{display:flex;flex-wrap:wrap;gap:var(--space-15);margin-bottom:var(--space-2)}.weekly-summary-chip{padding:var(--space-05) var(--space-2);border:1px solid var(--border);border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:var(--fs-1);font-weight:var(--fw-medium);white-space:nowrap}.weekly-summary-chip b{color:var(--text);font-weight:var(--fw-bold)}.weekly-disclosure{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border:none;border-radius:var(--radius-sm);background:none;color:var(--muted);font-size:var(--fs-2);cursor:pointer;transition:background var(--motion-fast) ease,color var(--motion-fast) ease}.weekly-disclosure:hover{background:var(--surface-soft);color:var(--text)}.weekly-disclosure-caret{font-size:var(--fs-1);transition:transform var(--motion-fast) ease}.weekly-disclosure-caret.open{transform:rotate(90deg)}.actor-ai-line{display:flex;align-items:baseline;gap:var(--space-2);margin-bottom:var(--space-2);padding:var(--space-2) var(--space-25);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--info-bg);color:var(--text);font-size:var(--fs-2);line-height:1.5}.actor-ai-tag{flex-shrink:0;color:var(--info);font-size:var(--fs-1);font-weight:var(--fw-bold);white-space:nowrap}.user-row-actions{display:flex;gap:10px;flex-wrap:wrap}.role-badge{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;font-size:.72rem;font-weight:700;background:var(--surface-soft);color:var(--text-secondary, #5c5a55)}.role-badge.role-admin{background:var(--brand-tint);color:var(--brand)}.role-badge.role-sales{background:#e8f1f8;color:#2f6f9f}.role-badge.role-accounting{background:#e7f4ee;color:#1f8a5b}.role-badge.role-viewer{background:#f2f1ee;color:#8a8782}.role-badge.self{background:#1f2937;color:#fff}.table-panel{-webkit-overflow-scrolling:touch}@media(max-width:820px){.drawer{flex-wrap:nowrap;padding:6px 10px;gap:0;border-right:none;border-bottom:1px solid var(--border)}.drawer-brand{padding:2px 10px 2px 0;border-bottom:none;margin-bottom:0;border-right:1px solid var(--border);margin-right:8px;flex:none}.drawer-brand .brand-text{display:none}.drawer-nav{display:flex;flex-direction:row;align-items:center;gap:2px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.drawer-nav::-webkit-scrollbar{display:none}.drawer-nav button{flex:none;width:auto;border-left:none;border-bottom:3px solid transparent;border-radius:8px 8px 0 0;padding:7px 11px;font-size:.83rem;white-space:nowrap;gap:0}.drawer-nav button .nav-ico{display:none}.drawer-nav button.active{background:var(--brand-tint);color:var(--brand-hover);border-left-color:transparent;border-bottom-color:var(--brand);border-radius:8px 8px 0 0}.app-header-dock{margin-bottom:14px}.app-header{padding:12px 14px}.app-header h1{font-size:1.5rem}.content{padding:14px 14px 36px}}@media(max-width:560px){.content{padding:10px 10px 24px}.app-header-dock{margin-bottom:10px}.app-header{padding:10px 12px;gap:8px;border-radius:8px}.app-header h1{font-size:1.05rem;letter-spacing:0}.app-header .eyebrow{font-size:.66rem}.app-header-right{gap:6px}.meta-pill,.user-chip-name{display:none}.filter-row{flex-direction:column;align-items:stretch}.filter-row .seg-field,.filter-row .company-select-body{width:100%}.filter-row .company-toggle{flex:1}.metric-grid.cols-3{grid-template-columns:1fr}.work-modal-backdrop{padding:5px}.work-modal{width:96vw;max-height:92vh;border-radius:10px}.product-modal{width:96vw}.work-modal-head{padding:10px 12px}.work-modal-head strong{font-size:1.08rem}.work-modal-body{padding:10px 12px 12px;max-height:calc(92vh - 116px)}.modal-actions{padding:8px 12px}th,td{padding:7px 8px;font-size:.82rem}th{font-size:.72rem}.section-heading h2{font-size:1.05rem}.stat-value{font-size:1.2rem}.flow-board{padding:12px 12px 14px}.bar-chart{grid-template-columns:repeat(12,minmax(26px,1fr));gap:3px;min-height:180px}.bar-stack{height:140px}.goal-gauge svg,.combo-section svg,.combo-section .donut,.chart-wrap svg{max-width:100%;height:auto}.combo-section{padding:12px}.monthly-table-x{font-size:.68rem}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stat-card{padding:12px 12px 10px}.stat-note{font-size:.68rem}.trend-chip,.mom-chip{font-size:.66rem}.flow-arrow{display:none}.flow-node{min-width:56px;height:52px}.flow-board-sub{display:none}.flow-chart{scroll-snap-type:x proximity}.flow-node{scroll-snap-align:start}.donut-legend{flex-wrap:wrap;justify-content:center;font-size:.72rem}.chart-legend{flex-wrap:wrap;justify-content:flex-start}.goal-top{flex-wrap:wrap;gap:8px}.monthly-trend{row-gap:6px}.mt-hint{display:none}}@media(hover:none){.row-kebab,.memo-meta{opacity:.7}.memo-del{opacity:.55}.weekly-row .weekly-who{opacity:.8;max-height:1.6rem}.mt-hint{display:none}.deal-card{transition:none}}.nav-pending-badge{margin-left:auto;min-width:18px;height:18px;padding:0 5px;display:grid;place-items:center;background:var(--brand);color:#fff;font-size:.6rem;font-weight:700;border-radius:999px;line-height:1;flex-shrink:0}.pending-panel{margin-bottom:16px}.pending-empty{padding:10px 0;color:var(--muted);font-size:.88rem}.signup-link{width:100%;margin-top:4px;color:var(--muted);font-size:.88rem;text-align:center}.ledger-table th.ldg-sticky-1,.ledger-table td.ldg-sticky-1{width:110px;min-width:110px;max-width:110px}.ledger-table th.ldg-sticky-2,.ledger-table td.ldg-sticky-2{width:108px;min-width:108px;max-width:108px}.ledger-table .ldg-sticky-1{position:sticky;left:0;z-index:1}.ledger-table .ldg-sticky-2{position:sticky;left:110px;z-index:1;background:var(--surface)}.ledger-table thead .ldg-sticky-1,.ledger-table thead .ldg-sticky-2{z-index:3;background:#f4f6f9}.ledger-table tbody tr:nth-child(2n) td.ldg-sticky-2{background:#fafbfd}.ledger-table tbody tr:hover td.ldg-sticky-2{background:#eef4fb}.ledger-table .overdue-row td.ldg-sticky-2{background:#fef6f5}.ledger-table .overdue-row:hover td.ldg-sticky-2{background:#fce9e8}.ledger-group-header td{background:#1d2630;color:#dce4ed;font-weight:700;font-size:.78rem;padding:5px 13px;letter-spacing:.06em;text-transform:uppercase;border-bottom:none}.ledger-table .ledger-group-header:hover td{background:#1d2630}.ledger-subtotal td{background:#edf1f7;font-weight:600;font-size:.84rem;color:var(--slate);border-top:1px solid #c5cfe0;border-bottom:1px solid #c5cfe0}.ledger-subtotal td.ldg-sticky-1,.ledger-table .ledger-subtotal:hover td,.ledger-table .ledger-subtotal:hover td.ldg-sticky-1{background:#edf1f7}.ledger-total td{background:#d6e2ef;font-weight:700;font-size:.88rem;color:var(--ink);border-top:2px solid #a3b8cf;border-bottom:none}.ledger-total td.ldg-sticky-1,.ledger-table tfoot tr:hover td,.ledger-table tfoot tr:hover td.ldg-sticky-1{background:#d6e2ef}.status-chip{display:inline-block;font-size:.73rem;font-weight:700;padding:2px 9px;border-radius:999px;white-space:nowrap;letter-spacing:.01em}.status-chip.st-paid{background:#e7f4ee;color:#1f8a5b}.status-chip.st-partial{background:#fff4d6;color:#9a5f00}.status-chip.st-due{background:#fdeeee;color:#c0392b}.status-chip.st-forecast{background:#e9f1fb;color:#285a86}.ldg-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86rem;font-variant-numeric:tabular-nums;letter-spacing:.01em;color:var(--slate)}.vat-hint{display:block;font-size:.74rem;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;margin-top:2px;line-height:1.3}.tranche-amount-edit .vat-hint{flex-basis:100%;margin-top:1px}.exec-page{max-width:620px;margin:0 auto;display:flex;flex-direction:column;gap:14px;padding-bottom:40px}.exec-hero{background:linear-gradient(135deg,#d42228,#a3161b);color:#fff;border-radius:var(--radius-xl);padding:22px 22px 20px;box-shadow:0 8px 24px #d4222838}.exec-hero-label{font-size:.86rem;font-weight:600;opacity:.85}.exec-hero-row{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-top:4px}.exec-hero-num{font-size:var(--fs-8);font-weight:var(--fw-black);letter-spacing:-.02em}.exec-hero .trend-chip{background:#ffffff2e;color:#fff}.exec-hero .trend-chip.down{background:#00000040}.exec-card{background:var(--surface);border:1px solid var(--panel-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:18px}.exec-card-head{font-size:var(--fs-3);font-weight:var(--fw-extrabold);color:var(--ink);margin-bottom:12px;display:flex;align-items:baseline;gap:8px}.exec-card-head span{font-size:.72rem;font-weight:500;color:var(--muted)}.exec-card-head .mf-opt{margin-left:auto}.exec-split{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:560px){.exec-split{grid-template-columns:1fr}}.exec-money-row{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.exec-num{font-size:var(--fs-6);font-weight:var(--fw-extrabold);color:var(--ink);letter-spacing:-.01em}.exec-overdue{font-size:.85rem;font-weight:800;color:#b31b20;background:#fdeaea;border-radius:999px;padding:4px 12px}.exec-ok{font-size:.85rem;font-weight:700;color:#1f7a44;background:#e8f6ee;border-radius:999px;padding:4px 12px}.exec-note{font-size:.76rem;color:var(--muted)}.exec-week-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.exec-chip{display:flex;flex-direction:column;align-items:center;gap:3px;padding:12px 6px;border-radius:12px;background:#f7f9fc;border:1px solid var(--border)}.exec-chip em{font-style:normal;font-size:.74rem;font-weight:700;color:var(--muted)}.exec-chip strong{font-size:var(--fs-5);font-weight:var(--fw-extrabold);color:var(--ink)}.exec-chip span{font-size:.7rem;color:var(--muted);text-align:center;overflow-wrap:anywhere}.bulk-assign-modal{width:min(1180px,96vw);max-width:min(1180px,96vw);max-height:92vh;display:flex;flex-direction:column}.bulk-assign-modal .work-modal-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.bulk-assign-head{border-bottom:3px solid #D42228}.bulk-head-stats{display:flex;align-items:center;gap:8px}.bulk-stat{font-size:.78rem;font-weight:700;padding:3px 10px;border-radius:999px;background:#f1f4f8;color:#56606c}.bulk-stat.warn{background:#fff3cd;color:#8a6d1a}.bulk-assign-tools{display:flex;align-items:end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.bulk-apply-bar{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:10px;border:1px dashed var(--border);background:#fafbfd;transition:all .15s ease}.bulk-apply-bar.active{border:1px solid #D42228;background:#fff5f5;box-shadow:0 2px 8px #d4222814}.bulk-count{font-size:.84rem;font-weight:700;color:#56606c;min-width:96px}.bulk-apply-bar.active .bulk-count{color:#b31b20}.page>.bulk-apply-bar{margin-top:12px;flex-wrap:wrap}.bulk-apply-bar .control{grid-auto-flow:column;align-items:center;gap:8px;font-size:.84rem}.bulk-apply-bar .control input{height:34px;min-width:148px}.page>.bulk-apply-hint{margin-top:12px;font-size:.84rem}.filter-excluded-note{margin:8px 0 0;font-size:var(--fs-1);color:var(--muted)}.finance-filters .segmented,.month-timeline-controls .segmented{gap:0;height:34px;padding:var(--space-05);flex-wrap:nowrap;background:var(--surface-soft);border:1px solid var(--border-strong);border-radius:var(--radius-md)}.finance-filters .segmented button,.month-timeline-controls .segmented button{height:100%;border:0;border-radius:var(--radius-sm);padding:0 var(--space-3);background:transparent;color:var(--muted);font-size:var(--fs-2);font-weight:var(--fw-semibold);white-space:nowrap;transition:background var(--motion-fast) ease,color var(--motion-fast) ease}.finance-filters .segmented button:hover,.month-timeline-controls .segmented button:hover{color:var(--text)}.finance-filters .segmented button.active,.month-timeline-controls .segmented button.active{background:var(--brand-tint);border:0;color:var(--brand);font-weight:var(--fw-bold);box-shadow:inset 0 0 0 1px var(--brand)}.finance-filters .segmented button:focus-visible,.month-timeline-controls .segmented button:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.finance-filters .seg-field,.finance-filters .control{grid-template-rows:auto 42px;align-items:center}.finance-filters{gap:var(--space-3)}@media(max-width:768px){.finance-filters .segmented{width:100%}.finance-filters .segmented button{flex:1 1 0;padding:0 var(--space-2)}}.month-timeline .panel-head{align-items:center}.month-timeline-controls{display:flex;align-items:center;gap:12px}.month-timeline-controls .tl-period-all{padding:5px 11px;border-radius:var(--radius-sm);font-weight:var(--fw-semibold)}.month-timeline-controls .tl-period-all.is-active{background:var(--brand-tint);color:var(--brand);font-weight:var(--fw-bold);box-shadow:inset 0 0 0 1px var(--brand)}.month-timeline-controls .seg-field{grid-auto-flow:column;align-items:center;gap:8px}.month-timeline>.panel-note{margin:10px 0 0;font-size:var(--fs-1)}.timeline-strip{display:flex;gap:var(--space-2);overflow-x:auto;padding-bottom:var(--space-1);-webkit-overflow-scrolling:touch}.tl-bucket{flex:0 0 auto;display:grid;gap:2px;min-width:118px;padding:10px 14px;text-align:left;cursor:pointer;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-soft);color:var(--text)}.tl-head{display:flex;align-items:center;gap:6px}.tl-label{font-size:var(--fs-2);font-weight:var(--fw-semibold);color:var(--muted)}.tl-amount{font-size:var(--fs-4);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}.tl-note{font-size:var(--fs-1);color:var(--muted)}.tl-forecast{font-size:var(--fs-1);color:var(--muted);padding-top:2px;border-top:1px dashed var(--border)}.tl-bucket.is-current{border-color:var(--brand);background:var(--brand-tint)}.tl-bucket.is-current .tl-label{color:var(--brand);font-weight:var(--fw-bold)}.tl-bucket.is-current .tl-amount{font-size:var(--fs-5);font-weight:var(--fw-extrabold)}.tl-now{font-size:var(--fs-1);font-weight:var(--fw-bold);color:#fff;background:var(--brand);border-radius:999px;padding:1px 7px}.tl-bucket.tl-overdue{border-color:var(--danger);background:var(--danger-bg)}.tl-bucket.tl-overdue .tl-label,.tl-bucket.tl-overdue .tl-amount{color:var(--danger)}.tl-bucket.tl-unscheduled{border-style:dashed}.tl-bucket.is-active{box-shadow:inset 0 0 0 2px var(--text)}.timeline-notices{display:grid;gap:var(--space-1);margin-top:var(--space-3)}.timeline-notice{margin:0;padding:var(--space-2) var(--space-3);border:1px solid var(--warning);border-radius:var(--radius-sm);background:var(--warning-bg);color:var(--text);font-size:var(--fs-2);line-height:1.5}.timeline-notice.fx-valuation-note{border-color:var(--info);background:var(--info-bg)}@media(max-width:560px){.month-timeline .panel-head{align-items:flex-start;flex-direction:column}.tl-bucket{min-width:104px;padding:8px 11px}}.cash-calendar .panel-head{align-items:center}.cal-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-1);margin-top:var(--space-3)}.cal-weekday{text-align:center;font-size:var(--fs-1);font-weight:var(--fw-semibold);color:var(--muted);padding-bottom:var(--space-1)}.cal-weekdays .cal-weekday:first-child{color:var(--danger)}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-1)}.cal-cell{display:flex;flex-direction:column;gap:3px;align-items:stretch;text-align:left;min-height:84px;padding:6px 7px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text);font:inherit}.cal-cell.is-empty{background:var(--surface-soft);border-color:transparent}.cal-cell.is-blank{background:none;border-color:transparent;min-height:0}.cal-cell.has-money{cursor:pointer}.cal-cell.has-money:hover{border-color:var(--border-strong);box-shadow:var(--shadow-1)}.cal-cell.is-today{border-color:var(--brand);background:var(--brand-tint)}.cal-cell.is-active{box-shadow:inset 0 0 0 2px var(--text)}.cal-day{display:flex;align-items:center;gap:5px;font-size:var(--fs-2);font-weight:var(--fw-semibold);color:var(--muted);font-variant-numeric:tabular-nums}.cal-cell.is-today .cal-day{color:var(--brand);font-weight:var(--fw-bold)}.cal-today{font-size:var(--fs-1);font-weight:var(--fw-bold);color:#fff;background:var(--brand);border-radius:999px;padding:0 6px}.cal-amounts{display:flex;flex-direction:column;gap:2px}.cal-amt{display:flex;align-items:baseline;gap:4px;font-size:var(--fs-2);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;white-space:nowrap}.cal-amt-tag{font-size:var(--fs-1);font-weight:var(--fw-semibold);opacity:.75}.cal-paid{color:var(--success)}.cal-outstanding{color:var(--danger)}.cal-expected{color:var(--tb-blue-ink)}.cal-receivable,.cal-outflow{color:var(--muted);font-weight:var(--fw-semibold);padding-top:2px;border-top:1px dashed var(--border)}.cal-key{display:inline-block;margin:0 4px 0 8px;font-weight:var(--fw-bold)}.cash-day-detail{margin-top:var(--space-4)}.cash-day-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2)}.cash-day-head h3{margin:0;font-size:var(--fs-4);font-weight:var(--fw-bold)}.cash-day-split{margin:var(--space-3) 0 var(--space-2)}@media(max-width:720px){.cash-calendar .panel-head{align-items:flex-start;flex-direction:column}.cal-weekdays{display:none}.cal-grid{display:flex;flex-direction:column;gap:var(--space-1)}.cal-cell.is-blank,.cal-cell.is-empty:not(.is-today){display:none}.cal-cell{flex-direction:row;align-items:center;justify-content:space-between;min-height:0;padding:8px 12px}.cal-day{min-width:64px}.cal-amounts{align-items:flex-end}.cal-receivable,.cal-outflow{border-top:0;padding-top:0}}.bulk-assign-scroll{flex:1 1 auto;min-height:0;overflow:auto;border:1px solid var(--border);border-radius:10px}.bulk-assign-table{width:100%;border-collapse:collapse;font-size:.88rem}.bulk-assign-table th{position:sticky;top:0;background:#f6f8fb;z-index:2;text-align:left;padding:9px 12px;border-bottom:1px solid var(--border);font-size:.8rem;color:#56606c}.bulk-assign-table td{padding:6px 12px;border-bottom:1px solid #f0f2f6}.bulk-assign-table tbody tr:not(.bulk-branch-row):nth-child(2n) td{background:#fbfcfe}.bulk-assign-table tbody tr:not(.bulk-branch-row):hover td{background:#f3f7fc}.bulk-assign-table tr.unassigned .bulk-name:after{content:"미지정";margin-left:8px;font-size:.68rem;font-weight:700;color:#8a6d1a;background:#fff3cd;border-radius:4px;padding:1px 6px;vertical-align:1px}.bulk-assign-table tr.checked td{background:#fff5f5!important}.bulk-check-col{width:36px;text-align:center}.bulk-check-col input{width:15px;height:15px;accent-color:#D42228;cursor:pointer}.bulk-name{font-weight:600;color:#2f3a47;cursor:pointer}.bulk-customer{color:#56606c;cursor:pointer}.bulk-owner-col{width:190px}.bulk-assign-table .owner-select{min-width:160px;width:100%}.bulk-branch-row td{background:#f1f4f9!important;padding:7px 12px;position:sticky;top:35px;z-index:1;border-bottom:1px solid var(--border)}.bulk-branch-chip{display:inline-block;font-size:.76rem;font-weight:800;padding:2px 10px;border-radius:999px;color:#fff}.bulk-branch-chip.iw{background:#d42228}.bulk-branch-chip.tb{background:#4a90cd}.bulk-branch-count{margin-left:10px;font-size:.76rem;color:#6a7686}.payready-badge{display:inline-flex;align-items:center;font-size:.7rem;font-weight:700;padding:1px var(--space-15);border-radius:4px;background:#e8f6ee;color:#1f7a44;border:1px solid #b7e3c8;white-space:nowrap}.payready-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-25);flex-wrap:wrap;padding:var(--space-25) var(--space-3);margin-bottom:var(--space-3);border-radius:10px;background:#e8f6ee;border:1px solid #b7e3c8;color:#1f7a44;font-size:.85rem;font-weight:600}.stale-badge{display:inline-flex;align-items:center;font-size:.7rem;font-weight:600;padding:1px 6px 1px 5px;border-radius:4px;background:#fff7ed;color:#b45309;border:1px solid #fed7aa;letter-spacing:0;white-space:nowrap}.tranche-row-zero td{color:var(--muted);font-style:italic;opacity:.72}.tranche-row-zero .tranche-actions button{font-style:normal}.tranche-row-zero .tranche-actions .row-actions-open button{opacity:1}.tranche-row-zero:hover .tranche-actions .row-kebab,.tranche-row-zero:focus-within .tranche-actions .row-kebab{opacity:1}.progress-step-zero .progress-step-body>*:not(.progress-edit){opacity:.55}.progress-step-zero .progress-step-body strong,.progress-step-zero .progress-step-body p{font-style:italic;color:var(--muted)}.activity-report-page .owner-select{min-width:160px}.ar-summary{font-size:.86rem;color:var(--muted);margin-bottom:12px}.ar-customer-list{display:flex;flex-direction:column;gap:16px}.ar-customer{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);padding:14px 16px}.ar-customer-name{font-size:1rem;font-weight:800;color:var(--ink);padding-bottom:8px;margin-bottom:10px;border-bottom:1px solid var(--border)}.ar-deal{padding:8px 0 12px}.ar-deal+.ar-deal{border-top:1px dashed var(--border);padding-top:12px}.ar-deal-title{font-size:.9rem;font-weight:700;color:var(--slate);margin-bottom:8px;padding-left:12px}.ar-ai{display:flex;align-items:baseline;gap:8px;margin-bottom:8px;padding:6px 12px 8px;font-size:.86rem;line-height:1.45;color:var(--text, #1a2330);background:linear-gradient(90deg,color-mix(in srgb,#7c5cff 8%,transparent),transparent);border-radius:8px}.ar-ai-tag{flex-shrink:0;font-size:.68rem;font-weight:700;color:#7c5cff;border:1px solid color-mix(in srgb,#7c5cff 40%,transparent);border-radius:999px;padding:1px 7px}.ar-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding-left:12px}.ar-col{min-width:0}.ar-col-head{font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.ar-col-actual .ar-col-head{color:var(--slate)}.ar-col-planned .ar-col-head{color:var(--tb-blue-ink)}.ar-col-empty{font-size:.82rem;color:var(--muted);font-style:italic;padding:4px 0}.ar-actual-list,.ar-planned-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.ar-actual-item{border-left:2px solid var(--border-strong);padding:2px 0 2px 10px}.ar-actual-main{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ar-actual-text{font-size:.9rem;font-weight:600;color:var(--ink)}.ar-actual-note{font-size:.84rem;color:var(--slate);margin-top:2px}.ar-actual-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:3px;font-size:.74rem;color:var(--muted)}.ar-actual-stage{font-weight:700;color:var(--brand)}.ar-memo-badge{display:inline-block;font-size:.66rem;font-weight:700;padding:1px 7px;border-radius:999px;background:var(--surface-soft);color:var(--muted);border:1px solid var(--border)}.ar-planned-item{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;font-size:.9rem}.ar-planned-text{color:var(--ink);flex:1 1 auto;min-width:0}.ar-planned-date{font-size:.74rem;color:var(--muted);font-variant-numeric:tabular-nums}.ar-src-badge{display:inline-block;flex-shrink:0;font-size:.7rem;font-weight:600;line-height:1.4;padding:1px 9px;border-radius:999px;white-space:nowrap}.ar-src-planned{background:var(--tb-blue-tint);color:var(--tb-blue-ink)}.ar-src-next{background:var(--brand-tint);color:var(--brand)}.ar-src-todo{background:#fff3cd;color:#8a6d1a}.ar-src-manual{background:var(--brand-tint);color:#8f171b}.ar-planned-item.manual .ar-planned-text{white-space:pre-wrap}.ar-plan-edit{width:100%;box-sizing:border-box;font-family:inherit;font-size:.9rem;line-height:1.4;color:var(--ink);border:1px solid var(--border);border-radius:6px;padding:8px;resize:vertical}.ar-plan-edit:focus{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 35%,transparent)}.ar-plan-editbtn{border:none;background:none;color:var(--muted);cursor:pointer;font-size:12px;line-height:1;padding:2px 5px;margin-left:6px;border-radius:5px;opacity:.6;transition:opacity .1s ease,background .1s ease,color .1s ease}.ar-plan-editbtn:hover{opacity:1;color:var(--brand);background:var(--surface-soft)}.ar-planned-list.editable,.ar-col-empty.editable{cursor:pointer}.ar-planned-list.editable:hover,.ar-col-empty.editable:hover{background:color-mix(in srgb,var(--muted) 6%,transparent);border-radius:6px}.ar-plan-revert{margin-top:6px;border:none;background:none;color:var(--text-secondary, #5c5a55);cursor:pointer;font-size:12px;padding:2px 4px;border-radius:5px;transition:background .1s ease,color .1s ease}.ar-plan-revert:hover{color:var(--brand);background:var(--surface-soft)}.ar-plan-revert:disabled{opacity:.5;cursor:default}@media(max-width:720px){.ar-columns{grid-template-columns:1fr}}html,body,#root,.app-shell,.drawer,.drawer-nav,.content,.page,.app-header,.app-header-left,.app-header-right{min-width:0;max-width:100%}.page>*,.chart-panel,.monthly-flow-wrap{min-width:0;max-width:100%}.table-panel,.monthly-table-scroll,.monthly-hover-table,.tranche-table-wrap,.bulk-assign-scroll{min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-gutter:stable}.monthly-hover-table{width:100%;overflow-y:hidden}.primary-button,.secondary-button,.ghost-button,.modal-actions button,.account-row button,.bulk-apply-bar button{max-width:100%;white-space:nowrap;word-break:keep-all}.account-row input,.bulk-apply-bar select,.exec-page,.exec-card,.exec-card>*,.exec-split>*,.deal-split,.deal-pane{min-width:0;max-width:100%}.exec-card svg,.exec-card canvas,.exec-card img{max-width:100%}[data-testid=sealed-documents-message]{max-width:100%;word-break:keep-all;overflow-wrap:break-word}@media(max-width:980px){.app-shell{grid-template-columns:minmax(0,1fr);grid-template-rows:max-content minmax(0,1fr)}.drawer-nav{width:100%}.deal-pane{min-width:0}.work-modal{max-width:calc(100vw - 24px)}}@media(min-width:981px)and (max-width:1040px){.work-modal{max-width:calc(100vw - 48px)}}@media(max-width:1040px){.side-form{animation:none!important;transform:none!important}}@media(max-width:620px){.panel-head{align-items:flex-start;flex-direction:column;gap:4px}.panel-head h3,.keep-phrase{white-space:nowrap}.page th,.page td{word-break:keep-all;overflow-wrap:normal}.page,.work-modal,.image-pop{word-break:keep-all;overflow-wrap:break-word;text-wrap:pretty}.focus-item-text,.nchk-text{word-break:keep-all;overflow-wrap:break-word}.app-header-left,.app-header-right,.account-row,.bulk-apply-bar,.modal-actions{width:100%}.app-header-right,.account-row,.bulk-apply-bar,.modal-actions{flex-wrap:wrap}.account-row input{flex-basis:150px}.bulk-apply-bar select{flex:1 1 140px}.bulk-apply-bar .bulk-count{min-width:0}.work-modal-backdrop{max-width:100vw;max-height:100dvh;overflow-y:auto}.image-modal-backdrop{max-width:100vw;max-height:100dvh;padding:5px}.work-modal,.product-modal,.management-modal,.bulk-assign-modal,.modal-parent-backdrop .management-modal,.modal-side-backdrop .side-form{width:min(96vw,calc(100vw - 10px));max-width:calc(100vw - 10px);max-height:calc(100dvh - 10px)}.image-modal{width:min(94vw,calc(100vw - 10px));max-width:calc(100vw - 10px);max-height:calc(100dvh - 10px)}.image-modal>img{max-height:calc(100dvh - 72px)}.work-modal-body{max-height:calc(100dvh - 116px)}.modal-actions{justify-content:flex-end}.exec-page{margin-inline:0}.exec-hero,.exec-card{padding:14px}.exec-hero-num,.exec-num{font-size:clamp(1.35rem,8vw,1.7rem);overflow-wrap:anywhere}}.review-mode{display:flex;flex-direction:column;gap:var(--space-4);font-size:1.05rem;line-height:1.55}.review-bar{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface);border:1px solid var(--panel-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card)}.review-badge{flex:none;padding:6px 14px;border-radius:999px;background:var(--brand-tint);color:var(--brand-hover);font-size:var(--fs-2);font-weight:var(--fw-extrabold);letter-spacing:.02em}.review-bar .review-grouping{flex:none}.review-bar .review-grouping button{font-size:var(--fs-3);font-weight:var(--fw-bold);padding:7px 14px;border-radius:999px}.review-customers{display:flex;flex-wrap:wrap;gap:var(--space-2);flex:1 1 320px;min-width:0}.review-customer{display:inline-flex;align-items:baseline;gap:var(--space-2);padding:8px 16px;min-height:40px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface-soft);color:var(--text);font-size:var(--fs-3);font-weight:var(--fw-bold);cursor:pointer;transition:background var(--motion-fast) ease,color var(--motion-fast) ease,border-color var(--motion-fast) ease}.review-customer:hover{border-color:var(--brand);color:var(--brand-hover)}.review-customer.active{background:var(--brand);border-color:var(--brand);color:var(--surface)}.review-customer-count{font-size:var(--fs-2);font-weight:var(--fw-extrabold);font-variant-numeric:tabular-nums;opacity:.8}.review-count{flex:none;margin:0;display:inline-flex;align-items:baseline;gap:4px;font-variant-numeric:tabular-nums;color:var(--muted);font-size:var(--fs-3);font-weight:var(--fw-bold)}.review-count-now{font-size:var(--fs-5);font-weight:var(--fw-black);color:var(--text);letter-spacing:-.02em}.review-exit{flex:none;width:40px;height:40px;min-height:40px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--muted);font-size:var(--fs-4);line-height:1;cursor:pointer;transition:background var(--motion-fast) ease,color var(--motion-fast) ease,border-color var(--motion-fast) ease}.review-exit:hover{background:var(--brand-tint);color:var(--brand-hover);border-color:var(--brand)}.review-body{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);align-items:start}.review-queue{min-width:0;padding:var(--space-3);background:var(--surface);border:1px solid var(--panel-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card)}.review-queue:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.review-queue-title{margin:0 0 var(--space-2);display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2);font-size:var(--fs-4);font-weight:var(--fw-extrabold);color:var(--text)}.review-queue-count{font-size:var(--fs-2);font-weight:var(--fw-bold);color:var(--muted);font-variant-numeric:tabular-nums}.review-queue-group+.review-queue-group{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}.review-queue-owner{width:100%;display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2);margin:0 0 var(--space-15);padding:var(--space-15) var(--space-2);border:0;border-radius:var(--radius-sm);background:none;color:var(--muted);font-size:var(--fs-2);font-weight:var(--fw-extrabold);letter-spacing:.04em;text-align:left;cursor:pointer;transition:background var(--motion-fast) ease,color var(--motion-fast) ease}.review-queue-owner:hover{background:var(--brand-tint);color:var(--brand-hover)}.review-queue-owner.active{color:var(--text)}.review-queue-owner-name{overflow-wrap:anywhere}.review-queue-owner-count{flex:none;font-variant-numeric:tabular-nums;font-weight:var(--fw-extrabold);opacity:.75}.review-queue-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-15)}.review-queue-item{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px var(--space-2);padding:10px 12px;min-height:40px;text-align:left;border:1px solid transparent;border-radius:var(--radius-md);background:var(--surface-soft);color:var(--text);cursor:pointer;transition:background var(--motion-fast) ease,border-color var(--motion-fast) ease}.review-queue-item:hover{border-color:var(--border-strong);background:var(--surface)}.review-queue-item.active{background:var(--brand-tint);border-color:var(--brand)}.review-queue-name{grid-column:1;font-size:var(--fs-3);font-weight:var(--fw-bold);overflow-wrap:anywhere}.review-queue-product{grid-column:1;font-size:var(--fs-2);color:var(--muted);overflow-wrap:anywhere}.review-queue-stage{grid-column:2;grid-row:1;justify-self:end;align-self:center;padding:4px 10px;border-radius:999px;font-size:var(--fs-1);font-weight:var(--fw-extrabold)}.review-queue-amount{grid-column:2;grid-row:2;justify-self:end;align-self:center;font-size:var(--fs-2);font-weight:var(--fw-extrabold);color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap}.review-queue-stage.tg-quote,.review-amount-stage.tg-quote{background:var(--chip-purple-bg);color:var(--chip-purple-ink)}.review-queue-stage.tg-order,.review-amount-stage.tg-order{background:var(--chip-blue-bg);color:var(--chip-blue-ink)}.review-queue-stage.tg-make,.review-amount-stage.tg-make{background:var(--chip-amber-bg);color:var(--chip-amber-ink)}.review-queue-stage.tg-invoice,.review-amount-stage.tg-invoice{background:var(--chip-pink-bg);color:var(--chip-pink-ink)}.review-queue-stage.tg-done,.review-amount-stage.tg-done{background:var(--success-bg);color:var(--success)}.review-focus{min-width:0;padding:var(--space-5);background:var(--surface);border:1px solid var(--panel-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-float);display:flex;flex-direction:column;gap:var(--space-4)}.review-focus-path{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2);font-size:var(--fs-4);font-weight:var(--fw-bold);color:var(--muted)}.review-path-sep{color:var(--border-strong)}.review-focus-owner{font-weight:var(--fw-extrabold);color:var(--text)}.review-focus-title{margin:0;font-size:var(--fs-6);font-weight:var(--fw-black);letter-spacing:-.02em;color:var(--text);overflow-wrap:anywhere}.review-stages{list-style:none;margin:0;padding:var(--space-3);display:flex;flex-wrap:wrap;gap:var(--space-2);background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--radius-lg)}.review-stage{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:var(--fs-2);font-weight:var(--fw-bold)}.review-stage-dot{width:8px;height:8px;border-radius:50%;background:var(--border-strong)}.review-stage.is-done{color:var(--text);border-color:var(--border-strong)}.review-stage.is-done .review-stage-dot{background:var(--success)}.review-stage.is-now{font-size:var(--fs-3);font-weight:var(--fw-black);padding:8px 16px;border-width:2px;box-shadow:var(--shadow-card)}.review-stage.is-now .review-stage-dot{width:10px;height:10px}.review-stage.is-now[data-stage-group=quote]{background:var(--chip-purple-bg);border-color:var(--chip-purple-ink);color:var(--chip-purple-ink)}.review-stage.is-now[data-stage-group=quote] .review-stage-dot{background:var(--chip-purple-ink)}.review-stage.is-now[data-stage-group=order]{background:var(--chip-blue-bg);border-color:var(--chip-blue-ink);color:var(--chip-blue-ink)}.review-stage.is-now[data-stage-group=order] .review-stage-dot{background:var(--chip-blue-ink)}.review-stage.is-now[data-stage-group=make]{background:var(--chip-amber-bg);border-color:var(--chip-amber-ink);color:var(--chip-amber-ink)}.review-stage.is-now[data-stage-group=make] .review-stage-dot{background:var(--chip-amber-ink)}.review-stage.is-now[data-stage-group=invoice]{background:var(--chip-pink-bg);border-color:var(--chip-pink-ink);color:var(--chip-pink-ink)}.review-stage.is-now[data-stage-group=invoice] .review-stage-dot{background:var(--chip-pink-ink)}.review-stage.is-now[data-stage-group=done]{background:var(--success-bg);border-color:var(--success);color:var(--success)}.review-stage.is-now[data-stage-group=done] .review-stage-dot{background:var(--success)}.review-stage-note{margin:calc(-1 * var(--space-2)) 0 0;font-size:var(--fs-2);font-weight:var(--fw-bold);color:var(--muted)}.review-stats{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:var(--space-3)}.review-stat{min-width:0;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-soft)}.review-stat-label{margin:0 0 2px;font-size:var(--fs-2);font-weight:var(--fw-bold);color:var(--muted)}.review-stat-value{margin:0;font-size:var(--fs-5);font-weight:var(--fw-black);letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.review-stat.stat-actual .review-stat-value{color:var(--success)}.review-stat.stat-outstanding .review-stat-value{color:var(--danger)}.review-extras{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3);align-items:stretch}.review-media{margin:0;min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--surface-soft)}.review-media img{display:block;width:100%;height:100%;max-height:280px;object-fit:cover}.review-deal-amounts{min-width:0;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-soft)}.review-amount-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-15);max-height:268px;overflow-y:auto}.review-amount-list:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.review-amount-row{display:flex;align-items:baseline;gap:var(--space-2);padding:6px 10px;border:1px solid transparent;border-radius:var(--radius-md)}.review-amount-row.is-current{background:var(--brand-tint);border-color:var(--brand)}.review-amount-title{flex:1 1 auto;min-width:0;font-size:var(--fs-3);font-weight:var(--fw-bold);color:var(--text);overflow-wrap:anywhere}.review-amount-stage{flex:none;padding:3px 10px;border-radius:999px;font-size:var(--fs-1);font-weight:var(--fw-extrabold)}.review-amount-value{flex:none;margin-left:auto;text-align:right;font-size:var(--fs-3);font-weight:var(--fw-extrabold);color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap}.review-blocks{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--space-3)}.review-block{min-width:0;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.review-block-title{margin:0 0 var(--space-2);font-size:var(--fs-2);font-weight:var(--fw-extrabold);letter-spacing:.04em;color:var(--muted)}.review-block-body{margin:0;font-size:1.05rem;color:var(--text);overflow-wrap:anywhere}.review-block-meta{margin:var(--space-2) 0 0;display:flex;flex-wrap:wrap;gap:var(--space-2)}.review-meta-chip{padding:3px 10px;border-radius:999px;background:var(--info-bg);color:var(--info);font-size:var(--fs-1);font-weight:var(--fw-extrabold)}.review-meta-chip.is-stale{background:var(--warning-bg);color:var(--warning)}.review-next{background:var(--brand-tint);border-color:var(--brand)}.review-next.is-done{background:var(--success-bg);border-color:var(--success)}.review-next-body{margin:0;font-size:var(--fs-4);font-weight:var(--fw-extrabold);color:var(--text);overflow-wrap:anywhere}.review-memos{padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-soft)}.review-memo-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.review-memo{padding:var(--space-2) var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md)}.review-memo-head{margin:0 0 2px;display:flex;flex-wrap:wrap;gap:var(--space-2);font-size:var(--fs-2);font-weight:var(--fw-bold);color:var(--muted)}.review-memo-date{font-variant-numeric:tabular-nums}.review-memo-note{margin:0;font-size:1.05rem;color:var(--text);overflow-wrap:anywhere}.review-hints{padding:var(--space-2) var(--space-4);text-align:center;font-size:var(--fs-3);font-weight:var(--fw-bold);color:var(--muted)}.review-board-stage{position:fixed;top:0;right:0;bottom:0;left:0;padding:var(--space-4) var(--space-5);gap:var(--space-3)}.review-board-stage>.review-bar,.review-board-stage>.review-hints{flex:none}.review-board-back{flex:none;padding:8px 16px;min-height:40px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface);color:var(--muted);font-size:var(--fs-3);font-weight:var(--fw-bold);cursor:pointer;white-space:nowrap;transition:background var(--motion-fast) ease,color var(--motion-fast) ease,border-color var(--motion-fast) ease}.review-board-back:hover{background:var(--surface-soft);color:var(--text)}.review-board-caption{flex:1 1 auto;margin:0;min-width:0;text-align:right;color:var(--muted);font-size:var(--fs-3);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.review-board-recent{font-size:var(--fs-4);font-weight:var(--fw-black);color:var(--text)}.review-board-recent.is-none{color:var(--warning-ink)}.rb-board-wrap{position:relative;flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.rb-board-wrap:before,.rb-board-wrap:after{content:"";position:absolute;top:0;bottom:var(--space-3);width:56px;pointer-events:none;opacity:0;transition:opacity var(--motion-fast) ease}.rb-board-wrap:before{left:0;background:linear-gradient(to left,#2e3a5900,#2e3a591a)}.rb-board-wrap:after{right:0;background:linear-gradient(to right,#2e3a5900,#2e3a591a)}.rb-board-wrap[data-scroll-x=middle]:before,.rb-board-wrap[data-scroll-x=end]:before{opacity:1}.rb-board-wrap[data-scroll-x=start]:after,.rb-board-wrap[data-scroll-x=middle]:after{opacity:1}.rb-board{flex:1 1 auto;min-height:0;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(300px,420px);grid-template-rows:minmax(0,1fr);justify-content:start;justify-content:safe center;gap:var(--space-4);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;padding-bottom:var(--space-3)}.rb-board::-webkit-scrollbar{height:10px}.rb-board::-webkit-scrollbar-track{background:transparent}.rb-board::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px}.rb-board::-webkit-scrollbar-thumb:hover{background:var(--muted)}.rb-lane{display:flex;flex-direction:column;scroll-snap-align:start;min-width:0;min-height:0;overflow:hidden;background:var(--surface);border:1px solid var(--panel-border);border-top:3px solid var(--border-strong);border-radius:var(--radius-xl);box-shadow:var(--shadow-card)}.rb-lane-head{flex:none;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}.rb-lane-head-row{margin:0;display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.rb-lane-name{min-width:0;font-size:var(--fs-4);font-weight:var(--fw-extrabold);letter-spacing:-.015em;color:var(--text);overflow:hidden;text-overflow:ellipsis}.rb-lane-count{flex:none;padding:1px 11px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface);color:var(--muted);font-size:var(--fs-2);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;white-space:nowrap}.rb-lane-sub{margin:2px 0 0;font-size:var(--fs-2);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rb-lane-sub.is-none{color:var(--warning-ink);font-weight:var(--fw-semibold)}.rb-lane-body{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.rb-lane-body:focus-visible{outline-offset:-2px}.rb-band-block{flex:none;display:flex;flex-direction:column;gap:var(--space-2)}.rb-band{flex:none;margin:0;display:flex;align-items:center;gap:var(--space-1);padding:3px var(--space-25);border-radius:var(--radius-sm);background:var(--surface-soft);color:var(--muted);font-size:var(--fs-2);font-weight:var(--fw-bold)}.rb-band-name{min-width:0;overflow:hidden;text-overflow:ellipsis}.rb-band-count{flex:none;font-variant-numeric:tabular-nums}.rb-band-count:before{content:"·";margin-right:var(--space-1)}.rb-cards{flex:none;display:flex;flex-direction:column;gap:var(--space-25)}.rb-card{display:flex;align-items:flex-start;gap:var(--space-3);width:100%;padding:var(--space-3);text-align:left;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);cursor:pointer;transition:background var(--motion-fast) ease,border-color var(--motion-fast) ease}.rb-card:hover{background:var(--surface-soft);border-color:var(--border-strong)}.rb-card.is-quiet{background:var(--surface-soft)}.rb-thumb{flex:none;width:64px;height:64px;object-fit:cover;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-soft)}.rb-card-stack{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:3px}.rb-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.rb-title{min-width:0;font-size:var(--fs-3);font-weight:var(--fw-bold);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rb-side{flex:none;padding:1px 9px;border-radius:999px;background:var(--chip-blue-bg);color:var(--chip-blue-ink);font-size:var(--fs-1);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;white-space:nowrap}.rb-latest{min-width:0;font-size:var(--fs-3);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rb-latest.rb-silent{color:var(--warning-ink)}.rb-next{display:flex;align-items:baseline;gap:var(--space-15);min-width:0}.rb-next-date{flex:none;font-size:var(--fs-2);font-weight:var(--fw-bold);color:var(--text);font-variant-numeric:tabular-nums}.rb-next-text{min-width:0;font-size:var(--fs-3);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rb-lane-foot{flex:none;padding:var(--space-2) var(--space-4);border-top:1px solid var(--border);background:var(--surface)}.rb-quiet-toggle{display:block;width:100%;padding:0;border:0;background:none;color:var(--muted);text-align:left;font-size:var(--fs-2);font-weight:var(--fw-semibold);cursor:pointer;transition:color var(--motion-fast) ease}.rb-quiet-toggle:hover{color:var(--text)}@media(min-width:981px){.review-body{grid-template-columns:300px minmax(0,1fr)}.review-queue{position:sticky;top:var(--space-4);max-height:calc(100vh - 220px);overflow-y:auto}.review-focus-title{font-size:var(--fs-7)}.review-stat-value{font-size:var(--fs-6)}.review-extras.has-media{grid-template-columns:minmax(0,320px) minmax(0,1fr)}}body.review-active .app-shell{grid-template-columns:minmax(0,1fr)}body.review-active .drawer,body.review-active .app-header{display:none}body.review-active .app-header-dock{margin-bottom:0}@media(min-width:981px){body.review-active .review-queue{max-height:calc(100vh - 160px)}}@media(min-width:1440px){.review-mode{width:100%;max-width:1600px;margin-inline:auto}.review-body{grid-template-columns:340px minmax(0,1fr)}.review-block-body,.review-next-body{font-size:1.35rem;line-height:1.6}.review-memo-note{font-size:1.28rem;line-height:1.6}.review-amount-title{font-size:1.15rem}.review-amount-value{font-size:1.2rem}.review-media img{max-height:320px}}.customer-group-table .cg-toggle{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:0;background:transparent;border:none;cursor:pointer;text-align:left;font:inherit;color:inherit}.customer-group-table .cg-toggle:hover .cg-name{color:var(--brand)}.customer-group-table .cg-caret{width:12px;flex:none;color:var(--muted);font-size:.72rem}.customer-group-table .cg-name{font-weight:var(--fw-semibold)}.customer-group-table .cg-aliases{margin-left:20px}.customer-group-table tbody tr.cg-row.is-open td{border-bottom:0}.customer-group-table tbody tr.cg-detail-row td{background:var(--surface-soft);font-size:.85rem;color:var(--text-soft, var(--muted))}.customer-group-table .cg-detail-item{padding-left:calc(var(--space-3) + 20px)}.customer-group-table .cg-detail-name{color:var(--text)}.customer-group-table .cg-detail-date{white-space:nowrap}.customer-group-table .cg-action-col{width:1%;white-space:nowrap;text-align:right}.customer-group-table tbody tr.cg-total-row td{position:sticky;bottom:0;background:var(--surface);border-top:2px solid var(--border-strong);border-bottom:0;font-weight:var(--fw-semibold)}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.dd-item:focus-visible,.health-item-head:focus-visible{outline-offset:-2px}@media(min-width:1440px){.review-mode.review-board-stage{max-width:none;margin-inline:0}.review-board-caption{font-size:var(--fs-4)}.review-board-recent{font-size:1.3rem}.rb-lane-name{font-size:1.25rem}.rb-title{font-size:1.05rem}.rb-latest,.rb-next-text{font-size:1rem}}@media(max-width:1040px){.deal-money-rail{width:auto;min-width:0}.deal-timeline{min-width:0}.tranche-table-wrap.tranche-compact,.tranche-table-wrap.tranche-compact .tranche-table{min-width:0;overflow-x:visible}.deal-summary-strip{gap:var(--space-25)}.dss-cell{padding:0 var(--space-25)}}@media(min-width:1041px){.management-modal .work-modal-body{display:flex;flex-direction:column;overflow:hidden;min-height:0}.management-modal .deal-summary-strip,.management-modal .payready-banner,.management-modal .deal-log-footer{flex:none}.management-modal .deal-split{flex:1 1 auto;height:auto;min-height:0;max-height:none}}@media(max-width:620px){.tl-stream{padding-right:var(--space-2);padding-left:var(--space-2)}.tl-row{grid-template-columns:46px 12px minmax(0,1fr);column-gap:var(--space-1)}.tl-edit{padding:var(--space-2)}.tl-edit .tranche-edit-form{grid-template-columns:minmax(0,1fr)}.tl-edit .tef-amount,.tl-edit .tef-note,.tl-edit .tef-actions{grid-column:1;min-width:0}.tl-edit .tef-amount-row>input,.tl-edit .tef-amount-row>select,.tl-edit .tef-amount-row>input.fx{min-width:0}.tl-edit .tef-actions{flex-wrap:wrap}.month-timeline .panel-head{align-items:stretch}.month-timeline-controls{align-items:stretch;flex-direction:column;gap:var(--space-2);min-width:0;width:100%}.month-timeline-controls .tl-period-all{width:100%}.month-timeline-controls .seg-field{grid-auto-flow:row;grid-template-columns:minmax(0,1fr);min-width:0;width:100%}.month-timeline-controls .segmented{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;width:100%}.month-timeline-controls .seg-item{min-width:0;padding:5px var(--space-2)}.money-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.money-cell{min-width:0;padding:var(--space-2)}.money-label,.money-value,.money-sub{overflow-wrap:anywhere}}@media(max-width:820px){.deal-summary-strip{gap:var(--space-2)}.dss-money{width:100%;justify-content:flex-start;row-gap:var(--space-2)}.dss-cell{padding:0 var(--space-2)}.dss-value{font-size:.95rem}}.usage-chart{display:grid;grid-template-columns:repeat(30,minmax(0,1fr));align-items:end;gap:var(--space-05);height:140px;padding-bottom:2px;border-bottom:1px solid var(--border)}.usage-bar{min-width:0;border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:var(--viz-1)}.usage-bar.weekend{background:var(--viz-3)}.usage-bar.empty{background:var(--border)}.usage-chart-axis{display:flex;justify-content:space-between;margin-top:var(--space-1)}.usage-chart-data{position:absolute;width:1px;min-width:0;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tranche-add-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.split-reg{display:flex;flex-direction:column;gap:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:#fff;overflow:hidden}.split-reg-top{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-25) var(--space-3);align-items:start;padding:0 var(--space-3)}.split-presets>div{display:flex;flex-wrap:wrap;gap:var(--space-15)}.split-table-wrap{padding:0 var(--space-3);overflow-x:auto}.split-table{width:100%;min-width:0;border-collapse:collapse;font-size:.82rem}.split-table th,.split-table td{padding:var(--space-15) var(--space-2);border-bottom:1px solid var(--border);text-align:left;vertical-align:middle}.split-table th{font-size:.74rem;font-weight:700;color:var(--muted);background:#f7f9fc}.split-table input,.split-table select{width:100%;padding:var(--space-1) var(--space-15);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.82rem;box-sizing:border-box;background:#fff;color:#1a2330}.split-amount{font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}.split-foot{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-2) var(--space-3) var(--space-3);border-top:1px solid var(--border);background:#f7f9fc}.split-sync{display:inline-flex;align-items:center;gap:var(--space-15);font-size:.8rem;color:var(--ink)}.split-sync input{width:auto;margin:0}.split-status{flex:1 1 200px;margin:0;font-size:.8rem;font-weight:600;color:var(--muted)}.split-actions{display:flex;gap:var(--space-2);margin-left:auto}.bulk-apply-field{display:flex;align-items:flex-end;gap:var(--space-2)}.bulk-apply-field .tef-field{flex:1 1 auto;min-width:0}.split-table td.bulk-dirty input,.split-table td.bulk-dirty select{background:var(--warning-bg);border-color:var(--warning);color:var(--warning-ink)}.bulk-auto{display:block;margin-top:var(--space-05);font-size:.7rem;font-style:normal;color:var(--muted)}.split-table th.bulk-select,.split-table td.bulk-select{width:1%;text-align:center}.split-table .bulk-select input{width:auto;margin:0}
