:root{color:var(--ink);background:var(--bg);font-synthesis:none;--bg:#f3f5f7;--surface:#fff;--rail:#182230;--rail-text:#d7dee7;--rail-muted:#8b98a8;--ink:#15202b;--muted:#5b6b7c;--border:#d5dde5;--primary:#1f4e79;--primary-hover:#183d5f;--accent:#1f6b4a;--warn:#9a6700;--warn-surface:#fff4d6;--danger:#9b2c2c;--customer:#e8f1f8;--radius:8px;--shadow:0 1px 0 #15202b0a;--green:var(--primary);--green-dark:var(--primary-hover);--mint:#e8f1f8;--mono:"IBM Plex Sans", "Source Sans 3", ui-sans-serif, system-ui, sans-serif;font-family:"Source Sans 3",IBM Plex Sans,ui-sans-serif,system-ui,sans-serif;line-height:1.5}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}button,a{transition:background-color .15s,color .15s,border-color .15s}a{color:var(--primary)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.03em;font-size:clamp(1.45rem,2.4vw,1.85rem);line-height:1.2}h2{font-size:1.05rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.muted{color:var(--muted);font-size:.9rem}.tabular{font-variant-numeric:tabular-nums;font-family:var(--mono)}.app-shell{grid-template-columns:240px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--rail);height:100vh;color:var(--rail-text);flex-direction:column;gap:20px;padding:20px 14px;display:flex;position:sticky;top:0}.brand,.public-header{letter-spacing:-.02em;align-items:center;gap:12px;font-weight:700;display:flex}.brand{padding:4px 8px 8px}.brand-copy{min-width:0;display:grid}.brand-copy strong{color:#fff;font-size:1.05rem}.brand-copy small{color:var(--rail-muted);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.brand-mark{background:color-mix(in srgb, var(--primary) 85%, white);color:#fff;border-radius:8px;flex:none;place-items:center;width:36px;height:36px;display:grid}.brand-mark svg{width:24px;height:24px;display:block}.sidebar nav{flex:1;align-content:start;gap:4px;display:grid}.sidebar nav a{color:var(--rail-text);border-radius:8px;padding:10px 12px;font-weight:600;text-decoration:none}.sidebar nav a:hover,.sidebar nav a.active{color:#fff;background:#ffffff14}.sidebar-account{border-top:1px solid #ffffff14;align-items:flex-start;gap:10px;padding:14px 8px 4px;display:flex}.sidebar-account-meta{gap:2px;min-width:0;display:grid}.sidebar-account strong,.sidebar-account small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-account strong{color:#fff}.sidebar-account small{color:var(--rail-muted)}.sidebar-account .button.quiet{color:var(--rail-text);justify-self:start;padding:4px 0;font-size:.85rem}.avatar{color:#fff;background:#ffffff1f;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:.78rem;font-weight:700;display:grid}.workspace{background:var(--bg);min-width:0}.topbar{background:var(--surface);border-bottom:1px solid var(--border);z-index:4;justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:0 24px;display:flex;position:sticky;top:0}.topbar-context{min-width:0;display:grid}.topbar-eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.68rem;font-weight:700}.topbar-context strong{letter-spacing:-.01em;font-size:.95rem}.topbar-utilities{align-items:center;gap:12px;display:flex}.topbar-workspace select{border:1px solid var(--border);background:var(--surface);color:var(--ink);border-radius:6px;min-width:160px;padding:7px 10px;font-weight:600}.content{max-width:1440px;margin:auto;padding:24px 24px 48px}.content-banner{margin:16px 24px 0}.page-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:18px;display:flex}.page-header h1{margin-bottom:4px}.page-header p{color:var(--muted);margin-bottom:0}.breadcrumbs{margin-bottom:12px}.breadcrumbs ol{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:0;font-size:.88rem;font-weight:600;list-style:none;display:flex}.breadcrumbs li:not(:last-child):after{content:"/";color:var(--border);margin-left:6px;font-weight:500}.breadcrumbs a{color:var(--muted);text-decoration:none}.breadcrumbs a:hover{color:var(--primary)}.breadcrumbs [aria-current=page]{color:var(--ink)}.button{border-radius:var(--radius);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:8px 13px;font-weight:650;line-height:1.3;text-decoration:none;display:inline-flex}.button.primary{background:var(--primary);color:#fff}.button.primary:hover{background:var(--primary-hover)}.button.secondary{background:var(--surface);color:var(--ink);border-color:var(--border)}.button.quiet{color:var(--primary);background:0 0;padding:6px 8px}.button.danger{background:var(--danger);color:#fff}.button:disabled{opacity:.5;cursor:not-allowed}.actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.toolbar{margin-bottom:12px}.toolbar.list-toolbar{flex-wrap:wrap;align-items:end;gap:12px;max-width:none;display:flex}.toolbar .field{flex:1;min-width:min(320px,100%)}.toolbar .field span{width:1px;height:1px;position:absolute;overflow:hidden}.field{gap:6px;font-size:.9rem;font-weight:600;display:grid}.field input,.field textarea,.field select,select{border:1px solid var(--border);width:100%;color:var(--ink);background:#fff;border-radius:7px;padding:9px 11px}.field textarea{resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--primary)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.table-card{padding:0;overflow:hidden}.table-scroll{overflow:auto}table{border-collapse:collapse;text-align:left;font-variant-numeric:tabular-nums;width:100%}th{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);z-index:1;background:#f7f9fb;font-size:.72rem;position:sticky;top:0}th,td{border-bottom:1px solid var(--border);vertical-align:top;padding:10px 14px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#f8fafc}tbody tr.row-link{cursor:pointer}tbody tr.row-link:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.row-actions{opacity:.55}tbody tr:hover .row-actions,tbody tr:focus-within .row-actions{opacity:1}.money{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--mono)}.strong-link{color:var(--ink);font-weight:700;text-decoration:none}.strong-link:hover{color:var(--primary)}.pill{letter-spacing:.03em;text-transform:uppercase;color:var(--muted);background:#edf1f5;border-radius:999px;padding:3px 9px;font-size:.72rem;font-weight:700;display:inline-flex}.pill.success{color:var(--accent);background:#e3f4ec}.pill.danger{color:var(--danger);background:#fbe8e8}.pill.warn{background:var(--warn-surface);color:var(--warn)}.quote-status-bar{margin-bottom:16px}.quote-status-bar.is-declined{background:#fff7f7;border-color:#e8b8b8}.quote-declined-banner{margin-bottom:12px}.quote-declined-banner strong{display:block}.quote-declined-banner p{white-space:pre-wrap;margin:6px 0 0}.quote-status-bar-heading{align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.quote-status-bar-heading p{color:var(--muted);margin:0;line-height:1.4}.quote-progress{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.quote-status-bar.is-declined .quote-progress{grid-template-columns:repeat(6,minmax(0,1fr))}.quote-progress-step{justify-items:start;gap:8px;min-width:0;display:grid;position:relative}.quote-progress-step:not(:last-child):after{content:"";background:var(--border);height:2px;position:absolute;top:7px;left:18px;right:-8px}.quote-progress-step.is-complete:not(:last-child):after,.quote-progress-step.is-current:not(:last-child):after{background:var(--primary)}.quote-progress-step.is-declined:not(:last-child):after,.quote-status-bar.is-declined .quote-progress-step.is-complete:not(:last-child):after{background:var(--border)}.quote-progress-marker{border:2px solid var(--border);z-index:1;background:#fff;border-radius:50%;width:14px;height:14px}.quote-progress-step.is-complete .quote-progress-marker{background:var(--primary);border-color:var(--primary)}.quote-progress-step.is-current .quote-progress-marker{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 18%, transparent)}.quote-progress-step.is-declined .quote-progress-marker{background:var(--danger);border-color:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb, var(--danger) 16%, transparent)}.quote-progress-label{color:var(--muted);font-size:.8rem;font-weight:700}.quote-progress-step.is-complete .quote-progress-label,.quote-progress-step.is-current .quote-progress-label{color:var(--ink)}.quote-progress-step.is-declined .quote-progress-label{color:var(--danger)}.detail-sticky{z-index:3;background:color-mix(in srgb, var(--bg) 88%, white);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;padding:14px 16px;display:flex;position:sticky;top:56px}.detail-sticky h1{margin:0 0 4px;font-size:1.35rem}.detail-sticky .eyebrow{margin-bottom:2px}.detail-sticky-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.quote-workbench{grid-template-columns:1fr;gap:16px;margin-bottom:16px;display:grid}.quote-workbench>.card{align-content:start;gap:12px;min-width:0;display:grid}.quote-workbench .table-scroll{overflow-x:auto}.quote-workbench table th:first-child,.quote-workbench table td:first-child{min-width:220px;max-width:42ch}.quote-secondary{margin-top:8px}.quote-secondary summary{cursor:pointer;color:var(--ink);padding:10px 0;font-weight:700;list-style:none}.quote-secondary summary::-webkit-details-marker{display:none}.quote-secondary summary:before{content:"▸";color:var(--muted);margin-right:8px;display:inline-block}.quote-secondary[open] summary:before{content:"▾"}.quote-secondary-body{gap:16px;padding-bottom:8px;display:grid}.state{text-align:center;color:var(--muted);justify-items:center;gap:12px;padding:36px 20px;display:grid}.empty-state{text-align:center;color:var(--muted);justify-items:center;gap:8px;padding:40px 24px;display:grid}.empty-state strong{color:var(--ink);font-size:1.05rem}.empty-state p{max-width:42ch;margin:0}.empty-state-action{margin-top:8px}.state.error,.banner.error{color:#812f2f}.banner{border-radius:var(--radius);margin-bottom:16px;padding:11px 14px}.banner.error{background:#fbe8e8;border:1px solid #ecc7c7}.banner.success{color:#145b40;background:#e3f4ec;border:1px solid #bfe2cf}.form-card{gap:16px;max-width:900px;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.inline-form{border-top:1px solid var(--border);gap:12px;margin-top:18px;padding-top:16px;display:grid}.check{align-items:center;gap:7px;margin-right:12px;font-size:.9rem;display:inline-flex}fieldset{border:1px solid var(--border);border-radius:var(--radius);padding:10px}legend{font-size:.9rem;font-weight:650}.detail-grid,.admin-grid{grid-template-columns:minmax(240px,1fr) minmax(0,2fr);gap:16px;margin-bottom:0;display:grid}.span-2{grid-column:span 1}.detail-grid dl{grid-template-columns:90px 1fr;gap:12px;margin:0;display:grid}.detail-grid dt{color:var(--muted)}.detail-grid dd{margin:0}.contact-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;display:grid}.contact-card{border:1px solid var(--border);border-radius:var(--radius);gap:4px;padding:13px;display:grid}.contact-card .pill{justify-self:start}.section-card{margin-bottom:16px}.section-heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.button-row{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.section-heading p{color:var(--muted);margin-bottom:12px}.metrics{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:16px;display:grid}.metrics div{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);gap:2px;padding:12px 14px;display:grid}.metrics span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:650}.metrics strong{font-variant-numeric:tabular-nums;font-size:1rem;font-family:var(--mono)}.metrics .total{background:var(--primary);color:#fff;border-color:var(--primary)}.metrics .total span{color:color-mix(in srgb, white 70%, var(--primary))}.metrics .total strong{font-size:.95rem}.list-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:11px 0;display:flex}.file-button{margin-top:14px}.file-button input{opacity:0;width:1px;height:1px;position:absolute}.workflow{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.workflow .field{flex:1;min-width:190px}.quote-conversation .conversation-thread{gap:10px;max-height:360px;margin-bottom:12px;padding-right:4px;display:grid;overflow:auto}.conversation-bubble{border:1px solid var(--border);background:#f7f9fb;border-radius:10px;gap:6px;max-width:min(100%,560px);padding:11px 13px;display:grid}.conversation-bubble.from-customer{background:var(--customer);border-color:color-mix(in srgb, var(--primary) 18%, var(--border));justify-self:start}.conversation-bubble.from-company{background:#fff;justify-self:end}.conversation-bubble header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.conversation-bubble header time,.conversation-bubble header strong{font-size:.8rem}.conversation-bubble header time{color:var(--muted);font-weight:500}.conversation-bubble p{white-space:pre-wrap;margin:0}.conversation-composer{gap:10px;display:grid}.timeline{margin:0;padding:0;list-style:none}.timeline li{grid-template-columns:18px 1fr;gap:8px;padding:0 0 20px;display:grid;position:relative}.timeline li:not(:last-child):before{content:"";border-left:2px solid var(--border);position:absolute;top:13px;bottom:0;left:6px}.timeline-dot{background:var(--primary);z-index:1;border-radius:50%;width:14px;height:14px;margin-top:4px}.timeline li div{display:grid}.timeline time{color:var(--muted);font-size:.82rem}.tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:12px;display:flex;overflow:auto}.tabs button{cursor:pointer;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:10px 12px;font-weight:650}.tabs button.active{color:var(--primary);border-color:var(--primary)}.dialog-backdrop{z-index:20;background:#0f172a80;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.dialog{border:1px solid var(--border);background:#fff;border-radius:10px;width:min(760px,100%);max-height:90vh;padding:22px;overflow:auto}.dialog:has(.waudena-import){width:min(960px,100%)}.dialog-head{justify-content:space-between;align-items:center;display:flex}.dialog-head h2{margin:0}.admin-grid{grid-template-columns:2fr 1fr}.admin-grid .span-2{grid-column:auto}.member-list{display:grid}.member{border-bottom:1px solid var(--border);justify-content:space-between;gap:20px;padding:14px 0;display:flex}.member>div:first-child{display:grid}.role-checks{flex-wrap:wrap;display:flex}.auth-layout{background:#fff;grid-template-columns:minmax(330px,.85fr) minmax(480px,1.15fr);min-height:100vh;display:grid}.auth-brand{background:var(--rail);color:#fff;padding:10vw 7vw}.auth-brand h1{margin:26px 0 12px;font-size:3rem}.auth-brand p{color:var(--rail-muted);max-width:420px;font-size:1.1rem}.auth-panel{background:var(--bg);place-items:center;padding:40px;display:grid}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:min(480px,100%);box-shadow:var(--shadow);gap:16px;padding:28px;display:grid}.auth-card header{margin-bottom:4px}.auth-card header h2{margin-bottom:5px;font-size:1.55rem}.auth-card header p{color:var(--muted)}.auth-links{flex-wrap:wrap;justify-content:space-between;gap:14px;display:flex}.public-layout{background:var(--bg);min-height:100vh}.public-header{background:var(--surface);border-bottom:1px solid var(--border);height:56px;padding:0 max(24px,50vw - 500px)}.public-quote{gap:16px;max-width:1000px;margin:auto;padding:32px 24px 72px;display:grid}.public-quote>header{margin-bottom:4px}.public-quote>header h1{margin-bottom:6px}.public-quote>header p{color:var(--muted);margin:0}.public-feedback-anchor{scroll-margin-top:24px}.public-decision{z-index:2;position:sticky;bottom:16px}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--primary);font-size:.72rem;font-weight:750;display:inline-block}.public-total{border-top:2px solid var(--ink);font-variant-numeric:tabular-nums;grid-template-columns:1fr auto;gap:5px;width:min(360px,100%);margin:4px 0 0 auto;padding-top:14px;display:grid}.public-total strong{font-size:1.35rem;font-family:var(--mono)}.public-total small{color:var(--muted);grid-column:1/-1}.response-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 10px 30px #0f172a14, var(--shadow);gap:14px;padding:20px;display:grid}.response-card h2{margin:0}.response-primary{flex-wrap:wrap;gap:8px;display:flex}@media (width<=1100px){.metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.app-shell{display:block}.sidebar{gap:10px;width:100%;height:auto;padding:12px 16px;position:static}.sidebar .brand,.sidebar-account{display:none}.sidebar nav{flex:none;display:flex;overflow:auto}.sidebar nav a{white-space:nowrap}.topbar{min-height:52px;padding:0 16px}.detail-sticky{flex-direction:column;top:52px}.content{padding:18px 16px 40px}.metrics{grid-template-columns:repeat(2,1fr)}.quote-progress,.quote-status-bar.is-declined .quote-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-progress-step:not(:last-child):after{display:none}.detail-grid,.admin-grid,.auth-layout{grid-template-columns:1fr}.auth-brand{padding:30px}.auth-brand h1{margin:14px 0 4px;font-size:2rem}.auth-panel{padding:36px 20px}}@media (width<=600px){.page-header{display:grid}.page-header .actions,.page-header .button{width:100%}.form-grid,.metrics{grid-template-columns:1fr}.card{padding:14px}.table-card{overflow:auto}th,td{min-width:100px;padding:10px 12px}.member{display:grid}.workflow{align-items:stretch;display:grid}.auth-brand{display:none}.auth-links{display:grid}.dialog{padding:18px}.public-decision{position:static}}
