:root{--bg: #f6f4fb;--panel: #ffffff;--ink: #111827;--muted: #64748b;--line: #e2e8f0;--accent: #7c3aed;--accent-strong: #4c1d95;--accent-soft: #ede9fe;--warning: #b45309;--danger: #b42318;--surface-dark: #030712;--surface-mid: #0b1120;--surface-soft: #111827;--highlight: #fbbf24;--success: #00bb7f;--shadow: 0 18px 40px rgba(3, 7, 18, .08);font-family:Inter,Aptos,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;color:var(--ink);background:var(--bg)}button,input,textarea,select{font:inherit}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:22px;color:#f8fafc;background:var(--surface-dark)}.brand-lockup{display:flex;gap:12px;align-items:center;margin-bottom:28px}.brand-lockup strong,.brand-lockup span{display:block}.brand-lockup span{color:#c4b5fd;font-size:.84rem}.brand-mark{display:grid;width:44px;height:44px;place-items:center;border-radius:8px;background:var(--accent);color:#fff;font-weight:800;box-shadow:0 10px 24px #7c3aed61}.nav-list{display:grid;gap:6px}.nav-item{display:flex;width:100%;align-items:center;gap:10px;border:0;border-radius:8px;padding:11px 12px;color:#cbd5e1;background:transparent;text-align:left}.nav-item.active,.nav-item:hover{color:#fff;background:#7c3aed33}.workspace{min-width:0;padding:28px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}.topbar-title,.topbar-actions{display:flex;align-items:center;gap:12px}.user-chip{display:grid;gap:2px;min-width:0;color:var(--muted);text-align:right}.user-chip strong{color:var(--ink)}.user-chip span{font-size:.8rem;text-transform:capitalize}.topbar h1{margin:0;font-size:1.8rem}.offline-badge,.sync-badge{display:inline-flex;align-items:center;min-height:28px;border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:800}.offline-badge{border:1px solid #fca5a5;background:#fee2e2;color:#b42318}.sync-badge{border:1px solid #f4d47c;background:#fff7db;color:#8a5b00}.eyebrow{margin:0 0 4px;color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.mobile-menu-button{display:none}.page-stack{grid-template-columns:minmax(0,1fr);display:grid;gap:18px}.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}.toolbar-actions{display:flex;flex-wrap:wrap;gap:8px}.panel{min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:var(--shadow)}.panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px;border-bottom:1px solid var(--line)}.panel-header h2,.panel-header h3{margin:0}.panel-header p,.muted{margin:6px 0 0;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;border:1px solid transparent;border-radius:8px;padding:8px 13px;font-weight:700}.button-primary{color:#fff;background:var(--accent)}.button-primary:hover{background:var(--accent-strong)}.button-secondary{color:var(--accent-strong);background:var(--accent-soft)}.button-ghost{color:var(--ink);border-color:var(--line);background:#fff}.button-danger{color:#fff;background:var(--danger)}.entity-table{width:100%;border-collapse:collapse}.entity-table th,.entity-table td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.entity-table th{color:var(--muted);font-size:.78rem;text-transform:uppercase}.row-actions{display:flex;justify-content:flex-end;gap:6px}.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:3px 9px;background:var(--accent-soft);color:var(--accent-strong);font-size:.8rem;font-weight:700}.pipeline-panel{overflow:hidden}.pipeline-panel-header{flex-wrap:wrap}.pipeline-column-form{display:flex;flex:1 1 360px;justify-content:flex-end;gap:8px}.pipeline-column-form input,.pipeline-rename-form input{min-width:0;border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:#fff;color:var(--ink)}.pipeline-column-form input{flex:1;max-width:320px}.pipeline-board{display:grid;grid-auto-columns:minmax(220px,1fr);grid-auto-flow:column;gap:12px;overflow-x:auto;padding:14px}.pipeline-column{display:grid;align-content:flex-start;min-height:220px;border:1px solid var(--line);border-radius:10px;padding:10px;background:#f8fafc}.pipeline-column-active{border-color:var(--accent);background:var(--accent-soft)}.pipeline-column-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.pipeline-column-dot{flex:0 0 auto;width:10px;height:10px;border-radius:999px}.pipeline-column-title{display:grid;flex:1;min-width:0}.pipeline-column-title strong,.pipeline-column-title small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pipeline-column-title small{color:var(--muted);font-size:.72rem}.pipeline-count{display:inline-grid;flex:0 0 auto;min-width:26px;height:26px;place-items:center;border-radius:999px;background:#fff;color:var(--muted);font-size:.8rem;font-weight:800}.pipeline-icon-button,.pipeline-rename-form button{display:inline-grid;flex:0 0 auto;width:28px;height:28px;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--muted)}.pipeline-icon-button:hover,.pipeline-rename-form button:hover{background:#fff;color:var(--ink)}.pipeline-menu{position:relative}.pipeline-menu-popover{position:absolute;z-index:5;top:32px;right:0;width:170px;border:1px solid var(--line);border-radius:10px;padding:4px;background:#fff;box-shadow:var(--shadow)}.pipeline-menu-popover button{display:flex;width:100%;align-items:center;gap:8px;border:0;border-radius:8px;padding:8px;color:var(--danger);background:transparent;text-align:left}.pipeline-menu-popover button:hover{background:#fff2f0}.pipeline-rename-form{display:flex;flex:1;min-width:0;align-items:center;gap:4px}.pipeline-column-total{margin:-2px 0 10px 18px;color:var(--muted);font-size:.82rem;font-weight:800}.pipeline-card-stack{display:grid;gap:8px}.pipeline-card{border:1px solid var(--line);border-radius:10px;padding:10px;background:#fff;box-shadow:0 8px 20px #0307120f;cursor:grab;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.pipeline-card:hover{border-color:#7c3aed61;box-shadow:0 12px 24px #0307121a;transform:translateY(-1px)}.pipeline-card:active{cursor:grabbing}.pipeline-card-main{display:flex;gap:8px;align-items:flex-start}.pipeline-card-grip{flex:0 0 auto;margin-top:2px;color:#c4b5fd}.pipeline-card-content{display:grid;flex:1;min-width:0;gap:6px}.pipeline-card-title-row{display:flex;align-items:flex-start;gap:8px}.pipeline-card strong,.pipeline-card span{overflow-wrap:anywhere}.pipeline-card-title-row strong{flex:1;min-width:0}.pipeline-card-delete{display:inline-grid;flex:0 0 auto;width:28px;height:28px;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--muted);opacity:0;transition:opacity .14s ease,background .14s ease,color .14s ease}.pipeline-card:hover .pipeline-card-delete,.pipeline-card-delete:focus-visible{opacity:1}.pipeline-card-delete:hover{background:#fff2f0;color:var(--danger)}.pipeline-card-value{margin:0;color:var(--accent);font-size:.94rem;font-weight:800}.pipeline-card-footer,.pipeline-card-contact{display:flex;align-items:center;gap:6px}.pipeline-card-footer{justify-content:space-between}.pipeline-card-contact,.pipeline-empty{color:var(--muted);font-size:.86rem}.pipeline-card-warning{color:var(--warning)}.pipeline-card-meta{display:flex;flex-wrap:wrap;gap:6px}.pipeline-card-meta span{border-radius:999px;padding:3px 8px;background:var(--accent-soft);color:var(--accent-strong);font-size:.78rem;font-weight:700}.pipeline-empty{margin:0;border:1px dashed var(--line);border-radius:10px;padding:18px 10px;text-align:center}.pipeline-add-card{margin-top:10px;width:100%}.deal-detail-backdrop{position:fixed;z-index:30;top:0;right:0;bottom:0;left:0;background:#03071252}.deal-detail-panel{position:fixed;z-index:31;top:0;right:0;display:flex;width:min(520px,100vw);height:100vh;flex-direction:column;border-left:1px solid var(--line);background:var(--panel);box-shadow:-24px 0 60px #03071233}.deal-detail-header,.deal-detail-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px;border-bottom:1px solid var(--line)}.deal-detail-header h2{margin:0 0 8px}.deal-detail-body{display:grid;gap:16px;overflow-y:auto;padding:18px}.deal-detail-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.deal-detail-metric{display:grid;gap:5px;border:1px solid var(--line);border-radius:10px;padding:12px;background:#f8fafc}.deal-detail-metric svg{color:var(--accent)}.deal-detail-metric span{color:var(--muted);font-size:.78rem;font-weight:700;text-transform:uppercase}.deal-detail-metric strong{overflow-wrap:anywhere}.deal-detail-section{border:1px solid var(--line);border-radius:10px;padding:14px}.deal-detail-section h3,.deal-detail-section p{margin:0}.deal-detail-section h3{margin-bottom:10px}.deal-detail-list{display:grid;gap:8px}.deal-detail-list span{display:flex;align-items:center;gap:8px;color:var(--muted)}.deal-detail-placeholder{background:linear-gradient(135deg,rgba(124,58,237,.08),transparent)}.deal-detail-footer{margin-top:auto;justify-content:flex-end;border-top:1px solid var(--line);border-bottom:0}.empty-state{padding:34px;text-align:center}.attachment-dropzone{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:18px;align-items:center;padding:20px;border-style:dashed;background:linear-gradient(135deg,rgba(124,58,237,.08),transparent),#fff}.attachment-dropzone-active{border-color:var(--accent);background:var(--accent-soft)}.attachment-dropzone-copy{display:flex;gap:14px;align-items:flex-start}.attachment-dropzone-copy svg{flex:0 0 auto;color:var(--accent)}.attachment-dropzone-copy h3{margin:0 0 4px}.attachment-dropzone-copy p{margin:0;color:var(--muted)}.attachment-upload-actions{display:grid;gap:10px}.attachment-url-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.attachment-url-control input{width:100%;border:1px solid var(--line);border-radius:8px;padding:10px 11px;background:#fff;color:var(--ink)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.entity-form{display:grid;gap:14px;padding:18px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field{display:grid;gap:6px}.field label{color:var(--muted);font-size:.84rem;font-weight:700}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);border-radius:8px;padding:10px 11px;background:#fff;color:var(--ink)}.field textarea{min-height:88px;resize:vertical}.form-actions{display:flex;justify-content:flex-end;gap:8px}.metric-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric{padding:16px}.metric strong{display:block;margin-top:4px;font-size:1.6rem}.dashboard-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:22px;align-items:stretch;padding:24px}.dashboard-hero-copy{display:grid;align-content:center;gap:14px}.dashboard-hero-copy h2{max-width:720px;margin:0;font-size:clamp(1.8rem,3vw,3rem);line-height:1.08}.dashboard-hero-copy p{max-width:760px;margin:0;color:var(--muted);font-size:1.04rem;line-height:1.6}.dashboard-hero-panel{display:grid;align-content:center;gap:12px;border:1px solid var(--line);border-radius:8px;padding:20px;background:#f8fafc}.dashboard-hero-panel strong{display:block;font-size:1.8rem}.dashboard-hero-panel p{margin:0;color:var(--muted)}.workflow-strip{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));gap:10px;overflow-x:auto;padding:16px}.workflow-step{display:grid;gap:10px;min-height:104px;border:1px solid var(--line);border-radius:8px;padding:14px;background:#fff}.workflow-step span{display:inline-grid;width:28px;height:28px;place-items:center;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);font-size:.82rem;font-weight:900}.workflow-step strong{align-self:end;line-height:1.25}.benefit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.benefit-card{padding:18px}.benefit-card h3{margin:0 0 8px;font-size:1rem}.benefit-card p{margin:0;color:var(--muted);line-height:1.55}.demo-action-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.invoice-ready-list{display:grid;gap:8px;padding:14px}.invoice-ready-item{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:8px;padding:12px;background:#f8fafc}.invoice-ready-item div{display:grid;gap:4px}.invoice-ready-item span:not(.status-pill){color:var(--muted);font-size:.9rem}.optional-features-panel{overflow:hidden}.optional-features-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0 16px 16px}.optional-feature-card{display:flex;gap:12px;border:1px solid var(--line);border-radius:8px;padding:14px;background:#f8fafc}.optional-feature-icon{display:inline-grid;flex:0 0 auto;width:34px;height:34px;place-items:center;border-radius:8px;background:var(--accent-soft);color:var(--accent)}.optional-feature-card h3,.optional-feature-card p{margin:0}.optional-feature-card h3{margin-bottom:5px;font-size:.96rem}.optional-feature-card p{color:var(--muted);line-height:1.45}.toast-stack{position:fixed;right:18px;bottom:18px;z-index:20;display:grid;width:min(360px,calc(100vw - 36px));gap:10px}.toast{border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:8px;padding:12px;background:#fff;box-shadow:var(--shadow)}.toast strong{display:block}.toast-error{border-left-color:var(--danger)}.pdf-preview-pane{position:relative;display:flex;flex-direction:column;height:100%;min-height:520px;overflow:hidden;border-radius:16px;background:#dce4ec}.quotations-container{display:flex;gap:20px;height:calc(100vh - 120px)}.quotation-editor-panel{display:flex;flex:0 0 360px;overflow:hidden;flex-direction:column;transition:flex-basis .2s ease}.preview-expanded .quotation-editor-panel{display:none}.quotation-editor-header{align-items:center}.quotation-header-actions,.quotation-field-row,.quotation-line-main,.quotation-line-meta{display:flex;gap:10px}.quotation-header-actions{gap:8px}.quotation-selector{padding:0 16px 10px}.quotation-form-stack{display:flex;flex-grow:1;flex-direction:column;gap:15px;overflow-y:auto;padding:0 16px 16px}.quotation-field{display:grid;flex:1;min-width:0;gap:5px}.quotation-field label{color:#374151;font-size:.78rem;font-weight:800}.quotation-input{width:100%;min-width:0;border:1px solid #d1d5db;border-radius:6px;padding:8px;background:#f9fafb;color:var(--ink);font-size:.82rem}.quotation-textarea{resize:vertical}.quotation-line-stack{display:grid;gap:8px}.quotation-catalog-picker{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;border:1px solid var(--line);border-radius:8px;padding:12px;background:#f8fafc}.quotation-line-item{display:grid;gap:6px;border:1px solid #e5e7eb;border-radius:8px;padding:10px;background:#f3f4f6}.quotation-line-main{align-items:center;gap:6px}.quotation-line-description{flex-grow:1}.quotation-line-delete{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:6px;padding:6px;background:transparent;color:var(--danger)}.quotation-line-delete:hover{background:#fee2e2}.quotation-line-meta{gap:6px}.quotation-quantity-input{flex:0 0 58px}.quotation-tax-input{flex:0 0 90px}.quotation-add-line-form{display:flex;flex-direction:column;gap:10px;border-top:1px solid #e5e7eb;padding-top:15px}.quotation-add-line-form h4{margin:0;color:#1f2937;font-size:.86rem}.quotation-preview-column{display:flex;flex-grow:1;min-width:0;height:100%;flex-direction:column}.pdf-preview-toolbar{position:absolute;z-index:3;right:50%;bottom:16px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;width:min(720px,calc(100% - 32px));padding:10px;border:1px solid #dbe4ee;border-radius:14px;background:#fffffff2;box-shadow:var(--shadow);transform:translate(50%)}.pdf-preview-zoom-control,.pdf-preview-fit-control{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px}.pdf-preview-zoom-label{min-width:78px;padding:9px 12px;border:1px solid #d7dee7;border-radius:12px;background:#fff;color:#0f172a;font-size:.9rem;font-weight:800;text-align:center}.pdf-preview-viewport{flex-grow:1;height:100%;min-height:0;overflow:auto;background:#dce4ec}.pdf-preview-frame{display:block;width:100%;height:100%;min-height:100%;border:0;background:#dce4ec}.settings-intro{padding:22px}.settings-intro h2{margin:0 0 8px}.settings-intro p{max-width:760px;margin:0;color:var(--muted);line-height:1.6}.settings-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.settings-card{display:flex;gap:14px;padding:18px}.settings-card-icon{display:inline-grid;flex:0 0 auto;width:38px;height:38px;place-items:center;border-radius:8px;background:var(--accent-soft);color:var(--accent)}.settings-card h3,.settings-card p{margin:0}.settings-card h3{margin-bottom:6px}.settings-card p:not(.eyebrow){color:var(--muted);line-height:1.55}.auth-screen{display:grid;min-height:100vh;place-items:center;padding:18px}.auth-panel{width:min(440px,100%)}.auth-brand{margin:18px 18px 0;color:var(--ink)}.auth-brand span{color:var(--muted)}.form-error{margin:0;color:var(--danger);font-weight:700}@media(max-width:860px){.app-shell{display:block}.sidebar{position:fixed;z-index:15;inset:0 auto 0 0;width:min(300px,86vw);transform:translate(-104%);transition:transform .16s ease}.sidebar-open{transform:translate(0)}.workspace{padding:18px}.mobile-menu-button{display:inline-flex}.topbar,.topbar-actions{align-items:flex-start;flex-direction:column}.user-chip{text-align:left}.form-grid,.metric-strip,.settings-card-grid,.dashboard-hero,.benefit-grid,.optional-features-grid,.attachment-dropzone,.attachment-url-control,.quotation-catalog-picker,.pipeline-column-form{grid-template-columns:1fr}.pipeline-column-form{display:grid;justify-content:stretch}.pipeline-column-form input{max-width:none}.deal-detail-summary{grid-template-columns:1fr}.entity-table{display:block;overflow-x:auto;white-space:nowrap}.quotations-container{display:grid;height:auto}.quotation-editor-panel{flex-basis:auto}.quotation-preview-column{min-height:560px}.quotation-field-row,.quotation-line-meta{flex-direction:column}.quotation-quantity-input,.quotation-tax-input{flex-basis:auto}.workflow-strip{grid-template-columns:repeat(7,minmax(150px,1fr))}.invoice-ready-item{align-items:flex-start;flex-direction:column}}.pdf-preview-frame[hidden]{display:none}.pdf-preview-status{padding:24px;color:#334155;line-height:1.6}
