html,body,#root{min-width:0;min-height:100%;margin:0}body{min-height:100vh;overflow:hidden}button,input,select,textarea{font:inherit;letter-spacing:0}button{color:inherit}.sidebar{display:flex;flex-direction:column;min-height:0;padding:22px 14px 14px;color:#dce6e1;background:#1e2824;border-right:1px solid #111915}.brand{display:flex;align-items:center;gap:11px;padding:0 8px 24px}.brand>span{display:grid;place-items:center;width:36px;height:36px;color:#eff8f3;background:#327d5c;border-radius:7px;font-size:18px;font-weight:800}.brand div{min-width:0;display:grid;gap:2px}.brand strong{font-size:14px;color:#fff;white-space:nowrap}.brand small{color:#8fa198;font-size:11px}.sidebar nav{flex:1;min-height:0;overflow-y:auto;padding-right:2px}.nav-group{display:grid;gap:4px;margin-bottom:19px}.nav-group>span{padding:0 10px 5px;color:#71857b;font-size:10px;font-weight:700;text-transform:uppercase}.nav-group button{position:relative;display:grid;grid-template-columns:22px 1fr 8px;align-items:center;gap:7px;width:100%;height:39px;padding:0 10px;border:0;border-radius:6px;color:#aebdb6;background:transparent;cursor:pointer;text-align:left}.nav-group button:hover{color:#eef5f1;background:#28352f}.nav-group button.active{color:#fff;background:#354840}.nav-group button.active:before{content:"";position:absolute;left:-14px;width:3px;height:22px;border-radius:0 3px 3px 0;background:#68bd8f}.nav-group button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.nav-group button i{width:6px;height:6px;border-radius:50%;background:#e57064}.nav-group .nav-group-label{grid-template-columns:1fr auto;height:27px;margin-bottom:3px;padding:0 12px;color:#77839c;background:transparent;font-size:10px;font-weight:800;letter-spacing:0;text-transform:uppercase;cursor:pointer}.nav-group .nav-group-label span{overflow:visible;text-overflow:clip;font-size:10px;letter-spacing:0}.nav-group .nav-group-label:hover{color:#adc6ff;background:transparent}.sidebar-foot{display:flex;align-items:center;gap:7px;height:37px;padding:0 8px;border-top:1px solid #34413b;color:#85988f;font-size:11px}.local-dot{width:7px;height:7px;border-radius:50%;background:#65bd8b;box-shadow:0 0 0 3px #65bd8b1f}.topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:15px 28px;background:#fffffff2;border-bottom:1px solid var(--line)}.topbar>div:first-child{min-width:0}.topbar>div:first-child>span{display:block;color:var(--muted);font-size:10px;font-weight:800}.topbar h1{margin:2px 0;font-size:22px;line-height:1.2}.topbar p{margin:0;color:var(--muted);font-size:11px}.topbar-actions{display:flex;align-items:center;gap:9px;flex-shrink:0}.scope-switch{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:11px;white-space:nowrap}.scope-switch select{height:38px;padding:0 28px 0 10px;color:var(--ink);border:1px solid var(--line);border-radius:6px;background:var(--surface);outline:none}.search-box{display:flex;align-items:center;gap:7px;width:min(270px,24vw);height:38px;padding:0 10px;border:1px solid var(--line);border-radius:6px;background:#f8faf8;color:var(--muted)}.search-box:focus-within{border-color:#77a890;box-shadow:0 0 0 3px #287a5714}.search-box input{min-width:0;flex:1;border:0;outline:0;background:transparent;font-size:12px}.search-box button{display:grid;place-items:center;padding:2px;border:0;background:transparent;cursor:pointer}.icon-button{position:relative;display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid var(--line);border-radius:6px;background:#fff;cursor:pointer}.icon-button:hover{border-color:var(--line-strong);background:var(--surface-soft)}.icon-button i{position:absolute;right:8px;top:7px;width:6px;height:6px;border:2px solid #fff;border-radius:50%;background:var(--red)}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:0 13px;border-radius:6px;font-size:12px;font-weight:700;cursor:pointer}.primary-button{color:#fff;border:1px solid var(--button-blue, var(--blue));background:var(--button-blue, var(--blue))}.primary-button:hover{background:var(--button-blue-hover, #285b79)}.secondary-button{color:var(--ink);border:1px solid var(--line-strong);background:#fff}.secondary-button:hover{background:var(--surface-soft)}.page-stack{display:grid;gap:18px}.surface{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:7px}.section-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px;padding:14px 18px;border-bottom:1px solid var(--line)}.section-header>div{min-width:0;display:flex;align-items:baseline;gap:9px}.section-header h2{margin:0;font-size:14px}.section-header span{color:var(--muted);font-size:11px}.text-button{display:inline-flex;align-items:center;gap:4px;padding:5px;border:0;color:var(--blue);background:transparent;cursor:pointer;font-size:11px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric-card{display:grid;gap:8px;min-width:0;min-height:126px;padding:17px;border:1px solid var(--line);border-top:3px solid #8da098;border-radius:7px;background:#fff;cursor:pointer;text-align:left}.metric-card:hover{border-color:#bcc9c2;transform:translateY(-1px);box-shadow:0 5px 16px #172a200f}.metric-card span{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:11px}.metric-card strong{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:24px;line-height:1.2}.metric-card small{color:var(--faint);font-size:10px}.metric-card.danger strong{color:var(--red)}.workspace-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}.span-7{grid-column:span 7}.span-5{grid-column:span 5}.span-12{grid-column:span 12}.action-list{display:grid;padding:7px 12px 12px}.action-check{display:grid;place-items:center;width:30px;height:30px;color:var(--amber);border-radius:6px;background:var(--amber-soft)}.compact-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.compact-list small{color:var(--muted);font-size:10px}.status-pill{display:inline-flex;align-items:center;width:fit-content;min-height:22px;padding:0 7px;border-radius:5px;color:#55635d;background:#eef2ef;font-size:10px;font-style:normal;white-space:nowrap}.status-pill.warning,.status-pill.sent,.status-pill.partial,.status-pill.review{color:#8b5b1b;background:var(--amber-soft)}.status-pill.overdue,.status-pill.danger,.status-pill.rejected{color:#a53c34;background:var(--red-soft)}.status-pill.accepted,.status-pill.settled,.status-pill.approved,.status-pill.completed{color:#216b4b;background:var(--green-soft)}.status-pill.draft,.status-pill.neutral,.status-pill.pending,.status-pill.todo{color:#5e6a65;background:#eef1ef}.status-pill.active,.status-pill.in_progress{color:#2d6585;background:var(--blue-soft)}.compact-list{display:grid;padding:7px 12px 12px}.compact-list button{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:57px;padding:8px 6px;border:0;border-bottom:1px solid #edf0ee;background:transparent;cursor:pointer;text-align:left}.compact-list button:last-child{border-bottom:0}.compact-list button>span:first-child{min-width:0;display:grid;gap:3px}.amount,.amount-danger{font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}.amount-danger{color:var(--red)}.project-strip{padding:14px}.project-strip>button{display:grid;gap:10px;width:100%;padding:0;border:0;background:transparent;cursor:pointer;text-align:left}.project-strip-head{display:grid;gap:3px}.project-strip-head span{color:var(--muted);font-size:10px}.project-strip-head strong{font-size:14px}.progress-track{height:6px;overflow:hidden;border-radius:3px;background:#e8edea}.progress-track span{display:block;height:100%;border-radius:inherit;background:var(--green)}.project-strip-foot{display:flex;justify-content:space-between;color:var(--muted);font-size:10px}.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:14px}.quick-grid button{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 11px;border:1px solid var(--line);border-radius:6px;background:var(--surface-soft);cursor:pointer;font-size:11px}.quick-grid button:hover{color:var(--ink);border-color:var(--line-strong);background:var(--blue-soft)}.table-surface{overflow:hidden}.data-table{min-width:820px}.table-head,.table-row{display:grid;align-items:center;gap:18px;min-height:64px;padding:10px 18px;border-bottom:1px solid #e9eeeb}.table-head{min-height:38px;color:var(--muted);background:var(--surface-soft);font-size:10px;font-weight:700}.table-row{width:100%;border-top:0;border-left:0;border-right:0;background:#fff;font-size:11px;text-align:left}button.table-row{cursor:pointer}.table-row:hover{background:#fafcfb}.table-row:last-child{border-bottom:0}.table-row>span{min-width:0}.table-row>span>strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.table-row>span>small{display:block;margin-top:4px;color:var(--muted);font-size:10px}.client-table .table-head,.client-table .table-row{grid-template-columns:1.55fr .8fr .9fr 1.1fr .7fr}.quote-table .table-head,.quote-table .table-row{grid-template-columns:1.7fr .75fr .7fr .65fr 1fr}.payment-table .table-head,.payment-table .table-row{grid-template-columns:1.5fr .65fr .7fr .9fr 1.2fr}.identity-cell{display:flex;align-items:center;gap:9px}.identity-cell>i{display:grid;flex:0 0 auto;place-items:center;width:31px;height:31px;border-radius:6px;color:var(--blue);background:var(--blue-soft);font-size:12px;font-style:normal;font-weight:800}.identity-cell>span{min-width:0}.tag-list{display:flex;flex-wrap:wrap;gap:4px}.tag-list em{padding:3px 6px;border-radius:4px;color:#53625b;background:#eef2ef;font-size:9px;font-style:normal}.row-actions{display:flex;align-items:center;gap:7px}.row-actions button,.card-footer-actions button{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:29px;padding:0 9px;border:1px solid var(--line-strong);border-radius:5px;color:var(--blue);background:var(--surface);cursor:pointer;font-size:10px;font-weight:700}.row-actions button:hover,.card-footer-actions button:hover{background:var(--blue-soft)}.project-grid-page{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.project-card{padding:18px}.project-card-top{display:flex;justify-content:space-between;align-items:center}.project-card-top>span{color:var(--muted);font-size:10px}.project-card h2{margin:14px 0 4px;font-size:17px}.project-card>p{margin:0 0 16px;color:var(--muted);font-size:11px}.project-finance{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.project-finance>span{display:grid;gap:5px;padding:13px 9px;border-right:1px solid var(--line)}.project-finance>span:first-child{padding-left:0}.project-finance>span:last-child{border-right:0}.project-finance small{color:var(--muted);font-size:9px}.project-finance strong{overflow:hidden;text-overflow:ellipsis;font-size:13px}.milestone-list{display:grid;gap:2px;padding:11px 0}.milestone-list>div{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:45px}.milestone-list i{width:7px;height:7px;border-radius:50%;background:#aeb8b3}.milestone-list i.review{background:var(--amber)}.milestone-list i.approved{background:var(--green)}.milestone-list span:nth-child(2){display:grid;gap:2px}.milestone-list strong{font-size:11px}.milestone-list small{color:var(--muted);font-size:9px}.card-footer-actions{display:flex;justify-content:flex-end;gap:7px;padding-top:12px;border-top:1px solid var(--line)}.project-context-panel{display:grid;gap:8px;margin:4px 0 12px;padding:11px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.project-context-panel>div:first-child{display:flex;align-items:center;justify-content:space-between}.project-context-panel>div:first-child span{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:10px}.project-context-panel>div:first-child strong{font-size:11px}.project-context-panel>small{color:var(--faint);font-size:9px}.change-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:8px;border-top:1px solid var(--line)}.change-row>span:first-child{min-width:0;display:grid;gap:2px}.change-row>span:first-child strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.change-row>span:first-child small{color:var(--muted);font-size:9px}.delivery-board{overflow:hidden}.board-columns{display:grid;grid-template-columns:repeat(4,minmax(210px,1fr));gap:10px;padding:14px;overflow-x:auto}.board-column{min-height:460px;padding:10px;border:1px solid var(--line);border-radius:6px;background:var(--surface-soft)}.board-column>div:first-child{display:flex;align-items:center;justify-content:space-between;padding:2px 2px 10px}.board-column>div:first-child strong{font-size:11px}.board-column>div:first-child span{display:grid;place-items:center;width:20px;height:20px;border-radius:4px;color:var(--muted);background:#e7ece9;font-size:9px}.delivery-card{display:grid;gap:7px;width:100%;margin-bottom:8px;padding:12px;border:1px solid var(--line);border-radius:6px;background:#fff;cursor:pointer;text-align:left}.delivery-card:hover{border-color:#a9c7b7;box-shadow:0 4px 12px #172a200d}.delivery-card small{color:var(--muted);font-size:9px}.delivery-card strong{font-size:11px}.delivery-card p{margin:0;color:var(--muted);font-size:9px}.delivery-card footer{display:flex;justify-content:space-between;gap:8px;padding-top:7px;border-top:1px solid #edf0ee;color:var(--muted);font-size:9px}.empty-state{display:grid;place-items:center;min-height:92px;color:var(--faint);font-size:10px}.payment-summary,.analytics-hero{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;border:1px solid var(--line);border-radius:7px;background:#fff}.payment-summary>div,.analytics-hero>div{display:grid;gap:7px;min-height:96px;padding:17px;border-right:1px solid var(--line)}.payment-summary>div:last-child,.analytics-hero>div:last-child{border-right:0}.payment-summary span,.analytics-hero span{color:var(--muted);font-size:10px}.payment-summary strong,.analytics-hero strong{overflow:hidden;text-overflow:ellipsis;font-size:19px}.payment-summary .danger strong{color:var(--red)}.payment-summary>div[role=button]{cursor:pointer;transition:background-color .12s ease}.payment-summary>div[role=button]:hover{background:#f7faf9}.payment-summary>div[role=button]:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}.payment-history-table .table-head,.payment-history-table .table-row{grid-template-columns:.75fr 1.45fr .65fr .7fr 1.3fr}.voided-row{opacity:.58;background:#fafafa}.analytics-hero small{color:var(--faint);font-size:9px}.followup-page{overflow:hidden}.timeline-list{max-width:850px;padding:8px 18px 24px}.timeline-list>button{display:grid;grid-template-columns:58px 28px minmax(0,1fr) auto;align-items:center;width:100%;min-height:67px;border:0;border-bottom:1px solid var(--line);background:transparent;cursor:pointer;text-align:left}.timeline-list>button.done{opacity:.58}.timeline-date{display:grid;gap:2px}.timeline-date strong{font-size:11px}.timeline-date small{color:var(--muted);font-size:9px}.timeline-marker{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;color:var(--amber);background:var(--amber-soft)}.done .timeline-marker{color:var(--green);background:var(--green-soft)}.timeline-copy{display:grid;gap:3px;min-width:0;padding-left:7px}.timeline-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.timeline-copy small{color:var(--muted);font-size:10px}.analytics-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:14px}.analytics-grid>.surface:has(.receivable-health){grid-column:1 / -1}.receivable-health{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:10px 14px 14px}.receivable-health>div{display:grid;gap:3px;padding:11px 8px;border:1px solid var(--line);border-radius:6px;background:var(--surface-soft);text-align:center}.receivable-health strong{font-size:20px;font-variant-numeric:tabular-nums}.receivable-health span{color:var(--muted);font-size:10px}.receivable-health .danger strong{color:var(--red)}.funnel-list{display:grid;gap:13px;padding:18px}.funnel-list button{display:grid;grid-template-columns:78px minmax(0,1fr) 30px;align-items:center;gap:10px;padding:0;border:0;background:transparent;cursor:pointer;text-align:left}.funnel-list span{color:var(--muted);font-size:10px}.funnel-list i{display:block;height:19px;min-width:8px;border-radius:4px;background:#74a88d}.funnel-list strong{font-size:11px;text-align:right}.source-list{display:grid;padding:9px 18px 18px}.source-list button{display:grid;grid-template-columns:1fr 50px 50px;align-items:center;min-height:49px;padding:0;border:0;border-bottom:1px solid var(--line);background:transparent;cursor:pointer;text-align:left}.source-list button span{font-size:11px}.source-list button strong{font-size:13px}.source-list button small{color:var(--muted);font-size:10px}.template-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:14px}.service-catalog,.industry-templates{overflow:hidden}.service-list{display:grid;padding:7px 14px 15px}.service-list button{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;padding:6px 4px;border:0;border-bottom:1px solid var(--line);background:transparent;cursor:pointer;text-align:left}.service-icon{display:grid;place-items:center;width:31px;height:31px;border-radius:6px;color:var(--blue);background:var(--blue-soft)}.service-list button>span:nth-child(2){min-width:0;display:grid;gap:3px}.service-list strong{font-size:11px}.service-list small{color:var(--muted);font-size:9px}.service-list em{color:var(--ink);font-size:11px;font-style:normal;font-weight:700}.service-edit-hint{display:inline-flex;align-items:center;justify-content:center;min-width:34px;min-height:24px;padding:0 6px;color:var(--muted);border:1px solid var(--line);border-radius:4px;font-size:9px;opacity:0;transition:opacity .15s ease,color .15s ease,border-color .15s ease}.service-list button:hover .service-edit-hint,.service-list button:focus-visible .service-edit-hint{opacity:1;color:var(--accent-final, var(--blue));border-color:var(--line-strong)}.service-empty{display:grid;justify-items:center;gap:8px;padding:14px}.service-empty .empty-state{min-height:62px}.industry-templates>button{display:grid;grid-template-columns:35px minmax(0,1fr) 20px;align-items:center;gap:11px;width:calc(100% - 28px);min-height:68px;margin:0 14px;padding:8px 3px;border:0;border-bottom:1px solid var(--line);background:transparent;cursor:pointer;text-align:left}.industry-templates>button>i{color:#88a095;font-size:11px;font-style:normal;font-weight:800}.industry-templates>button>span{min-width:0;display:grid;gap:4px}.industry-templates strong{font-size:11px}.industry-templates small{color:var(--muted);font-size:9px}.settings-layout{display:grid;gap:14px;max-width:980px}.settings-section{overflow:hidden}.settings-form{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:13px;padding:18px}.settings-form label,.modal-form label{display:grid;gap:6px}.settings-form label span,.modal-form label>span{color:var(--muted);font-size:10px;font-weight:700}.settings-form input,.settings-form select,.modal-form input,.modal-form select,.modal-form textarea{width:100%;height:39px;padding:0 10px;border:1px solid var(--line-strong);border-radius:6px;outline:none;background:#fff;color:var(--ink);font-size:11px}.modal-form textarea{min-height:82px;padding-top:10px;resize:vertical;line-height:1.5}.settings-form input:focus,.settings-form select:focus,.modal-form input:focus,.modal-form select:focus,.modal-form textarea:focus{border-color:#6b9e85;box-shadow:0 0 0 3px #287a5714}.settings-form input[readonly]{color:var(--muted);background:var(--surface-soft)}.data-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:18px}.data-actions button{display:grid;grid-template-columns:25px minmax(0,1fr);gap:9px;min-height:72px;padding:13px;border:1px solid var(--line);border-radius:6px;background:var(--surface-soft);cursor:pointer;text-align:left}.data-actions button:hover{border-color:#abc3b6}.data-actions button>span{display:grid;gap:4px}.data-actions strong{font-size:11px}.data-actions small{color:var(--muted);font-size:9px;line-height:1.45}.storage-path{margin:-5px 18px 16px;overflow-wrap:anywhere;color:var(--faint);font-size:9px}.boundary-note{display:grid;grid-template-columns:25px 1fr;gap:10px;padding:15px;border:1px solid #edd5ad;border-radius:7px;color:#77501c;background:#fff8ec}.boundary-note strong{font-size:11px}.boundary-note p{margin:4px 0 0;font-size:10px;line-height:1.6}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:18px;background:#11191580}.modal{width:min(560px,100%);max-height:min(720px,calc(100vh - 36px));overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 20px 60px #0f1d1533}.modal>header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:18px 20px;border-bottom:1px solid var(--line)}.modal h2{margin:0;font-size:17px}.modal header p{margin:5px 0 0;color:var(--muted);font-size:10px}.modal header>button{display:grid;place-items:center;width:31px;height:31px;padding:0;border:1px solid var(--line);border-radius:6px;background:#fff;cursor:pointer}.modal-form{display:grid;gap:15px;padding:20px}.form-row{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:12px}.form-row.equal{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-preview{display:grid;gap:5px;padding:14px;border:1px solid #cfe2d7;border-radius:6px;background:var(--green-soft)}.quote-preview span{color:var(--green);font-size:10px}.quote-preview strong{font-size:20px}.quote-preview small{color:#557164;font-size:9px}.modal-note{display:flex;gap:8px;padding:12px;color:#6c552e;border:1px solid #ead7b7;border-radius:6px;background:#fff8eb;font-size:9px;line-height:1.55}.modal-form footer{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}.modal-form button:disabled{opacity:.45;cursor:not-allowed}.danger-button{border-color:var(--red)!important;background:var(--red)!important}.delivery-detail{display:grid;gap:14px;padding:20px}.delivery-detail-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:6px}.delivery-detail-summary>span{display:grid;gap:6px;padding:12px;border-right:1px solid var(--line)}.delivery-detail-summary>span:last-child{border-right:0}.delivery-detail-summary small{color:var(--muted);font-size:9px}.delivery-detail-summary strong{font-size:11px}.version-list{display:grid;max-height:220px;overflow:auto;border-top:1px solid var(--line)}.version-list>div:not(.empty-state){display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:55px;padding:8px 2px;border-bottom:1px solid var(--line)}.version-list>div>span:first-child{min-width:0;display:grid;gap:3px}.version-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.version-list small{color:var(--muted);font-size:9px}.embedded-form{padding:14px 0 0;border-top:1px solid var(--line)}.toast{position:fixed;z-index:70;right:24px;bottom:22px;display:flex;align-items:center;gap:8px;max-width:360px;min-height:42px;padding:0 14px;border:1px solid #9fc7b2;border-radius:6px;color:#205f43;background:#eff9f3;box-shadow:0 8px 24px #1637261f;font-size:11px;font-weight:700}.fatal-state{display:grid;place-items:center;min-height:100vh;background:#eef1ee}.fatal-state section{width:min(460px,calc(100% - 32px));padding:28px;border:1px solid var(--line);border-radius:8px;background:#fff}.fatal-state span{color:var(--red);font-size:11px;font-weight:700}.fatal-state h1{margin:9px 0;font-size:22px}.fatal-state p{color:var(--muted);font-size:12px;line-height:1.6}.fatal-state button{min-height:36px;padding:0 13px;border:0;border-radius:6px;color:#fff;background:var(--button-blue, var(--blue));cursor:pointer}.workflow-progress{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:14px 18px}.workflow-progress>div{display:grid;gap:3px}.workflow-progress>div strong{font-size:12px}.workflow-progress>div span{color:var(--muted);font-size:9px}.workflow-progress ol{display:grid;grid-template-columns:repeat(6,minmax(52px,1fr));gap:0;min-width:0;margin:0;padding:0;list-style:none}.workflow-progress li{position:relative;display:grid;justify-items:center;gap:5px;color:var(--faint);font-size:9px;text-align:center}.workflow-progress li:before{content:"";position:absolute;z-index:0;top:11px;right:50%;width:100%;height:1px;background:var(--line)}.workflow-progress li:first-child:before{display:none}.workflow-progress li i{position:relative;z-index:1;display:grid;place-items:center;width:23px;height:23px;border:1px solid var(--line-strong);border-radius:50%;background:#fff;font-style:normal;font-weight:700}.workflow-progress li.done{color:var(--green)}.workflow-progress li.done:before{background:#93c2aa}.workflow-progress li.done i{color:#fff;border-color:var(--green);background:var(--green)}.modal-wide{width:min(1040px,100%)}.quote-editor,.project-wizard{display:grid;gap:14px;padding:18px 20px 20px}.editor-section{min-width:0;overflow-x:auto;border:1px solid var(--line);border-radius:7px;background:#fff}.editor-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:54px;padding:9px 12px;border-bottom:1px solid var(--line);background:var(--surface-soft)}.editor-section-head>div{display:grid;gap:3px}.editor-section-head strong{font-size:11px}.editor-section-head small{color:var(--muted);font-size:9px}.editor-basics{display:grid;grid-template-columns:.85fr 1.5fr .7fr;gap:12px;padding:13px;overflow:visible}.editor-basics label,.terms-grid label{display:grid;gap:6px;min-width:0}.editor-basics label>span,.terms-grid label>span{color:var(--muted);font-size:9px;font-weight:700}.editor-basics input,.editor-basics select,.quote-line-grid input,.quote-line-grid select,.payment-node-list input,.payment-node-list select,.terms-grid textarea,.inline-select select,.report-toolbar input,.feedback-form input{min-width:0;width:100%;height:36px;padding:0 9px;border:1px solid var(--line-strong);border-radius:5px;outline:0;background:#fff;font-size:10px}.editor-basics input:focus,.editor-basics select:focus,.quote-line-grid input:focus,.quote-line-grid select:focus,.payment-node-list input:focus,.payment-node-list select:focus,.terms-grid textarea:focus,.inline-select select:focus,.report-toolbar input:focus,.feedback-form input:focus{border-color:#6b9e85;box-shadow:0 0 0 3px #287a5714}.package-picker{display:grid;grid-template-columns:24px minmax(220px,1fr) auto;align-items:center;gap:10px;padding:10px 13px;color:#275e46;border:1px solid #bed8ca;border-radius:7px;background:var(--green-soft)}.package-picker label{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px}.package-picker label span,.package-picker small{font-size:9px}.package-picker select{min-width:0;height:34px;border:1px solid #a9c8b8;border-radius:5px;background:#fff}.quote-line-grid{display:grid;grid-template-columns:minmax(140px,1.35fr) minmax(140px,1.5fr) 70px 95px 70px 100px 30px;align-items:center;gap:7px;min-width:760px;padding:8px 11px;border-bottom:1px solid #edf0ee}.quote-line-head{min-height:30px;padding-top:6px;padding-bottom:6px;color:var(--muted);background:#fbfcfb;font-size:9px;font-weight:700}.quote-line-grid strong{font-size:10px;text-align:right;white-space:nowrap}.icon-danger{display:grid;place-items:center;width:29px;height:29px;padding:0;color:var(--red);border:1px solid #ebd1ce;border-radius:5px;background:#fff;cursor:pointer}.quote-total-row{display:flex;align-items:center;justify-content:flex-end;gap:24px;padding:11px 13px;background:var(--surface-soft)}.quote-total-row label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:9px}.quote-total-row input{width:70px;height:32px;padding:0 8px;border:1px solid var(--line-strong);border-radius:5px}.quote-total-row em{font-style:normal}.quote-total-row>span{font-size:10px}.quote-total-row>span strong{margin-left:8px;color:var(--green);font-size:17px}.inline-select{display:flex;align-items:center;gap:7px;color:var(--muted)}.inline-select select{width:180px}.payment-node-list{min-width:680px}.payment-node-list>div{display:grid;grid-template-columns:minmax(140px,1fr) 120px 130px 130px 30px;align-items:center;gap:8px;padding:8px 11px;border-bottom:1px solid #edf0ee}.editor-section>.text-button{margin:5px 8px 8px}.terms-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:13px;overflow:visible}.terms-grid textarea{min-height:76px;height:76px;padding:9px;resize:vertical;line-height:1.5}.form-error{padding:10px 12px;color:#9f352e;border:1px solid #eccbc7;border-radius:6px;background:var(--red-soft);font-size:10px}.editor-footer{position:sticky;bottom:-20px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0 0;border-top:1px solid var(--line);background:#fff}.editor-footer>span{color:var(--muted);font-size:9px}.editor-footer>div{display:flex;gap:8px}.wizard-summary{display:grid;grid-template-columns:1fr 1fr minmax(210px,auto);align-items:center;border:1px solid #bed8ca;border-radius:7px;background:var(--green-soft)}.wizard-summary>span{display:grid;gap:4px;padding:12px;border-right:1px solid #cbded4}.wizard-summary small{color:#52705f;font-size:9px}.wizard-summary strong{font-size:12px}.wizard-summary .toggle-row{padding:12px}.deliverable-draft-list{min-width:620px}.deliverable-draft-list>div{display:grid;grid-template-columns:minmax(180px,1fr) 140px 130px 30px;align-items:end;gap:8px;padding:8px 11px;border-bottom:1px solid #edf0ee}.deliverable-draft-list input{width:100%;min-width:0;height:36px;padding:0 9px;border:1px solid var(--line-strong);border-radius:5px}.deliverable-draft-list label{display:grid;gap:3px;color:var(--muted);font-size:8px}.client-table-v3 .table-head,.client-table-v3 .table-row{grid-template-columns:1.4fr .85fr 1.2fr .65fr .8fr}.quote-table-v3 .table-head,.quote-table-v3 .table-row{grid-template-columns:34px 1.3fr 1fr .62fr .52fr 1.7fr}.quote-actions{flex-wrap:wrap}.quote-list-batch-toolbar{display:flex;align-items:center;gap:12px;min-height:44px;padding:8px 14px;border-bottom:1px solid var(--line);background:var(--surface-soft)}.quote-list-batch-toolbar label,.row-check{display:inline-flex;align-items:center;justify-content:center;gap:6px}.quote-list-batch-toolbar span{color:var(--muted);font-size:11px}.quote-list-batch-toolbar button{min-height:30px;padding:4px 9px;font-size:11px;border-radius:4px}.table-group-select{height:34px;padding:0 28px 0 10px;color:var(--ink);border:1px solid var(--line-strong);border-radius:5px;background:var(--surface);font-size:11px}.quote-group{border-bottom:1px solid var(--line)}.quote-group:last-child{border-bottom:0}.quote-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:10px 14px;color:var(--muted);border:0;border-bottom:1px solid var(--line);background:var(--surface-soft);cursor:pointer;text-align:left}.quote-group-head:hover{background:color-mix(in srgb,var(--surface-soft) 75%,var(--blue-soft))}.quote-group-head>span:first-child{display:grid;gap:3px;min-width:0}.quote-group-head strong{color:var(--ink);font-size:12px}.quote-group-head small{font-size:10px}.quote-group-toggle{flex:0 0 auto;color:var(--blue);font-size:10px}.row-check input{width:14px;height:14px;accent-color:var(--blue)}.project-primary-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 38px;gap:8px;padding:13px 16px 16px}.project-primary-actions .icon-button{width:38px}.project-advanced{display:grid;gap:11px;padding:13px 16px 16px;border-top:1px solid var(--line);background:var(--surface-soft)}.advanced-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:var(--line)}.advanced-summary span{padding:8px;background:#fff;color:var(--muted);font-size:9px;text-align:center}.advanced-actions{display:flex;flex-wrap:wrap;gap:6px}.advanced-actions button{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:0 9px;border:1px solid var(--line-strong);border-radius:5px;background:#fff;cursor:pointer;font-size:9px}.change-list{display:grid;border-top:1px solid var(--line)}.change-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;border-bottom:1px solid var(--line)}.change-list>div>span:first-child{display:grid;gap:3px;min-width:0}.change-list strong{font-size:10px}.change-list small{color:var(--muted);font-size:9px}.report-toolbar{display:grid;grid-template-columns:150px minmax(0,1fr) auto;align-items:center;gap:18px;padding:13px 16px}.report-toolbar label{display:grid;gap:5px;color:var(--muted);font-size:9px}.report-toolbar>div{display:grid;gap:3px}.report-toolbar>div strong{font-size:12px}.report-toolbar>div small{color:var(--muted);font-size:9px}.ranking-list,.asset-list{display:grid;padding:8px 14px 14px}.ranking-list>div{display:grid;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:44px;border-bottom:1px solid var(--line);font-size:10px}.ranking-list i{display:grid;place-items:center;width:21px;height:21px;color:var(--muted);border-radius:4px;background:var(--surface-soft);font-style:normal;font-weight:700}.channel-table .table-head,.channel-table .table-row{grid-template-columns:1.2fr .5fr .8fr .8fr .8fr}.asset-list>div{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:9px;min-height:52px;border-bottom:1px solid var(--line);color:var(--blue)}.asset-list>div>span{display:grid;gap:3px;min-width:0;color:var(--ink)}.asset-list strong{font-size:10px}.asset-list small{color:var(--muted);font-size:9px}.settings-v3{max-width:1120px}.storage-alert{display:grid;grid-template-columns:25px minmax(0,1fr);gap:10px;padding:13px 15px;color:#9c382f;border:1px solid #e5bdb8;border-radius:7px;background:var(--red-soft)}.storage-alert strong{font-size:11px}.storage-alert p{margin:3px 0 0;font-size:9px}.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:17px}.plan-grid>button{display:grid;align-content:start;gap:8px;min-height:190px;padding:14px;border:1px solid var(--line);border-radius:7px;background:#fff;cursor:pointer;text-align:left}.plan-grid>button:hover{border-color:var(--line-strong)}.plan-grid>button.active{border-color:var(--blue);box-shadow:inset 0 3px 0 var(--blue);background:var(--surface)}.plan-grid>button>span{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:800}.plan-grid em{padding:3px 5px;color:var(--blue);border-radius:4px;background:var(--blue-soft);font-size:8px;font-style:normal}.plan-grid>button>strong{min-height:30px;color:var(--muted);font-size:9px;line-height:1.5}.plan-grid>button>small{color:var(--green);font-size:11px;font-weight:700}.plan-grid ul{display:grid;gap:5px;margin:0;padding:0;list-style:none}.plan-grid li{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:8px}.settings-note{margin:0;padding:0 17px 16px;color:var(--muted);font-size:9px;line-height:1.6}.terms-settings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 18px 18px}.terms-settings label{display:grid;gap:6px;color:var(--muted);font-size:9px;font-weight:700}.terms-settings textarea{min-height:90px;padding:9px;border:1px solid var(--line-strong);border-radius:6px;resize:vertical;font-size:10px}.toggle-row{display:flex!important;grid-template-columns:none!important;align-items:center;gap:8px;color:var(--muted);font-size:10px}.toggle-row input{flex:0 0 auto;width:15px!important;height:15px!important;margin:0;accent-color:var(--blue)}.settings-toggle{margin:0 18px 18px}.storage-health{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:17px 18px 0;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:var(--line)}.storage-health>span{display:grid;gap:5px;min-width:0;padding:11px;background:#fff}.storage-health small{color:var(--muted);font-size:8px}.storage-health strong{overflow-wrap:anywhere;font-size:9px}.restore-list{display:grid;gap:0;padding:0 18px 18px}.restore-list>strong{padding:8px 0;border-bottom:1px solid var(--line);font-size:10px}.restore-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:38px;border-bottom:1px solid var(--line);color:var(--muted);font-size:9px}.restore-list button{min-height:26px;padding:0 8px;border:1px solid var(--line-strong);border-radius:4px;background:#fff;cursor:pointer;font-size:9px}.activation-dialog{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;padding:20px;color:#76501e}.activation-dialog p{margin:0;font-size:10px;line-height:1.65}.activation-dialog footer{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:8px;padding-top:8px}.workflow-alert{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px;color:#8b5518;border:1px solid #e7c995;border-radius:6px;background:var(--amber-soft);font-size:9px}.workflow-alert button{min-height:28px;padding:0 8px;color:#805218;border:1px solid #dbb979;border-radius:5px;background:#fff;cursor:pointer;font-size:9px}.version-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.version-compare>div{display:grid;gap:7px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:6px;background:var(--surface-soft)}.version-compare small{color:var(--muted);font-size:9px}.version-compare strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}.version-preview-image{display:grid;place-items:center;width:72px;height:52px;overflow:hidden;border:1px solid var(--line);border-radius:5px;color:var(--faint);background:#eef1ef}.version-preview-image img{width:100%;height:100%;object-fit:cover}.version-list .version-preview-image{flex:0 0 auto;width:54px;height:40px}.version-list>div>span:nth-child(2){flex:1;min-width:0;display:grid;gap:3px}.version-list em{color:var(--muted);font-size:8px;font-style:normal;white-space:nowrap}.attachment-picker{display:flex;align-items:center;gap:9px;min-height:48px;padding:7px 10px;color:var(--blue);border:1px dashed var(--line-strong);border-radius:6px;background:var(--surface-soft);cursor:pointer;font-size:9px}.attachment-picker img{width:52px;height:36px;object-fit:cover;border-radius:4px}.feedback-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding-top:12px;border-top:1px solid var(--line)}.checkbox-list{display:grid;gap:7px;max-height:180px;margin:0;padding:12px;overflow:auto;border:1px solid var(--line);border-radius:6px}.checkbox-list legend{padding:0 5px;color:var(--muted);font-size:9px;font-weight:700}.checkbox-list label{display:flex;grid-template-columns:none;align-items:center;gap:8px}.checkbox-list input{width:14px;height:14px}@media(max-width:1120px){.sidebar{padding-left:10px;padding-right:10px}.topbar{padding-left:20px;padding-right:20px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-grid-page{grid-template-columns:1fr}.settings-form{grid-template-columns:1fr 1fr}.workflow-progress{grid-template-columns:120px minmax(0,1fr)}.workflow-progress>.text-button{display:none}.quote-table-v3 .table-head,.quote-table-v3 .table-row{grid-template-columns:30px 1.2fr .9fr .58fr .5fr 1.55fr}}@media(max-width:820px){body{overflow:auto}.sidebar{position:sticky;top:0;z-index:20;flex-direction:row;align-items:center;padding:8px 12px;border-right:0;border-bottom:1px solid #111915}.brand{padding:0}.brand div,.sidebar-foot,.nav-group>span{display:none}.brand>span{width:34px;height:34px}.sidebar nav{display:flex;flex:1;overflow-x:auto}.nav-group{display:flex;margin:0}.nav-group button{width:40px;grid-template-columns:1fr;place-items:center;padding:0}.nav-group button span,.nav-group button i{display:none}.nav-group button.active:before{display:none}.topbar{position:sticky;top:51px;z-index:15;align-items:flex-end;padding:12px 14px}.topbar p,.topbar>div:first-child>span,.search-box,.icon-button{display:none}.topbar h1{font-size:18px}.table-surface{overflow-x:auto}.workspace-grid,.analytics-grid,.template-layout{grid-template-columns:1fr}.span-7,.span-5{grid-column:auto}.payment-summary,.analytics-hero{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-summary>div:nth-child(2),.analytics-hero>div:nth-child(2){border-right:0}.payment-summary>div:nth-child(-n+2),.analytics-hero>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.data-actions,.settings-form{grid-template-columns:1fr}.workflow-progress{display:block;overflow-x:auto;padding:12px}.workflow-progress>div{display:none}.workflow-progress ol{min-width:560px}.workflow-progress li span{white-space:nowrap}.modal-wide{width:100%}.quote-editor,.project-wizard{padding:13px}.editor-basics{grid-template-columns:1fr 1fr}.editor-basics label:nth-child(2){grid-column:1 / -1;grid-row:1}.package-picker{grid-template-columns:22px minmax(0,1fr)}.package-picker small{grid-column:2}.terms-grid,.terms-settings,.plan-grid{grid-template-columns:1fr}.plan-grid>button{min-height:auto}.report-toolbar{grid-template-columns:140px minmax(0,1fr)}.report-toolbar>button{grid-column:1 / -1;justify-self:end}.storage-health{grid-template-columns:1fr}.wizard-summary{grid-template-columns:1fr 1fr}.wizard-summary .toggle-row{grid-column:1 / -1;border-top:1px solid #cbded4}.editor-footer{bottom:-13px}}@media(max-width:520px){.metric-grid{grid-template-columns:1fr}.metric-card{min-height:104px}.payment-summary,.analytics-hero{grid-template-columns:1fr}.payment-summary>div,.analytics-hero>div{border-right:0;border-bottom:1px solid var(--line)}.payment-summary>div:last-child,.analytics-hero>div:last-child{border-bottom:0}.project-finance{grid-template-columns:1fr}.project-finance>span{border-right:0;border-bottom:1px solid var(--line);padding-left:0}.project-finance>span:last-child{border-bottom:0}.timeline-list>button{grid-template-columns:50px 24px minmax(0,1fr)}.timeline-list .status-pill{display:none}.form-row{grid-template-columns:1fr}.modal-backdrop{place-items:end center;padding:0}.modal{width:100%;max-height:calc(100vh - 18px);border-radius:8px 8px 0 0}.editor-basics{grid-template-columns:1fr}.editor-basics label:nth-child(2){grid-column:auto;grid-row:auto}.package-picker{grid-template-columns:20px minmax(0,1fr)}.quote-total-row{align-items:flex-end;flex-direction:column;gap:9px}.editor-footer{align-items:stretch;flex-direction:column}.editor-footer>div{display:grid;grid-template-columns:1fr 1fr}.project-primary-actions{grid-template-columns:1fr 1fr 38px}.advanced-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.change-list>div{align-items:flex-start;flex-direction:column;padding:9px 0}.report-toolbar{grid-template-columns:1fr}.report-toolbar>button{grid-column:auto;justify-self:stretch}.wizard-summary{grid-template-columns:1fr}.wizard-summary>span{border-right:0;border-bottom:1px solid #cbded4}.wizard-summary .toggle-row{grid-column:auto}.delivery-detail-summary{grid-template-columns:1fr}.delivery-detail-summary>span{border-right:0;border-bottom:1px solid var(--line)}.delivery-detail-summary>span:last-child{border-bottom:0}.version-compare,.feedback-form{grid-template-columns:1fr}.workflow-alert{grid-template-columns:22px minmax(0,1fr)}.workflow-alert button{grid-column:1 / -1}}.modal:has(.quote-start-shell),.modal:has(.template-editor),.modal:has(.studio-profile-editor){width:min(1240px,calc(100vw - 36px));max-height:calc(100vh - 30px);overflow:hidden}.quote-start-shell{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;height:min(760px,calc(100vh - 112px))}.quote-start-toolbar{display:grid;grid-template-columns:minmax(220px,.75fr) minmax(300px,1.25fr) auto;align-items:end;gap:12px;padding:16px 18px;border-bottom:1px solid var(--line)}.quote-start-toolbar label{display:grid;gap:6px}.quote-start-toolbar label>span{color:var(--muted);font-size:9px;font-weight:700}.quote-start-toolbar select,.quote-start-search{width:100%;height:39px;color:var(--ink);border:1px solid var(--line-strong);border-radius:4px;background:var(--surface-soft)}.quote-start-toolbar select{padding:0 10px}.quote-start-search{display:flex;align-items:center;gap:8px;padding:0 10px}.quote-start-search input{min-width:0;flex:1;color:inherit;border:0;outline:0;background:transparent}.quote-start-tabs{display:flex;gap:22px;min-height:48px;padding:0 18px;border-bottom:1px solid var(--line)}.quote-start-tabs button{position:relative;display:inline-flex;align-items:center;gap:7px;padding:0 2px;color:var(--muted);border:0;background:transparent;cursor:pointer;font-size:11px}.quote-start-tabs button.active{color:var(--ink);font-weight:800}.quote-start-tabs button.active:after{content:"";position:absolute;right:0;bottom:-1px;left:0;height:2px;background:var(--blue)}.quote-start-tabs em{padding:2px 5px;color:var(--muted);border-radius:3px;background:var(--surface-soft);font-size:8px;font-style:normal}.quote-start-body{display:grid;grid-template-columns:minmax(380px,.88fr) minmax(0,1.12fr);min-height:0}.quote-start-list{min-height:0;overflow-y:auto;padding:8px 12px 14px;border-right:1px solid var(--line)}.quote-start-list>button{display:grid;grid-template-columns:34px minmax(0,1fr) auto 18px;align-items:center;gap:10px;width:100%;min-height:66px;padding:9px 10px;color:var(--ink);border:0;border-bottom:1px solid var(--line);background:transparent;cursor:pointer;text-align:left}.quote-start-list>button:hover{background:var(--surface-soft)}.quote-start-list>button.active{background:var(--blue-soft);box-shadow:inset 3px 0 var(--blue)}.quote-template-icon{display:grid;place-items:center;width:32px;height:32px;color:var(--blue);border:1px solid var(--line);border-radius:4px;background:var(--surface-soft)}.quote-start-list>button>span:nth-child(2){display:grid;gap:4px;min-width:0}.quote-start-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.quote-start-list small{color:var(--muted);font-size:9px}.quote-start-list em{color:var(--ink);font-size:10px;font-style:normal;font-weight:800;white-space:nowrap}.quote-start-preview{min-height:0;overflow-y:auto;padding:18px}.quote-preview-head{display:flex;justify-content:space-between;gap:18px;padding:0 0 16px;border-bottom:1px solid var(--line)}.quote-preview-head h3,.history-preview h3{margin:3px 0 5px;font-size:18px}.quote-preview-head p,.history-preview p{margin:0;color:var(--muted);font-size:10px;line-height:1.6}.quote-preview-head small{color:var(--blue);font-size:9px;font-weight:800}.quote-preview-head>strong{align-self:center;color:var(--green);font-size:17px;white-space:nowrap}.quote-preview-groups{display:grid;gap:12px;padding-top:14px}.quote-preview-groups>section{border:1px solid var(--line);border-radius:4px;overflow:hidden}.quote-preview-groups>section>header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--surface-soft)}.quote-preview-groups header div{display:grid;gap:3px}.quote-preview-groups header strong{font-size:11px}.quote-preview-groups header small{color:var(--muted);font-size:9px}.quote-preview-groups header em{color:var(--muted);font-size:9px;font-style:normal}.quote-preview-groups section>button{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;min-height:52px;padding:7px 12px;color:var(--ink);border:0;border-top:1px solid var(--line);background:transparent;cursor:pointer;text-align:left}.quote-preview-groups section>button:hover{background:var(--surface-soft)}.quote-preview-groups section>button i{display:grid;place-items:center;width:17px;height:17px;color:#061328;border:1px solid var(--line-strong);border-radius:3px}.quote-preview-groups section>button.selected i{border-color:var(--blue);background:var(--blue)}.quote-preview-groups section>button>span{display:grid;gap:3px}.quote-preview-groups section>button small{color:var(--muted);font-size:8px}.quote-preview-groups section>button em{font-size:10px;font-style:normal;font-weight:800}.quote-start-empty{display:grid;place-items:center;min-height:180px;color:var(--muted);font-size:10px}.quote-start-footer,.template-editor-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:62px;padding:12px 18px;border-top:1px solid var(--line);background:var(--surface-soft)}.quote-start-footer>span,.template-editor-footer>span{color:var(--muted);font-size:9px}.quote-start-footer>div,.template-editor-footer>div{display:flex;gap:8px}.history-preview{display:grid;align-content:start;gap:5px;padding:18px 4px}.history-preview>svg{color:var(--blue)}.history-preview>small{margin-top:8px;color:var(--blue);font-size:9px;font-weight:800}.history-preview dl{display:grid;grid-template-columns:repeat(3,1fr);margin:18px 0;border:1px solid var(--line)}.history-preview dl>div{display:grid;gap:6px;padding:12px;border-right:1px solid var(--line)}.history-preview dl>div:last-child{border-right:0}.history-preview dt{color:var(--muted);font-size:8px}.history-preview dd{margin:0;font-size:10px;font-weight:800}.history-reset-note{padding:12px;color:var(--muted);border-left:3px solid var(--blue);background:var(--blue-soft);font-size:9px;line-height:1.65}.template-source-banner{display:flex;align-items:center;gap:10px;padding:11px 13px;color:var(--blue);border:1px solid var(--line);border-left:3px solid var(--blue);background:var(--blue-soft)}.template-source-banner span{display:grid;gap:3px}.template-source-banner strong{font-size:10px}.template-source-banner small{color:var(--muted);font-size:9px}.template-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 22px;border-left:3px solid var(--blue)}.template-hero>div:first-child{display:grid;gap:5px}.template-hero span{color:var(--blue);font-size:9px;font-weight:800}.template-hero h2{margin:0;font-size:18px}.template-hero p{margin:0;color:var(--muted);font-size:10px}.template-hero>div:last-child{display:flex;gap:8px}.quote-template-table{overflow-x:auto}.quote-template-table-head,.quote-template-table-row{display:grid;grid-template-columns:1.35fr 1.4fr .8fr .65fr .85fr;align-items:center;gap:14px;min-width:900px;min-height:64px;padding:9px 16px;border-bottom:1px solid var(--line)}.quote-template-table-head{min-height:38px;color:var(--muted);background:var(--surface-soft);font-size:9px;font-weight:800}.quote-template-table-row:last-child{border-bottom:0}.quote-template-table-row>span{min-width:0}.quote-template-table-row>span:not(.row-actions){display:grid;gap:4px}.quote-template-table-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.quote-template-table-row small{overflow:hidden;color:var(--muted);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.template-asset-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:16px}.template-editor{display:grid;grid-template-rows:minmax(0,1fr) auto;height:min(800px,calc(100vh - 112px))}.template-editor-columns{display:grid;grid-template-columns:152px minmax(0,1fr) 250px;min-height:0}.template-editor-nav{display:grid;align-content:start;gap:4px;padding:16px 12px;border-right:1px solid var(--line);background:var(--surface-soft)}.template-editor-nav>strong{padding:0 7px 10px;font-size:10px}.template-editor-nav>span{display:flex;align-items:center;gap:8px;min-height:36px;padding:0 7px;color:var(--muted);font-size:9px}.template-editor-nav>span i{display:grid;place-items:center;width:18px;height:18px;border:1px solid var(--line);border-radius:3px;font-style:normal}.template-editor-nav>span.active{color:var(--ink);background:var(--blue-soft)}.template-editor-nav>span.active i{color:#061328;border-color:var(--blue);background:var(--blue)}.template-editor-nav>div{display:grid;gap:4px;margin-top:18px;padding:12px 7px;border-top:1px solid var(--line)}.template-editor-nav small{color:var(--muted);font-size:8px}.template-editor-main{min-height:0;overflow-y:auto;padding:15px}.template-form-section{margin-bottom:14px;border:1px solid var(--line)}.template-form-section>header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;padding:9px 12px;border-bottom:1px solid var(--line);background:var(--surface-soft)}.template-form-section>header>div{display:grid;gap:3px}.template-form-section>header strong{font-size:10px}.template-form-section>header small{color:var(--muted);font-size:8px}.template-form-section>header select{height:32px;padding:0 9px;color:var(--ink);border:1px solid var(--line);background:var(--surface)}.template-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:13px}.template-field-grid label{display:grid;gap:6px}.template-field-grid label>span,.studio-profile-editor main>section>label>span{color:var(--muted);font-size:8px;font-weight:800}.template-field-grid .span-2{grid-column:1 / -1}.template-field-grid input,.template-field-grid select,.template-field-grid textarea,.studio-profile-editor main>section>label input{width:100%;min-width:0;color:var(--ink);border:1px solid var(--line-strong);border-radius:4px;outline:0;background:var(--surface-soft)}.template-field-grid input,.template-field-grid select,.studio-profile-editor main>section>label input{height:36px;padding:0 9px}.template-field-grid textarea{min-height:68px;padding:8px 9px;resize:vertical}.template-field-grid input:focus,.template-field-grid textarea:focus,.template-field-grid select:focus{border-color:var(--blue);box-shadow:0 0 0 2px #adc6ff24}.template-groups{display:grid;gap:10px;padding:12px}.template-groups>section{border:1px solid var(--line)}.template-groups>section.active{border-color:var(--blue)}.template-group-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px;background:var(--surface-soft)}.template-group-head>span{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(200px,1.3fr);gap:8px;flex:1}.template-group-head input{min-width:0;height:32px;padding:0 8px;color:var(--ink);border:1px solid var(--line);background:var(--surface)}.template-group-head button,.template-line-row>button,.payment-template-nodes button{display:grid;place-items:center;width:31px;height:31px;color:var(--red);border:1px solid var(--line);background:transparent;cursor:pointer}.template-line-head,.template-line-row{display:grid;grid-template-columns:minmax(150px,1fr) 110px 70px 105px 32px;align-items:center;gap:8px;min-width:520px;min-height:48px;padding:7px 9px;border-top:1px solid var(--line)}.template-line-head{min-height:32px;color:var(--muted);font-size:8px}.template-line-row>span{display:grid;gap:3px;min-width:0}.template-line-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}.template-line-row small{color:var(--muted);font-size:8px}.template-line-row input,.template-line-row select{width:100%;min-width:0;height:32px;padding:0 7px;color:var(--ink);border:1px solid var(--line);background:var(--surface-soft)}.template-group-empty{display:grid;place-items:center;min-height:56px;color:var(--muted);font-size:8px}.template-service-picker{display:grid;grid-template-rows:auto auto minmax(0,1fr);min-height:0;padding:14px 12px;border-left:1px solid var(--line);background:var(--surface-soft)}.template-service-picker>div{display:flex;align-items:center;gap:8px;padding:0 3px 12px}.template-service-picker>div>span{display:grid;gap:3px}.template-service-picker strong{font-size:10px}.template-service-picker small{color:var(--muted);font-size:8px}.template-service-picker>label{display:flex;align-items:center;gap:7px;height:34px;padding:0 8px;border:1px solid var(--line);background:var(--surface)}.template-service-picker>label input{min-width:0;flex:1;color:var(--ink);border:0;outline:0;background:transparent}.template-service-picker>section{min-height:0;overflow-y:auto;margin-top:10px}.template-service-picker>section button{display:grid;grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:8px;width:100%;min-height:51px;padding:7px 5px;color:var(--ink);border:0;border-bottom:1px solid var(--line);background:transparent;cursor:pointer;text-align:left}.template-service-picker>section button:hover{color:var(--blue);background:var(--blue-soft)}.template-service-picker>section button span{display:grid;gap:3px;min-width:0}.studio-profile-editor{display:grid;grid-template-rows:minmax(0,1fr) auto;height:min(760px,calc(100vh - 112px))}.studio-profile-layout{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:0}.studio-brand-preview{display:grid;align-content:start;justify-items:start;gap:8px;padding:22px;border-right:1px solid var(--line);background:var(--surface-soft)}.studio-logo-preview{display:grid;place-items:center;width:78px;height:78px;overflow:hidden;color:var(--blue);border:1px solid var(--line);background:var(--surface)}.studio-logo-preview img{width:100%;height:100%;object-fit:contain}.studio-brand-preview>strong{margin-top:7px;font-size:16px}.studio-brand-preview>span{color:var(--muted);font-size:9px}.studio-brand-preview>div:last-child{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.studio-brand-preview>div:last-child small{color:var(--muted);font-size:8px}.studio-brand-preview>div:last-child p{color:var(--muted);font-size:8px;line-height:1.6}.studio-profile-editor main{min-height:0;overflow-y:auto;padding:15px}.studio-profile-editor main>section{margin-bottom:14px;border:1px solid var(--line)}.studio-profile-editor main>section>header{display:grid;gap:3px;padding:11px 13px;border-bottom:1px solid var(--line);background:var(--surface-soft)}.studio-profile-editor main>section>header strong{font-size:10px}.studio-profile-editor main>section>header small{color:var(--muted);font-size:8px}.studio-profile-editor main>section>label{display:grid;gap:6px;padding:12px}.studio-display-toggles{display:flex;flex-wrap:wrap;gap:18px;padding:0 13px 14px}.studio-display-toggles label{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:9px}.footer-mode-control{display:flex;gap:6px;padding:13px 13px 0}.footer-mode-control button{min-height:32px;padding:0 10px;color:var(--muted);border:1px solid var(--line);background:transparent;cursor:pointer}.footer-mode-control button.active{color:#061328;border-color:var(--blue);background:var(--blue);font-weight:800}.service-item-editor{overflow-y:auto}.payment-template-summary{display:flex;justify-content:space-between;padding:11px 12px;border:1px solid var(--line);background:var(--surface-soft)}.payment-template-summary span{color:var(--muted);font-size:9px}.payment-template-summary .valid strong{color:var(--green)}.payment-template-summary .invalid strong{color:var(--red)}.payment-template-nodes{overflow-x:auto;border:1px solid var(--line)}.payment-template-nodes>div{display:grid;grid-template-columns:minmax(180px,1fr) 110px 110px 150px 34px;align-items:center;gap:8px;min-width:680px;min-height:48px;padding:7px 9px;border-bottom:1px solid var(--line)}.payment-template-nodes>div:first-child{min-height:34px;color:var(--muted);background:var(--surface-soft);font-size:8px}.payment-template-nodes>div:last-child{border-bottom:0}.payment-template-nodes input,.payment-template-nodes select{width:100%;min-width:0;height:32px;padding:0 7px;color:var(--ink);border:1px solid var(--line);background:var(--surface-soft)}.payment-template-nodes label{position:relative}.payment-template-nodes label input{padding-right:28px}.payment-template-nodes label em{position:absolute;right:8px;top:9px;color:var(--muted);font-size:8px;font-style:normal}@media(max-width:1000px){.quote-start-body{grid-template-columns:1fr}.quote-start-list{max-height:230px;border-right:0;border-bottom:1px solid var(--line)}.template-editor-columns{grid-template-columns:minmax(0,1fr) 220px}.template-editor-nav{display:none}.template-asset-grid{grid-template-columns:1fr}}@media(max-width:700px){.modal:has(.quote-start-shell),.modal:has(.template-editor),.modal:has(.studio-profile-editor){width:100%;max-height:calc(100vh - 18px)}.quote-start-toolbar{grid-template-columns:1fr}.quote-start-toolbar .secondary-button{width:100%}.quote-start-shell,.template-editor,.studio-profile-editor{height:calc(100vh - 91px)}.quote-start-body{display:block;overflow-y:auto}.quote-start-list,.quote-start-preview{max-height:none;overflow:visible}.quote-start-footer,.template-editor-footer{align-items:stretch;flex-direction:column}.quote-start-footer>div,.template-editor-footer>div{display:grid;grid-template-columns:1fr 1fr}.template-editor-columns,.studio-profile-layout{display:block;overflow-y:auto}.template-editor-main{overflow:visible}.template-service-picker{min-height:280px;border-top:1px solid var(--line);border-left:0}.studio-brand-preview{border-right:0;border-bottom:1px solid var(--line)}.studio-profile-editor main{overflow:visible}.template-field-grid{grid-template-columns:1fr}.template-field-grid .span-2{grid-column:auto}.template-hero{align-items:flex-start;flex-direction:column}.template-hero>div:last-child{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}body{background:var(--app-bg);color:var(--ink)}.sidebar{padding:26px 16px 16px;background:var(--surface-soft);border-right:1px solid var(--line)}.brand{padding:0 12px 28px}.brand>span{width:40px;height:40px;border-radius:4px;color:var(--on-accent);background:var(--blue)}.brand strong{font-size:17px;letter-spacing:0}.brand small{color:var(--label);font-family:JetBrains Mono,Microsoft YaHei,sans-serif}.nav-group{gap:6px;margin-bottom:22px}.nav-group>span{padding:0 12px 7px;color:var(--subtle);letter-spacing:0}.nav-group button{height:43px;border-radius:4px;color:var(--secondary-ink)}.nav-group button:hover{color:#fff;background:var(--hover)}.nav-group button.active{color:#fff;background:var(--hover-line)}.nav-group button.active:before{left:-16px;width:3px;height:26px;border-radius:0;background:var(--blue)}.nav-group .nav-group-label{height:27px;color:var(--subtle);background:transparent}.nav-group .nav-group-label:hover{color:var(--blue);background:transparent}.sidebar-foot{height:42px;border-top-color:var(--line);color:var(--help-ink);font-family:JetBrains Mono,Microsoft YaHei,sans-serif}.local-dot{background:var(--green);box-shadow:0 0 0 3px #56d5a024}.topbar{padding:14px 32px;background:var(--app-bg);border-bottom-color:var(--line)}.topbar>div:first-child>span{color:var(--blue);font-family:JetBrains Mono,Microsoft YaHei,sans-serif;letter-spacing:0}.topbar h1{font-size:27px;letter-spacing:0}.topbar p{color:var(--caption)}.scope-switch{color:var(--secondary-ink)}.scope-switch select{color:var(--ink);border-color:var(--line-strong);border-radius:4px;background:var(--surface-soft)}.search-box{width:min(320px,28vw);height:40px;border-color:var(--line);border-radius:4px;background:var(--surface-soft)}.search-box:focus-within{border-color:var(--blue);box-shadow:0 0 0 2px #adc6ff33}.search-box input{color:var(--ink)}.icon-button{border-color:var(--line);border-radius:4px;color:var(--soft-ink);background:var(--surface-soft)}.icon-button:hover{border-color:var(--line-strong);background:var(--hover)}.icon-button i{border-color:var(--surface-soft);background:var(--red)}.primary-button{color:var(--on-accent);border-color:var(--button-blue, var(--blue));background:var(--button-blue, var(--blue));border-radius:4px}.primary-button:hover{color:var(--on-accent-hover);background:var(--button-blue-hover, var(--accent-hover))}.secondary-button{color:var(--control-ink);border-color:var(--line-strong);background:transparent;border-radius:4px}.secondary-button:hover{background:var(--hover)}.surface{background:var(--surface);border-color:var(--line);border-radius:4px}.section-header{border-bottom-color:var(--line)}.section-header h2{font-size:18px}.section-header span{color:var(--muted)}.text-button{color:var(--link-blue, var(--blue))}.metric-card{border-color:var(--line);border-radius:4px;background:var(--surface)}.metric-card:hover{border-color:var(--focus-line);background:var(--row-hover);box-shadow:none}.metric-card.primary{border-top-color:var(--blue)}.metric-card.danger{border-top-color:var(--red)}.metric-card span,.metric-card small{color:var(--secondary-ink)}.metric-card strong{color:var(--heading)}.metric-card.danger strong,.amount-danger{color:var(--red)}.workflow-progress,.action-list,.compact-list,.quick-grid{background:var(--surface)}.workflow-progress{border-color:var(--line)}.workflow-progress li i{border-color:var(--line-strong);background:var(--surface-soft)}.workflow-progress li.done i{color:var(--on-accent);border-color:var(--blue);background:var(--blue)}.compact-list button{color:var(--ink);border-bottom-color:var(--line)}.compact-list button:hover{background:var(--hover)}.action-check{color:var(--amber);background:var(--amber-soft)}.compact-list small{color:var(--caption)}.status-pill{color:var(--soft-ink);background:var(--hover);border-radius:4px}.status-pill.warning,.status-pill.sent,.status-pill.partial,.status-pill.review{color:var(--amber);background:var(--amber-soft)}.status-pill.overdue,.status-pill.danger,.status-pill.rejected{color:var(--red);background:var(--red-soft)}.status-pill.accepted,.status-pill.settled,.status-pill.approved,.status-pill.completed{color:var(--green);background:var(--green-soft)}.status-pill.active,.status-pill.in_progress{color:var(--blue);background:var(--blue-soft)}.quick-grid button{color:var(--control-ink);border-color:var(--line);background:var(--surface-soft);border-radius:4px}.quick-grid button:hover{color:var(--blue);border-color:var(--focus-line);background:var(--hover)}.table-surface,.data-table{background:var(--surface)}.table-head{color:var(--label);background:var(--surface-soft);border-bottom-color:var(--line);font-family:JetBrains Mono,Microsoft YaHei,sans-serif}.table-row{color:var(--ink);background:var(--surface);border-bottom-color:var(--line)}.table-row:hover{background:var(--row-hover)}.table-row>span>small{color:var(--caption)}.row-actions button{color:var(--blue);border-color:var(--line-strong);background:transparent;border-radius:4px}.row-actions button:hover{background:var(--hover)}.identity-cell>i{color:var(--on-accent);background:var(--blue);border-radius:4px}.project-card,.project-finance,.project-context-panel{background:var(--surface)}.project-finance,.project-context-panel,.milestone-list>div{border-color:var(--line)}.project-finance small,.milestone-list small,.project-card>p{color:var(--caption)}.progress-track{background:var(--line)}.progress-track span{background:var(--blue)}.modal-backdrop{background:#040812c7}.modal{color:var(--ink);background:var(--surface);border-color:var(--line-strong);border-radius:4px;box-shadow:0 14px 36px #00000059}.modal-header,.editor-section-head{background:var(--surface-soft);border-bottom-color:var(--line)}.modal-header h2,.editor-section-head strong{color:var(--heading)}.modal-header p,.editor-section-head small{color:var(--caption)}.modal-close{color:var(--soft-ink);border-color:var(--line-strong);background:transparent}.editor-section,.package-picker,.quote-content-section,.quote-delivery-grid{border-color:var(--line);background:var(--surface)}.editor-basics input,.editor-basics select,.quote-line-grid input,.quote-line-grid select,.payment-node-list input,.payment-node-list select,.terms-grid textarea,.inline-select select,.content-type-select,.content-block input,.content-block textarea{color:var(--ink);border-color:var(--line-strong);border-radius:4px;background:var(--input-bg)}.editor-basics input::placeholder,.quote-line-grid input::placeholder,.content-block textarea::placeholder{color:var(--placeholder)}.editor-basics input:focus,.editor-basics select:focus,.quote-line-grid input:focus,.quote-line-grid select:focus,.payment-node-list input:focus,.payment-node-list select:focus,.terms-grid textarea:focus,.content-block input:focus,.content-block textarea:focus{border-color:var(--blue);box-shadow:0 0 0 2px #adc6ff2e}.editor-basics label>span,.terms-grid label>span,.quote-delivery-grid label>span{color:var(--label)}.quote-line-head,.payment-node-head{color:var(--label);background:var(--surface-soft)}.quote-line-grid,.payment-node-list>div{border-bottom-color:var(--line)}.quote-line-grid strong{color:var(--heading)}.quote-total-row{background:var(--surface-soft);border-top-color:var(--line)}.quote-total-row>span strong{color:var(--green)}.quote-content-section .content-block{border-color:var(--line);background:var(--surface-soft)}.content-block-highlight{border-left-color:var(--amber)!important;background:#f6c97814!important}.content-block-toolbar{border-bottom-color:var(--line)}.content-block-toolbar button{color:var(--secondary-ink);border-color:var(--line-strong);background:transparent}.content-block-toolbar button:hover:not(:disabled){color:var(--blue);background:var(--hover)}.content-empty{color:var(--caption);border-color:var(--line-strong);background:var(--surface-soft)}.icon-danger{color:var(--red);border-color:#ffb4ab66;background:transparent}.icon-danger:hover{background:var(--red-soft)}.form-error{color:var(--red);border-color:#ffb4ab66;background:var(--red-soft)}.editor-footer{border-top-color:var(--line);background:var(--surface)}.editor-footer>span{color:var(--caption)}.workflow-alert,.storage-alert{color:var(--amber);border-color:#f6c97873;background:#f6c9781a}.toast{color:var(--on-accent);background:var(--blue);border-color:var(--blue)}.payment-summary,.analytics-hero,.advanced-summary,.storage-health{background:var(--line)}.payment-summary>div,.analytics-hero>div,.advanced-summary span,.storage-health>span{background:var(--surface);color:var(--soft-ink)}.settings-note,.asset-list small,.ranking-list>div{color:var(--caption)}.settings-toggle,.terms-settings textarea,.restore-list,.restore-list>div{color:var(--soft-ink);border-color:var(--line)}.plan-grid>button{color:var(--ink);border-color:var(--line);background:var(--surface-soft)}.plan-grid>button:hover{border-color:var(--focus-line);background:var(--row-hover)}.plan-grid>button.active{border-color:var(--blue);background:var(--surface)}.plan-grid>button>strong,.plan-grid li{color:var(--secondary-ink)}.settings-form input,.settings-form select,.terms-settings textarea{color:var(--ink);border-color:var(--line-strong);border-radius:4px;background:var(--input-bg)}.settings-form input:focus,.settings-form select:focus,.terms-settings textarea:focus{border-color:var(--blue);box-shadow:0 0 0 2px #adc6ff2e}.fatal-state{background:var(--app-bg);color:var(--ink)}.fatal-state section{border-color:var(--line);border-radius:6px;background:var(--surface);box-shadow:0 18px 50px #00000059}.fatal-state p{color:var(--secondary-ink)}.fatal-state button{color:var(--on-accent);border:1px solid var(--blue);background:var(--blue);border-radius:4px}.fatal-error-detail{display:block;margin:12px 0;padding:8px;overflow:auto;color:var(--red);border:1px solid rgba(255,180,171,.28);border-radius:4px;background:#ffb4ab14;font-size:10px;white-space:pre-wrap}.restore-list button{color:var(--control-ink);border-color:var(--line-strong);background:transparent}.activation-dialog{color:var(--amber)}.workflow-alert button{color:var(--amber);border-color:var(--line-strong);background:var(--surface)}.quote-basics-v4{grid-template-columns:1fr 1.7fr .85fr}.quote-basics-v4 .full-field{grid-column:1 / -1}.quote-basics-v4 textarea,.quote-delivery-grid textarea{width:100%;min-height:70px;padding:9px;resize:vertical;line-height:1.5}.quote-line-grid-v4{grid-template-columns:76px minmax(150px,1.15fr) minmax(180px,1.4fr) 64px 58px 94px 68px 94px 30px;min-width:980px}.quote-line-grid-v4 select,.quote-line-grid-v4 input{min-width:0}.quote-content-section{overflow:visible}.quote-content-section .editor-section-head{align-items:center}.header-actions{display:flex;align-items:center;gap:8px}.content-type-select{height:34px;padding:0 8px;border:1px solid var(--line-strong);border-radius:4px;font-size:10px}.content-empty{margin:12px;padding:18px;border:1px dashed var(--line-strong);border-radius:4px;color:var(--muted);text-align:center;font-size:11px}.content-block-list{display:grid;gap:9px;padding:12px}.content-block{display:grid;grid-template-columns:1fr;gap:8px;padding:10px;border:1px solid var(--line);border-left:3px solid var(--blue);border-radius:4px;background:var(--surface-soft)}.content-block-paragraph{border-left-color:var(--link-soft)}.content-block-bullet{border-left-color:var(--blue)}.content-block-highlight{border-left-color:var(--amber)}.content-block-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:8px;border-bottom:1px solid var(--line)}.content-block-toolbar select{height:28px;padding:0 7px;color:var(--muted);border:1px solid var(--line-strong);border-radius:4px;background:transparent;font-size:10px}.content-block-toolbar>div{display:flex;gap:5px}.content-block-toolbar button{display:grid;place-items:center;width:28px;height:28px;padding:0;border:1px solid var(--line-strong);border-radius:4px;cursor:pointer}.content-block-toolbar button:disabled{opacity:.35;cursor:not-allowed}.content-block input{width:100%;height:34px;padding:0 9px;font-size:11px;font-weight:700}.content-block textarea{width:100%;min-height:68px;padding:9px;resize:vertical;font-size:11px;line-height:1.55}.quote-delivery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:13px}.quote-delivery-grid label{display:grid;gap:6px;min-width:0}.quote-terms-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.internal-note-field{position:relative}.internal-note-field>svg{position:absolute;right:9px;top:9px;color:var(--amber)}.payment-node-head{display:grid;grid-template-columns:minmax(140px,1fr) 120px 130px 130px 30px;gap:8px;padding:7px 11px;font-size:9px}.quote-service-quick-add{display:grid;gap:9px;margin:12px;padding:12px;border:1px solid var(--line);border-radius:4px;background:var(--surface-soft)}.quick-add-head{display:flex;align-items:baseline;gap:10px}.quick-add-head small{color:var(--muted)}.quick-add-controls{display:grid;grid-template-columns:minmax(150px,1fr) minmax(220px,1.5fr) auto;gap:8px;align-items:center}.quick-add-controls input,.quick-add-controls select,.quick-add-inline input{min-width:0;height:34px;padding:0 9px;color:var(--text);border:1px solid var(--line-strong);border-radius:4px;background:var(--surface)}.quick-add-controls select{height:66px;padding:5px}.quick-add-inline{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.quick-add-inline>span{color:var(--muted);font-size:11px}.quick-add-inline input{width:150px}.quote-batch-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 12px 10px;padding:8px 10px;border:1px solid rgba(173,198,255,.45);border-radius:4px;background:#adc6ff14}.quote-batch-toolbar label{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:10px}.quote-batch-toolbar input{width:78px;height:28px;padding:0 6px;color:var(--text);border:1px solid var(--line-strong);border-radius:4px;background:var(--surface)}.line-select-cell{display:grid;place-items:center}.line-select-cell input{width:14px;height:14px}.quote-line-grid-v4{grid-template-columns:28px 76px minmax(150px,1.15fr) minmax(180px,1.4fr) 64px 58px 94px 68px 94px 30px}.change-order-form{gap:14px}.change-lines-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-bottom:8px;border-bottom:1px solid var(--line)}.change-lines-head>span{flex:1;color:var(--muted);font-size:10px}.change-lines-table{overflow-x:auto;border:1px solid var(--line);border-radius:4px}.change-line-row{display:grid;grid-template-columns:110px minmax(160px,1fr) 76px 76px 100px 100px 105px 30px;gap:7px;align-items:center;min-width:820px;padding:8px;border-bottom:1px solid var(--line)}.change-line-row:last-child{border-bottom:0}.change-line-head{color:var(--muted);background:var(--surface-soft);font-size:10px}.change-line-row input,.change-line-row select,.change-total-summary input{min-width:0;height:32px;padding:0 7px;color:var(--text);border:1px solid var(--line-strong);border-radius:4px;background:var(--surface)}.change-total-summary{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:11px;color:var(--muted);border:1px solid var(--line);border-radius:4px;background:var(--surface-soft)}.change-total-summary strong{color:var(--text)}.change-total-summary label{display:inline-flex;align-items:center;gap:7px;font-size:10px}.change-total-summary input{width:100px}.delivery-management{overflow:hidden}.delivery-batch-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border-bottom:1px solid var(--line)}.delivery-batch-toolbar label,.delivery-batch-toolbar span{color:var(--muted);font-size:11px}.delivery-batch-toolbar select,.delivery-batch-toolbar input[type=date]{height:32px;padding:0 7px;color:var(--text);border:1px solid var(--line-strong);border-radius:4px;background:var(--surface)}.followup-batch-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border-bottom:1px solid var(--line)}.followup-batch-toolbar label,.followup-batch-toolbar span{color:var(--muted);font-size:11px}.followup-batch-toolbar select{height:32px;padding:0 7px;color:var(--text);border:1px solid var(--line-strong);border-radius:4px;background:var(--surface)}.timeline-item{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:8px;align-items:stretch;border-bottom:1px solid var(--line)}.timeline-item:last-child{border-bottom:0}.timeline-select{display:grid;place-items:center}.timeline-main{display:grid;grid-template-columns:60px 24px minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px 4px;text-align:left;color:inherit;background:transparent;border:0;cursor:pointer}.timeline-main:hover{background:var(--surface-soft)}.timeline-complete{align-self:center;margin-right:10px;padding:5px 8px;color:var(--blue);border:1px solid var(--line-strong);border-radius:4px;background:transparent;cursor:pointer}.timeline-complete:hover{background:var(--surface-soft)}.lan-sync-panel{overflow:hidden}.sync-status-card{display:flex;align-items:center;gap:10px;padding:13px;border:1px solid var(--line);border-radius:4px;background:var(--surface-soft)}.sync-status-card>div{display:grid;gap:3px;flex:1}.sync-status-card small{color:var(--muted)}.sync-dot{width:10px;height:10px;border-radius:50%;background:var(--muted)}.sync-dot.host,.sync-dot.client{background:var(--green);box-shadow:0 0 0 4px var(--green-soft)}.sync-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:12px}.sync-interface-picker{display:grid;gap:3px;min-width:260px;flex:1 1 300px;color:var(--text);font-size:12px}.sync-interface-picker select{height:34px;padding:0 9px;color:var(--text);border:1px solid var(--line-strong);border-radius:4px;background:var(--surface)}.sync-interface-picker small{color:var(--muted);font-size:11px}.sync-controls input{flex:1 1 220px;min-width:180px;height:34px;padding:0 9px;color:var(--text);border:1px solid var(--line-strong);border-radius:4px;background:var(--surface)}.sync-host-list{display:grid;gap:6px;margin-top:12px}.sync-host-list>button{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;color:var(--text);border:1px solid var(--line);border-radius:4px;background:var(--surface-soft);cursor:pointer}.sync-host-list small{color:var(--muted)}.share-section{display:grid;gap:9px;margin-top:14px;padding-top:13px;border-top:1px solid var(--line)}.share-section-head{display:flex;align-items:baseline;gap:10px}.share-section-head small{color:var(--muted)}.share-form{display:grid;grid-template-columns:110px minmax(180px,1fr) 140px 90px auto;gap:8px}.share-form select{min-width:0;height:34px;padding:0 7px;color:var(--text);border:1px solid var(--line-strong);border-radius:4px;background:var(--surface)}.share-list{display:grid;gap:5px}.share-list>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:4px;background:var(--surface-soft)}.share-list>div>span{display:grid;gap:2px}.share-list small{color:var(--muted)}@media(max-width:920px){.share-form{grid-template-columns:1fr 1fr}.share-form button{grid-column:1 / -1;justify-self:start}}.feature-map-button{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 10px;color:var(--blue);border:1px solid var(--line-strong);border-radius:4px;background:transparent;cursor:pointer;font-size:11px}.feature-map-button:hover{background:var(--surface-soft)}.feature-map-button kbd{padding:2px 4px;color:var(--muted);border:1px solid var(--line);border-radius:3px;font-size:9px}.feature-guide-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:28px;background:#040812c7}.feature-guide{width:min(980px,100%);max-height:min(780px,90vh);overflow:auto;color:var(--ink);border:1px solid var(--line-strong);border-radius:6px;background:var(--surface);box-shadow:0 24px 70px #00000073}.feature-guide>header,.feature-guide>footer{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 20px;border-bottom:1px solid var(--line)}.feature-guide>header>div{display:grid;gap:4px}.feature-guide>header span,.feature-guide-page-head>div>span{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:0}.feature-guide h2,.feature-guide-page h2{margin:0;font-size:24px}.feature-guide p,.feature-guide-page p{margin:0;color:var(--muted);font-size:12px}.feature-guide-grid,.feature-guide-page-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px 20px}.feature-guide-grid>button,.feature-guide-page-grid>button{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:92px;padding:12px;color:var(--ink);border:1px solid var(--line);border-radius:5px;background:var(--surface-soft);text-align:left;cursor:pointer}.feature-guide-grid>button:hover,.feature-guide-page-grid>button:hover{border-color:var(--blue);background:var(--row-hover);transform:translateY(-1px)}.guide-icon{display:grid;place-items:center;width:32px;height:32px;color:var(--blue);border:1px solid var(--line-strong);border-radius:4px;background:var(--blue-soft)}.guide-copy{display:grid;gap:4px;min-width:0}.guide-copy strong{font-size:13px}.guide-copy small{color:var(--muted);font-size:10px;line-height:1.45}.guide-copy em{color:var(--muted);font-size:9px;font-style:normal}.feature-guide>footer{border-top:1px solid var(--line);border-bottom:0;color:var(--muted);font-size:10px}.feature-guide-page{display:grid;gap:16px}.feature-guide-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:2px 0 4px}.feature-guide-page-head>div{display:grid;gap:5px}.feature-guide-page-grid{grid-template-columns:repeat(3,minmax(0,1fr));padding:0}@media(max-width:900px){.feature-guide-grid,.feature-guide-page-grid{grid-template-columns:1fr}.feature-guide-page-head{align-items:flex-start;flex-direction:column}}@media(max-width:1120px){.quote-basics-v4{grid-template-columns:1fr 1fr}.quote-basics-v4 label:nth-child(2){grid-column:1 / -1;grid-row:auto}.quote-delivery-grid{grid-template-columns:1fr 1fr}}@media(max-width:820px){.quote-basics-v4,.quote-delivery-grid,.quote-terms-grid{grid-template-columns:1fr}.quote-basics-v4 .full-field{grid-column:auto}.header-actions{flex-wrap:wrap;justify-content:flex-end}.quick-add-controls{grid-template-columns:1fr}.quick-add-controls select{width:100%}}.modal>header{background:var(--surface-soft);border-bottom-color:var(--line)}.modal>header>button{display:grid;place-items:center;width:31px;height:31px;padding:0;color:var(--muted);border:1px solid var(--line-strong);border-radius:4px;background:transparent;cursor:pointer}.modal>header>button:hover{color:var(--ink);border-color:var(--blue);background:var(--surface-container-high, var(--inset))}.modal-form input:not([type=checkbox]):not([type=radio]),.modal-form select,.modal-form textarea{width:100%;min-width:0;color:var(--ink);border:1px solid var(--line-strong);border-radius:4px;outline:0;background:var(--input-bg);color-scheme:dark}.modal-form input:not([type=checkbox]):not([type=radio]),.modal-form select{height:39px;padding:0 10px}.modal-form textarea{min-height:82px;padding:9px 10px;resize:vertical;line-height:1.5}.modal-form input::placeholder,.modal-form textarea::placeholder{color:var(--placeholder)}.modal-form input:not([type=checkbox]):not([type=radio]):focus,.modal-form select:focus,.modal-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 2px #adc6ff2e}.modal-form label>span{color:var(--label)}.milestone-list>button{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;min-height:45px;padding:0;color:var(--ink);border:0;border-bottom:1px solid var(--line);background:transparent;cursor:pointer;text-align:left}.milestone-list>button:hover{background:var(--surface-container-high, var(--inset))}.milestone-list>button i{width:7px;height:7px;border-radius:50%;background:var(--faint)}.milestone-list>button i.review{background:var(--amber)}.milestone-list>button i.approved{background:var(--green)}.milestone-list>button span:nth-child(2){display:grid;gap:2px;min-width:0}.milestone-list>button strong{font-size:11px}.milestone-list>button small{color:var(--caption);font-size:9px}.delivery-card{color:var(--ink);border-color:var(--line);background:var(--surface-soft)}.delivery-card:hover{border-color:var(--blue);background:var(--surface-container-high, var(--inset));box-shadow:none}.delivery-card small,.delivery-card p,.delivery-card footer{color:var(--caption)}.delivery-card footer{border-top-color:var(--line)}.advanced-actions button{color:var(--ink);border-color:var(--line-strong);background:transparent}.advanced-actions button:hover{color:var(--blue);border-color:var(--blue);background:var(--surface-container-high, var(--inset))}.team-panel{display:grid;gap:14px;padding:16px 18px 18px}.team-member-list{display:grid;overflow:hidden;border:1px solid var(--line);border-radius:4px}.team-member-row{display:grid;grid-template-columns:minmax(0,1fr) 120px auto;align-items:center;gap:12px;min-height:58px;padding:8px 12px;border-bottom:1px solid var(--line);background:var(--surface)}.team-member-row:last-child{border-bottom:0}.team-member-row select,.team-add-form input,.team-add-form select{min-width:0;height:34px;padding:0 9px;color:var(--ink);border:1px solid var(--line-strong);border-radius:4px;outline:0;background:var(--input-bg);color-scheme:dark}.team-member-row select:focus,.team-add-form input:focus,.team-add-form select:focus{border-color:var(--blue);box-shadow:0 0 0 2px #adc6ff2e}.team-add-form{display:grid;grid-template-columns:minmax(0,1fr) 150px auto;gap:8px;align-items:center}.permission-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:16px 18px 18px;overflow:hidden;border:1px solid var(--line);border-radius:4px;background:var(--line)}.permission-summary>div{display:grid;gap:5px;min-width:0;padding:12px;background:var(--surface-soft)}.permission-summary strong{color:var(--ink);font-size:12px}.permission-summary span{color:var(--muted);font-size:10px;line-height:1.45}.quick-add-controls input,.quick-add-controls select,.quick-add-inline input,.quote-batch-toolbar input,.change-line-row input,.change-line-row select,.change-total-summary input,.delivery-batch-toolbar select,.delivery-batch-toolbar input[type=date],.followup-batch-toolbar select,.sync-controls input,.share-form select,.sync-host-list>button{color:var(--ink);background:var(--surface-soft);color-scheme:dark}.sidebar nav,.feature-guide,.modal{scrollbar-color:var(--line-strong) transparent;scrollbar-width:thin}.sidebar nav::-webkit-scrollbar,.feature-guide::-webkit-scrollbar,.modal::-webkit-scrollbar{width:8px;height:8px}.sidebar nav::-webkit-scrollbar-track,.feature-guide::-webkit-scrollbar-track,.modal::-webkit-scrollbar-track{background:transparent}.sidebar nav::-webkit-scrollbar-thumb,.feature-guide::-webkit-scrollbar-thumb,.modal::-webkit-scrollbar-thumb{border-radius:4px;background:var(--line-strong)}@media(max-width:700px){.team-member-row{grid-template-columns:1fr;gap:8px}.team-member-row .text-button{justify-self:start}.team-add-form,.permission-summary{grid-template-columns:1fr}}html{color-scheme:dark}button,input,select,textarea{-webkit-tap-highlight-color:transparent}button:focus{outline:none}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--blue);outline-offset:2px}select option,select optgroup{color:var(--ink);background:var(--surface-soft)}.search-box input,.search-box input:focus,.search-box input:hover{border:0!important;box-shadow:none!important;background:transparent!important;outline:0}.scope-switch select,.search-box,.icon-button,.shortcut-button{color-scheme:dark}.sidebar{padding:22px 14px 12px}.brand{padding-bottom:20px}.sidebar-access-card{display:grid;flex:0 0 auto;gap:3px;width:100%;min-height:72px;margin:0 0 14px;padding:10px 12px;color:var(--secondary-ink);border:1px solid var(--line);border-radius:6px;background:var(--surface);cursor:pointer;text-align:left}.sidebar-access-card:hover{border-color:var(--line-strong);background:var(--surface-container-high)}.sidebar-access-card>span{display:flex;align-items:center;gap:6px;color:var(--label);font-size:10px;font-weight:700}.sidebar-access-card>strong{overflow:hidden;color:var(--ink);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.sidebar-access-card>small{overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.sidebar-access-card.trial{border-color:color-mix(in srgb,var(--blue) 42%,var(--line));background:var(--blue-soft)}.sidebar-access-card.trial>span,.sidebar-access-card.trial>strong{color:var(--blue)}.sidebar-access-card.active{border-color:color-mix(in srgb,var(--green) 42%,var(--line));background:var(--green-soft)}.sidebar-access-card.active>span,.sidebar-access-card.active>strong{color:var(--green)}.sidebar nav{min-height:0;overflow-y:auto;overscroll-behavior:contain}.nav-group{gap:3px;margin-bottom:12px}.nav-group>span{padding-bottom:4px}.nav-group button{height:36px}.nav-group .nav-group-label{height:22px;margin-bottom:2px}.sidebar-bottom-nav{display:grid;gap:3px;flex:0 0 auto;margin-top:4px;padding:10px 0 8px;border-top:1px solid var(--line)}.sidebar-bottom-label{padding:0 12px 3px;color:var(--subtle);font-family:JetBrains Mono,Microsoft YaHei,sans-serif;font-size:10px;letter-spacing:0}.sidebar-bottom-nav button{position:relative;display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:7px;width:100%;height:36px;padding:0 10px;color:var(--secondary-ink);border:0;border-radius:4px;background:transparent;cursor:pointer;text-align:left}.sidebar-bottom-nav button:hover{color:#fff;background:var(--surface-container-high)}.sidebar-bottom-nav button.active{color:#fff;background:var(--hover-line)}.sidebar-bottom-nav button.active:before{content:"";position:absolute;left:-14px;width:3px;height:22px;background:var(--blue)}.sidebar-bottom-nav button span{font-size:12px}.sidebar-bottom-nav kbd{padding:2px 5px;color:var(--label);border:1px solid var(--line-strong);border-radius:3px;background:var(--surface-soft);font-family:JetBrains Mono,monospace;font-size:9px}.shortcut-button{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 10px;color:var(--blue);border:1px solid var(--line-strong);border-radius:4px;background:transparent;cursor:pointer;font-size:11px;font-weight:700;white-space:nowrap}.shortcut-button:hover{border-color:var(--blue);background:var(--surface-container-high)}.shortcut-button kbd{padding:2px 4px;color:var(--label);border:1px solid var(--line);border-radius:3px;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:500}.surface,.metric-card,.payment-summary,.analytics-hero{box-shadow:0 1px #ffffff06}.section-header{min-height:64px;padding:15px 18px}.section-header h2{letter-spacing:0}.table-head{min-height:42px}.table-row{min-height:60px}.table-row>span>small,.compact-list small{font-size:10px}.modal{width:min(760px,100%);max-height:min(820px,calc(100vh - 36px));background:var(--surface)}.modal-wide{width:min(1120px,100%)}.modal>header{position:sticky;top:0;z-index:3;min-height:68px;padding:16px 22px;background:var(--surface-soft)}.modal>header h2{font-size:18px}.modal-form{gap:17px;padding:20px 22px 22px}.modal-form footer{position:sticky;bottom:0;z-index:2;margin:2px -22px -22px;padding:13px 22px;border-top:1px solid var(--line);background:#171f33f5}.modal-note{color:var(--soft-ink);border-color:#f6c97859;background:#f6c97814}.editor-section{background:transparent}.editor-section-head{background:var(--surface-soft)}.quote-service-quick-add,.change-total-summary,.package-picker,.wizard-summary{background:var(--surface-soft);border-color:var(--line)}.milestone-list>button,.delivery-card,.advanced-actions>button,.industry-templates>button,.service-list>button,.compact-list>button,.action-list>button{-webkit-appearance:none}.milestone-list>button{min-height:48px;padding:5px 0}.delivery-card{min-height:104px}.delivery-card strong{color:var(--ink)}.advanced-actions>button{min-height:32px}.task-entry{padding:16px}.live-document-preview{padding:12px;min-width:0}.live-document-preview header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.live-document-preview iframe,.live-document-preview object{width:100%;height:660px;border:1px solid var(--line);background:#fff}.debt-group{padding:12px 18px;border-bottom:1px solid var(--line)}.debt-group summary{cursor:pointer}@media(max-width:760px){.live-document-preview iframe,.live-document-preview object{height:440px}}@media(max-width:1180px){.shortcut-button span,.shortcut-button kbd{display:none}.shortcut-button{width:38px;justify-content:center;padding:0}}.subscription-panel{display:grid;gap:16px;padding-bottom:18px}.subscription-panel-locked{max-width:920px;margin:40px auto 0}.subscription-status-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:0 18px}.subscription-status-row>span:nth-child(2){display:grid;gap:4px}.subscription-status-row small{color:var(--muted);font-size:9px}.subscription-status-row strong{font-size:11px}.subscription-state{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 11px;border:1px solid var(--line);border-radius:4px}.subscription-state i{width:8px;height:8px;border-radius:50%;background:var(--muted)}.subscription-state.active i{background:var(--green);box-shadow:0 0 0 4px #2fbf711f}.subscription-state.basic i{background:var(--gold);box-shadow:0 0 0 4px #d29b421f}.plan-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 18px}.plan-choice-grid>button{position:relative;display:grid;justify-items:start;gap:5px;min-height:112px;padding:16px;color:var(--ink);border:1px solid var(--line);border-radius:5px;background:var(--surface-soft);text-align:left;cursor:pointer}.plan-choice-grid>button:hover,.plan-choice-grid>button.recommended{border-color:var(--blue);background:#749aff14}.plan-choice-grid span{display:flex;align-items:center;gap:7px;font-size:10px;font-weight:800}.plan-choice-grid em{padding:2px 5px;color:var(--blue);border:1px solid currentColor;border-radius:3px;font-size:8px;font-style:normal}.plan-choice-grid strong{font-size:22px}.plan-choice-grid small{color:var(--muted);font-size:9px}.license-activation{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;padding:0 18px}.license-activation label{display:grid;gap:6px}.license-activation label span{color:var(--muted);font-size:9px;font-weight:700}.license-activation input{width:100%;height:38px;padding:0 10px;color:var(--ink);border:1px solid var(--line-strong);border-radius:5px;background:var(--surface)}.subscription-panel>.settings-note{margin:0 18px}.trial-retry-button{justify-self:start;margin:0 18px}.project-risk-list{display:flex;flex-wrap:wrap;gap:6px;margin:-2px 0 10px}.project-risk-list span{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;color:var(--gold-bright);border:1px solid rgba(240,184,92,.35);border-radius:3px;background:#f0b85c14;font-size:9px;font-weight:700}@media(max-width:760px){.subscription-status-row,.plan-choice-grid,.license-activation{grid-template-columns:1fr}}@media(max-width:820px){.sidebar-bottom-nav{display:none}.nav-group{margin-bottom:0}.modal>header{min-height:60px;padding:13px 16px}.modal-form{padding:16px}.modal-form footer{margin:2px -16px -16px;padding:12px 16px}}@media(min-width:821px){.topbar{min-height:88px}.sidebar nav{padding-bottom:10px}}@media(min-width:821px)and (max-height:760px){.sidebar{padding-top:16px;padding-bottom:8px}.brand{padding-bottom:14px}.brand>span{width:36px;height:36px}.brand strong{font-size:15px}.brand small{font-size:10px}.sidebar-access-card{min-height:52px;margin-bottom:8px;padding:7px 10px}.sidebar-access-card>small{display:none}.nav-group{gap:2px;margin-bottom:8px}.nav-group button{height:32px}.nav-group .nav-group-label{height:20px;margin-bottom:1px}.sidebar-bottom-nav{margin-top:2px;padding:7px 0 5px;gap:2px}.sidebar-bottom-nav button{height:31px}.sidebar-foot{height:34px}.topbar{padding-top:11px;padding-bottom:11px}}.status-pill.draft,.status-pill.neutral,.status-pill.pending,.status-pill.todo{color:var(--soft-ink);border-color:transparent;background:var(--hover)}.board-column>div:first-child span{color:var(--soft-ink);border:1px solid var(--line);background:var(--surface-container-high, var(--inset))}html,body,#root{background:var(--bg-final);color:var(--text-final)}.sidebar .nav-group-label,.sidebar .nav-group-label span,.sidebar-bottom-label{overflow:visible;text-overflow:clip;white-space:nowrap}.sidebar .nav-group-label{color:var(--hint-secondary);letter-spacing:0}.sidebar-bottom-nav{border-top-color:var(--line-final)}.sidebar-bottom-nav button{color:var(--quiet-ink)}.sidebar-bottom-nav button:hover{background:var(--surface-raised-final)}.sidebar-bottom-nav button.active{background:var(--hover-line)}.modal-backdrop{background:#040812d1}@media(min-width:821px){.page-stack{gap:16px}.workspace-grid{align-items:start}.workspace-grid>.surface{align-self:start}.surface{border-radius:8px}.section-header{min-height:60px;padding:14px 18px}.metric-card{min-height:118px;padding:16px;border-radius:8px}.project-card{border-radius:8px}.board-column{min-height:320px}}@media(max-width:820px){.sidebar-bottom-nav{display:none}.topbar{min-width:0}.topbar>div:first-child{min-width:0;flex:1}.topbar h1{max-width:10em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-actions{min-width:0}.workflow-progress ol{min-width:0;width:100%;grid-template-columns:repeat(5,minmax(54px,1fr))}.workflow-progress{overflow:hidden}}@media(max-width:820px){html,body{min-width:0}body{overflow-x:hidden;overflow-y:auto}#root{width:100%;min-width:0}.sidebar{position:sticky;top:0;z-index:20;display:flex;flex-direction:row;align-items:center;width:100%;min-width:0;height:58px;min-height:58px;padding:8px 12px;overflow:hidden;border-right:0;border-bottom:1px solid var(--line)}.brand{flex:0 0 auto;width:auto;padding:0}.brand div{display:none}.brand>span{width:34px;height:34px}.sidebar-access-card{display:grid;flex:0 0 42px;place-items:center;width:42px;min-height:42px;height:42px;margin:0 3px;padding:0}.sidebar-access-card>span{font-size:0}.sidebar-access-card>span svg{width:18px;height:18px}.sidebar-access-card>strong,.sidebar-access-card>small{display:none}.sidebar nav{display:flex;flex:1 1 auto;min-width:0;width:auto;height:42px;padding:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.sidebar nav::-webkit-scrollbar{display:none}.nav-group{display:flex;flex:0 0 auto;gap:3px;margin:0}.nav-group>span{display:none}.nav-group button{display:grid;flex:0 0 42px;width:42px;height:42px;grid-template-columns:1fr;place-items:center;padding:0}.nav-group button span,.nav-group button i{display:none}.nav-group button.active:before{display:none}.sidebar-bottom-nav{display:flex;flex:0 0 auto;align-items:center;gap:3px;margin:0;padding:0;border:0}.sidebar-bottom-label{display:none}.sidebar-bottom-nav button{display:grid;flex:0 0 42px;width:42px;height:42px;grid-template-columns:1fr;place-items:center;padding:0}.sidebar-bottom-nav button span,.sidebar-bottom-nav button kbd,.sidebar-foot{display:none}.topbar{position:sticky;top:58px;z-index:15;display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;width:100%;min-width:0;min-height:74px;padding:12px 14px}.topbar>div:first-child{flex:1 1 260px;min-width:220px;max-width:none}.topbar>div:first-child>span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}.topbar h1{max-width:100%;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:21px;line-height:1.2}.topbar p{display:none}.topbar-actions{display:flex;flex:0 1 auto;min-width:0;gap:6px}.scope-switch{display:none}.search-box{display:flex;flex:0 0 36px;width:36px;height:36px;justify-content:center;padding:0}.search-box input,.search-box button{display:none}.icon-button{display:grid;width:36px;height:36px}.shortcut-button{display:inline-flex;flex:0 0 36px;width:36px;height:36px;min-height:36px;justify-content:center;padding:0}.shortcut-button span,.shortcut-button kbd{display:none}.primary-button{min-height:36px;padding:0 10px;white-space:nowrap}.workspace-grid,.analytics-grid,.template-layout{grid-template-columns:minmax(0,1fr)!important}.span-7,.span-5,.span-12{grid-column:auto!important}.workflow-progress{display:grid;grid-template-columns:1fr;gap:10px;width:100%;min-width:0;overflow:hidden;padding:12px}.workflow-progress>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.workflow-progress>.text-button{display:none}.workflow-progress ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 6px;width:100%;min-width:0!important}.workflow-progress li{min-width:0}.workflow-progress li span{white-space:nowrap}.workflow-progress li:nth-child(4):before{display:none}.board-columns{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;overflow:visible;padding:10px}.board-column{min-width:0;min-height:260px}}@media(max-width:520px){.topbar{top:58px;min-height:108px}.topbar>div:first-child{flex-basis:100%;min-width:0}.topbar-actions{width:100%;justify-content:flex-end}.metric-grid{grid-template-columns:1fr}.workflow-progress ol{grid-template-columns:repeat(2,minmax(0,1fr))}.workflow-progress li:nth-child(3):before,.workflow-progress li:nth-child(5):before{display:none}.board-columns{grid-template-columns:1fr}}@media(min-width:821px)and (max-width:1320px){.topbar{gap:12px;padding-left:24px;padding-right:24px}.topbar>div:first-child{flex:1 1 300px;min-width:260px}.topbar>div:first-child>span,.topbar h1,.topbar p{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-actions{gap:6px}.scope-switch>span{display:none}.scope-switch select{width:130px;padding-right:20px}.search-box{width:min(230px,22vw)}.shortcut-button{width:38px;min-width:38px;justify-content:center;padding:0}.shortcut-button span,.shortcut-button kbd{display:none}.primary-button{padding-left:11px;padding-right:11px}}.project-grid-page{grid-template-columns:repeat(auto-fit,minmax(min(100%,480px),1fr))}.client-table-v3 .identity-cell>span{min-width:0;overflow:hidden}.client-table-v3 .identity-cell>span>strong,.client-table-v3 .identity-cell>span>small{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analytics-grid>.surface .ranking-list:empty{min-height:92px;place-items:center}.analytics-grid>.surface .ranking-list:empty:before{content:"暂无数据";color:var(--faint);font-size:10px}.analytics-grid>.surface:nth-child(2) .ranking-list:empty:before{content:"本月暂无签约服务"}.ranking-list>.empty-state{display:grid;grid-template-columns:1fr;width:100%;min-height:92px;place-items:center;color:var(--faint)}.role-context-banner,.sync-conflict-banner{display:flex;align-items:center;gap:12px;min-height:38px;padding:8px 32px;color:var(--blue);border-bottom:1px solid var(--line);background:#adc6ff14;font-size:10px}.role-context-banner strong{color:var(--muted);font-weight:500}.role-context-banner.readonly{color:var(--amber);background:#f6c97814}.sync-conflict-banner{color:var(--amber);background:#f6c9781a}.sync-conflict-banner>span{display:grid;flex:1;gap:2px}.sync-conflict-banner small{color:var(--muted)}.sync-conflict-banner button{min-height:28px;padding:0 10px;color:var(--amber);border:1px solid rgba(246,201,120,.45);border-radius:4px;background:transparent;cursor:pointer}.object-workspace{display:grid;gap:16px;min-width:0}.object-workspace-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px 20px;padding:2px 2px 15px;border-bottom:1px solid var(--line)}.object-workspace-head .back-button{grid-column:1 / -1;justify-self:start}.back-button{padding:0;color:var(--blue);border:0;background:transparent;cursor:pointer;font-size:10px}.object-workspace-head>div:nth-child(2){display:grid;gap:5px;min-width:0}.object-workspace-head>div:nth-child(2)>span{color:var(--muted);font-family:JetBrains Mono,Microsoft YaHei,sans-serif;font-size:9px}.object-workspace-head h2{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:25px}.object-workspace-head p{margin:0;overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px}.object-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.object-actions button{min-height:34px}.workspace-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;border:1px solid var(--line);border-radius:4px;background:var(--line);gap:1px}.workspace-kpis>span{display:grid;align-content:center;gap:7px;min-height:82px;padding:14px 16px;background:var(--surface)}.workspace-kpis small{color:var(--muted);font-size:9px}.workspace-kpis strong{font-size:17px}.object-workspace-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.workspace-span{grid-column:1 / -1}.detail-section{min-width:0;overflow:hidden}.detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:8px 16px 16px}.detail-list>div{display:grid;gap:4px;min-width:0;padding:12px 0;border-bottom:1px solid var(--line)}.detail-list>div:nth-child(odd){padding-right:16px}.detail-list>div:nth-child(2n){padding-left:16px;border-left:1px solid var(--line)}.detail-list dt{color:var(--muted);font-size:9px}.detail-list dd{margin:0;overflow-wrap:anywhere;font-size:10px;font-weight:700}.relationship-list,.workspace-record-list{display:grid;padding:6px 16px 16px}.relationship-list>button,.workspace-record-list>button,.workspace-record-row,.readonly-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:53px;padding:9px 0;color:var(--ink);border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left}.relationship-list>button,.workspace-record-list>button{cursor:pointer}.relationship-list>button:hover,.workspace-record-list>button:hover{color:var(--blue)}.relationship-list>button>span,.workspace-record-list>button>span,.workspace-record-row>span,.readonly-row>span{display:grid;gap:3px;min-width:0}.relationship-list small,.workspace-record-list small,.workspace-record-row small,.readonly-row small{color:var(--muted);font-size:9px}.relationship-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}.relationship-columns>div{display:grid;align-content:start;gap:1px;padding:15px;background:var(--surface)}.relationship-columns>div>strong{padding-bottom:8px;color:var(--muted);font-size:9px}.relationship-columns button{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;color:var(--ink);border:0;border-bottom:1px solid var(--line);background:transparent;cursor:pointer;text-align:left}.relationship-columns button:hover{color:var(--blue)}.detail-table{display:grid;overflow-x:auto}.detail-table>div{display:grid;grid-template-columns:minmax(220px,1fr) 100px 130px 130px;align-items:center;gap:12px;min-width:680px;min-height:48px;padding:8px 16px;border-bottom:1px solid var(--line)}.detail-table>div:first-child{min-height:38px;color:var(--muted);background:var(--surface-soft);font-size:9px}.detail-table>div>span:first-child{display:grid;gap:3px}.detail-table small{color:var(--muted);font-size:9px}.activity-list{display:grid;padding:8px 16px 16px}.activity-list>div{display:grid;grid-template-columns:12px minmax(0,1fr);gap:8px;min-height:44px;padding:8px 0;border-bottom:1px solid var(--line)}.activity-list i{width:7px;height:7px;margin-top:5px;border-radius:50%;background:var(--blue)}.activity-list span{display:grid;gap:3px}.activity-list small{color:var(--muted);font-size:9px}.terms-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}.terms-preview>div{min-height:90px;padding:14px 16px;background:var(--surface)}.terms-preview strong{font-size:10px}.terms-preview p{margin:7px 0 0;color:var(--muted);font-size:9px;line-height:1.7;white-space:pre-wrap}.workspace-tabs{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:4px;background:var(--surface-soft)}.workspace-tabs button{min-height:34px;padding:0 14px;color:var(--muted);border:0;border-radius:3px;background:transparent;cursor:pointer;font-size:10px}.workspace-tabs button:hover{color:var(--ink);background:var(--hover)}.workspace-tabs button.active{color:var(--on-accent);background:var(--blue);font-weight:800}.next-action-panel{display:grid;gap:9px;padding:18px}.next-action-panel strong{font-size:15px}.next-action-panel p{margin:0;color:var(--muted);font-size:10px}.next-action-panel button{justify-self:start;margin-top:5px}.finance-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px 16px}.permission-empty{display:flex;align-items:center;gap:10px;min-height:90px;padding:20px;color:var(--amber)}.identity-link,.row-title-link,.project-title-link{min-width:0;padding:0;color:inherit;border:0;background:transparent;cursor:pointer;text-align:left}.row-title-link{display:grid;gap:4px}.row-title-link small{color:var(--muted)}.project-title-link:hover h2,.identity-link:hover strong,.row-title-link:hover strong{color:var(--blue)}.pairing-code{display:flex;align-items:center;gap:14px;margin:0 16px 12px;padding:12px 14px;border:1px solid rgba(86,213,160,.35);background:var(--green-soft)}.pairing-code span,.pairing-code small{color:var(--muted);font-size:9px}.pairing-code strong{color:var(--green);font-family:JetBrains Mono,monospace;font-size:22px;letter-spacing:0}.sync-resolution{display:grid;grid-template-columns:24px minmax(0,1fr) auto auto;align-items:center;gap:10px;margin:0 16px 12px;padding:12px;border:1px solid rgba(246,201,120,.35);color:var(--amber);background:var(--amber-soft)}.sync-resolution>span{display:grid;gap:3px}.sync-resolution small{color:var(--muted)}.permission-readonly-note{margin:12px 16px 0;padding:10px 12px;color:var(--amber);border:1px solid rgba(246,201,120,.35);background:var(--amber-soft);font-size:9px}button:disabled{cursor:not-allowed!important;opacity:.45}@media(max-width:980px){.object-workspace-head{grid-template-columns:1fr;align-items:start}.object-actions{justify-content:flex-start}.object-workspace-grid{grid-template-columns:1fr}.workspace-span{grid-column:auto}.workspace-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.relationship-columns,.terms-preview{grid-template-columns:1fr}.sync-resolution{grid-template-columns:24px minmax(0,1fr)}.sync-resolution button{grid-column:span 1}}@media(max-width:520px){.role-context-banner,.sync-conflict-banner{padding:8px 14px}.sync-conflict-banner small{display:none}.object-workspace-head h2{font-size:20px}.workspace-kpis{grid-template-columns:1fr}.workspace-kpis>span{min-height:64px}.workspace-tabs{overflow-x:auto}.workspace-tabs button{flex:0 0 auto}.detail-list{grid-template-columns:1fr}.detail-list>div:nth-child(n){padding-left:0;padding-right:0;border-left:0}.object-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.object-actions button:last-child{grid-column:1 / -1}.detail-section .section-header{align-items:flex-start;flex-wrap:wrap}.detail-section .section-header>div{flex:1 1 100%}.detail-section .section-header>button{margin-left:auto;white-space:nowrap}}.quote-group-toolbar{display:grid;grid-template-columns:minmax(125px,.65fr) repeat(auto-fit,minmax(170px,1fr));align-items:center;gap:8px;margin:12px;padding:10px 12px;border:1px solid var(--line);border-radius:4px;background:var(--surface-soft)}.quote-group-toolbar>span{display:grid;gap:3px;min-width:0}.quote-group-toolbar>span strong{font-size:11px}.quote-group-toolbar>span small{color:var(--muted);font-size:9px}.quote-group-toolbar>label{display:grid;grid-template-columns:minmax(0,1fr) 30px;align-items:center;min-width:0;border:1px solid var(--line-strong);border-radius:4px;background:var(--surface);overflow:hidden}.quote-group-toolbar>label input{width:100%;min-width:0;height:34px;padding:0 9px;border:0;background:transparent}.quote-group-toolbar>label button{display:grid;place-items:center;width:30px;height:34px;padding:0;color:var(--muted);border:0;border-left:1px solid var(--line);background:transparent;cursor:pointer}.quote-group-toolbar>label button:hover:not(:disabled){color:var(--red);background:#ffb4ab1a}.quote-group-toolbar>label button:disabled{opacity:.35;cursor:not-allowed}.quote-group-toolbar>.text-button{justify-self:start;min-height:34px;white-space:nowrap}.settings-toggle{display:none!important}.quote-live-preview{position:sticky;top:0;display:grid;grid-template-rows:auto minmax(520px,calc(100vh - 190px));min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:5px;background:#e8edf5}.quote-live-preview>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;color:var(--ink);border-bottom:1px solid var(--line);background:var(--surface)}.quote-live-preview>header span{display:flex;align-items:center;gap:7px}.quote-live-preview>header small{color:var(--muted);font-size:9px}.quote-live-preview iframe{width:100%;height:100%;border:0;background:#fff}.quote-preview-empty{display:grid;place-items:center;min-height:520px;color:var(--muted);font-size:11px}@media(max-width:1180px){.quote-live-preview{grid-template-rows:auto 620px}}@media(max-width:700px){.quote-group-toolbar{grid-template-columns:1fr}}.metric-drill{display:grid;gap:10px;text-align:left;width:100%;padding:0;border:0;background:transparent;color:inherit;cursor:pointer}.metric-drill>strong{font-size:24px;font-variant-numeric:tabular-nums}.metric-drill>small{color:var(--muted);line-height:1.6}.metric-drill:hover>strong{color:var(--accent, var(--accent))}.report-detail-list{padding:16px 22px;max-height:65vh;overflow:auto}.report-detail-list .workspace-record-row{gap:20px;padding:16px 0}.report-detail-list .workspace-record-row>span{min-width:0}.report-detail-list .workspace-record-row strong{overflow-wrap:anywhere}.workspace-record-row button,.quick-grid button{padding:8px 12px;border:1px solid var(--line-strong);border-radius:4px;color:var(--ink);background:var(--surface);font:inherit;cursor:pointer;min-height:34px}.workspace-record-row button:hover:not(:disabled),.quick-grid button:hover:not(:disabled){border-color:var(--accent-border)}button:disabled{cursor:not-allowed}.quick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;padding:14px 0}.account-reserved p{margin:0;padding:0 20px 20px;color:var(--muted)}.update-release{display:grid;gap:12px;margin:4px 0 14px;padding:14px;border:1px solid var(--line);background:var(--surface-soft)}.update-release>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px 14px;align-items:start}.update-release span{color:var(--muted);font-size:12px}.update-release strong,.update-release p,.update-release small,.update-release code{min-width:0;margin:0;color:var(--ink);overflow-wrap:anywhere}.update-release code{grid-column:2;font-size:11px;-webkit-user-select:all;user-select:all}@media(max-width:700px){.update-release>div{grid-template-columns:1fr}.update-release code{grid-column:1}}.monthly-closing-panel{display:grid;gap:14px}.monthly-closing-panel .section-header-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.monthly-closing-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;margin:0 16px;border:1px solid var(--line);background:var(--line)}.monthly-closing-kpis>div{display:grid;gap:6px;min-height:72px;padding:12px;background:var(--surface-soft)}.monthly-closing-kpis span,.monthly-closing-meta,.monthly-closing-exceptions header small{color:var(--muted);font-size:10px}.monthly-closing-kpis strong{font-size:15px;font-variant-numeric:tabular-nums}.monthly-closing-kpis .danger strong{color:var(--red)}.monthly-closing-meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin:0 16px}.monthly-closing-exceptions{margin:0 16px;border:1px solid var(--line)}.monthly-closing-exceptions header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:11px 14px;background:var(--surface-soft);border-bottom:1px solid var(--line)}.monthly-closing-exceptions>p{margin:0;padding:14px;color:var(--muted);font-size:10px}.monthly-closing-exception{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:52px;padding:9px 14px;color:var(--ink);text-align:left;border:0;border-bottom:1px solid var(--line);background:transparent;cursor:pointer}.monthly-closing-exception:last-child{border-bottom:0}.monthly-closing-exception:hover{background:var(--surface-soft)}.monthly-closing-exception>span{display:grid;gap:3px;min-width:0}.monthly-closing-exception small{color:var(--muted);overflow-wrap:anywhere}.monthly-closing-panel>.settings-note{margin:0 16px 14px}@media(max-width:900px){.monthly-closing-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:560px){.monthly-closing-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.monthly-closing-panel .section-header-actions{justify-content:flex-start}}.debt-group>.action-row{display:block;width:100%;text-align:left}.analytics-hero{grid-template-columns:repeat(3,minmax(0,1fr))}.task-entry{padding-bottom:12px}.task-entry .quick-grid{padding:4px 20px 10px}button.table-row{width:100%;color:inherit;background:transparent;text-align:left;border:0;border-bottom:1px solid var(--line);cursor:pointer}button.table-row:hover{background:var(--surface)}@media(max-width:900px){.analytics-hero{grid-template-columns:repeat(2,minmax(0,1fr))}.report-detail-list{padding:12px}}.task-help-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.task-help-grid article{display:grid;gap:12px;align-content:start;border:1px solid var(--line);padding:18px;border-radius:5px}.task-help-grid h3,.task-help-grid p{margin:0;line-height:1.75}.task-help-grid small{color:var(--muted)}.help-question{padding:14px 0;border-bottom:1px solid var(--line)}.help-question summary{cursor:pointer;font-weight:600;line-height:1.75}.help-question p{color:var(--muted);line-height:1.8}@media(max-width:900px){.task-help-grid{grid-template-columns:1fr}}.live-document-preview{display:flex;flex-direction:column;min-width:0;min-height:520px;height:min(74vh,850px);color:var(--ink);background:var(--surface);border:1px solid var(--line);overflow:hidden}.live-document-preview>header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:12px;border-bottom:1px solid var(--line)}.live-document-preview>header strong{font-size:12px}.live-document-preview>header button{flex-shrink:0;padding:8px;font-size:11px}.live-document-preview>iframe{width:100%;flex:1;border:0;min-height:420px;background:#fff}.live-document-preview>p{padding:12px}.live-document-preview>.text-button{align-self:flex-start;margin:8px 12px}.pdf-pages{display:flex;flex-direction:column;min-height:0;flex:1}.pdf-page-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;padding:10px;font-size:11px}.pdf-page-toolbar button,.pdf-page-toolbar select{color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:6px}.pdf-page-scroll{background:#ced4e0;overflow:auto;padding:10px;flex:1;min-height:0}.pdf-page-scroll canvas{display:block;background:#fff;margin:0 auto}.quote-live-preview{display:block;background:var(--surface)}.quote-live-preview>header{display:none}.quote-live-preview .live-document-preview{border:0}.global-search{position:relative;min-width:200px}.global-search-results{position:absolute;right:0;top:100%;width:min(420px,80vw);max-height:60vh;overflow:auto;z-index:80;background:var(--surface);color:var(--ink);border:1px solid var(--line-strong);box-shadow:0 15px 35px #0005;border-radius:5px;padding:8px}.global-search-results>button{display:flex;gap:12px;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);padding:12px;color:inherit;background:transparent;cursor:pointer}.global-search-results>button:hover{background:var(--surface-soft)}.global-search-results span{display:grid;gap:5px}.global-search-results small{color:var(--muted);font-size:11px}.global-search-results>small{display:block;padding:10px}.product-site{width:min(1080px,calc(100% - 40px));margin:0 auto;color:var(--ink);padding-bottom:30px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 0;border-bottom:1px solid var(--line)}.site-brand{display:flex;align-items:center;gap:10px;color:var(--ink)!important;text-decoration:none}.site-brand img{display:block;width:34px;height:34px;border-radius:8px;box-shadow:0 1px 3px #0000001f}.site-header nav{display:flex;gap:22px}.site-header a{color:var(--muted);text-decoration:none}.site-intro{padding:70px 0 50px;max-width:780px}.site-intro h1{margin:15px 0 22px;font-size:52px;line-height:1.3;letter-spacing:0}.site-intro p{font-size:16px;line-height:1.9;color:var(--muted)}.site-actions,.site-scenario-tabs{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.site-actions a{text-decoration:none}.product-site .settings-section{margin:24px 0;padding:28px}.product-site p{line-height:1.9}.product-site small,.site-footer{color:var(--muted);line-height:1.8}.site-scenario-copy{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.site-scenario-copy strong{display:block;color:var(--ink);margin-bottom:10px}.site-price{font-size:44px;font-weight:700;margin:20px 0}.site-price small{font-size:16px}.site-footer{padding:20px 0;font-size:12px}@media(max-width:900px){.site-intro h1{font-size:42px}}@media(max-width:700px){.site-header{align-items:flex-start;flex-direction:column}.site-intro{padding:40px 0 25px}.site-intro h1{font-size:34px}.site-scenario-copy{grid-template-columns:1fr;gap:10px}.product-site .settings-section{padding:18px}}.service-list button:hover .service-edit-hint,.service-list button:hover .service-delete-hint{opacity:1}.service-delete-hint{display:inline-flex;align-items:center;justify-content:center;min-width:34px;min-height:24px;padding:0 6px;color:var(--red);border:1px solid var(--line);border-radius:4px;font-size:9px;opacity:0;transition:opacity .15s ease}.timeline-delete{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 8px;color:var(--red);border:1px solid var(--line-strong);border-radius:5px;background:var(--surface);cursor:pointer;font-size:10px}.project-search-input{width:180px;height:34px;padding:0 10px;color:var(--ink);border:1px solid var(--line-strong);border-radius:6px;background:var(--surface);font-size:12px}.project-search-input:focus{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 12%,transparent)}.csv-import-preview{display:grid;gap:14px;padding:4px 0 2px}.csv-import-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:1px;background:var(--line);border:1px solid var(--line)}.csv-import-summary>div{display:grid;gap:5px;padding:13px 14px;background:var(--surface-soft)}.csv-import-summary span,.csv-import-table-wrap header small,.csv-import-issues header small{color:var(--muted);font-size:10px}.csv-import-summary strong{font-size:15px}.csv-import-error-count{color:var(--red)}.csv-import-summary>.status-pill{align-self:center;justify-self:center;margin:0 12px}.csv-import-issues,.csv-import-table-wrap{min-width:0;border:1px solid var(--line);background:var(--surface)}.csv-import-issues header,.csv-import-table-wrap header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:11px 14px;border-bottom:1px solid var(--line);background:var(--surface-soft)}.csv-import-issue-list{display:grid;max-height:230px;overflow:auto}.csv-import-issue-list>div{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 14px;border-bottom:1px solid var(--line);font-size:11px}.csv-import-issue-list>div:last-child,.csv-import-table-row:last-child{border-bottom:0}.csv-import-issue-list span{color:var(--red)}.csv-import-issue-list code{color:var(--muted);font-size:9px}.csv-import-table{overflow-x:auto;max-height:300px}.csv-import-table-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));min-width:640px;border-bottom:1px solid var(--line)}.csv-import-table-row>span{min-width:0;padding:9px 12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.csv-import-table-head{color:var(--muted);background:var(--surface-soft);font-weight:700}.csv-import-safety-note{margin:0;color:var(--muted);font-size:10px;line-height:1.6}@media(max-width:700px){.csv-import-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.csv-import-summary>.status-pill{justify-self:start;margin:8px 12px}.csv-import-issue-list>div{grid-template-columns:1fr;gap:4px}}.theme-switch{display:flex;gap:2px;padding:3px;margin:0 0 10px;border:1px solid var(--line);border-radius:4px;background:var(--app-bg)}.sidebar-bottom-nav .theme-switch button{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;min-height:36px;margin:0;padding:6px 10px;border:0;color:var(--muted);background:transparent;font:inherit;cursor:pointer}.sidebar-bottom-nav .theme-switch button[aria-pressed=true]{background:var(--surface);color:var(--blue);border-radius:3px;box-shadow:none}input,select,textarea{color-scheme:inherit}input[type=checkbox],input[type=radio]{accent-color:var(--blue)}:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.modal-form footer>button:not([class]){min-height:36px;padding:0 16px;border:1px solid var(--line-strong);border-radius:6px;color:var(--ink);background:var(--surface);cursor:pointer}.brand strong{color:var(--heading)}.nav-group button:hover{color:var(--ink)}.nav-group button.active{color:var(--blue);background:var(--blue-soft)}.modal header>button{color:var(--ink);background:var(--surface-soft)}.app-root{--bg-final: var(--app-bg);--surface-final: var(--surface);--surface-raised-final: var(--surface-soft);--surface-subtle-final: var(--surface-soft);--control-final: var(--input-bg);--line-final: var(--line);--line-strong-final: var(--line-strong);--text-final: var(--ink);--muted-final: var(--muted);--dim-final: var(--faint);--accent-final: var(--blue);--label: var(--muted);--subtle: var(--faint);--secondary-ink: var(--muted);--hover-line: var(--line-strong);--help-ink: var(--muted);--caption: var(--muted);--soft-ink: var(--muted);--control-ink: var(--ink);--placeholder: var(--faint);--link-soft: var(--blue);--inset: var(--surface-soft);--inset-strong: var(--surface-soft);--selection-bg: var(--blue-soft);--selection-ink: var(--ink);--hint: var(--muted);--hint-secondary: var(--faint);--quiet-ink: var(--muted);--disabled-ink: var(--faint);--strong-ink: var(--ink);--accent-border: var(--blue)}html,body,#root{height:100%;overflow:hidden}body{color:var(--ink);background:var(--app-bg);font-family:Segoe UI Variable Text,Segoe UI,Microsoft YaHei UI,Microsoft YaHei,sans-serif;font-size:13px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.app-root,.app-root *{letter-spacing:0!important}.app-root ::selection{color:var(--ink);background:color-mix(in srgb,var(--blue) 22%,transparent)}.app-root :is(button,input,select,textarea){font:inherit}.app-root :is(h1,h2,h3){color:var(--heading);font-family:Segoe UI Variable Display,Segoe UI Variable Text,Segoe UI,Microsoft YaHei UI,sans-serif;font-weight:600}.app-root strong{font-weight:600}.app-root small{color:var(--muted)}.app-root .surface,.app-root .table-surface,.app-root .metric-card,.app-root .payment-summary,.app-root .analytics-hero,.app-root .editor-section,.app-root .modal{border-color:var(--line);border-radius:8px;background:var(--surface);box-shadow:none}.app-root .metric-card{border-top-width:1px}.app-root .surface:hover,.app-root .table-row:hover,.app-root .content-block:hover{box-shadow:none;transform:none}.app-root :is(button,input,select,textarea):disabled{cursor:not-allowed;opacity:.48}.app-root :is(.primary-button,.secondary-button){min-height:36px;padding:6px 13px;border-radius:7px;font-size:12px;font-weight:600;transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}.app-root .primary-button{color:#fff;border-color:var(--button-blue);background:var(--button-blue)}.app-root .primary-button:hover:not(:disabled){color:#fff;border-color:var(--button-blue-hover);background:var(--button-blue-hover)}.app-root .secondary-button{color:var(--ink);border-color:var(--line-strong);background:var(--surface)}.app-root .secondary-button:hover:not(:disabled){border-color:color-mix(in srgb,var(--line-strong) 75%,var(--ink));background:var(--hover)}.app-root .icon-button{width:36px;height:36px;color:var(--ink);border-color:var(--line);border-radius:7px;background:var(--surface);transition:background-color .16s ease,border-color .16s ease}.app-root .icon-button:hover{border-color:var(--line-strong);background:var(--hover)}.app-root :is(input:not([type=checkbox]):not([type=radio]),select,textarea){color:var(--ink);border-color:var(--line-strong);border-radius:7px;background:var(--input-bg)}.app-root :is(input:not([type=checkbox]):not([type=radio]),select,textarea):focus{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 16%,transparent)}.app-root :is(input,textarea)::placeholder{color:var(--faint);opacity:1}.app-root .table-head{color:var(--muted);border-color:var(--line);background:var(--surface-soft);font-size:11px;font-weight:600}.app-root .table-row{border-color:var(--line);background:var(--surface);transition:background-color .12s ease}.app-root .table-row:hover{background:var(--row-hover)}.app-root .table-row>span{line-height:1.45}.app-root .table-row>span>strong{color:var(--ink);font-weight:600}.app-root .table-row>span>small{color:var(--muted)}.app-root .status-pill{border:1px solid color-mix(in srgb,currentColor 10%,transparent);border-radius:5px;font-weight:600}.app-root :is(.section-header,.settings-block-head){border-color:var(--line)}.app-root .section-header h2{color:var(--heading);font-size:15px;font-weight:600}.app-root :is(.quick-grid,.data-actions) button{color:var(--ink);border-color:var(--line);border-radius:7px;background:var(--surface-soft);box-shadow:none;transition:background-color .14s ease,border-color .14s ease}.app-root :is(.quick-grid,.data-actions) button:hover:not(:disabled){color:var(--ink);border-color:var(--line-strong);background:var(--hover);transform:none}.app-root :is(.settings-index,.settings-detail){border-color:var(--line);border-radius:8px;background:var(--surface);box-shadow:none}.app-root .settings-index nav button{border-radius:6px}.app-root .segmented-control{border-color:var(--line);border-radius:7px;background:var(--surface-soft)}.app-root .segmented-control button{border-radius:5px}.app-root .segmented-control button.active{color:var(--ink);background:var(--surface);box-shadow:0 1px 3px #00000014}.app-root .text-button,.app-root .feature-map-button,.app-root .back-button{color:var(--link-blue)}.app-root .settings-index nav button.active{color:var(--ink);border-left-color:var(--blue);background:var(--blue-soft)}.app-root .workspace-section-tabs button.active{color:var(--ink);background:var(--blue-soft)}.app-root .asset-workspace-head>div>span{color:var(--muted)}.app-root .profile-logo{color:var(--blue)}.app-root .account-policy dt,.app-root .share-section-head>strong,.app-root .team-member-row .identity-cell strong{color:var(--ink)}.app-root .switch-control input:checked+span{background:var(--blue)}.app-root :is(input[type=checkbox],input[type=radio]){accent-color:var(--blue)}.app-root .modal-backdrop{background:#0000006b;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.app-root .modal{box-shadow:var(--floating-shadow)}.app-root .modal>header{background:var(--surface)}.app-root :is(.feature-guide,.quote-start-dialog){border-color:var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--floating-shadow)}.app-root :is(.feature-guide-grid,.feature-guide-page-grid)>button{color:var(--ink);border-color:var(--line);background:transparent;box-shadow:none}.app-root :is(.feature-guide-grid,.feature-guide-page-grid)>button:hover{border-color:var(--line);background:var(--row-hover);transform:none}.app-root .data-table{scrollbar-color:color-mix(in srgb,var(--muted) 38%,transparent) transparent;scrollbar-width:thin}.app-root :is(.page-content,.context-rail>nav,.data-table)::-webkit-scrollbar{width:8px;height:8px}.app-root :is(.page-content,.context-rail>nav,.data-table)::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:8px;background:color-mix(in srgb,var(--muted) 34%,transparent);background-clip:padding-box}.app-root :is(button,input,select,textarea):focus-visible{outline:2px solid var(--blue);outline-offset:2px}@media(prefers-reduced-motion:reduce){.app-root *,.app-root *:before,.app-root *:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media(max-width:1100px){.app-root .settings-index nav button.active{border-bottom-color:var(--blue)}}.app-root{width:100%;height:100dvh;overflow:hidden;color:var(--ink);background:var(--app-bg)}.storage-state{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:11px;white-space:nowrap}.storage-state>i{width:7px;height:7px;border-radius:50%;background:var(--green)}.storage-state.error{color:var(--red)}.storage-state.error>i{background:var(--red)}.storage-state.dirty>i{background:var(--gold)}.storage-state.saving>i{background:var(--blue);animation:save-state-pulse .9s ease-in-out infinite alternate}body:has(.first-run-guide) .app-dock-item.active .app-dock-label{opacity:1;transform:translate(-50%)}.app-root .modal-backdrop{backdrop-filter:none;-webkit-backdrop-filter:none;animation:overlay-enter .14s ease-out both}.app-root .modal{animation:modal-enter .18s cubic-bezier(.2,.8,.2,1) both}.workflow-help{display:grid;gap:14px}.workflow-example{display:grid;gap:10px;margin:0 14px;padding:0 0 14px;border-bottom:1px solid var(--line)}.workflow-example>header{display:flex;align-items:end;justify-content:space-between;gap:16px}.workflow-example>header>span{display:grid;gap:3px}.workflow-example>header small{color:var(--blue);font-size:9px;font-weight:700}.workflow-example>header strong{font-size:13px}.workflow-example>header em{color:var(--muted);font-size:10px;font-style:normal;white-space:nowrap}.workflow-example ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0;padding:1px;border:1px solid var(--line);background:var(--line);list-style:none}.workflow-example li{display:grid;gap:4px;min-width:0;padding:9px 10px;background:var(--surface-soft)}.workflow-example li span{color:var(--muted);font-size:9px}.workflow-example li strong{overflow-wrap:anywhere;font-size:10px;line-height:1.5}.workflow-route{display:grid;grid-template-columns:repeat(8,minmax(86px,1fr));gap:0;overflow-x:auto;padding:2px 14px 8px}.workflow-route>div{position:relative;display:grid;gap:3px;min-width:86px;padding:9px 10px 9px 0;border-top:2px solid var(--line)}.workflow-route>div:after{position:absolute;top:-5px;right:6px;width:8px;height:8px;border-top:2px solid var(--line);border-right:2px solid var(--line);content:"";transform:rotate(45deg)}.workflow-route>div:last-child:after{display:none}.workflow-route span{color:var(--blue);font-size:9px;font-variant-numeric:tabular-nums}.workflow-route strong{font-size:12px}.workflow-route small{color:var(--muted);font-size:10px;line-height:1.4}.workflow-support{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0 14px;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--line)}.workflow-support>span{display:grid;gap:3px;padding:10px 11px;background:var(--surface-soft)}.workflow-support strong{font-size:11px}.workflow-support small{color:var(--muted);font-size:10px;line-height:1.45}.workflow-help>.primary-button{justify-self:start;margin:0 14px 14px}@keyframes page-view-enter{0%{opacity:0;transform:translate3d(0,30px,0) scale(.985)}to{opacity:1;transform:translateZ(0)}}@keyframes overlay-enter{0%{opacity:0}to{opacity:1}}@keyframes modal-enter{0%{opacity:0;transform:translate3d(0,8px,0) scale(.99)}to{opacity:1;transform:translateZ(0) scale(1)}}@keyframes save-state-pulse{0%{opacity:.42;transform:scale(.82)}to{opacity:1;transform:scale(1.12)}}.toast{z-index:3000;bottom:94px}@media(max-width:980px){.storage-state{font-size:0}}@media(max-width:980px){.workflow-example ol{grid-template-columns:repeat(2,minmax(0,1fr))}.workflow-support{grid-template-columns:1fr}}@media(max-width:520px){.workflow-example>header{align-items:start;flex-direction:column;gap:5px}.workflow-example>header em{white-space:normal}.workflow-example ol{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.app-root .modal-backdrop,.app-root .modal,.storage-state.saving>i{animation:none}}.first-run-record-focus{position:relative;z-index:1;outline:2px solid color-mix(in srgb,var(--accent) 58%,transparent);outline-offset:3px;box-shadow:0 0 0 7px color-mix(in srgb,var(--accent) 10%,transparent);scroll-margin-block:160px}.app-root .modal-backdrop{z-index:5000;overflow:hidden;padding:20px;overscroll-behavior:contain;background:#12141675}.app-root:has(>.modal-backdrop) .app-dock-bar{opacity:0;visibility:hidden;pointer-events:none}.app-root .modal{display:flex;flex-direction:column;min-width:0;max-height:calc(100dvh - 40px);overflow:hidden}.app-root .modal>header{position:relative;top:auto;z-index:5;flex:0 0 auto;min-width:0;background:var(--surface)}.app-root .modal>header>div{min-width:0}.app-root .modal>:not(header){flex:1 1 auto;min-width:0;min-height:0;max-width:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.app-root .modal>.modal-form-shell{display:block;flex:1 1 auto;min-width:0;min-height:0;max-width:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.app-root .modal>.modal-form-shell>.modal-form{display:flex;flex-direction:column;gap:14px;min-width:0;min-height:100%;padding-bottom:calc(78px + env(safe-area-inset-bottom))}.app-root .modal>.modal-form{display:flex;flex-direction:column;gap:14px;scrollbar-gutter:stable}.app-root .modal-form>*{flex:0 0 auto;min-width:0}.app-root .modal-form footer{position:sticky;bottom:-18px;z-index:4;flex:0 0 auto;margin:auto -18px -18px;padding:14px 18px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:0 -8px 20px color-mix(in srgb,#000 7%,transparent)}.app-root .modal-form .form-row,.app-root .modal-form label{min-width:0}.source-channel-controls{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;min-width:0}.source-channel-field>.settings-note{margin:0;padding:0;font-weight:400}.quote-edit-pane .editor-section:has(.quote-line-grid-v4){overflow-x:hidden}.quote-edit-pane .quote-line-grid-v4{width:100%;min-width:0;grid-template-columns:22px 58px minmax(112px,1.22fr) minmax(96px,1fr) minmax(46px,.42fr) minmax(42px,.38fr) minmax(74px,.62fr) minmax(50px,.44fr) minmax(78px,.64fr) 30px;gap:6px;padding-right:10px;padding-left:10px}.quote-edit-pane .quote-line-grid-v4>*{min-width:0}.quote-edit-pane .quote-line-grid-v4>strong{overflow:hidden;text-overflow:ellipsis}.quote-batch-toolbar{max-width:100%;overflow:hidden}.quote-batch-toolbar label{flex:0 1 auto;min-width:0;white-space:nowrap}.quote-batch-toolbar input{width:82px;min-width:64px}.quote-batch-toolbar .icon-danger{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:auto;min-width:max-content;height:34px;padding:0 10px;white-space:nowrap}.quote-section-nav{top:-20px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:10px 0 9px;background:var(--surface);border-bottom:1px solid var(--line)}.quote-section-nav button{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;align-items:center;gap:1px 7px;min-width:0;min-height:48px;padding:6px 9px;color:var(--muted);border:1px solid transparent;border-radius:7px;background:transparent;text-align:left}.quote-section-nav button.active{color:var(--button-blue);border-color:color-mix(in srgb,var(--button-blue) 26%,var(--line));background:color-mix(in srgb,var(--button-blue) 8%,var(--surface))}.quote-section-nav button.complete{color:var(--ink)}.quote-section-nav button.attention:not(.active){color:color-mix(in srgb,var(--red) 82%,var(--ink))}.quote-section-nav button>span:last-child{display:grid;gap:1px;min-width:0}.quote-section-nav button>span:last-child>strong,.quote-section-nav button>span:last-child>small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quote-section-nav button>span:last-child>strong{font-size:12px;font-weight:600}.quote-section-nav button>span:last-child>small{color:var(--muted);font-size:10px;font-weight:400}.quote-step-icon{grid-row:1 / span 2;display:grid;place-items:center;width:22px;height:22px;color:inherit;border:1px solid var(--line-strong);border-radius:50%;font-size:10px;font-style:normal}.quote-step-icon>i{color:inherit;font-size:10px;font-style:normal;line-height:1}.quote-section-nav button.complete .quote-step-icon{color:var(--green);border-color:color-mix(in srgb,var(--green) 40%,var(--line));background:color-mix(in srgb,var(--green) 9%,var(--surface))}.quote-section-nav button.active .quote-step-icon{color:#fff;border-color:var(--button-blue);background:var(--button-blue)}.quote-step-status{overflow:hidden;color:var(--muted);font-size:10px;font-weight:400;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.quote-section-nav button.attention .quote-step-status{color:inherit}.quote-step-progress{position:absolute;right:8px;bottom:3px;left:8px;height:2px;overflow:hidden;border-radius:2px;background:var(--line)}.quote-step-progress>i,.quote-step-progress>span{display:block;height:100%;border-radius:inherit;background:var(--button-blue)}.app-root .modal:has(.template-editor){width:min(1760px,calc(100vw - 40px));height:calc(100dvh - 40px);max-height:none}.app-root .modal>.template-editor{display:grid;grid-template-rows:minmax(0,1fr) auto;height:auto;overflow:hidden;position:relative}.template-editor-workspace{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(360px,.8fr);min-width:0;min-height:0;overflow:hidden}.template-editor-workspace>.template-editor-columns{grid-template-columns:132px minmax(0,1fr) 230px;min-width:0;min-height:0;overflow:hidden}.template-editor-workspace>.live-document-preview{width:100%;height:100%;min-width:0;min-height:0;padding:0;border:0;border-left:1px solid var(--line);border-radius:0}.template-preview-pane{display:flex;min-width:0;min-height:0;overflow:hidden;border-left:1px solid var(--line);background:var(--surface-soft)}.template-preview-pane>.live-document-preview{flex:1 1 auto;width:100%;height:100%;min-width:0;min-height:0;padding:0;border:0;border-radius:0}.template-preview-pane>.live-document-preview>header{flex:0 0 auto;margin:0}.template-editor-nav>button{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;width:100%;min-height:36px;padding:0 7px;color:var(--muted);border:0;border-radius:5px;background:transparent;text-align:left}.template-editor-nav>button:hover,.template-editor-nav>button:focus-visible{color:var(--ink);background:var(--row-hover)}.template-editor-nav>button>i{display:grid;place-items:center;width:20px;height:20px;color:var(--muted);border:1px solid var(--line);border-radius:50%;background:var(--surface);font-size:10px;font-style:normal}.template-editor-nav>button>span{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.template-form-section>header>.secondary-button{display:inline-flex;flex:0 0 auto;align-items:center;width:auto;min-width:max-content;white-space:nowrap}.template-editor-workspace>.live-document-preview>header{margin:0}.template-editor>.form-error{position:absolute;right:18px;bottom:76px;left:18px;z-index:6;margin:0;box-shadow:0 10px 28px color-mix(in srgb,#000 14%,transparent)}.template-editor-footer{position:relative;z-index:5;flex:none;background:var(--surface)}.app-root .modal:has(>.live-document-preview){width:min(1040px,calc(100vw - 48px));height:min(900px,calc(100dvh - 48px));max-height:none}.app-root .modal>.live-document-preview{flex:1 1 auto;width:100%;height:auto;min-height:0;padding:0;overflow:hidden;border:0;border-radius:0}.app-root .modal>.live-document-preview>header{flex:0 0 auto;margin:0;padding:11px 14px;background:var(--surface-soft)}.app-root .modal>.live-document-preview>.a4-paper-viewport{flex:1 1 auto;min-height:0}.delivery-view-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 16px}.delivery-view-toolbar>div{display:grid;gap:3px;min-width:0}.delivery-view-toolbar>div>strong{font-size:14px}.delivery-view-toolbar>div>small{overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.delivery-project-groups,.delivery-project-list,.receivable-project-list{display:grid;min-width:0}.delivery-project-group{min-width:0;padding:0 16px 16px;border-top:1px solid var(--line)}.delivery-project-group:first-child{border-top:0}.delivery-project-group>header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0;padding:14px 0 11px}.delivery-project-group>header>span{display:grid;gap:3px;min-width:0}.delivery-project-group>header small,.delivery-project-group>header em{overflow:hidden;color:var(--muted);font-size:10px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.delivery-project-group>header strong{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.delivery-project-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-width:0}.delivery-project-card-grid .delivery-card{min-width:0;min-height:116px;margin:0}.delivery-card-state{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;min-width:0}.delivery-project-list-group,.receivable-project-group{min-width:0;border-top:1px solid var(--line);background:var(--surface)}.delivery-project-list-group:first-child,.receivable-project-group:first-child{border-top:0}.delivery-project-list-group>summary,.receivable-project-group>summary{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;min-width:0;min-height:68px;padding:11px 16px 11px 42px;cursor:pointer;list-style:none}.delivery-project-list-group>summary::-webkit-details-marker,.receivable-project-group>summary::-webkit-details-marker{display:none}.delivery-project-list-group>summary:before,.receivable-project-group>summary:before{position:absolute;left:16px;margin-left:0;color:var(--muted);content:"›";font-size:20px;line-height:1;transition:transform .14s ease}.delivery-project-list-group[open]>summary:before,.receivable-project-group[open]>summary:before{transform:rotate(90deg)}.delivery-project-list-group>summary:hover,.receivable-project-group>summary:hover{background:var(--row-hover)}.delivery-project-list-group>summary>span,.receivable-project-group>summary>span{display:grid;gap:4px;min-width:0}.delivery-project-list-group>summary>span:last-child,.receivable-project-group>summary>span:last-child{text-align:right}.delivery-project-list-group>summary strong,.receivable-project-group>summary strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.delivery-project-list-group>summary small,.receivable-project-group>summary small,.delivery-project-list-group>summary em{overflow:hidden;color:var(--muted);font-size:10px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.receivable-project-group.has-overdue>summary{box-shadow:inset 3px 0 var(--red)}.receivable-project-group.has-overdue>summary>span:last-child small,.receivable-project-group.has-overdue>summary>span:last-child strong{color:var(--red)}.project-group-actions{display:flex;justify-content:flex-end;min-height:38px;padding:5px 16px;border-top:1px solid var(--line);background:var(--surface-soft)}.receivable-project-group>.data-table{width:100%;min-width:0}.delivery-project-list-group .table-head,.delivery-project-list-group .table-row{grid-template-columns:44px minmax(180px,1.7fr) minmax(96px,.7fr) minmax(110px,.8fr) minmax(116px,.8fr)}.receivable-project-group .payment-table .table-head,.receivable-project-group .payment-table .table-row{grid-template-columns:minmax(150px,1.25fr) minmax(150px,1.05fr) minmax(82px,.55fr) minmax(116px,.8fr) minmax(230px,1.55fr)}.receivable-project-group .row-actions{flex-wrap:wrap;min-width:0}.receivable-projects>.section-header{border-bottom:1px solid var(--line)}@media(max-width:1320px){.quote-edit-pane .quote-line-grid-v4{grid-template-columns:22px 54px minmax(102px,1.15fr) minmax(88px,.9fr) 44px 40px 68px 46px 72px 28px;gap:5px}.template-editor-workspace{grid-template-columns:minmax(0,1.65fr) minmax(330px,.7fr)}.template-editor-workspace>.template-editor-columns{grid-template-columns:minmax(0,1fr) 210px}.template-editor-workspace .template-editor-nav{display:none}.delivery-project-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:980px){.app-root .modal-backdrop{padding:10px}.app-root .modal,.app-root .modal:has(.template-editor),.app-root .modal:has(>.live-document-preview){width:calc(100vw - 20px);height:calc(100dvh - 20px);max-height:none;border-radius:9px}.template-editor-workspace{display:block;overflow-y:auto}.template-editor-workspace>.template-editor-columns{min-height:620px;overflow:visible}.template-editor-workspace>.live-document-preview{height:560px;border-top:1px solid var(--line);border-left:0}.template-preview-pane{height:560px;border-top:1px solid var(--line);border-left:0}.quote-section-nav button{grid-template-columns:1fr;justify-items:center;min-height:43px;padding:5px;text-align:center}.quote-step-icon,.quote-step-status{display:none}.delivery-view-toolbar{align-items:flex-start;flex-direction:column;gap:9px}.delivery-project-list-group .table-head,.receivable-project-group .table-head{display:none}.delivery-project-list-group .table-row,.receivable-project-group .payment-table .table-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 18px;min-width:0;padding:13px 16px}.delivery-project-list-group .table-row>:nth-child(2),.receivable-project-group .payment-table .table-row>:first-child,.receivable-project-group .payment-table .table-row>:last-child{grid-column:1 / -1}.delivery-project-list-group .table-row>:first-child{grid-column:1;grid-row:2;justify-self:start}.delivery-project-list-group .table-row>:nth-child(3){grid-column:2;grid-row:2}.delivery-project-list-group .table-row>:nth-child(4){grid-column:1;grid-row:3}.delivery-project-list-group .table-row>:nth-child(5){grid-column:2;grid-row:3}}@media(max-width:720px){.app-root .modal-form .form-row.equal{grid-template-columns:1fr}.delivery-project-group>header{align-items:flex-start;flex-direction:column;gap:9px}.delivery-project-card-grid{grid-template-columns:1fr}.delivery-project-list-group>summary,.receivable-project-group>summary{grid-template-columns:minmax(0,1fr);gap:6px;padding-left:38px}.delivery-project-list-group>summary:before,.receivable-project-group>summary:before{left:14px}.delivery-project-list-group>summary>span:last-child,.receivable-project-group>summary>span:last-child{text-align:left}.delivery-project-list-group .table-row,.receivable-project-group .payment-table .table-row{grid-template-columns:minmax(0,1fr)}.delivery-project-list-group .table-row>*,.receivable-project-group .payment-table .table-row>*{grid-column:1!important;grid-row:auto!important}.project-group-actions{justify-content:flex-start}}.app-root{--dock-safe-area: 82px}.app-root>.toast{top:96px;right:clamp(180px,12vw,260px);bottom:auto;max-width:min(340px,calc(100vw - 220px));pointer-events:none}.app-root .modal>.modal-form-shell>.modal-form,.app-root .modal>.modal-form{padding-bottom:0;scroll-padding-bottom:0}.app-root .modal-form footer{bottom:0;margin-bottom:0;background:var(--surface);box-shadow:0 -8px 20px color-mix(in srgb,#000 7%,transparent)}.app-root .modal:has(.quote-editor-v2)>.quote-editor-v2{padding-bottom:0;scroll-padding-bottom:0}.app-root .quote-editor-v2>.editor-footer{bottom:0;background:var(--surface)}.app-root:has(>.modal-backdrop)>.toast{display:none}@media(max-width:820px){.app-root{--dock-safe-area: 76px}.app-root>.toast{top:96px;right:14px;max-width:calc(100vw - 28px)}.app-root:has(>.modal-backdrop)>.toast{top:6px;right:14px}}@media(max-height:760px){.app-root{--dock-safe-area: 74px}}.context-menu-backdrop{position:fixed;z-index:2600;top:0;right:0;bottom:0;left:0}.context-menu{position:fixed;display:grid;width:208px;padding:6px;border:1px solid var(--line-strong);border-radius:9px;background:var(--surface);box-shadow:0 14px 36px #0000002e}.context-menu button{display:flex;width:100%;min-height:34px;align-items:center;padding:7px 10px;color:var(--ink);border:0;border-radius:6px;background:transparent;cursor:pointer;font-size:12px;text-align:left}.context-menu button:hover:not(:disabled){background:var(--hover)}.context-menu button:disabled{opacity:.4;cursor:not-allowed}.app-root{--radius-xl: 14px;--radius-lg: 10px;--radius-md: 8px;--radius-sm: 6px;--radius-xs: 4px}.app-root :is(.surface,.table-surface,.metric-card,.payment-summary,.analytics-hero,.editor-section){border-radius:var(--radius-lg);box-shadow:0 1px 2px #00000008,0 3px 12px #0000000a}.app-root .modal{border-radius:var(--radius-xl)}.app-root :is(.primary-button,.secondary-button,.icon-button,.segmented-control),.app-root :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]){border-radius:var(--radius-md)}.app-root :is(.status-pill,.tag-list em,.row-actions button,.card-footer-actions button,.restore-list button,.workflow-alert button){border-radius:var(--radius-sm)}.app-root .icon-button:hover:not(:disabled){color:var(--ink);border-color:var(--line-strong);background:var(--hover)}.app-root :is(.table-row,.workspace-record-row,.ranking-list>div):hover{background:var(--row-hover)}.app-root :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):hover:not(:disabled):not(:focus){border-color:var(--line-strong)}.app-root :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):focus{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 12%,transparent)}.app-root :is(.text-button,.back-button){border-radius:var(--radius-sm)}.app-root :is(.text-button,.back-button):hover:not(:disabled){background:var(--blue-soft)}.doc-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 14px 14px}.doc-feature-card{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:10px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft)}.doc-feature-card img{width:100%;height:auto;aspect-ratio:16 / 9;object-fit:cover;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.doc-feature-copy{display:flex;align-items:flex-start;gap:9px;min-width:0}.doc-feature-icon{display:grid;flex:0 0 auto;width:32px;height:32px;place-items:center;color:var(--blue);border-radius:8px;background:var(--blue-soft)}.doc-feature-copy>span:last-child{display:grid;gap:3px;min-width:0}.doc-feature-copy strong{font-size:13px}.doc-feature-copy small{color:var(--muted);font-size:11px;line-height:1.6}.doc-feature-card>.secondary-button{justify-self:start;min-height:30px;padding:4px 10px;font-size:11px}.list-pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-height:48px;padding:8px 14px;border-top:1px solid var(--line);background:var(--surface-soft)}.list-pagination span{color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}.list-pagination button{min-height:30px;padding:4px 10px;color:var(--ink);border:1px solid var(--line-strong);border-radius:6px;background:var(--surface);cursor:pointer;font-size:11px}.list-pagination button:hover:not(:disabled){border-color:var(--blue);color:var(--blue);background:var(--blue-soft)}@media(max-width:720px){.doc-feature-grid{grid-template-columns:1fr}}:root{--font-ui: "Segoe UI Variable Display","Segoe UI","Microsoft YaHei UI","PingFang SC",sans-serif;--font-display: var(--font-ui);--font-mono: Consolas,monospace;--studio-paper: #f5f4ef;--studio-surface: rgba(255,255,255,.84);--studio-surface-muted: rgba(255,255,255,.52);--studio-solid: #fff;--studio-chrome: rgba(255,255,255,.76);--studio-nav: rgba(255,255,255,.58);--studio-ink: #1b201c;--studio-muted: #626e65;--studio-faint: #737f77;--studio-line: rgba(20,40,30,.11);--studio-line-strong: rgba(20,40,30,.23);--studio-brand: #0e6b4f;--studio-brand-hover: #0b5942;--studio-brand-soft: rgba(14,107,79,.09);--studio-danger: #b23d35;--studio-warning: #8d6018;--studio-radius-sm: 11px;--studio-radius-md: 14px;--studio-radius-lg: 22px;--studio-shadow: 0 16px 40px rgba(30,55,40,.065),inset 0 1px 0 rgba(255,255,255,.7);--studio-background: radial-gradient(ellipse at 12% 10%,rgba(171,229,204,.22),transparent 42%),radial-gradient(ellipse at 86% 85%,rgba(242,217,190,.2),transparent 38%),#f5f4ef;--app-bg: var(--studio-paper);--surface: var(--studio-surface);--surface-soft: var(--studio-surface-muted);--ink: var(--studio-ink);--text: var(--studio-ink);--heading: var(--studio-ink);--muted: var(--studio-muted);--faint: var(--studio-faint);--line: var(--studio-line);--line-strong: var(--studio-line-strong);--blue: var(--studio-brand);--accent: var(--studio-brand);--green: var(--studio-brand);--link-blue: var(--studio-brand);--button-blue: var(--studio-brand);--accent-hover: var(--studio-brand-hover);--button-blue-hover: var(--studio-brand-hover);--blue-soft: var(--studio-brand-soft);--green-soft: var(--studio-brand-soft);--red: var(--studio-danger);--amber: var(--studio-warning);--red-soft: rgba(184,74,66,.09);--amber-soft: rgba(154,106,31,.09);--on-accent: #fff;--on-accent-hover: #fff;--row-hover: rgba(14,107,79,.045);--input-bg: var(--studio-solid);--hover: var(--studio-brand-soft);--hover-line: var(--studio-line-strong);--control-ink: var(--studio-ink);--soft-ink: var(--studio-muted);--link-soft: var(--studio-brand);--selection-bg: var(--studio-brand-soft);--selection-ink: var(--studio-ink);--placeholder: var(--studio-faint);--label: var(--studio-muted);--subtle: var(--studio-faint);--secondary-ink: var(--studio-muted);--help-ink: var(--studio-muted);--caption: var(--studio-muted);--hint: var(--studio-muted);--hint-secondary: var(--studio-faint);--quiet-ink: var(--studio-muted);--disabled-ink: var(--studio-faint);--strong-ink: var(--studio-ink);--green-muted: var(--studio-brand);--focus-line: var(--studio-brand);--accent-border: var(--studio-line-strong);--inset: var(--studio-surface-muted);--inset-strong: var(--studio-brand-soft);--chrome: var(--studio-chrome);--dock: var(--studio-chrome);--dock-border: var(--studio-line);--gold: var(--studio-warning);--gold-bright: var(--studio-warning);--bg-final: var(--studio-paper);--text-final: var(--studio-ink);color-scheme:light}:root[data-theme=dark]{--studio-paper: #101613;--studio-solid: #1c2520;--studio-surface: rgba(30,40,34,.94);--studio-surface-muted: rgba(38,51,43,.8);--studio-chrome: rgba(22,31,26,.95);--studio-nav: rgba(26,37,30,.92);--studio-ink: #f0f5f1;--studio-muted: #b0bdb4;--studio-faint: #95a79c;--studio-line: rgba(212,236,222,.13);--studio-line-strong: rgba(212,236,222,.28);--studio-brand: #a9f0cc;--studio-brand-hover: #c2f7df;--studio-brand-soft: rgba(169,240,204,.12);--studio-danger: #ffaba3;--studio-warning: #e7c17c;--on-accent: #10271b;--on-accent-hover: #10271b;--red-soft: rgba(255,150,139,.12);--amber-soft: rgba(231,193,124,.12);--studio-shadow: 0 16px 40px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.06);--studio-background: radial-gradient(ellipse at 10% 8%,rgba(48,101,74,.14),transparent 45%),#101613;--row-hover: rgba(169,240,204,.06);color-scheme:dark}body{background:var(--studio-paper);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1}.app-root{width:100%;height:100dvh;min-height:0;overflow:hidden;background:var(--studio-background);color:var(--ink);font:14px/1.5 var(--font-ui)}.app-root .app-shell{display:grid;grid-template:60px minmax(0,1fr) / minmax(0,1fr);grid-template-areas:"topbar" "stage";height:100%;min-height:0;background:transparent}.app-root .app-primary-nav{display:none}.app-root .app-topbar{grid-area:topbar;display:flex;align-items:center;gap:20px;min-height:60px;padding:8px 26px;border-bottom:1px solid var(--line);background:var(--studio-chrome);box-shadow:none;z-index:40}.app-root .app-brand{display:flex;align-items:center;flex:0 0 218px;min-width:0;gap:11px;padding:0;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.app-root .app-brand>span:last-child{display:grid;min-width:0}.app-root .app-brand-icon{display:grid;place-items:center;overflow:hidden;width:32px;height:32px;flex:0 0 32px;border-radius:10px}.app-root .app-brand-icon img{display:block;width:100%;height:100%;object-fit:cover}.app-root .app-brand strong{font-size:14px;font-weight:650}.app-root .app-brand small{max-width:210px;font-size:11px;color:var(--muted)}.app-root .app-topbar .sidebar-access-card{display:none}.app-root .global-search{flex:1;width:auto;max-width:520px;min-width:180px}.app-root .search-box{width:100%;height:36px;border:1px solid var(--line);border-radius:12px;background:var(--studio-surface);box-shadow:inset 0 1px #ffffff1f}.app-root .search-box input{font-size:13px}.app-root .app-topbar-actions{display:flex;align-items:center;margin-left:auto;gap:9px;flex:none}.app-root .scope-switch{display:none}.app-root .icon-button{width:36px;height:36px;min-height:36px;border-radius:11px;color:var(--muted);background:var(--studio-surface)}.app-root .topbar-new{color:var(--on-accent);background:var(--studio-brand);border-color:transparent}.app-root .profile-avatar{display:grid;place-items:center;width:36px;height:36px;padding:0;border-radius:50%;border:1px solid var(--line);color:var(--green);background:var(--green-soft);cursor:pointer}.app-root .storage-state{font-size:11px;color:var(--muted);white-space:nowrap}.app-root .workspace-stage{grid-area:stage;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;background:transparent}.app-root .context-rail{display:flex;flex:none;width:auto;height:auto;padding:12px 32px 0;border:0;background:transparent}.app-root .context-rail>header{display:none}.app-root .context-rail nav{display:flex;gap:4px;width:auto;margin:0;padding:4px;border:1px solid var(--line);border-radius:13px;background:var(--studio-surface-muted);overflow-x:auto}.app-root .context-nav-button{display:flex;align-items:center;gap:8px;width:auto;min-width:0;min-height:32px;height:32px;padding:0 13px;border:0;border-radius:9px;background:transparent}.app-root .context-nav-button strong{font-size:12px;font-weight:550}.app-root .context-nav-button small,.app-root .context-nav-button:before{display:none}.app-root .context-nav-button em{font-size:11px}.app-root .context-nav-button>span{display:grid}.app-root .context-nav-button.active{color:var(--green);background:var(--studio-solid);box-shadow:0 2px 6px #0000000a}.app-root .main-shell{display:flex;flex-direction:column;flex:1;width:100%;min-height:0;min-width:0;max-width:1800px;margin:0 auto;padding:0 32px;background:transparent}.app-root .page-titlebar{flex:none;display:flex;align-items:flex-end;justify-content:space-between;min-height:118px;padding:22px 0 18px;gap:18px;border:0;background:transparent}.app-root .page-titlebar h1{margin:0;color:var(--ink);font:300 40px/1.18 var(--font-display);letter-spacing:-.045em;white-space:normal}.app-root .page-titlebar p{margin:6px 0 0;font-size:13px;line-height:1.4;color:var(--muted)}.app-root .page-titlebar>div:first-child>span{color:var(--muted);font-size:12px}.app-root .page-content{flex:1;min-height:0;min-width:0;overflow:auto;padding:0 0 102px;scrollbar-gutter:stable;background:transparent}.app-root .page-view{min-width:0;animation:page-view-enter .16s ease-out}@keyframes page-view-enter{0%{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.app-root :is(.surface,.table-surface,.settings-block){border:1px solid var(--line);border-radius:var(--studio-radius-lg);background:var(--studio-surface);box-shadow:var(--studio-shadow)}.app-root .surface .surface{box-shadow:none;border-radius:14px}.app-root :is(button,input,select,textarea){font-family:inherit}.app-root :is(input,select,textarea){color:var(--ink);border-color:var(--line-strong);background:var(--input-bg);border-radius:10px;font-size:14px}.app-root button{border-radius:var(--studio-radius-sm)}.app-root :is(.primary-button,.secondary-button){min-height:36px;padding:0 14px;font-size:13px;font-weight:600}.app-root .primary-button{color:var(--on-accent);background:var(--green);border:1px solid transparent;box-shadow:0 5px 14px #0e6b4f1f}.app-root .primary-button:hover{background:var(--accent-hover);color:var(--on-accent-hover);border-color:transparent}.app-root .secondary-button{color:var(--ink);background:var(--studio-surface);border:1px solid var(--line);box-shadow:0 3px 10px #00000006}.app-root .secondary-button:hover{color:var(--green);background:var(--hover)}.app-root .status-pill,.app-root .status-chip{border-radius:999px;font-size:12px;font-weight:550}.app-root :is(.status-pill.red,.danger-text,.danger-menu-item){color:var(--red)}.app-root :is(.table-row,.data-table .table-row){min-height:58px}.app-root :is(td,th,button,label,input,select,textarea,p,li){font-size:14px}.app-root :is(small,.field-caption,.settings-note,.data-table small){font-size:12px;line-height:1.5}.app-root :is(.data-table strong,.metric-value,.money){font-variant-numeric:tabular-nums}.app-root :is(.data-table,.quote-template-table,.timeline-list){font-size:13px}.app-root .section-header{padding-bottom:12px}.app-root .section-header h2{font-size:16px;font-weight:650}.app-root :is(.object-workspace,.asset-workspace,.settings-workspace){min-width:0}.app-root .modal{background:var(--studio-solid);border:1px solid var(--line);border-radius:22px;box-shadow:0 28px 90px #0000002e}.app-root .modal>header{background:var(--studio-solid)}.app-root .first-run-guide{background:var(--studio-solid);border-radius:22px;box-shadow:0 20px 56px #1e372829}.app-root .modal-form>footer{background:var(--studio-solid)}.app-root .form-validation-summary{display:flex;flex:none;justify-content:space-between;align-items:center;gap:12px;margin:0 20px 10px;padding:10px 12px;border:1px solid var(--red);border-radius:11px;background:var(--red-soft);color:var(--red);font-size:13px}.form-validation-summary button{flex:none;border:0;padding:4px;color:inherit;background:none;text-decoration:underline;cursor:pointer}.app-root [aria-invalid=true]{border-color:var(--red)}.app-root :is(.feature-guide,.global-search-results,.context-menu){background:var(--studio-solid);color:var(--ink)}.app-root :is(button,input,select,textarea,a):focus-visible{outline:2px solid var(--green);outline-offset:3px}.app-root button:disabled{opacity:.48;cursor:not-allowed;transform:none;box-shadow:none}.app-root .app-dock-bar{position:fixed;left:50%;right:auto;bottom:16px;z-index:45;display:flex;width:max-content;max-width:calc(100vw - 32px);padding:0;background:transparent;transform:translate(-50%)}.app-root .app-dock{display:flex;align-items:center;gap:3px;width:max-content;max-width:100%;padding:5px;border:1px solid var(--line);border-radius:24px;background:var(--studio-chrome);box-shadow:0 16px 44px #1e372824,inset 0 1px #fff3;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);overflow:auto}.app-root .app-dock-item{display:flex;flex-direction:column;justify-content:center;align-items:center;flex:0 0 82px;width:82px;height:52px;padding:5px 7px;gap:3px;border:1px solid transparent;border-radius:18px;background:transparent;color:var(--muted);cursor:pointer}.app-root .app-dock-icon{display:grid;place-items:center;order:0;width:22px;height:22px;border:0;border-radius:0;background:none;box-shadow:none;color:inherit;transform:none}.app-root .app-dock-label{display:block;position:static;order:1;padding:0;color:inherit;background:none;box-shadow:none;opacity:1;visibility:visible;transform:none;font-size:11px;line-height:1.2;white-space:nowrap;pointer-events:none}.app-root .app-dock-item:after{display:none}.app-root .app-dock-item.active{color:var(--green);border-color:var(--line);background:var(--green-soft)}.app-root .app-dock-item:hover{background:var(--hover)}.app-root .app-dock-item:is(:hover,:active,.active,:focus-visible) .app-dock-icon{color:inherit;border:0;background:none;box-shadow:none;transform:none}.app-root .app-dock-item:has(+.app-dock-item:hover) .app-dock-icon{transform:none}.app-root .app-dock-alert{right:13px;top:7px}.app-root .app-dock-item.dock-tool-start{margin:0;padding:5px 7px;border-left-color:transparent}.app-root .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.studio-today-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr);gap:18px;align-items:stretch}.app-root .today-hero{min-height:210px;padding:22px;background:linear-gradient(125deg,var(--green-soft),var(--studio-surface) 70%)}.today-hero>header{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.12em;color:var(--muted)}.today-hero-body{display:grid;padding:18px 0 12px}.today-hero-body>strong{font-size:58px;font-weight:250;line-height:1.08;letter-spacing:-.06em;color:var(--green)}.app-root .today-hero-body>strong small{font-size:39px;font-weight:300}.today-hero-body>span{color:var(--muted);font-size:13px}.today-hero-stats{display:flex;gap:28px;padding-top:14px;border-top:1px solid var(--line)}.today-hero-stats>div{display:grid}.today-hero-stats b{color:var(--green);font-size:21px;font-weight:550;line-height:1.2}.today-hero-stats span{color:var(--muted);font-size:12px}.today-cash{display:flex;flex-direction:column;padding:22px}.today-cash>span{color:var(--muted);font-size:13px}.today-cash>strong{font-size:44px;font-weight:300;letter-spacing:-.055em;line-height:1.3;color:var(--ink)}.app-root .today-cash>p{margin:0;color:var(--muted);font-size:12px}.today-cash-details{display:grid;gap:8px;margin-top:auto;padding-top:20px}.today-cash-details button{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border:0;background:none;cursor:pointer;text-align:left}.today-cash-details span{color:var(--muted);font-size:12px}.app-root :is(.today-actions,.today-week,.today-risk,.dashboard-workflow){padding:20px;min-width:0}.today-actions .action-list{display:grid;gap:0;padding:0}.app-root .business-action-row{display:flex;gap:8px;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}.app-root .business-action-row .action-row{display:grid;grid-template-columns:76px minmax(0,1fr) 56px;align-items:center;width:100%;min-height:60px;gap:10px;padding:9px 0;border:0;background:none;text-align:left}.app-root .action-source{width:auto;padding:5px 6px;border-radius:8px;color:var(--green);background:var(--green-soft);font-size:11px;text-align:center}.app-root .source-payment{color:var(--red);background:var(--red-soft)}.app-root .source-delivery{color:var(--amber);background:var(--amber-soft)}.app-root .action-copy{display:grid;gap:3px;min-width:0}.app-root .action-copy strong{font-size:14px;font-weight:600}.app-root .action-copy small{overflow:hidden;color:var(--muted);font-size:12px;white-space:nowrap;text-overflow:ellipsis}.app-root .action-row>span:last-child{color:var(--green);font-size:12px;white-space:nowrap}.app-root .action-snooze{flex:none;align-self:center;padding:4px;font-size:12px;color:var(--muted)}.app-root .dashboard-command-bar{display:flex;gap:10px;justify-content:flex-start;min-height:0;margin:16px 0 0;padding:0;border:0;background:transparent}.today-show-more{margin-top:12px}.today-week-row{display:flex;align-items:center;gap:12px;width:100%;padding:13px 0;color:var(--ink);border:0;border-bottom:1px solid var(--line);background:none;text-align:left;cursor:pointer}.today-week-row>span:nth-child(2){display:grid;min-width:0;flex:1}.today-week-row strong{font-size:14px;font-weight:600}.today-week-row small{color:var(--muted)}.week-dot{flex:none;width:8px;height:8px;border:2px solid var(--line-strong);border-radius:50%}.week-dot.done{border-color:var(--green);background:var(--green)}.app-root .dashboard-workflow{grid-column:1}.app-root .dashboard-workflow>div:last-child{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));padding:0;gap:0;border:0;background:none}.app-root .dashboard-workflow>div:last-child>button{display:flex;flex-direction:column-reverse;align-items:flex-start;gap:4px;min-height:66px;padding:6px 12px;border:0;border-right:1px solid var(--line);border-radius:0;background:none}.app-root .dashboard-workflow>div:last-child>button:first-child{padding-left:0}.app-root .dashboard-workflow>div:last-child>button:last-child{border-right:0}.app-root .dashboard-workflow em{font-size:26px;font-weight:400;font-style:normal;color:var(--green)}.app-root .dashboard-workflow strong{font-size:12px;font-weight:500;color:var(--muted);white-space:nowrap}.today-risk>button{display:flex;gap:12px;align-items:center;width:100%;padding:13px 0;border:0;border-top:1px solid var(--line);background:none;text-align:left;cursor:pointer}.today-risk>button>span:last-child{display:grid;gap:3px}.today-risk small{color:var(--muted)}.client-workbench{display:grid;grid-template-columns:300px minmax(0,1fr);gap:20px;align-items:start}.app-root .client-directory{padding:18px 12px;min-width:0}.client-directory .section-header{padding-inline:8px}.client-directory-items{display:grid;gap:5px}.app-root .client-directory-item{display:flex;align-items:center;gap:10px;min-width:0;width:100%;min-height:70px;padding:12px 9px;border:1px solid transparent;background:transparent;text-align:left;cursor:pointer}.app-root .client-directory-item.active{border-color:var(--line);background:var(--green-soft)}.client-directory-item>i{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:11px;color:var(--green);background:var(--green-soft);font-style:normal}.client-directory-item>span{display:grid;gap:3px;min-width:0;flex:1}.client-directory-item strong,.client-directory-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-directory-item strong{font-size:13px;font-weight:600}.client-directory-item small{color:var(--muted)}.client-directory-item .status-pill{flex:none;font-size:10px;padding:3px 6px}.client-directory .list-pagination{flex-wrap:wrap;gap:6px;padding:12px 4px 0}.client-directory .list-pagination button{min-width:24px;padding:4px 7px}.client-workbench .object-workspace-head{display:flex;flex-wrap:wrap;gap:14px;padding:18px 20px;border:1px solid var(--line);border-radius:22px;background:var(--surface)}.client-record-label{width:100%;font-size:12px;color:var(--muted)}.client-workbench .object-workspace-head>div:first-of-type{flex:1;min-width:0}.client-workbench .object-workspace-head h2{font-size:25px;font-weight:450}.client-workbench .object-actions{flex-wrap:wrap}.client-workbench .workspace-kpis{gap:8px}.client-workbench .workspace-kpis strong{font-size:22px}.client-empty{display:grid;justify-items:center;padding:70px 24px;gap:20px}.record-workbench{display:grid;grid-template-columns:285px minmax(0,1fr);gap:20px;align-items:start;min-width:0}.app-root .record-directory{padding:18px 12px;min-width:0}.record-directory .section-header{padding-inline:6px;gap:8px;flex-wrap:wrap}.record-directory-items,.record-directory-group{display:grid;gap:7px;min-width:0}.record-directory-group h3{margin:16px 8px 4px;color:var(--muted);font-size:12px;font-weight:500}.app-root .record-directory-item{display:grid;width:100%;gap:6px;padding:14px 12px;border:1px solid transparent;border-radius:14px;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.app-root .record-directory-item.active{background:var(--green-soft);border-color:var(--line)}.record-directory-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px;color:var(--muted);font-size:12px}.record-directory-item>strong{font-size:14px;line-height:1.6;overflow-wrap:anywhere}.record-directory-item>small{color:var(--muted)}.record-directory-item>b{color:var(--green);font-size:16px;font-weight:550}.record-directory-progress{font-size:12px;color:var(--muted)}.record-directory .list-pagination{flex-wrap:wrap;padding:14px 4px 0;gap:6px}.record-directory .list-pagination button{min-width:24px;padding:4px 7px}.record-workbench .object-workspace-head{display:flex;flex-wrap:wrap;gap:14px;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:22px}.record-workbench .object-workspace-head>div:first-of-type{flex:1;min-width:0}.record-workbench .object-workspace-head h2{font-size:25px;font-weight:450}.record-workbench .object-actions{flex-wrap:wrap}.record-workbench .workspace-kpis{gap:8px}.record-workbench .workspace-kpis strong{font-size:22px}.record-workbench .quick-grid{display:flex;flex-wrap:wrap;gap:8px;padding:12px}.record-workbench .workspace-tabs{flex-wrap:wrap}.record-workbench .detail-table{min-width:0}.record-workbench>.object-workspace{padding:20px;gap:16px;border:1px solid var(--line);border-radius:22px;background:var(--studio-surface);box-shadow:var(--studio-shadow)}.record-workbench>.object-workspace>.object-workspace-head{padding:0 0 18px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none}.quote-workbench>.object-workspace{display:flex;flex-direction:column}.quote-workbench .object-workspace-head{order:-2}.quote-workbench .workspace-kpis{order:-1}.app-root .record-workbench .detail-section{padding:16px 0;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none;background:none}.app-root .record-workbench .quick-grid{padding:0;border:0;box-shadow:none;background:none}.quote-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.6fr);align-items:start;gap:20px;min-width:0}.quote-detail-layout .object-workspace-grid{grid-template-columns:1fr;gap:14px}.quote-document-rail{min-width:0;padding:12px;border-radius:16px;background:var(--studio-surface-muted)}.quote-document-rail>.text-button{margin-bottom:10px}.quote-document-rail .live-document-preview{display:flex;flex-direction:column;height:470px;min-height:0}.quote-document-rail .a4-paper-viewport{flex:1;min-height:0}.quote-document-rail .live-document-preview>header{flex-wrap:wrap;gap:8px}.app-root .quote-document-rail .live-document-preview>header strong{font-size:13px}.record-directory{min-height:560px}@media(max-width:1280px){.quote-detail-layout{grid-template-columns:1fr}.quote-document-rail .live-document-preview{height:400px}}.record-empty{display:grid;justify-items:center;gap:20px;padding:70px 24px}.team-management{display:grid;grid-template-columns:300px minmax(0,1fr);align-items:start;gap:20px}.app-root :is(.team-directory,.team-member-detail){min-width:0;padding:20px}.app-root .team-person{display:flex;width:100%;padding:14px 10px;border:1px solid transparent;border-radius:14px;color:var(--ink);background:none;text-align:left;cursor:pointer}.app-root .team-person.active{background:var(--green-soft);border-color:var(--line)}.team-person .identity-cell{display:flex;align-items:center;gap:12px}.team-person .identity-cell>span{display:grid;gap:4px}.team-person small{color:var(--muted)}.team-member-detail .team-member-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px}.team-member-detail label{display:grid;gap:8px}.team-member-detail select{min-height:38px;padding:6px 10px}.team-share-editor{display:grid;grid-template-columns:110px minmax(100px,1fr) 100px auto;align-items:end;gap:10px}.team-management .team-add-form{display:flex;flex-direction:column}.app-root .settings-workspace{max-width:none;margin:0;grid-template-columns:215px minmax(0,1fr);gap:20px}.app-root :is(.settings-index,.settings-detail){border-radius:22px;background:var(--studio-surface);box-shadow:var(--studio-shadow);border-color:var(--line)}.app-root .settings-index-title{display:none}.app-root .settings-index nav{padding:10px}.app-root .settings-index nav button{border-left:0;border-radius:12px;min-height:52px}.app-root .settings-index nav button.active{color:var(--green);background:var(--green-soft)}.app-root .settings-index nav button small{font-size:12px}.app-root .settings-editor>header{padding:22px 24px}.app-root .settings-editor>header h2{font-size:21px;font-weight:500}.app-root .profile-settings-layout{grid-template-columns:minmax(0,1fr)}.app-root .profile-preview{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;text-align:left;gap:14px;padding:14px 24px;border-right:0;border-bottom:1px solid var(--line);background:transparent}.app-root .profile-logo{width:44px;height:44px;margin:0;border-radius:12px;color:var(--green)}.app-root .profile-preview>span{flex:1;font-size:12px}.app-root .profile-preview label{margin:0}.app-root .settings-field-grid{gap:14px 18px}.app-root .settings-editor fieldset{padding:18px 24px}.app-root .settings-editor legend{font-size:14px}@media(max-width:1180px){.team-management{grid-template-columns:240px minmax(0,1fr)}.team-share-editor{grid-template-columns:1fr 1fr}.app-root .settings-workspace{grid-template-columns:190px minmax(0,1fr)}.record-workbench{grid-template-columns:235px minmax(0,1fr);gap:14px}.record-workbench .object-workspace-grid{grid-template-columns:1fr}.record-workbench .object-actions{width:100%}.client-workbench{grid-template-columns:240px minmax(0,1fr);gap:14px}.client-workbench .object-workspace-grid{grid-template-columns:minmax(0,1fr)}.client-workbench .object-actions{width:100%}}@media(max-width:820px){.team-management,.app-root .settings-workspace,.record-workbench{grid-template-columns:1fr}.record-directory-items{max-height:260px;overflow:auto}.client-workbench{grid-template-columns:minmax(0,1fr)}.client-directory-items{max-height:230px;overflow:auto}}@media(max-width:1180px){.app-root .app-topbar{padding-inline:20px;gap:14px}.app-root .app-brand{flex-basis:185px}.app-root .storage-state{display:none}.app-root .main-shell,.app-root .context-rail{padding-inline:24px}.studio-today-grid{grid-template-columns:minmax(0,1.4fr) minmax(270px,1fr);gap:14px}.app-root .today-actions{grid-column:1 / -1;grid-row:2}.app-root .today-week{grid-column:1}.app-root .today-risk{grid-column:2;grid-row:3}.app-root .dashboard-workflow{grid-column:1 / -1}}@media(max-width:820px){.app-root .app-topbar{padding-inline:14px;gap:10px}.app-root .app-brand{flex-basis:40px}.app-root .app-brand>span:last-child{display:none}.app-root .app-topbar-actions .icon-button[aria-label=帮助中心]{display:none}.app-root .main-shell,.app-root .context-rail{padding-inline:16px}.app-root .page-titlebar h1{font-size:32px}.app-root .app-dock-item{flex-basis:65px;width:65px}.app-root .app-dock-label{font-size:10px}.app-root .page-titlebar-actions .inline-actions{flex-wrap:wrap;justify-content:flex-end}.studio-today-grid{grid-template-columns:1fr}.studio-today-grid>section{grid-column:1!important;grid-row:auto!important}}@media(prefers-reduced-transparency:reduce){.app-root .app-dock{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--studio-solid)}}@media(prefers-reduced-motion:reduce){.app-root *,.app-root *:before,.app-root *:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.app-root .followup-calendar-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:16px;align-items:start}.app-root .followup-agenda{min-height:100%;padding:18px}.app-root .followup-agenda>header{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--studio-line)}.app-root .followup-agenda>header span{color:var(--studio-muted);font-size:12px}.app-root .followup-agenda>header h2{margin:3px 0 0;font-family:var(--font-display, "Source Han Serif SC", serif);font-size:20px}.app-root .followup-agenda>header small{color:var(--studio-muted);font-size:12px}.app-root .followup-agenda-list{display:grid;gap:2px;margin:10px 0}.app-root .followup-agenda-list>button{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;width:100%;padding:11px 0;border:0;border-bottom:1px solid var(--studio-line);background:transparent;color:var(--studio-ink);text-align:left;cursor:pointer}.app-root .followup-agenda-list>button:hover{color:var(--studio-brand)}.app-root .followup-agenda-list>button>span{display:grid;gap:2px;min-width:0}.app-root .followup-agenda-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.app-root .followup-agenda-list small{overflow:hidden;color:var(--studio-muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.app-root .followup-agenda-list>button>span:first-child strong{color:var(--studio-brand)}.app-root .followup-agenda-list>button>span:first-child.overdue strong{color:var(--studio-danger)}.app-root .followup-agenda-list>button>span:first-child.done{opacity:.62;text-decoration:line-through}.app-root .followup-agenda>.text-button{display:inline-flex;align-items:center;gap:6px;padding-inline:0}.app-root .quote-detail-groups{display:grid;gap:18px}.app-root .quote-detail-group{overflow:hidden;border:1px solid var(--studio-line);border-radius:var(--studio-radius-md);background:var(--studio-surface)}.app-root .quote-detail-group>header{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:13px 16px;border-bottom:1px solid var(--studio-line);background:var(--studio-surface-muted)}.app-root .quote-detail-group>header>div{display:grid;gap:3px;min-width:0}.app-root .quote-detail-group>header strong{font-size:15px}.app-root .quote-detail-group>header small{color:var(--studio-muted);font-size:12px}.app-root .quote-detail-group>header>span{color:var(--studio-ink);font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}.app-root .quote-detail-group .detail-table{border:0;border-radius:0}.app-root .quote-detail-layout .detail-table>div{grid-template-columns:minmax(120px,1fr) 60px 80px 90px;min-width:0;gap:8px;padding:8px 16px;font-size:13px}.app-root .quote-detail-layout .detail-table>div>:first-child{min-width:0;overflow-wrap:anywhere}.app-root .delivery-status-columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px;background:var(--studio-surface-muted)}.app-root .delivery-status-column{min-width:0;border:1px solid var(--studio-line);border-radius:var(--studio-radius-md);background:var(--studio-surface)}.app-root .delivery-status-column>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 13px;border-bottom:1px solid var(--studio-line)}.app-root .delivery-status-column>header>div{display:grid;gap:3px}.app-root .delivery-status-column>header strong{font-size:14px}.app-root .delivery-status-column>header small{color:var(--studio-muted);font-size:12px}.app-root .delivery-status-column>header em{display:grid;min-width:26px;height:26px;place-items:center;border-radius:999px;background:var(--studio-surface-muted);color:var(--studio-muted);font-size:12px;font-style:normal;font-variant-numeric:tabular-nums}.app-root .delivery-status-card-list{display:grid;gap:8px;min-height:120px;padding:10px}.app-root .delivery-status-card-list>.empty-state{min-height:84px;padding:18px 8px;border:1px dashed var(--studio-line);background:transparent}.app-root .delivery-status-card-list .delivery-card{display:grid;gap:8px;width:100%;padding:12px;border:1px solid var(--studio-line);border-left:3px solid var(--studio-brand);border-radius:var(--studio-radius-md);background:var(--studio-surface);color:var(--studio-ink);text-align:left;cursor:pointer}.app-root .delivery-status-card-list .delivery-card:hover{border-color:var(--studio-brand);box-shadow:var(--studio-shadow);transform:translateY(-1px)}.app-root .delivery-card-project{display:grid;gap:2px}.app-root .delivery-card-project small{overflow:hidden;color:var(--studio-muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.app-root .delivery-card-project strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.app-root .delivery-status-card-list .delivery-card>strong{font-size:14px}.app-root .delivery-status-card-list .delivery-card p{margin:0;color:var(--studio-muted);font-size:12px}.app-root .delivery-status-card-list .delivery-card footer{display:flex;justify-content:space-between;gap:8px;color:var(--studio-muted);font-size:12px}.app-root :is(.table-head,.quote-template-table-head){font-size:12px;letter-spacing:.02em}.app-root :is(.quote-template-table-row strong,.settings-index nav button strong,.settings-field-grid label>span,.field-caption){font-size:13px}.app-root :is(.quote-template-table-row small,.settings-index nav button small,.settings-editor>header p,.settings-field-grid label>small){font-size:12px}.app-root .asset-workspace-head>div>span{font-size:12px;letter-spacing:.04em}.app-root .asset-workspace-head p{font-size:14px}.app-root .analytics-hero{grid-template-columns:repeat(6,minmax(0,1fr));gap:0}.app-root .analytics-hero>div{min-width:0;min-height:84px;padding:14px 16px}.app-root .analytics-hero .metric-drill{gap:5px}.app-root .analytics-hero .metric-drill>strong{font-size:20px}@media(max-width:980px){.app-root .followup-calendar-layout{grid-template-columns:1fr}.app-root .followup-agenda{min-height:0}.app-root .analytics-hero{grid-template-columns:repeat(3,minmax(0,1fr))}.app-root .delivery-status-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.app-root .analytics-hero{grid-template-columns:repeat(2,minmax(0,1fr))}.app-root .delivery-status-columns{grid-template-columns:1fr}}.cloud-app .cloud-hero h2,.cloud-app .cloud-hero b{color:#fff}.cloud-tool-tabs{display:flex;flex-wrap:wrap;gap:8px;border-bottom:1px solid var(--line);padding:0 0 16px;margin-bottom:18px}.cloud-tool-tabs button.active{background:var(--green);color:#fff;border-color:var(--green)}.cloud-dialog-content{font-size:13px;line-height:1.7}.cloud-dialog-content>button,.cloud-subscription>button{margin:4px 8px 4px 0}.cloud-dialog-content h3{margin:18px 0 12px}.cloud-dialog-content pre{overflow:auto;max-height:360px;font-size:11px;padding:16px;background:var(--surface-2);border-radius:12px}.cloud-pagination{display:flex;gap:10px;align-items:center;padding:16px 20px;justify-content:flex-end}.cloud-pagination small{margin-right:auto;color:var(--muted)}.cloud-asset-warning{position:fixed;bottom:18px;left:24px;right:24px;z-index:1200}.cloud-consent{display:flex;align-items:center;gap:10px}.cloud-consent input[type=checkbox],.cloud-subscription input[type=checkbox]{min-height:18px;width:18px;height:18px;flex-shrink:0}.cloud-public fieldset{border:1px solid var(--line);border-radius:12px;margin:18px 0;padding:18px}.cloud-public p{overflow-wrap:anywhere}:root{--bg:#F4F4F6;--surface:#fff;--surface-2:#F0F0F3;--ink:#1D1D1F;--muted:#6E6E73;--faint:#8E8E93;--line:rgba(0,0,0,.075);--line-strong:rgba(0,0,0,.12);--green:#0E6B4F;--green-deep:#0B382A;--green-soft:#E8F2ED;--red:#C7352C;--shadow:0 14px 40px rgba(20,28,24,.07);--blue:var(--green);--blue-soft:var(--green-soft);--button-blue:var(--green);--button-blue-hover:#0B5A42;--surface-soft:var(--surface-2)}[data-theme=dark]{--bg:#0C0D0C;--surface:#1B1E1C;--surface-2:#262A27;--ink:#F5F5F7;--muted:#A1A7A2;--faint:#7E857F;--line:rgba(255,255,255,.1);--line-strong:rgba(255,255,255,.16);--green:#52C894;--green-deep:#0C2A1F;--green-soft:rgba(82,200,148,.12);--shadow:0 14px 40px rgba(0,0,0,.3);color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;min-width:320px}body{font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI Variable Display,Segoe UI,Microsoft YaHei UI,sans-serif;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1}button{font:inherit;cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid color-mix(in srgb,var(--green) 35%,transparent);outline-offset:3px}.cloud-app button,.cloud-login button,.cloud-workspace-picker button{min-height:36px;padding:8px 13px;border:1px solid var(--line);border-radius:11px;color:var(--ink);background:var(--surface);display:inline-flex;gap:7px;align-items:center;justify-content:center;font-size:12.5px;font-weight:620;transition:background .18s,transform .18s}.cloud-app button:hover,.cloud-login button:hover{background:var(--surface-2)}.cloud-app button.primary,.cloud-login button.primary,.cloud-workspace-picker button.primary{background:var(--green);border-color:transparent;color:#fff;box-shadow:0 6px 18px #0e6b4f33}input,select,textarea{color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:10px;min-height:40px;padding:9px 11px;max-width:100%;outline:none}label{display:grid;gap:7px;font-size:12px;color:var(--muted);margin-bottom:14px}h1,h2,h3,p{margin-top:0}.cloud-app{height:100%;display:flex;flex-direction:column}.cloud-top{height:68px;flex-shrink:0;display:flex;align-items:center;gap:14px;padding:0 32px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 85%,transparent);-webkit-backdrop-filter:blur(28px) saturate(160%);backdrop-filter:blur(28px) saturate(160%);z-index:4}.cloud-top .cloud-brand{border:0;background:none;padding:0;text-align:left;justify-content:flex-start;min-width:235px}.cloud-brand img{width:34px;height:34px;border-radius:9px;object-fit:contain}.cloud-brand b{font-size:14px;display:block}.cloud-brand small{display:block;color:var(--muted);font-size:11px;margin-top:3px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cloud-search{margin:0;display:flex;align-items:center;gap:9px;height:36px;max-width:520px;flex:1;background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:0 12px;color:var(--faint)}.cloud-search input{background:transparent;border:0;padding:0;min-height:30px;flex:1;min-width:30px;font-size:12.5px}.cloud-top>button:not(.cloud-brand){width:36px;padding:0;flex-shrink:0}.cloud-top>button:last-child{margin-left:0}.cloud-content{overflow:auto;flex:1;min-height:0;padding:26px 32px 120px;max-width:1440px;width:100%;margin:0 auto;scrollbar-width:thin}.cloud-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.cloud-page-head h1{font-size:32px;letter-spacing:-.035em;font-weight:740;margin:5px 0 0;line-height:1.12}.cloud-eyebrow{font-size:11.5px;color:var(--muted);font-weight:600}.cloud-page-head>div:last-child{display:flex;gap:10px;align-items:center}.cloud-card{background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);overflow:hidden}.cloud-card>header{display:flex;align-items:center;justify-content:space-between;padding:20px 22px 14px;gap:12px}.cloud-card h2{font-size:15.5px;font-weight:680;margin:0}.cloud-card>header small{font-size:11px;color:var(--muted)}.cloud-overview{display:grid;grid-template-columns:1.55fr 1fr;gap:18px;margin-bottom:20px}.cloud-hero{border-radius:22px;padding:25px;min-height:225px;background:radial-gradient(100% 140% at 100% 0%,#195640 0%,transparent 55%),var(--green-deep);color:#fff;box-shadow:0 20px 46px #0a342633}.cloud-hero>span{font-size:11px;letter-spacing:.06em;color:#fff9}.cloud-hero h2{font-size:48px;line-height:1.05;margin:20px 0;letter-spacing:-.045em}.cloud-hero h2 small{display:block;font-size:13px;font-weight:400;color:#ffffffa3;letter-spacing:0;margin-top:6px}.cloud-hero>div{border-top:1px solid #ffffff22;padding-top:13px;display:flex;gap:30px;font-size:12px;color:#fff9}.cloud-hero b{color:#fff;font-size:18px;margin-left:8px}.cloud-cash{padding:25px;display:flex;align-items:flex-start;flex-direction:column;justify-content:space-between}.cloud-cash small{font-size:12px;color:var(--muted)}.cloud-cash h2{font-size:38px;letter-spacing:-.05em;margin:12px 0}.cloud-cash p{font-size:11.5px;color:var(--muted)}.cloud-two{display:grid;grid-template-columns:1.55fr 1fr;gap:18px}.cloud-task{display:flex;align-items:center;gap:12px;padding:14px 20px;border-top:1px solid var(--line)}.cloud-task button{border:0;padding:0;color:var(--green)}.cloud-task span{display:grid;gap:4px}.cloud-task b{font-size:13px}.cloud-task small{color:var(--muted);font-size:11px}.cloud-card dl{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:0;padding:8px 22px 22px;font-size:12px}.cloud-card dt{color:var(--muted)}.cloud-card dd{margin:0;text-align:right;font-weight:600}.cloud-two .cloud-card>button{margin:0 22px 20px}.cloud-empty{display:grid;place-items:center;gap:12px;color:var(--muted);padding:65px 20px;min-height:200px}.cloud-empty svg{color:var(--green);opacity:.6}.cloud-empty p{font-size:13px}.cloud-record{display:flex!important;width:100%;text-align:left;justify-content:flex-start!important;gap:14px!important;border:0!important;border-radius:0!important;padding:18px 22px!important;min-height:75px!important;border-bottom:1px solid var(--line)!important;background:transparent!important}.cloud-record:hover,.cloud-record.selected{background:var(--green-soft)!important}.cloud-record>span:nth-child(2){display:grid;gap:5px;flex:1;min-width:0}.cloud-record strong{font-size:13px}.cloud-record small{font-size:11px;color:var(--muted);font-weight:400}.cloud-record b{margin-left:auto;font-size:13px}.cloud-record-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:var(--green-soft);color:var(--green);flex-shrink:0}.cloud-finance-row{display:flex;align-items:center;gap:15px;padding:15px 22px;border-top:1px solid var(--line);font-size:12px}.cloud-finance-row>span{flex:1}.cloud-finance-row small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.cloud-finance-row strong{font-size:15px}.cloud-dock{position:fixed;left:50%;bottom:20px;transform:translate(-50%);display:flex;padding:9px;gap:7px;border:1px solid color-mix(in srgb,var(--line) 50%,#ffffff60);background:color-mix(in srgb,var(--surface) 82%,transparent);-webkit-backdrop-filter:blur(30px) saturate(160%);backdrop-filter:blur(30px) saturate(160%);border-radius:24px;box-shadow:0 14px 40px #14201820;z-index:15}.cloud-app .cloud-dock button{border:0;background:transparent;min-width:76px;min-height:55px;display:flex;flex-direction:column;gap:4px;border-radius:16px;color:var(--muted);font-size:10.5px}.cloud-app .cloud-dock button.active{background:var(--green);color:#fff;box-shadow:0 5px 14px #0e6b4f25}.cloud-account{display:grid;grid-template-columns:190px minmax(0,1fr);gap:20px}.cloud-account>nav{display:flex;flex-direction:column;gap:5px;align-self:start}.cloud-account>nav button{border:0;background:transparent;justify-content:flex-start;padding-left:18px;min-height:44px}.cloud-account>nav button.active{background:var(--green-soft);color:var(--green)}.cloud-account-body{padding:25px}.cloud-account-body>h2{margin-bottom:20px;font-size:20px}.cloud-account-body p{font-size:13px;line-height:1.8;color:var(--muted)}.cloud-account-body>button{margin:8px 8px 8px 0}.cloud-account-body form{max-width:520px;margin:24px 0}.cloud-subscription{border:1px solid var(--line);border-radius:16px;padding:20px;margin:18px 0;background:var(--surface-2)}.cloud-subscription h3{font-size:15px}.cloud-subscription p{margin:8px 0}.cloud-error,.cloud-warning{padding:13px 17px;border-radius:12px;line-height:1.6;font-size:12px;margin-bottom:18px}.cloud-error{background:#fbedec;color:#b72e27;border:1px solid #c7352c25}.cloud-warning{background:#faf2e3;color:#915c00;border:1px solid #a96a0022}.cloud-error button{margin-left:10px}.cloud-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#101d1860;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);display:flex;align-items:center;justify-content:center;padding:30px}.cloud-modal{background:var(--surface);border:1px solid var(--line);border-radius:22px;box-shadow:0 28px 80px #14201830;width:760px;max-width:100%;max-height:90vh;overflow:auto;padding:24px}.cloud-modal>header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.cloud-modal>header h2{font-size:20px;margin:0}.cloud-modal>button{margin:6px}.cloud-modal form{padding:10px 0}.cloud-login{min-height:100%;display:grid;grid-template-columns:1.15fr 1fr;max-width:1200px;margin:auto;align-items:center;gap:70px;padding:70px 50px}.cloud-login-copy>img{width:65px;height:65px;display:block;margin-bottom:30px}.cloud-login-copy>span{font-size:11px;color:var(--green);letter-spacing:.16em;font-weight:700}.cloud-login-copy h1{font-size:38px;letter-spacing:-.035em;line-height:1.35;margin:18px 0}.cloud-login-copy p{color:var(--muted);line-height:1.9;font-size:14px}.cloud-login-copy small{display:block;color:var(--faint);font-size:11px;margin-top:30px}.cloud-login-form{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:38px;box-shadow:var(--shadow)}.cloud-login-form h2{font-size:24px;margin:8px 0 30px}.cloud-login-form>button{width:100%;margin:0 0 16px}.cloud-login-form>small{font-size:11px;line-height:1.8;color:var(--muted);display:block}.cloud-workspace-picker{height:100%;overflow:auto;max-width:900px;padding:70px 30px;margin:auto}.cloud-workspace-picker>p{color:var(--muted)}.cloud-workspaces{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:30px 0}.cloud-workspaces button{min-height:150px;display:flex;flex-direction:column;border-radius:20px;box-shadow:var(--shadow);gap:12px}.cloud-workspaces small{color:var(--muted);font-size:11px}.cloud-workspace-picker form{padding:25px;background:var(--surface);border-radius:20px;border:1px solid var(--line);margin:25px 0}.cloud-workspace-picker form p{color:var(--muted);font-size:12px}.cloud-workspace-picker form input{margin-right:10px}body:has(.cloud-login){overflow:auto}.modal-backdrop,.modal-overlay{z-index:1001}.modal{border-radius:22px}.quote-editor-modal{max-width:1400px;width:96vw}.cloud-app .modal .primary-button{background:var(--green);border-color:var(--green)}@media(max-width:1024px){.cloud-top{padding:0 20px}.cloud-content{padding:24px 20px 120px}.cloud-top .cloud-brand{min-width:190px}.cloud-brand small{max-width:160px}.cloud-two,.cloud-overview{grid-template-columns:1.3fr 1fr}}@media(max-width:759px){html,body,#root{height:100%;min-height:100%}.cloud-top{height:62px;padding:0 16px;gap:8px}.cloud-top .cloud-brand{min-width:0;flex:1}.cloud-brand small{max-width:190px}.cloud-search{display:none}.cloud-content{padding:22px 16px 110px}.cloud-page-head h1{font-size:28px}.cloud-eyebrow{font-size:10.5px}.cloud-page-head .primary{min-height:44px}.cloud-overview,.cloud-two{grid-template-columns:1fr;gap:14px}.cloud-hero{padding:22px;min-height:215px}.cloud-cash{min-height:180px}.cloud-cash h2{font-size:34px}.cloud-card{border-radius:18px}.cloud-page-head{margin-bottom:18px;align-items:center}.cloud-dock{bottom:0;left:0;transform:none;width:100%;padding:8px 9px calc(8px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;justify-content:space-around;gap:0}.cloud-app .cloud-dock button{min-width:56px;flex:1;min-height:52px;padding:7px 2px}.cloud-dock .mobile-hidden{display:none!important}.cloud-app button{min-height:44px}.cloud-account{grid-template-columns:1fr;gap:12px}.cloud-account>nav{flex-direction:row;overflow:auto;gap:4px;scrollbar-width:none}.cloud-account>nav button{white-space:nowrap;min-width:58px;justify-content:center;padding:8px 12px}.cloud-account-body{padding:20px}.cloud-record{padding:15px!important;gap:10px!important}.cloud-finance-row{padding:15px 0;gap:10px;flex-wrap:wrap}.cloud-finance-row>span{min-width:100px}.cloud-card>.cloud-finance-row{padding:15px}.cloud-finance-row small{font-size:10px}.cloud-overlay{padding:12px}.cloud-modal{padding:20px;max-height:92vh}.cloud-login{display:block;padding:28px 20px;max-width:500px}.cloud-login-copy{margin:16px 0 28px}.cloud-login-copy img{width:42px;height:42px;margin-bottom:18px}.cloud-login-copy h1{font-size:27px}.cloud-login-copy p,.cloud-login-copy small{display:none}.cloud-login-form{padding:25px}.cloud-login-form button{min-height:44px}.cloud-workspace-picker{padding:40px 20px}.cloud-workspaces{grid-template-columns:1fr}.cloud-workspaces button{min-height:100px}.cloud-workspace-picker form input{margin-bottom:12px;width:100%}.cloud-pc-only{display:none}.quote-editor-modal,.modal{width:100%!important;max-width:100%!important;max-height:96vh!important;border-radius:18px}.modal-backdrop{padding:8px!important}.quote-editor-grid,.quote-editor-layout,.quote-editor-shell{display:block!important}.quote-editor-sidebar,.quote-section-nav{position:static!important;max-height:none!important}.quote-lines-table{overflow:auto}.quote-lines-table input{min-width:90px}.quote-line-row,.line-editor-row{min-width:650px}.cloud-app>.modal-backdrop input,.cloud-app>.modal-backdrop select,.cloud-app>.modal-backdrop textarea{min-height:44px}.cloud-app .modal .tab-bar{overflow-x:auto}.cloud-top button[title=帮助]{display:none}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
