:root{--bg:#f4f6f8;--surface:#fff;--surface-muted:#f8fafc;--border:#dde3ea;--border-strong:#c8d1dc;--text:#172033;--text-muted:#667085;--price:#2563eb;--price-bg:#eff6ff;--price-text:#1e3a8a;--cost:#d92d20;--cost-bg:#fef3f2;--cost-text:#912018;--neg:#b54708;--neg-bg:#fffaeb;--radius:12px;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--sans:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);font-family:var(--sans);margin:0;padding:0;font-size:14px;line-height:1.5}.wrap{max-width:1180px;margin:0 auto}header.app{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.brand{flex-direction:column;gap:4px;display:flex}.brand .mark{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);font-size:11px}.brand h1{letter-spacing:-.025em;margin:0;font-size:22px;font-weight:750}.ref-badge{font-family:var(--mono);color:var(--price-text);background:var(--price-bg);border:1px solid #bfdbfe;border-radius:999px;width:fit-content;padding:3px 10px;font-size:12px;display:inline-block}.header-right{flex-direction:column;align-items:flex-end;gap:10px;display:flex}.mode-toggle{background:var(--surface);border:1px solid var(--border);border-radius:999px;align-items:center;gap:10px;padding:6px 6px 6px 14px;display:flex}.mode-toggle span{color:var(--text-muted);font-size:12px}.switch{background:var(--cost-bg);cursor:pointer;border:1px solid var(--border);border-radius:999px;flex-shrink:0;width:44px;height:24px;transition:background .2s;position:relative}.switch.on{background:var(--price-bg);border-color:var(--price)}.switch:after{content:"";background:var(--cost);border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;top:2px;left:2px}.switch.on:after{background:var(--price);transform:translate(20px)}.mode-label{min-width:118px;font-size:13px;font-weight:600}.nav-tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:6px;margin-bottom:20px;display:flex}.tab-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-right:18px;padding:10px 4px;font-size:14px;font-weight:600}.tab-btn.active{color:var(--text);border-bottom-color:var(--price)}.new-opp-btn{background:var(--price);color:var(--text);cursor:pointer;border:none;border-radius:6px;align-self:center;margin-left:auto;padding:8px 14px;font-size:12.5px;font-weight:600}@media (max-width:780px){.new-opp-btn{margin-left:0}}.view{display:none}.view.active{display:block}.layout{grid-template-columns:1fr 340px;align-items:start;gap:20px;display:grid}@media (max-width:920px){.layout{grid-template-columns:1fr}}.grid-2{grid-template-columns:1fr 1fr;align-items:start;gap:20px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}@media (max-width:920px){.grid-2,.grid-3{grid-template-columns:1fr}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:20px;padding:20px;box-shadow:0 1px 2px #10182808}.card h2{margin:0 0 4px;font-size:15px;font-weight:600}.card .hint{color:var(--text-muted);margin:0 0 14px;font-size:12.5px}.field-row{grid-template-columns:1fr 1fr 160px;gap:12px;display:grid}.field-row.four{grid-template-columns:1fr 1fr 1fr 1fr}.field-row.two{grid-template-columns:1fr 1fr}@media (max-width:760px){.field-row,.field-row.four,.field-row.two{grid-template-columns:1fr}}label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;font-size:11.5px;display:block}input[type=text],input[type=number],input[type=date],input[type=file],select,textarea{border:1px solid var(--border);width:100%;font-family:var(--sans);background:var(--surface);color:var(--text);border-radius:6px;padding:8px 10px;font-size:13.5px}textarea{resize:vertical;min-height:88px}input[type=number]{font-family:var(--mono);text-align:right}input:focus,select:focus,textarea:focus{outline:2px solid var(--price);outline-offset:1px}table{border-collapse:collapse;width:100%;margin-top:6px}thead th{text-align:left;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);border-bottom:1px solid var(--border);padding:0 8px 8px;font-size:11px;font-weight:600}tbody td{border-bottom:1px solid var(--border);vertical-align:middle;padding:6px 8px}tbody tr:last-child td{border-bottom:none}td.num,th.num{text-align:right}td.center,th.center{text-align:center}td.mono,.mono{font-family:var(--mono)}td input,td select{padding:6px 8px;font-size:13px}td.computed{font-family:var(--mono);text-align:right;white-space:nowrap}.cost-col{color:var(--cost-text)}.price-col{color:var(--price-text);font-weight:600}body.offer-mode .cost-col,body.offer-mode .internal-only{display:none}body.offer-mode .del-btn{visibility:hidden}body.offer-mode .add-row-btn{display:none}.del-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px;font-size:16px;line-height:1}.del-btn:hover{color:var(--cost)}.add-row-btn{background:var(--price-bg);color:var(--price-text);border:1px solid var(--price);cursor:pointer;border-radius:6px;margin-top:10px;padding:7px 14px;font-size:12.5px;font-weight:600}.add-row-btn:hover{opacity:.85}.pct-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}@media (max-width:640px){.pct-grid{grid-template-columns:1fr 1fr}}.pct-field,.mini-card{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:10px 12px}.pct-field label{margin-bottom:6px}.pct-field .pct-input-wrap,.pct-input-wrap{align-items:center;gap:4px;display:flex}.pct-field input{text-align:right}.pct-field .pct-sign,.pct-sign{font-family:var(--mono);color:var(--text-muted);font-size:13px}.tape{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;position:sticky;top:20px}.tape h2{margin:0 0 14px;font-size:14px;font-weight:600}.tape-line{font-family:var(--mono);border-bottom:1px dashed var(--border);justify-content:space-between;gap:10px;padding:5px 0;font-size:12.5px;display:flex}.tape-line .l{color:var(--text-muted)}.tape-line .v{white-space:nowrap}.tape-line.subtotal{border-bottom:1px solid var(--border);font-weight:600}.tape-final{border-top:2px solid var(--text);margin-top:14px;padding-top:14px}.tape-final .l{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:11px}.tape-final .v{font-family:var(--mono);color:var(--price-text);margin-top:2px;font-size:28px;font-weight:600;display:block}.margin-box{background:var(--cost-bg);font-family:var(--mono);color:var(--cost-text);border-radius:8px;margin-top:14px;padding:10px 12px;font-size:12.5px}.margin-box .big{font-size:16px;font-weight:600}.action-bar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px;display:flex}.primary-btn{background:var(--price);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:10px 16px;font-size:13px;font-weight:700}.primary-btn:hover,.new-opp-btn:hover{background:#1d4ed8}.secondary-btn{background:var(--surface);color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:6px;padding:10px 16px;font-size:13px;font-weight:600}.checkbox-inline{color:var(--text-muted);align-items:center;gap:6px;margin-left:auto;font-size:12.5px;display:flex}.doc-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.doc-item{background:var(--bg);border:1px solid var(--border);border-radius:6px;justify-content:space-between;align-items:center;padding:8px 12px;font-size:12.5px;display:flex}.doc-item .doc-name{font-weight:600}.doc-item .doc-meta{color:var(--text-muted);font-family:var(--mono);margin-left:8px;font-size:11.5px}.doc-empty{color:var(--text-muted);font-size:12.5px}.opp-empty{text-align:center;color:var(--text-muted);padding:40px 20px;font-size:13px}.stage-select{border-radius:6px;padding:5px 8px;font-size:12px;font-weight:600}.prob-input{text-align:right;width:60px;display:inline-block}.mini-btn{background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:5px;margin-right:4px;padding:4px 9px;font-size:11.5px}.mini-btn:hover{border-color:var(--price)}.actions{white-space:nowrap}.status-pill{background:var(--price-bg);color:var(--price-text);border:1px solid var(--price);border-radius:999px;align-items:center;gap:6px;padding:4px 9px;font-size:11.5px;font-weight:600;display:inline-flex}.status-pill.warn{background:var(--neg-bg);color:var(--neg);border-color:#d7b676}.status-pill.cost{background:var(--cost-bg);color:var(--cost-text);border-color:#e5b9a5}.status-pill.gray{background:var(--bg);color:var(--text-muted);border-color:var(--border)}.metric-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px;display:grid}@media (max-width:900px){.metric-grid{grid-template-columns:1fr 1fr}}@media (max-width:560px){.metric-grid{grid-template-columns:1fr}}.metric{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;box-shadow:0 1px 2px #10182808}.metric .label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:6px;font-size:11px}.metric .value{font-family:var(--mono);color:var(--text);letter-spacing:-.03em;font-size:22px;font-weight:700}.metric .sub{color:var(--text-muted);margin-top:4px;font-size:12px}.stepper{flex-direction:column;gap:10px;display:flex}.step{background:var(--bg);border:1px solid var(--border);border-radius:8px;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.step .num{background:var(--price-bg);width:24px;height:24px;color:var(--price-text);font-family:var(--mono);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.step .title{font-weight:600}.step .desc{color:var(--text-muted);font-size:12px}.audit-line{border-bottom:1px dashed var(--border);grid-template-columns:110px 1fr 130px;gap:12px;padding:9px 0;font-size:12.5px;display:grid}.audit-line:last-child{border-bottom:none}.audit-line .time{font-family:var(--mono);color:var(--text-muted)}.audit-line .user{text-align:right;color:var(--text-muted)}@media (max-width:640px){.audit-line{grid-template-columns:1fr}.audit-line .user{text-align:left}}.toast{background:var(--text);color:#fff;opacity:0;pointer-events:none;border-radius:8px;padding:10px 16px;font-size:13px;transition:opacity .2s,transform .2s;position:fixed;bottom:24px;right:24px;transform:translateY(8px)}.toast.show{opacity:1;transform:translateY(0)}.app-shell{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:20px;max-width:1500px;margin:0 auto;display:grid}.main-panel{min-width:0}.main-panel .wrap{max-width:1180px;margin:0}.sidebar{color:#f9fafb;background:#111827;border:1px solid #1f2937;border-radius:16px;min-height:calc(100vh - 40px);max-height:calc(100vh - 40px);padding:18px 14px;position:sticky;top:20px;overflow:auto}.sidebar-logo-card{background:#fff;border:1px solid #f1c679;border-radius:10px;justify-content:center;align-items:center;width:100%;min-height:76px;margin-bottom:10px;padding:8px 10px;display:flex}.sidebar-logo-card img{object-fit:contain;width:100%;max-height:72px;display:block}.sidebar-platform-title{text-align:center;color:#f9fafb;letter-spacing:.01em;margin:8px 2px 2px;font-size:16px;font-weight:700;line-height:1.2}.sidebar-platform-subtitle{text-align:center;letter-spacing:.1em;text-transform:uppercase;color:#9ca3af;font-size:11px;font-family:var(--mono);margin:0 2px 12px}.app-shell.sidebar-compact .sidebar-logo-card{min-height:46px;margin-bottom:8px;padding:6px}.app-shell.sidebar-compact .sidebar-logo-card img{max-height:38px}.app-shell.sidebar-compact .sidebar-platform-title,.app-shell.sidebar-compact .sidebar-platform-subtitle{display:none}.sidebar-brand{border-bottom:1px solid #374151;margin-bottom:14px;padding:2px 6px 14px}.sidebar-brand .mark{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);font-size:11px}.sidebar-brand h1{margin:4px 0 0;font-size:18px;font-weight:600}.sidebar-group{margin:14px 0 18px}.sidebar-group-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:0 6px 6px;font-size:11px;font-weight:700}.menu-link{color:#cbd5e1;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:8px 10px;font-size:12.7px;font-weight:600;display:flex}.menu-link:hover{color:#fff;background:#1f2937}.menu-link.active{color:#fff;background:#1d4ed8;border-color:#3b82f6}.menu-link .count{font-family:var(--mono);color:inherit;opacity:.8;font-size:11px}.legacy-tabs{display:none}.page-kicker{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px;font-size:11px}.page-title-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.page-title-row h2{margin:0;font-size:20px;font-weight:600}.page-title-row p{color:var(--text-muted);margin:4px 0 0;font-size:12.5px}@media (max-width:980px){body{padding:20px 14px 70px}.app-shell{grid-template-columns:1fr}.sidebar{min-height:auto;position:relative;top:auto}.sidebar-menu{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.sidebar-group{margin:0}}@media (max-width:720px){.sidebar-menu{grid-template-columns:1fr}}.calendar-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.calendar-filters{flex-wrap:wrap;gap:8px;display:flex}.filter-pill{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;border-radius:999px;padding:7px 11px;font-size:12.5px;font-weight:600}.filter-pill.active{background:var(--price-bg);color:var(--price-text);border-color:var(--price)}.calendar-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:20px;display:grid}@media (max-width:980px){.calendar-layout{grid-template-columns:1fr}}.calendar-card{padding:20px}.calendar-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.calendar-head h3{margin:0;font-size:18px;font-weight:600}.month-nav{align-items:center;gap:8px;display:flex}.month-btn{background:var(--surface);border:1px solid var(--border);cursor:pointer;color:var(--text-muted);border-radius:6px;padding:7px 10px;font-weight:700}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:8px;display:grid}.weekday{text-align:center;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:4px 0 8px;font-size:11px;font-weight:700}.day-cell{background:var(--surface);border:1px solid var(--border);border-radius:10px;min-height:118px;padding:10px;position:relative;overflow:hidden}.day-cell.muted{color:var(--text-muted);background:#ffffff73}.day-cell.today{border:2px solid var(--price);padding:9px}.day-cell.overdue-day{background:#fff9f6;border-color:#dca892}.day-number{font-family:var(--mono);color:var(--text-muted);margin-bottom:8px;font-size:13px;font-weight:700}.event-chip{text-align:left;white-space:nowrap;text-overflow:ellipsis;border:0;border-radius:7px;width:100%;margin-bottom:5px;padding:5px 7px;font-size:11.5px;font-weight:700;line-height:1.2;display:block;overflow:hidden}.event-chip.milestone{background:var(--price-bg);color:var(--price-text)}.event-chip.payment{background:var(--neg-bg);color:var(--neg)}.event-chip.overdue{background:var(--cost-bg);color:#b03528}.event-chip.renewal{color:#273469;background:#e8ecff}.event-chip.project{color:#0d4f78;background:#edf6ff}.calendar-legend{color:var(--text-muted);flex-wrap:wrap;gap:10px;margin-top:14px;font-size:12px;display:flex}.legend-dot{border-radius:999px;width:9px;height:9px;margin-right:5px;display:inline-block}.legend-dot.milestone{background:var(--price)}.legend-dot.payment{background:var(--neg)}.legend-dot.overdue{background:var(--cost)}.legend-dot.renewal{background:#4353b2}.legend-dot.project{background:#2f75a8}.agenda-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.agenda-item{border:1px solid var(--border);background:var(--bg);border-radius:8px;grid-template-columns:52px 1fr;align-items:start;gap:10px;padding:10px 12px;display:grid}.agenda-date{font-family:var(--mono);color:var(--text-muted);font-size:12px;font-weight:700}.agenda-title{font-size:12.5px;font-weight:700}.agenda-meta{color:var(--text-muted);margin-top:2px;font-size:11.5px}.risk-box{background:var(--cost-bg);color:var(--cost-text);border-radius:8px;margin-top:12px;padding:12px}.risk-box .big{font-family:var(--mono);font-size:18px;font-weight:700}.sidebar-top-actions{align-items:center;gap:8px;margin-top:12px;display:flex}.sidebar-tool-btn{background:var(--bg);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;border-radius:7px;flex:1;padding:7px 8px;font-size:11.5px;font-weight:700}.sidebar-tool-btn:hover{border-color:var(--price);color:var(--price-text)}.sidebar-group{border-top:1px solid var(--border);padding-top:8px}.sidebar-group:first-child{border-top:none}.sidebar-group-title{cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.sidebar-group-title .group-label{text-transform:uppercase;letter-spacing:.08em;color:#9ca3af;font-size:11px;font-weight:700}.sidebar-group-title .group-arrow{font-family:var(--mono);color:var(--text-muted);font-size:12px;transition:transform .18s}.sidebar-group.collapsed .group-arrow{transform:rotate(-90deg)}.sidebar-group.collapsed .menu-items{display:none}.menu-items{flex-direction:column;gap:2px;display:flex}.app-shell.sidebar-compact{grid-template-columns:86px minmax(0,1fr)}.app-shell.sidebar-compact .sidebar{padding:14px 10px}.app-shell.sidebar-compact .sidebar-brand{text-align:center;padding:0 0 12px}.app-shell.sidebar-compact .sidebar-brand .mark,.app-shell.sidebar-compact .sidebar-brand h1,.app-shell.sidebar-compact .group-label,.app-shell.sidebar-compact .menu-link span:first-child,.app-shell.sidebar-compact .sidebar-tool-btn span{display:none}.app-shell.sidebar-compact .sidebar-top-actions{flex-direction:column}.app-shell.sidebar-compact .sidebar-tool-btn{flex:auto;width:100%;padding:8px 6px}.app-shell.sidebar-compact .sidebar-group-title{justify-content:center;padding:0 0 6px}.app-shell.sidebar-compact .menu-link{justify-content:center;padding:8px 6px}.app-shell.sidebar-compact .menu-link .count{opacity:1}@media (max-width:980px){.app-shell.sidebar-compact{grid-template-columns:1fr}}footer.note{max-width:1180px;color:var(--text-muted);text-align:center;margin:28px auto 0;font-size:12px}html,body{min-height:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{padding:20px}.main-panel{min-height:calc(100vh - 40px)}.page-container{max-width:1180px}.table-wrap{overflow:auto}.form-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.inline-form{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.inline-form>div{flex:1;min-width:150px}.error-box{background:var(--cost-bg);color:var(--cost-text);border:1px solid #e5b9a5;border-radius:8px;margin-bottom:14px;padding:10px 12px}.success-box{background:var(--price-bg);color:var(--price-text);border:1px solid var(--price);border-radius:8px;margin-bottom:14px;padding:10px 12px}.login-shell{background:var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;width:min(460px,100%);padding:28px}.login-card h1{margin:0 0 6px;font-size:24px}.login-card p{color:var(--text-muted);margin:0 0 22px}.stack{flex-direction:column;gap:12px;display:flex}.breadcrumbs{font-family:var(--mono);color:var(--text-muted);margin-bottom:8px;font-size:11px}.kpi-positive{color:#356b3f!important}.kpi-negative{color:var(--cost)!important}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.toolbar-right{flex-wrap:wrap;gap:8px;display:flex}.nav-link{display:block}.nav-link .menu-link{pointer-events:none}.active-nav .menu-link{color:#fff;background:#1d4ed8;border-color:#3b82f6}.quote-editor-grid{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:20px;display:grid}@media (max-width:980px){.quote-editor-grid{grid-template-columns:1fr}.tape{position:relative;top:auto}}.money-input{font-family:var(--mono);text-align:right}.small-muted{color:var(--text-muted);font-size:12px}.danger-btn{background:var(--cost);color:#fff;cursor:pointer;border:0;border-radius:6px;padding:9px 14px;font-weight:700}.link-btn{justify-content:center;align-items:center;display:inline-flex}.header-right{align-items:stretch;min-width:min(620px,100%)}.header-user{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.global-search{align-items:center;gap:8px;display:flex}.global-search input{background:var(--surface);min-width:280px;box-shadow:0 1px 2px #1018280a}.header-icon-link{color:var(--text-muted);border-radius:8px;padding:8px 10px;font-size:12px;font-weight:700}.header-icon-link:hover{background:var(--surface)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.data-toolbar,.period-filter,.view-switch{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.data-toolbar input{min-width:230px}.pagination{color:var(--text-muted);justify-content:space-between;align-items:center;gap:12px;margin-top:16px;font-size:12px;display:flex}.pagination>div{gap:8px;display:flex}.table-link{color:#1d4ed8;font-weight:650}.table-link:hover{text-decoration:underline}.table-wrap thead{background:var(--surface);z-index:1;position:sticky;top:0}.wide-table{min-width:1780px}.wide-table td input,.wide-table td select{min-width:94px}.wide-table td:nth-child(2) input{min-width:180px}.wide-table td:nth-child(3){min-width:170px}.wide-table td:nth-child(3) input{margin-bottom:4px;display:block}.form-disclosure>summary{cursor:pointer;justify-content:space-between;align-items:center;font-size:15px;font-weight:750;list-style:none;display:flex}.form-disclosure>summary:after{content:"+";font-family:var(--mono);color:var(--price);font-size:20px}.form-disclosure[open]>summary{border-bottom:1px solid var(--border);margin-bottom:18px;padding-bottom:12px}.form-disclosure[open]>summary:after{content:"−"}.checkbox-field{color:var(--text);text-transform:none;letter-spacing:0;align-items:center;gap:8px;margin:0;padding:9px 0;display:flex}.record-list{flex-direction:column;gap:8px;margin-top:16px;display:flex}.record-row{border:1px solid var(--border);background:var(--surface-muted);border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;display:flex}.record-row strong+.status-pill{margin-left:8px}.empty-state{text-align:center;color:var(--text-muted);border:1px dashed var(--border-strong);background:var(--surface-muted);border-radius:10px;padding:24px}.bank-summary{background:var(--surface-muted);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:3px;margin-top:16px;padding:14px;display:flex}.kanban-board{grid-template-columns:repeat(8,minmax(230px,1fr));gap:12px;padding-bottom:8px;display:grid;overflow:auto}.kanban-column{background:var(--surface-muted);border:1px solid var(--border);border-radius:12px;min-height:240px;padding:10px}.kanban-column>header{justify-content:space-between;align-items:center;padding:4px 4px 10px;font-size:12px;display:flex}.kanban-column>header span{font-family:var(--mono);background:#e5e7eb;border-radius:999px;padding:2px 7px}.kanban-card{border:1px solid var(--border);background:#fff;border-radius:10px;flex-direction:column;gap:6px;margin-bottom:9px;padding:12px;display:flex;box-shadow:0 1px 2px #1018280a}.kanban-card:hover{border-color:#93c5fd;box-shadow:0 4px 12px #2563eb14}.kanban-card>span{color:var(--text-muted);font-size:10px}.kanban-card small{color:var(--text-muted)}.kanban-card>div{font-family:var(--mono);justify-content:space-between;font-size:11px;display:flex}.kanban-card em{color:var(--price-text);background:var(--price-bg);border-radius:6px;padding:5px 7px;font-size:11px;font-style:normal}.inline-details{min-width:190px}.inline-details summary{cursor:pointer;color:#1d4ed8;font-weight:700}.inline-details form{border:1px solid var(--border);background:var(--surface-muted);border-radius:8px;margin-top:8px;padding:10px}.revision-delta{background:var(--price-bg);border:1px solid #bfdbfe;border-radius:9px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;padding:10px 12px;font-size:12px;display:flex}.revision-delta span{color:var(--text-muted);margin-right:auto}.total-row td{border-top:2px solid var(--border-strong);background:var(--surface-muted)}.search-results{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.search-result{border-bottom:1px solid var(--border);grid-template-columns:120px 1fr;gap:2px 12px;padding:11px 0;display:grid}.search-result span{color:var(--text-muted);grid-row:1/3;font-size:11px}.search-result small{color:var(--text-muted)}.search-result:hover strong{color:#1d4ed8}.page-search{align-self:end}.print-document{background:#fff;border-radius:14px;width:min(980px,100% - 40px);margin:30px auto;padding:46px;box-shadow:0 8px 30px #1018281a}.print-toolbar{justify-content:flex-end;gap:10px;margin-bottom:28px;display:flex}.print-header{border-bottom:3px solid var(--text);justify-content:space-between;gap:30px;margin-bottom:24px;padding-bottom:20px;display:flex}.print-header h1{margin:5px 0;font-size:30px}.print-header p{color:var(--text-muted);margin:0}.print-reference{text-align:right;font-family:var(--mono);flex-direction:column;display:flex}.print-reference strong{font-size:18px}.print-reference span{color:var(--text-muted)}.print-parties{background:var(--surface-muted);border:1px solid var(--border);border-radius:10px;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:28px;padding:20px;display:grid}.print-parties>div{flex-direction:column;gap:4px;display:flex}.print-document section{margin-bottom:28px}.print-document section h2{margin:0 0 10px;font-size:15px}.print-total{width:min(440px,100%);margin-left:auto}.print-total>div{border-bottom:1px solid var(--border);justify-content:space-between;padding:8px 0;display:flex}.print-total .grand-total{border-top:2px solid var(--text);border-bottom:0;margin-top:8px;padding-top:13px;font-size:18px}.print-terms p{margin:6px 0}.print-document footer{text-align:center;color:var(--text-muted);border-top:1px solid var(--border);padding-top:18px;font-size:11px}@media (max-width:900px){.header-right{min-width:100%}.header-user{justify-content:flex-start}.global-search input{flex:1;min-width:0}.search-results{grid-template-columns:1fr}.data-toolbar{width:100%}.data-toolbar input{flex:1;min-width:0}.print-document{border-radius:0;width:100%;margin:0;padding:24px}.print-parties{grid-template-columns:1fr}}@media print{body{background:#fff!important;padding:0!important}.print-hidden{display:none!important}.print-document{width:100%;box-shadow:none;border-radius:0;margin:0;padding:0}.print-document table{font-size:11px}.print-document section{break-inside:avoid}.print-document a{color:inherit}.print-document footer{position:fixed;bottom:0;left:0;right:0}}.loading-state,.error-state{border:1px dashed var(--border-strong);background:var(--surface);border-radius:14px;justify-content:center;align-items:center;gap:16px;min-height:320px;padding:30px;display:flex}.loading-state p,.error-state p{color:var(--text-muted);margin:3px 0}.loading-spinner{border:3px solid #dbeafe;border-top-color:var(--price);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite bmp-spin}.error-state>span{background:var(--cost-bg);width:36px;height:36px;color:var(--cost);border-radius:50%;place-items:center;font-weight:800;display:grid}.error-state h2{margin:0}.error-state button{margin-top:12px}@keyframes bmp-spin{to{transform:rotate(360deg)}}.lifecycle-title-row{margin-bottom:16px}.lifecycle-selector{flex-wrap:wrap;align-items:end;gap:10px;margin-bottom:20px;display:flex}.lifecycle-selector>div{flex:1;min-width:min(440px,100%)}.lifecycle-workflow{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:18px;display:grid}.lifecycle-panel{background:var(--surface);border:1px solid var(--border);border-radius:14px;min-width:0;position:relative;overflow:visible;box-shadow:0 1px 2px #1018280a}.lifecycle-panel:not(:last-child):after{content:"";z-index:2;border-top:13px solid #0000;border-bottom:13px solid #0000;border-left:14px solid var(--price);width:0;height:0;position:absolute;top:25px;right:-14px}.lifecycle-panel:not(:last-child):before{content:"";z-index:3;border-top:11px solid #0000;border-bottom:11px solid #0000;border-left:12px solid var(--surface);width:0;height:0;position:absolute;top:27px;right:-10px}.lifecycle-panel-header{cursor:pointer;background:linear-gradient(135deg,#eff6ff,#f8fafc);border:0;border-radius:13px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:9px;padding:13px 14px;list-style:none;display:grid}.lifecycle-panel-header::-webkit-details-marker{display:none}.lifecycle-panel-header strong,.lifecycle-panel-header small{display:block}.lifecycle-panel-header strong{font-size:14px}.lifecycle-panel-header small{color:var(--text-muted);margin-top:2px;font-size:11px}.lifecycle-step-number{background:var(--price);color:#fff;width:26px;height:26px;font-family:var(--mono);border-radius:999px;place-items:center;font-size:11px;font-weight:800;display:grid}.lifecycle-panel-body{flex-direction:column;gap:14px;padding:14px;display:flex}.lifecycle-record-title{border-bottom:1px solid var(--border);flex-direction:column;gap:3px;padding-bottom:11px;display:flex}.lifecycle-record-title .mono{color:var(--text-muted);font-size:11px}.lifecycle-record-title strong{font-size:14px;line-height:1.35}.lifecycle-record-title span:last-child{color:var(--text-muted);font-size:12px}.lifecycle-details{border-top:1px solid var(--border);flex-direction:column;display:flex}.lifecycle-detail-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:10px;padding:8px 0;font-size:12px;display:flex}.lifecycle-detail-row>span{color:var(--text-muted)}.lifecycle-detail-row>strong{text-align:right;font-family:var(--mono);overflow-wrap:anywhere;font-size:11px}.lifecycle-next-action{background:var(--surface-muted);border:1px solid var(--border);border-radius:8px;margin:0;padding:9px 10px}.lifecycle-transition-form{flex-direction:column;gap:8px;padding-top:2px;display:flex}.lifecycle-transition-form label{margin:0}.lifecycle-transition-form input,.lifecycle-transition-form select{width:100%;margin-top:3px}.lifecycle-transition-form .secondary-btn{align-self:stretch}.lifecycle-link-row,.lifecycle-inline-action{flex-wrap:wrap;gap:8px;display:flex}.lifecycle-empty{border:1px dashed var(--border-strong);background:var(--surface-muted);color:var(--text-muted);border-radius:9px;padding:14px;font-size:12px;line-height:1.55}.lifecycle-empty a{color:var(--price-text);font-weight:700}.lifecycle-create{border-top:1px solid var(--border);padding-top:4px}.lifecycle-create>summary{color:var(--price-text);cursor:pointer;padding:10px 0;font-size:12px;font-weight:750}.lifecycle-create[open]>summary{margin-bottom:10px}.lifecycle-invoice-list{flex-direction:column;gap:10px;display:flex}.lifecycle-invoice{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;flex-direction:column;gap:10px;padding:11px;display:flex}.lifecycle-invoice>div:first-child{flex-direction:column;gap:3px;display:flex}.lifecycle-invoice>div:first-child span{color:var(--text-muted);font-size:12px}.lifecycle-invoice>div:nth-child(2){grid-template-columns:auto 1fr;align-items:center;gap:6px 8px;display:grid}.lifecycle-invoice>div:nth-child(2) strong,.lifecycle-invoice>div:nth-child(2) small{font-family:var(--mono);justify-self:end;font-size:11px}.lifecycle-invoice>div:nth-child(2) small{color:var(--text-muted);grid-column:1/-1}.lifecycle-history{margin-top:20px}.lifecycle-activity-list{flex-direction:column;gap:8px;display:flex}@media (max-width:1120px){.lifecycle-workflow{grid-template-columns:repeat(2,minmax(0,1fr))}.lifecycle-panel:nth-child(2):after,.lifecycle-panel:nth-child(2):before{display:none}.lifecycle-panel:first-child:after,.lifecycle-panel:first-child:before,.lifecycle-panel:nth-child(3):after,.lifecycle-panel:nth-child(3):before{display:block}}@media (max-width:720px){.lifecycle-selector{align-items:stretch}.lifecycle-selector>div{width:100%;min-width:0}.lifecycle-workflow{grid-template-columns:1fr;gap:12px}.lifecycle-panel:after,.lifecycle-panel:before{display:none!important}.lifecycle-panel-header{grid-template-columns:28px minmax(0,1fr) auto}.lifecycle-panel-header .status-pill{text-overflow:ellipsis;white-space:nowrap;max-width:86px;overflow:hidden}.lifecycle-panel-body{padding:12px}.lifecycle-detail-row{align-items:flex-start}.lifecycle-detail-row>strong{max-width:58%}.lifecycle-invoice>div:nth-child(2){grid-template-columns:1fr;align-items:start}.lifecycle-invoice>div:nth-child(2) strong,.lifecycle-invoice>div:nth-child(2) small{justify-self:start}.lifecycle-invoice>div:nth-child(2) small{grid-column:auto}}
