:root{color-scheme:dark;--bg: #060608;--bg-elevated: rgba(255, 255, 255, .022);--surface: rgba(255, 255, 255, .022);--surface-hover: rgba(255, 255, 255, .034);--border: rgba(255, 255, 255, .06);--border-strong: rgba(255, 255, 255, .12);--purple: #9745d4;--teal: #2ebfa5;--amber: #f59e0b;--red: #ef4444;--text: #ffffff;--text-2: #bbbbbb;--text-muted: #747474;--gradient: linear-gradient(135deg, #9745d4, #2ebfa5);--shadow: 0 18px 70px rgba(0, 0, 0, .32)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(ellipse at 80% -10%,rgba(151,69,212,.12),transparent 42%),radial-gradient(ellipse at -10% 88%,rgba(46,191,165,.09),transparent 46%),linear-gradient(180deg,rgba(255,255,255,.012),transparent 34%),var(--bg);color:var(--text);font-family:Montserrat,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}.app-shell{position:relative;z-index:0;isolation:isolate;min-height:100vh;display:grid;grid-template-columns:270px minmax(0,1fr);transition:grid-template-columns .22s cubic-bezier(.4,0,.2,1)}.app-shell.sidebar-collapsed{grid-template-columns:74px minmax(0,1fr)}.ambient-layer{position:fixed;top:-22%;right:-22%;bottom:-22%;left:-22%;z-index:0;pointer-events:none;opacity:.2;background:radial-gradient(ellipse at 72% 22%,rgba(151,69,212,.095),transparent 36%),radial-gradient(ellipse at 22% 68%,rgba(46,191,165,.07),transparent 40%);filter:blur(110px);animation:ambient-drift 21600s ease-in-out infinite alternate}.texture-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.88' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.sidebar{position:relative;z-index:10;min-height:100vh;padding:24px 18px;border-right:1px solid var(--border);background:#060608bd;-webkit-backdrop-filter:blur(34px) saturate(1.35);backdrop-filter:blur(34px) saturate(1.35);transition:padding .22s cubic-bezier(.4,0,.2,1),background .22s cubic-bezier(.4,0,.2,1)}.sidebar-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:26px}.brand-mark{display:inline-flex;flex-direction:column;line-height:1;min-width:100px;transition:max-width .22s cubic-bezier(.4,0,.2,1),opacity .16s ease}.brand-top{font-size:15px;font-weight:900;letter-spacing:.14em;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.brand-bottom{margin-top:4px;color:#555;font-size:8.5px;font-weight:500;letter-spacing:.24em}.sidebar-toggle{position:relative;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--border);border-radius:8px;background:#ffffff09;color:var(--text-2);transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}.sidebar-toggle:hover,.sidebar-toggle:focus-visible{border-color:#2ebfa557;background:#2ebfa513;color:var(--text)}.primary-nav{display:grid;gap:6px}.nav-item{width:100%;position:relative;display:flex;align-items:center;gap:10px;padding:10px 11px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text-2);font-size:13px;font-weight:700;text-align:left;transition:.16s ease}.nav-item:hover,.nav-item.active{color:var(--text);border-color:#2ebfa547;background:#2ebfa50e}.nav-item.active svg{color:var(--teal)}.nav-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-shell.sidebar-collapsed .sidebar{padding:20px 10px}.app-shell.sidebar-collapsed .sidebar-header{justify-content:center;margin-bottom:22px}.app-shell.sidebar-collapsed .brand-mark{max-width:0;min-width:0;opacity:0;overflow:hidden;pointer-events:none}.app-shell.sidebar-collapsed .sidebar-toggle{width:42px}.app-shell.sidebar-collapsed .primary-nav{justify-items:center}.app-shell.sidebar-collapsed .nav-item{justify-content:center;width:46px;min-height:42px;padding:10px}.app-shell.sidebar-collapsed .nav-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.app-shell.sidebar-collapsed .nav-item:after{content:attr(data-label);position:absolute;left:calc(100% + 10px);top:50%;z-index:30;min-width:max-content;max-width:210px;padding:7px 9px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#0a0a0deb;box-shadow:0 14px 38px #00000057;color:var(--text);font-size:11px;font-weight:800;opacity:0;pointer-events:none;transform:translate3d(-4px,-50%,0);transition:opacity .14s ease,transform .14s ease}.app-shell.sidebar-collapsed .nav-item:hover:after,.app-shell.sidebar-collapsed .nav-item:focus-visible:after{opacity:1;transform:translate3d(0,-50%,0)}.main-pane{position:relative;z-index:5;min-width:0}.topbar{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 28px;border-bottom:1px solid var(--border);background:#060608a3;-webkit-backdrop-filter:blur(26px) saturate(1.25);backdrop-filter:blur(26px) saturate(1.25)}.topbar h1{margin:0;font-size:18px;font-weight:850}.topbar p{margin:4px 0 0;color:var(--text-2);font-size:12px}.bridge-badge,.status-chip{display:inline-flex;align-items:center;min-height:26px;padding:5px 9px;border-radius:999px;border:1px solid var(--border);color:var(--text-2);background:#ffffff09;font-size:11px;font-weight:800;white-space:nowrap}.status-chip.active{border-color:#2ebfa552;color:var(--teal);background:#2ebfa514}.route-view{padding:28px;animation:fade-up .32s ease both}.route-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}.route-phase{margin:0 0 8px;color:var(--teal);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.route-header h1{margin:0;font-size:30px;line-height:1.12}.route-header p{max-width:760px;margin:9px 0 0;color:var(--text-2);font-size:14px;line-height:1.55}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.panel,.owner-column,.bridge-column{min-width:0;position:relative;overflow:hidden;padding:18px;border:1px solid transparent;border-radius:8px;background:linear-gradient(var(--surface),var(--surface)) padding-box,linear-gradient(135deg,#ffffff0e,#ffffff07) border-box;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(40px) saturate(1.45);backdrop-filter:blur(40px) saturate(1.45);transition:background .26s cubic-bezier(.4,0,.2,1),box-shadow .26s cubic-bezier(.4,0,.2,1),transform .26s cubic-bezier(.4,0,.2,1)}.panel:after,.owner-column:after,.bridge-column:after{content:"";position:absolute;top:-70px;right:-70px;width:170px;height:170px;pointer-events:none;opacity:.5;background:radial-gradient(circle,rgba(46,191,165,.045),transparent 62%);z-index:0}.panel>*,.owner-column>*,.bridge-column>*{position:relative;z-index:1}.panel:hover,.owner-column:hover,.bridge-column:hover{background:linear-gradient(var(--surface-hover),var(--surface-hover)) padding-box,linear-gradient(135deg,#9745d447,#9745d44d 22%,#2ebfa529 38%,#9745d438 52%,#2ebfa547,#9745d433) border-box;background-size:auto,240% 240%;animation:border-sweep 6s cubic-bezier(.4,0,.2,1) infinite alternate;box-shadow:0 18px 70px #0000005c,0 0 46px #2ebfa50b;transform:translateY(-2px)}.panel.wide{grid-column:1 / -1}.panel h2{margin:0 0 10px;font-size:13px;font-weight:850;letter-spacing:.02em;text-transform:uppercase}.panel p,.clean-list{color:var(--text-2);font-size:13px;line-height:1.58}.panel p{margin:0}.clean-list{margin:0;padding-left:18px}.clean-list li+li{margin-top:7px}.flow-row{display:flex;gap:8px;flex-wrap:wrap}.flow-row span,.flow-stack span{display:inline-flex;align-items:center;min-height:30px;padding:6px 10px;border-radius:8px;border:1px solid rgba(46,191,165,.22);background:#2ebfa50e;color:var(--text);font-size:12px;font-weight:750}.workspace-row{margin-top:16px;width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#ffffff07;color:var(--text);text-align:left;transition:border-color .16s ease,background .16s ease,transform .16s ease}.workspace-row-main{width:100%;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer}.workspace-row:hover,.workspace-row.active{border-color:#2ebfa56b;background:#2ebfa513;transform:translateY(-1px)}.workspace-row-main strong,.workspace-row-main span{display:block}.workspace-row-main span{margin-top:4px;color:var(--text-muted);font-size:12px}.workspace-row-main .status-chip{display:inline-flex;margin-top:0;color:var(--text-2);font-size:11px}.workspace-row-main .status-chip.active{color:var(--teal)}.workspace-row-actions{display:flex;justify-content:flex-end;gap:8px}.workspace-row-actions .icon-action{width:auto;padding:0 10px;gap:6px;font-size:11px;font-weight:800}.workspace-row-actions .icon-action span{margin:0;color:inherit}.workspace-list{display:grid;gap:10px}.workspace-list .workspace-row{margin-top:0}.workspace-create-row{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:12px;align-items:end;margin-top:16px}.workspace-create-row label{display:grid;gap:7px;color:var(--text-muted);font-size:12px;font-weight:750}.activity-route{display:grid;gap:14px}.activity-panel{padding:0}.activity-timeline{display:grid;gap:10px;padding:14px}.activity-event-card{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:14px;padding:14px;border:1px solid var(--border);border-radius:8px;background:#ffffff06}.activity-event-card:hover{border-color:#2ebfa540;background:#ffffff09}.activity-event-main{min-width:0}.activity-event-main h3{margin:10px 0 7px;color:var(--text);font-size:13px;line-height:1.25}.activity-event-main p{margin:0;color:var(--text-2);font-size:12px;line-height:1.45}.activity-event-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}.activity-event-meta div{min-width:0;padding:10px;border:1px solid rgba(255,255,255,.045);border-radius:8px;background:#ffffff06}.activity-event-meta dt{margin-bottom:6px;color:var(--text-muted);font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.activity-event-meta dd{margin:0;color:var(--text-2);font-size:11px;line-height:1.45;overflow-wrap:anywhere}.system-map{display:grid;grid-template-columns:minmax(0,1fr) 290px minmax(0,1fr);gap:14px}.owner-column h2,.bridge-column h2{margin:0 0 12px;font-size:13px;text-transform:uppercase}.flow-stack{display:grid;gap:9px}.muted-line{margin-top:14px!important;color:var(--text-muted)!important}.panel-title-row{display:flex;align-items:center;gap:9px;margin-bottom:10px}.panel-title-row h2{margin:0}.auth-panel svg{color:var(--teal)}.env-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.env-list code{padding:5px 7px;border:1px solid var(--border);border-radius:6px;color:var(--text);background:#ffffff0a;font-size:11px}.auth-form{display:grid;gap:10px}.auth-form label{display:grid;gap:6px;color:var(--text-2);font-size:12px;font-weight:800}.auth-form input{min-height:38px;border:1px solid var(--border);border-radius:8px;padding:8px 10px;background:#ffffff0a;color:var(--text)}.primary-action,.secondary-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;border-radius:8px;border:1px solid transparent;padding:8px 12px;color:var(--text);font-size:13px;font-weight:850}.primary-action{background:var(--gradient)}.secondary-action{border-color:var(--border);background:#ffffff0b}.error-text{color:var(--red)!important}.catalog-route{display:grid;gap:14px}.catalog-status-panel{display:flex;align-items:center;justify-content:space-between;gap:18px}.catalog-source-meta{min-width:230px;padding:11px 12px;border:1px solid rgba(46,191,165,.18);border-radius:8px;background:#2ebfa50b}.catalog-source-meta span,.catalog-metric span,.catalog-metric small{display:block;color:var(--text-muted);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.catalog-source-meta strong{display:block;margin-top:5px;color:var(--text);font-size:12px}.catalog-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.catalog-import-panel{padding:0}.catalog-import-panel summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;color:var(--text);cursor:pointer;list-style:none}.catalog-import-panel summary::-webkit-details-marker{display:none}.catalog-import-panel summary span{color:var(--teal);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.catalog-import-panel summary strong{color:var(--text-2);font-size:12px;font-weight:750}.catalog-import-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,.6fr);gap:14px;padding:0 16px 16px}.catalog-import-field{display:grid;gap:7px}.catalog-import-field span{color:var(--text-muted);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.catalog-import-field textarea{width:100%;resize:vertical;min-height:118px;border:1px solid var(--border);border-radius:8px;padding:10px;background:#ffffff0a;color:var(--text);font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;outline:none}.catalog-import-field textarea:focus{border-color:#2ebfa561;box-shadow:0 0 0 3px #2ebfa511}.catalog-import-actions{display:grid;align-content:start;gap:10px}.catalog-import-actions p{color:var(--text-muted);font-size:11px;line-height:1.55}.file-import-control{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:38px;border:1px solid var(--border);border-radius:8px;padding:8px 12px;color:var(--text);background:#ffffff0b;font-size:13px;font-weight:850;overflow:hidden;cursor:pointer}.file-import-control:hover{border-color:#2ebfa552;background:#2ebfa511}.file-import-control input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.catalog-import-error{margin:0 16px 16px;padding:10px 12px;border:1px solid rgba(239,68,68,.28);border-radius:8px;color:#ff9a9a;background:#ef444414;font-size:12px;font-weight:700}.context-route{display:grid;gap:14px}.context-layout,.context-review-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);gap:14px}.context-review-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.context-import-card textarea{width:100%;min-height:270px;margin-top:14px;resize:vertical;border:1px solid var(--border);border-radius:8px;padding:12px;background:#ffffff0a;color:var(--text);font:12px/1.52 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;outline:none}.context-import-card textarea:focus{border-color:#2ebfa561;box-shadow:0 0 0 3px #2ebfa511}.context-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.context-error-list,.context-warning-list{display:grid;gap:6px;margin-top:12px;padding:10px 12px;border-radius:8px;font-size:12px;font-weight:700}.context-error-list{border:1px solid rgba(239,68,68,.28);color:#ff9a9a;background:#ef444414}.context-warning-list{border:1px solid rgba(245,158,11,.28);color:#ffd28a;background:#f59e0b14}.context-error-list p,.context-warning-list p{margin:0}.context-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.context-stat{min-width:0;padding:10px;border:1px solid var(--border);border-radius:8px;background:#ffffff08}.context-stat span,.context-kv-list dt,.fact-row small{display:block;color:var(--text-muted);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.context-stat strong{display:block;min-width:0;overflow:hidden;margin-top:6px;color:var(--text);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.context-kv-list{display:grid;gap:8px;margin:0}.context-kv-list dd{margin:3px 0 9px;color:var(--text-2);font-size:12px;line-height:1.55}.fact-list{display:grid;gap:8px;max-height:470px;overflow:auto}.fact-row{display:flex;justify-content:space-between;gap:12px;padding:11px;border:1px solid rgba(255,255,255,.055);border-radius:8px;background:#ffffff07}.fact-row strong,.fact-row span{display:block}.fact-row strong{color:var(--text);font-size:12px}.fact-row span{margin-top:4px;color:var(--text-2);font-size:12px;line-height:1.45}.fact-row small{margin-top:6px}.fact-badges{display:flex;flex:0 0 auto;flex-direction:column;align-items:flex-end;gap:6px}.catalog-metric{min-height:116px}.catalog-metric strong{display:block;margin-top:10px;font-size:25px;line-height:1}.catalog-metric small{margin-top:10px;color:var(--text-2);letter-spacing:.02em;text-transform:none}.catalog-panel{padding:0}.catalog-view-switcher{display:inline-flex;width:fit-content;gap:4px;margin:14px 14px 0;padding:4px;border:1px solid var(--border);border-radius:10px;background:#ffffff08}.view-mode-button{display:inline-flex;align-items:center;gap:7px;min-height:32px;border:0;border-radius:8px;padding:7px 10px;background:transparent;color:var(--text-muted);font-size:11px;font-weight:900}.view-mode-button.active{color:var(--text);background:#ffffff12;box-shadow:inset 0 0 0 1px #ffffff0e}.catalog-toolbar{display:grid;grid-template-columns:minmax(240px,1.5fr) repeat(3,minmax(150px,1fr));gap:10px;padding:14px;border-bottom:1px solid var(--border)}.activity-toolbar{display:grid;grid-template-columns:minmax(260px,1.5fr) repeat(2,minmax(170px,.75fr));gap:10px;padding:14px;border-bottom:1px solid var(--border)}.activity-toolbar label{display:grid;gap:7px;color:var(--text-muted);font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.activity-toolbar label:first-child{position:relative}.activity-toolbar label:first-child svg{position:absolute;left:10px;bottom:12px;color:var(--text-muted)}.activity-toolbar label:first-child input{padding-left:32px}.catalog-input{min-height:38px;width:100%;border:1px solid var(--border);border-radius:8px;padding:8px 10px;background:#ffffff0a;color:var(--text);outline:none}.catalog-input:focus{border-color:#2ebfa561;box-shadow:0 0 0 3px #2ebfa511}.catalog-input option{background:#101014;color:var(--text)}.catalog-table-wrap{overflow-x:auto}.catalog-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:14px}.catalog-module-card{display:grid;gap:14px;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:14px;background:radial-gradient(circle at 86% 8%,rgba(151,69,212,.08),transparent 32%),#ffffff06}.module-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.module-card-header span{display:block;color:var(--teal);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.module-card-header h2{margin:4px 0 0;color:var(--text);font-size:18px;line-height:1.1}.module-card-header strong{flex:0 0 auto;color:var(--text-muted);font-size:11px;font-weight:900}.module-card-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.module-card-stats .catalog-detail-stat{min-height:74px;padding:10px}.module-card-stats .catalog-detail-stat strong{font-size:12px;line-height:1.25}.module-package-template{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid rgba(46,191,165,.16);border-radius:10px;padding:10px;background:linear-gradient(135deg,#9745d40f,#2ebfa50d),#ffffff06}.module-package-template span,.module-package-template strong,.module-package-template small{display:block}.module-package-template span{color:var(--teal);font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.module-package-template strong{margin-top:3px;color:var(--text);font-size:13px;line-height:1.2}.module-package-template small{margin-top:4px;color:var(--text-muted);font-size:11px;font-weight:750}.module-card-taxonomy{display:flex;flex-wrap:wrap;gap:6px}.module-card-taxonomy span{display:inline-flex;width:fit-content;border:1px solid rgba(151,69,212,.2);border-radius:999px;padding:4px 7px;background:#9745d40f;color:#c98dff;font-size:10px;font-weight:850}.module-item-list{display:grid;gap:8px}.module-item-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid rgba(255,255,255,.05);border-radius:10px;padding:10px;background:#ffffff07}.module-item-row strong,.module-item-row span{display:block}.module-item-row strong{color:var(--text);font-size:12px;line-height:1.3}.module-item-row span{margin-top:4px;color:var(--text-muted);font-size:11px}.module-item-actions{display:flex;align-items:center;gap:7px}.secondary-action.added{opacity:.68}.catalog-portfolio-empty{margin:14px}.catalog-table{width:100%;min-width:1140px;border-collapse:collapse}.catalog-table th,.catalog-table td{padding:11px 12px;border-bottom:1px solid rgba(255,255,255,.055);color:var(--text-2);font-size:12px;text-align:left;vertical-align:top}.catalog-table th{color:var(--text-muted);font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}.catalog-table tbody tr{transition:background .16s ease}.catalog-table tbody tr:hover{background:#ffffff07}.catalog-table td strong{display:block;color:var(--text);font-size:12px;line-height:1.35}.catalog-table td span{display:block;margin-top:4px;max-width:310px;color:var(--text-muted);line-height:1.45}.catalog-table .numeric{text-align:right;white-space:nowrap}.sort-button{display:inline-flex;border:0;padding:0;background:transparent;color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;text-transform:inherit}.sort-button.active{color:var(--teal)}.catalog-badge,.margin-pill{display:inline-flex!important;width:fit-content;align-items:center;min-height:22px;padding:4px 7px;border-radius:999px;border:1px solid var(--border);font-size:10px!important;font-weight:850;line-height:1}.catalog-badge.active,.catalog-badge.one_time,.catalog-badge.accepted,.catalog-badge.approved{border-color:#2ebfa53d;color:var(--teal)!important;background:#2ebfa513}.catalog-badge.draft,.catalog-badge.pending,.catalog-badge.reviewed{border-color:#f59e0b47;color:var(--amber)!important;background:#f59e0b14}.catalog-badge.inactive,.catalog-badge.rejected{color:var(--text-muted)!important;background:#ffffff08}.catalog-badge.recurring{border-color:#9745d44d;color:#c98dff!important;background:#9745d414}.margin-pill.high{border-color:#2ebfa547;color:var(--teal)!important;background:#2ebfa513}.margin-pill.mid{border-color:#f59e0b42;color:var(--amber)!important;background:#f59e0b13}.margin-pill.low{border-color:#ef444447;color:var(--red)!important;background:#ef444413}.internal-value{color:#cfcfcf!important}.catalog-detail-drawer{position:sticky;bottom:14px;z-index:5;display:grid;gap:14px;border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:16px;background:linear-gradient(145deg,#15151af0,#0b0c0ff5),var(--noise);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.catalog-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.catalog-detail-header span{color:var(--teal);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.catalog-detail-header h2{margin:5px 0 6px;color:var(--text);font-size:22px;letter-spacing:0}.catalog-detail-header p{max-width:860px;margin:0;color:var(--text-2);font-size:13px;line-height:1.55}.catalog-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.catalog-detail-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.catalog-detail-stat{min-width:0;border:1px solid rgba(255,255,255,.065);border-radius:8px;padding:11px;background:#ffffff08}.catalog-detail-stat span,.catalog-detail-section h3{display:block;color:var(--text-muted);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.catalog-detail-stat strong{display:block;overflow:hidden;margin-top:6px;color:var(--text);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.catalog-detail-section{display:grid;gap:10px}.catalog-detail-section h3{margin:0}.catalog-detail-tags{display:flex;flex-wrap:wrap;gap:8px}.catalog-detail-tags span{display:inline-flex;align-items:center;min-height:24px;border:1px solid rgba(46,191,165,.2);border-radius:999px;padding:4px 8px;color:var(--text-2);background:#2ebfa50e;font-size:11px;font-weight:800}.recommendation-route,.ai-drafting-route,.offer-route,.ai-boundary-panel{display:grid;gap:14px}.ai-boundary-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ai-boundary-check{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:flex-start;border:1px solid rgba(255,255,255,.055);border-radius:8px;padding:12px;background:#ffffff07}.ai-boundary-check svg{color:var(--teal)}.ai-boundary-check strong,.ai-boundary-check span{display:block}.ai-boundary-check strong{color:var(--text);font-size:13px}.ai-boundary-check span{margin-top:4px;color:var(--text-muted);font-size:11px;line-height:1.45}.ai-action-row{display:flex;flex-wrap:wrap;gap:8px}.ai-request-preview{display:grid;gap:8px}.ai-request-preview span{color:var(--text-muted);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.ai-request-preview textarea{width:100%;border:1px solid var(--border);border-radius:8px;padding:13px;color:var(--text-2);background:#ffffff09;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.55;resize:vertical}.recommendation-command-panel,.offer-panel-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.recommendation-command-panel p,.offer-panel-header p{max-width:760px}.offer-panel-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;justify-content:flex-end}.recommendation-list{display:grid;gap:14px}.manual-recommendation-panel{padding:0}.manual-recommendation-panel summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;color:var(--text);cursor:pointer;list-style:none}.manual-recommendation-panel summary::-webkit-details-marker{display:none}.manual-recommendation-panel summary span{color:var(--teal);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.manual-recommendation-panel summary strong{color:var(--text-2);font-size:12px;font-weight:750}.manual-recommendation-grid{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(220px,1.4fr) minmax(100px,.55fr) minmax(160px,1fr) minmax(120px,.75fr) minmax(115px,.65fr) minmax(100px,.55fr) minmax(100px,.55fr) auto;gap:10px;align-items:end;padding:0 16px 16px}.manual-recommendation-grid label,.recommendation-edit-grid label{display:grid;gap:7px}.manual-recommendation-grid span,.recommendation-edit-grid span{color:var(--text-muted);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.manual-recommendation-grid input,.manual-recommendation-grid select,.manual-recommendation-grid textarea,.recommendation-edit-grid input,.recommendation-edit-grid textarea{width:100%;min-height:38px;border:1px solid var(--border);border-radius:8px;padding:8px 10px;color:var(--text);background:#ffffff0a;outline:none}.manual-recommendation-grid textarea,.recommendation-edit-grid textarea{resize:vertical}.recommendation-card{display:grid;gap:14px}.recommendation-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px}.recommendation-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:7px}.recommendation-title-row h2{margin:0}.recommendation-edit-grid{display:grid;grid-template-columns:minmax(180px,1fr) minmax(96px,.35fr);gap:10px;margin-top:12px}.recommendation-rationale-field{grid-column:1 / -1}.recommendation-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.recommendation-meta span{min-height:24px;padding:5px 8px;border:1px solid var(--border);border-radius:999px;color:var(--text-muted);background:#ffffff08;font-size:10px;font-weight:850;text-transform:uppercase}.recommendation-actions{display:flex;align-items:flex-start;gap:8px}.compact-action{min-height:34px;padding:7px 10px;font-size:12px}.proposed-items{display:grid;gap:8px;padding-top:12px;border-top:1px solid var(--border)}.proposed-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid rgba(255,255,255,.055);border-radius:8px;background:#ffffff07}.proposed-item strong,.proposed-item span{display:block}.proposed-item span{margin-top:4px;color:var(--text-muted);font-size:11px;font-weight:750}.offer-summary-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:14px}.offer-panel{padding:0}.offer-panel-header{padding:16px 18px;border-bottom:1px solid var(--border)}.empty-state{padding:36px 18px;color:var(--text-2)}.empty-state h3{margin:0 0 8px;color:var(--text);font-size:15px}.offer-table-wrap{overflow:auto}.offer-table{width:100%;border-collapse:collapse;min-width:940px}.offer-table th,.offer-table td{padding:12px 14px;border-bottom:1px solid var(--border);color:var(--text-2);font-size:12px;text-align:left;vertical-align:top}.offer-table th{color:var(--text-muted);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.offer-table td strong,.offer-table td span{display:block}.offer-table td strong{color:var(--text);font-size:12px}.offer-table td span{margin-top:4px;color:var(--text-muted);font-size:11px}.offer-state-controls{display:grid;gap:7px}.line-edit-input{width:104px;min-height:32px;border:1px solid var(--border);border-radius:8px;padding:6px 8px;background:#ffffff0a;color:var(--text);font-size:12px;outline:none}.line-edit-input.narrow{width:68px}.line-edit-input:focus{border-color:#2ebfa561;box-shadow:0 0 0 3px #2ebfa511}.margin-alert-panel{display:grid;grid-template-columns:minmax(0,1fr) 160px;gap:14px;align-items:start}.margin-alert-panel.active{border-color:#f59e0b3d}.margin-floor-control{display:grid;gap:7px}.margin-floor-control span{color:var(--text-muted);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.margin-floor-control input{width:100%;min-height:38px;border:1px solid var(--border);border-radius:8px;padding:8px 10px;background:#ffffff0a;color:var(--text);outline:none}.margin-alert-list,.margin-clear{grid-column:1 / -1}.margin-alert-list{display:grid;gap:8px}.margin-alert{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid rgba(245,158,11,.24);border-radius:8px;color:#ffd28a;background:#f59e0b14;font-size:12px;font-weight:750}.margin-clear{margin:0;color:var(--text-muted);font-size:12px}.offer-state-controls label,.custom-line-checkbox{display:inline-flex;align-items:center;gap:7px;color:var(--text-2);font-size:11px;font-weight:750}.icon-action{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border);border-radius:8px;color:var(--text-2);background:#ffffff0a}.icon-action:hover{border-color:#2ebfa54d;color:var(--text);background:#2ebfa511}.icon-action.danger:hover{border-color:#ef44444d;color:#ff9a9a;background:#ef444414}.catalog-add-panel,.custom-line-panel,.package-builder-panel{padding:0}.catalog-add-panel summary,.custom-line-panel summary,.package-builder-panel summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;color:var(--text);cursor:pointer;list-style:none}.catalog-add-panel summary::-webkit-details-marker,.custom-line-panel summary::-webkit-details-marker,.package-builder-panel summary::-webkit-details-marker{display:none}.catalog-add-panel summary span,.custom-line-panel summary span,.package-builder-panel summary span{color:var(--teal);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.catalog-add-panel summary strong,.custom-line-panel summary strong,.package-builder-panel summary strong{color:var(--text-2);font-size:12px;font-weight:750}.catalog-add-toolbar{display:flex;align-items:center;gap:10px;margin:0 16px 12px;min-height:38px;border:1px solid var(--border);border-radius:8px;padding:0 10px;color:var(--text-muted);background:#ffffff09}.catalog-add-toolbar input{width:100%;min-height:36px;border:0;background:transparent;color:var(--text);outline:none}.catalog-add-list{display:grid;gap:8px;padding:0 16px 16px}.catalog-add-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid rgba(255,255,255,.055);border-radius:8px;background:#ffffff07}.catalog-add-row strong,.catalog-add-row span{display:block}.catalog-add-row span{margin-top:4px;color:var(--text-muted);font-size:11px;font-weight:750}.custom-line-grid{display:grid;grid-template-columns:minmax(180px,1.5fr) minmax(130px,1fr) minmax(120px,.8fr) repeat(3,minmax(92px,.7fr)) minmax(92px,.55fr) auto;gap:10px;align-items:end;padding:0 16px 16px}.custom-line-grid label{display:grid;gap:7px}.custom-line-grid label span{color:var(--text-muted);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.custom-line-grid .custom-line-checkbox{display:inline-flex;gap:7px;align-items:center;min-height:38px}.custom-line-grid input,.custom-line-grid select{width:100%;min-height:38px;border:1px solid var(--border);border-radius:8px;padding:8px 10px;background:#ffffff0a;color:var(--text);outline:none}.package-builder-grid{display:grid;grid-template-columns:minmax(260px,.4fr) minmax(0,1fr);gap:14px;padding:0 16px 16px}.package-builder-form{display:grid;align-content:start;gap:10px}.package-builder-form label{display:grid;gap:7px}.package-builder-form span{color:var(--text-muted);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.package-builder-form input{width:100%;min-height:38px;border:1px solid var(--border);border-radius:8px;padding:8px 10px;background:#ffffff0a;color:var(--text);outline:none}.package-message{margin:0;color:var(--teal)!important;font-size:12px!important;font-weight:800}.package-component-list{display:grid;gap:8px}.package-component-list p{margin:0;color:var(--text-muted);font-size:12px}.package-component-row{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid rgba(255,255,255,.055);border-radius:8px;background:#ffffff07}.package-component-row input{margin-top:3px}.package-component-row span,.package-component-row strong,.package-component-row small{display:block}.package-component-row strong{color:var(--text);font-size:12px}.package-component-row small{margin-top:4px;color:var(--text-muted);font-size:11px;font-weight:750}.pricing-input-panel{padding:0}.pricing-input-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:16px}.adjustment-card{min-width:0;display:grid;align-content:start;gap:12px;padding:14px;border:1px solid rgba(255,255,255,.055);border-radius:8px;background:#ffffff07}.adjustment-card h3{margin:0;color:var(--text);font-size:13px;font-weight:850;text-transform:uppercase}.adjustment-form{display:grid;grid-template-columns:minmax(130px,1fr) minmax(92px,.72fr) minmax(84px,.65fr);gap:9px}.adjustment-form .primary-action{grid-column:1 / -1}.adjustment-form label,.split-input{display:grid;gap:7px}.adjustment-form span,.split-input span{color:var(--text-muted);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.adjustment-form input,.adjustment-form select,.split-input input{width:100%;min-height:36px;border:1px solid var(--border);border-radius:8px;padding:8px 10px;background:#ffffff0a;color:var(--text);outline:none}.adjustment-list,.payment-schedule-list{display:grid;gap:8px}.adjustment-list p{margin:0;color:var(--text-muted);font-size:12px}.adjustment-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:10px;border:1px solid rgba(255,255,255,.05);border-radius:8px;background:#ffffff06}.payment-schedule-list .adjustment-row{grid-template-columns:minmax(0,1fr) auto}.adjustment-row strong,.adjustment-row span{display:block}.adjustment-row strong{color:var(--text);font-size:12px}.adjustment-row span{margin-top:3px;color:var(--text-muted);font-size:11px}.proposal-route{display:grid;gap:14px}.proposal-workspace-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:14px}.proposal-header-panel,.proposal-notes-panel,.proposal-preview-panel,.proposal-section-preview-panel,.proposal-sections-panel{padding:0}.compact-header{align-items:flex-start}.proposal-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px 18px 18px}.proposal-field{display:grid;gap:7px}.proposal-field span,.proposal-note-field>span,.proposal-summary-stat span{color:var(--text-muted);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.proposal-field input,.proposal-field select,.proposal-note-field textarea{width:100%;min-height:38px;border:1px solid var(--border);border-radius:8px;padding:8px 10px;background:#ffffff0a;color:var(--text);outline:none}.proposal-field input:focus,.proposal-field select:focus,.proposal-note-field textarea:focus{border-color:#2ebfa561;box-shadow:0 0 0 3px #2ebfa511}.proposal-icon-title{display:flex;align-items:center;gap:9px;margin-bottom:10px}.proposal-icon-title svg{color:var(--teal)}.proposal-icon-title h2{margin:0}.proposal-safety-panel p{margin-bottom:14px}.proposal-safety-stats,.proposal-summary-stack{display:grid;gap:9px}.proposal-summary-stat{min-width:0;padding:11px;border:1px solid rgba(255,255,255,.055);border-radius:8px;background:#ffffff07}.proposal-summary-stat strong,.proposal-summary-stat small{display:block}.proposal-summary-stat strong{margin-top:7px;color:var(--text);font-size:16px}.proposal-summary-stat small{margin-top:4px;color:var(--text-muted);font-size:11px}.proposal-note-header{padding:16px 18px 0}.proposal-note-header h2{margin-bottom:10px}.proposal-notes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px 18px 18px}.proposal-note-field{display:grid;gap:8px}.proposal-note-field>span{display:flex;align-items:center;justify-content:space-between;gap:10px}.proposal-note-field textarea{min-height:150px;resize:vertical;font-size:13px;line-height:1.52}.proposal-note-field.internal textarea{border-color:#ffffff13}.proposal-preview-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:14px;padding:16px 18px 18px}.client-preview-card,.internal-preview-card{min-width:0;display:grid;align-content:start;gap:12px;padding:14px;border:1px solid rgba(255,255,255,.055);border-radius:8px;background:#ffffff07}.client-preview-card h3,.internal-preview-card h3{margin:0;color:var(--text);font-size:17px;line-height:1.25}.client-preview-card p,.internal-preview-card p,.client-preview-card blockquote{margin:0;color:var(--text-2);font-size:13px;line-height:1.55}.client-preview-card blockquote{padding:11px 12px;border-left:2px solid rgba(46,191,165,.42);border-radius:0 8px 8px 0;background:#2ebfa50b}.client-preview-lines{display:grid;gap:8px}.preview-line{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 11px;border:1px solid rgba(255,255,255,.05);border-radius:8px;background:#ffffff06}.preview-line strong,.preview-line span{display:block}.preview-line strong{color:var(--text);font-size:12px}.preview-line span{margin-top:4px;color:var(--text-muted);font-size:11px}.section-safety-strip{display:flex;align-items:center;gap:9px;margin:0 18px 16px;padding:10px 12px;border:1px solid rgba(46,191,165,.2);border-radius:8px;color:var(--teal);background:#2ebfa50b;font-size:12px}.section-safety-strip.warning{align-items:flex-start;border-color:#ef44444d;color:#ff9a9a;background:#ef444414}.section-safety-strip div{display:grid;gap:4px}.proposal-section-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 18px 18px}.proposal-section-card{min-width:0;display:grid;gap:12px;padding:14px;border:1px solid rgba(255,255,255,.055);border-radius:8px;background:#ffffff07}.proposal-section-card.internal{border-color:#ffffff13}.proposal-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.proposal-section-head h3{margin:0 0 8px;color:var(--text);font-size:14px;line-height:1.25}.proposal-section-card textarea{width:100%;min-height:150px;resize:vertical;border:1px solid var(--border);border-radius:8px;padding:10px;background:#ffffff0a;color:var(--text);font-size:13px;line-height:1.55;outline:none}.proposal-section-card textarea:focus{border-color:#2ebfa561;box-shadow:0 0 0 3px #2ebfa511}.proposal-section-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.section-issue-text{margin:0;color:#ff9a9a;font-size:12px;font-weight:750}.proposal-rendered-sections{display:grid;gap:12px;padding:16px 18px 18px}.rendered-section{padding:14px;border:1px solid rgba(255,255,255,.055);border-radius:8px;background:#ffffff07}.rendered-section h3{margin:0 0 8px;color:var(--text);font-size:14px}.rendered-section p{white-space:pre-line}.snapshots-route{display:grid;gap:14px}.snapshot-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.snapshot-stat-panel{display:grid;gap:7px;min-height:126px}.snapshot-stat-panel svg{color:var(--teal)}.snapshot-stat-panel span{color:var(--text-muted);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.snapshot-stat-panel strong{color:var(--text);font-size:21px;line-height:1.12}.snapshot-stat-panel small{color:var(--text-muted);font-size:11px;line-height:1.4}.snapshot-readiness-panel{padding:0}.snapshot-status{margin-top:16px}.snapshot-status.ready{color:var(--teal)}.snapshot-readiness-list{display:grid;gap:10px;padding:0 18px 18px}.snapshot-readiness-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:start;padding:13px 14px;border:1px solid rgba(255,255,255,.055);border-radius:8px;background:#ffffff07}.snapshot-readiness-row.ready{border-color:#2ebfa529;background:#2ebfa509}.snapshot-readiness-row.blocked{border-color:#ef444433;background:#ef44440b}.snapshot-readiness-icon{display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(255,255,255,.075);border-radius:8px;color:var(--text-muted);background:#ffffff09}.snapshot-readiness-row.ready .snapshot-readiness-icon{color:var(--teal)}.snapshot-readiness-row.blocked .snapshot-readiness-icon{color:#ff9a9a}.snapshot-readiness-row h3{margin:0;color:var(--text);font-size:13px;line-height:1.25}.snapshot-readiness-row p{margin:5px 0 0;color:var(--text-2);font-size:12px;line-height:1.45}.snapshot-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.snapshot-boundary-panel{min-height:240px}.snapshot-payload-stack{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.snapshot-payload-stack span{padding:7px 9px;border:1px solid rgba(46,191,165,.14);border-radius:999px;color:var(--text-2);background:#2ebfa50a;font-size:11px;font-weight:800}.snapshot-history-list{display:grid;gap:8px;margin-top:14px}.snapshot-history-row{width:100%;display:grid;gap:5px;border:1px solid rgba(255,255,255,.055);border-radius:8px;padding:11px 12px;color:var(--text-2);background:#ffffff07;text-align:left;cursor:pointer}.snapshot-history-row.active,.snapshot-history-row:hover{border-color:#2ebfa52e;background:#2ebfa50a}.snapshot-history-row span{color:var(--text-muted);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.snapshot-history-row strong{color:var(--text);font-size:13px}.snapshot-history-row small{color:var(--text-muted);font-size:11px}.snapshot-json-panel{padding:0}.snapshot-json-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.snapshot-json-preview{width:calc(100% - 36px);min-height:360px;margin:16px 18px 10px;border:1px solid var(--border);border-radius:8px;padding:14px;color:var(--text-2);background:#ffffff09;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.55;resize:vertical;outline:none}.snapshot-download-name{margin:0 18px 18px;color:var(--text-muted);font-size:11px;font-weight:800}.proposal-output-route,.client-approval-route{display:grid;gap:14px}.client-approval-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:14px;align-items:start}.client-approval-document{max-width:none;margin:0}.client-portal-shell{position:relative;z-index:0;isolation:isolate;min-height:100vh;padding:28px}.client-portal-pane{position:relative;z-index:5;max-width:1240px;margin:0 auto}.client-portal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}.client-portal-header h1{margin:0;font-size:30px;line-height:1.12}.client-portal-header p:last-child{max-width:720px;margin:9px 0 0;color:var(--text-2);font-size:14px;line-height:1.55}.client-portal-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:14px;align-items:start}.client-portal-decision-panel,.client-decision-panel{position:sticky;top:18px;display:grid;gap:14px}.client-status-card{display:grid;gap:6px;border:1px solid rgba(255,255,255,.055);border-radius:8px;padding:12px;background:#ffffff07}.client-status-card span,.client-status-card small,.client-decision-field{color:var(--text-muted);font-size:11px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.client-status-card strong{color:var(--text);font-size:20px}.portal-access-card{gap:10px}.portal-link-input{color:var(--teal);font-size:11px;overflow:hidden;text-overflow:ellipsis}.client-decision-field{display:grid;gap:7px}.client-decision-notes{min-height:118px;resize:vertical;text-transform:none;letter-spacing:0;line-height:1.5}.client-decision-actions{display:grid;grid-template-columns:1fr;gap:8px}.contract-handoff-route{display:grid;gap:14px}.contract-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.contract-handoff-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);gap:14px;align-items:start}.contract-readiness-panel,.contract-provider-panel{display:grid;gap:14px}.contract-provider-list{display:grid;gap:10px}.contract-provider-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;align-items:center;padding:13px;border:1px solid var(--border);border-radius:8px;background:#ffffff07}.contract-provider-card:hover{border-color:#2ebfa542;background:#ffffff09}.contract-provider-card.likely{border-color:#9745d43d;background:linear-gradient(135deg,#9745d413,#2ebfa509)}.contract-provider-card strong{color:var(--text);font-size:13px}.contract-provider-card span{color:var(--amber);font-size:11px;font-weight:850;text-transform:uppercase}.contract-provider-card small{grid-column:1 / -1;color:var(--text-muted);font-size:11px}.contract-provider-card p{grid-column:1 / -1;margin:0;color:var(--text-secondary);font-size:11px;line-height:1.45}.contract-docusign-panel,.contract-settings-panel{display:grid;gap:14px}.contract-settings-grid{padding:0}.contract-settings-summary{display:flex;flex-wrap:wrap;gap:8px}.contract-settings-summary span{min-height:24px;padding:5px 8px;border:1px solid var(--border);border-radius:999px;color:var(--text-muted);background:#ffffff08;font-size:10px;font-weight:850;text-transform:uppercase}.contract-clauses-panel{display:grid;gap:14px}.contract-clauses-status{margin:0}.contract-template-library{display:grid;gap:12px;padding:14px;border:1px solid rgba(255,255,255,.075);border-radius:10px;background:linear-gradient(135deg,#a78bfa14,#2dd4bf0b),#ffffff05}.contract-template-library-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.contract-template-library-head h3{margin:0;color:var(--text);font-size:14px}.contract-template-library-head p,.contract-template-message{margin:4px 0 0;color:var(--text-muted);font-size:12px;line-height:1.45}.contract-template-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.contract-template-option{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:flex-start;min-height:74px;padding:11px;border:1px solid rgba(255,255,255,.075);border-radius:8px;background:#ffffff07}.contract-template-option input,.contract-template-facing-toggle input{margin-top:2px;accent-color:var(--teal)}.contract-template-option span{display:grid;gap:5px}.contract-template-option strong{color:var(--text);font-size:12px}.contract-template-option small{color:var(--text-muted);font-size:10px;font-weight:800;line-height:1.35;text-transform:uppercase}.contract-custom-template-form{display:grid;grid-template-columns:minmax(160px,1fr) minmax(160px,.8fr);gap:10px;align-items:end}.contract-custom-template-body{grid-column:1 / -1}.contract-custom-template-body textarea{min-height:92px;resize:vertical}.contract-template-facing-toggle{display:inline-flex;align-items:center;gap:8px;min-height:34px;color:var(--text-muted);font-size:11px;font-weight:850;text-transform:uppercase}.contract-clause-list{display:grid;gap:12px}.contract-clause-card{display:grid;gap:12px;padding:14px;border:1px solid var(--border);border-radius:8px;background:#ffffff06}.contract-clause-card.internal{border-color:#f59e0b2e;background:#f59e0b09}.contract-clause-card textarea{width:100%;min-height:132px;resize:vertical}.contract-document-panel{display:grid;gap:14px}.contract-document-status{margin:0}.contract-document-shell{display:grid;gap:14px;border:1px solid rgba(255,255,255,.075);border-radius:12px;padding:18px;background:linear-gradient(145deg,#ffffff0b,#ffffff05)}.contract-document-cover{display:grid;gap:8px;padding-bottom:14px;border-bottom:1px solid var(--border)}.contract-document-cover span{color:var(--teal);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.contract-document-cover h3{margin:0;color:var(--text);font-size:clamp(22px,3vw,34px);line-height:1.05}.contract-document-cover p{margin:0;color:var(--text-secondary);font-size:13px;font-weight:750}.contract-document-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.contract-document-meta-card{display:grid;gap:6px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#ffffff07}.contract-document-meta-card span{color:var(--text-muted);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.contract-document-meta-card strong{color:var(--text);font-size:14px;overflow-wrap:anywhere}.contract-document-meta-card small{color:var(--text-secondary);font-size:11px;overflow-wrap:anywhere}.contract-document-block{display:grid;gap:10px}.contract-document-block h3{margin:0;color:var(--text);font-size:14px}.contract-document-lines,.contract-document-sections{display:grid;gap:8px}.contract-document-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--border);border-radius:8px;background:#ffffff06}.contract-document-line strong,.contract-document-line span{display:block}.contract-document-line strong{color:var(--text);font-size:13px}.contract-document-line span,.contract-document-line small{color:var(--text-secondary);font-size:11px;line-height:1.4}.contract-document-section{padding:12px;border:1px solid var(--border);border-radius:8px;background:#ffffff05}.contract-document-section h4{margin:0 0 6px;color:var(--text);font-size:13px}.contract-document-section p{margin:0;color:var(--text-secondary);font-size:12px;line-height:1.55}.contract-document-export-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-top:2px}.contract-document-export-header h3{margin:0;color:var(--text);font-size:15px}.contract-document-export-header p{margin:6px 0 0;color:var(--text-secondary);font-size:12px;line-height:1.45}.contract-document-json-preview{min-height:280px}.contract-docusign-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,.8fr) minmax(0,.75fr);gap:14px}.contract-docusign-grid .snapshot-stat-panel strong{overflow-wrap:anywhere;font-size:14px}.contract-action-row{display:flex;flex-wrap:wrap;gap:10px;padding:0 18px}.contract-prepare-action{justify-self:start}.contract-server-status{align-items:center;margin:0 18px 18px}.contract-history-panel,.contract-preflight-panel{display:grid;gap:14px}.contract-preflight-status{margin:0}.contract-preflight-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.contract-preflight-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:start;padding:13px 14px;border:1px solid var(--border);border-radius:8px;background:#ffffff07}.contract-preflight-row.ready{border-color:#2ebfa529;background:#2ebfa509}.contract-preflight-row.warning{border-color:#f59e0b33;background:#f59e0b0b}.contract-preflight-row.blocked{border-color:#ef444433;background:#ef44440b}.contract-preflight-row.ready .snapshot-readiness-icon{color:var(--teal)}.contract-preflight-row.warning .snapshot-readiness-icon{color:var(--amber)}.contract-preflight-row.blocked .snapshot-readiness-icon{color:#ff9a9a}.contract-preflight-row h3{margin:0;color:var(--text);font-size:13px;line-height:1.25}.contract-preflight-row p{margin:5px 0 0;color:var(--text-2);font-size:12px;line-height:1.45}.contract-preflight-row span{color:var(--text-muted);font-size:10px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.contract-history-status{margin:0}.contract-history-list,.contract-event-list{display:grid;gap:10px}.contract-history-row,.contract-event-row,.contract-history-empty{border:1px solid var(--border);border-radius:8px;background:#ffffff07}.contract-history-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 14px}.contract-history-row:hover,.contract-event-row:hover{border-color:#2ebfa52e;background:#ffffff09}.contract-history-row strong{color:var(--text);font-size:13px}.contract-history-row p{margin:5px 0 0;color:var(--text-muted);font-size:11px;line-height:1.45}.contract-event-row{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;justify-content:space-between;padding:10px 12px}.contract-event-row span{color:var(--teal);font-size:11px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.contract-event-row small{color:var(--text-muted);font-size:11px}.contract-history-empty{padding:14px}.contract-history-empty strong{color:var(--text);font-size:13px}.contract-history-empty p{margin:6px 0 0;color:var(--text-2);font-size:12px;line-height:1.5}.danger-action{border-color:#ef444447;color:#ffc7c7;background:#ef444412}.proposal-output-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.proposal-presentation-panel{width:min(1040px,100%);margin:0 auto;border:1px solid rgba(255,255,255,.07);border-radius:8px;padding:12px;background:linear-gradient(135deg,#ffffff12,#ffffff06),#090b128f;-webkit-backdrop-filter:blur(28px) saturate(1.35);backdrop-filter:blur(28px) saturate(1.35);box-shadow:0 18px 70px #00000038}.proposal-presentation-status,.slide-controls{display:flex;align-items:center;justify-content:space-between;gap:12px}.proposal-presentation-status{padding:2px 2px 10px}.proposal-presentation-status div,.slide-controls strong{display:grid;gap:3px}.proposal-presentation-status span,.slide-controls strong span{color:var(--text-muted);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.proposal-presentation-status strong,.slide-controls strong{color:var(--text);font-size:14px}.presentation-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.presentation-check{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:flex-start;border:1px solid rgba(255,255,255,.055);border-radius:8px;padding:10px;background:#ffffff07}.presentation-check.ready svg{color:var(--teal)}.presentation-check.warning{border-color:#ffb26333;background:#ffb2630f}.presentation-check.warning svg{color:#ffb263}.presentation-check strong,.presentation-check span{display:block}.presentation-check strong{overflow-wrap:anywhere;color:var(--text);font-size:12px}.presentation-check span{margin-top:2px;color:var(--text-muted);font-size:11px;line-height:1.35}.presentation-warning-list{display:grid;gap:6px;margin-top:8px;border:1px solid rgba(255,178,99,.16);border-radius:8px;padding:8px 10px;background:#ffb2630e}.presentation-warning-list p{margin:0;color:#ffd3a0;font-size:12px;line-height:1.45}.proposal-section-nav{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.section-nav-button{min-height:34px;display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.055);border-radius:8px;padding:7px 9px;color:var(--text-muted);background:#ffffff07;font:inherit;font-size:11px;font-weight:800;cursor:pointer;transition:border-color .16s ease,color .16s ease,background .16s ease,transform .16s ease}.section-nav-button:hover,.section-nav-button.active{border-color:#2ebfa547;color:var(--text);background:#2ebfa514}.section-nav-button:hover{transform:translateY(-1px)}.slide-controls{margin-top:10px;border-top:1px solid rgba(255,255,255,.055);padding-top:10px}.slide-controls strong{justify-items:center;text-align:center}.slide-controls.active strong{color:var(--teal)}.proposal-document{display:grid;gap:18px;max-width:1040px;margin:0 auto;border:1px solid rgba(255,255,255,.075);border-radius:8px;padding:28px;color:var(--text);background:linear-gradient(145deg,#ffffff0e,#ffffff05),#ffffff06;-webkit-backdrop-filter:blur(36px) saturate(1.35);backdrop-filter:blur(36px) saturate(1.35);box-shadow:0 26px 100px #00000047}.proposal-cover{min-height:360px;display:grid;align-content:end;gap:16px;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:28px;background:radial-gradient(ellipse at 88% 10%,rgba(151,69,212,.15),transparent 46%),radial-gradient(ellipse at 12% 86%,rgba(46,191,165,.12),transparent 42%),#ffffff07}.proposal-cover,.proposal-investment-summary,.proposal-line-items,.proposal-document-section{scroll-margin-top:150px}.proposal-cover-meta{display:flex;gap:8px;flex-wrap:wrap}.proposal-cover-meta span,.proposal-cover-kicker,.proposal-summary-card span,.proposal-document-section-head span{color:var(--text-muted);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.proposal-cover-meta span{padding:7px 9px;border:1px solid rgba(255,255,255,.06);border-radius:999px;background:#ffffff08}.proposal-cover-kicker{margin:28px 0 0;color:var(--teal)}.proposal-cover h2{max-width:760px;margin:0;color:var(--text);font-size:clamp(42px,7vw,76px);line-height:.96}.proposal-cover p:not(.proposal-cover-kicker){max-width:620px;margin:0;color:var(--text-2);font-size:16px;line-height:1.6}.proposal-investment-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.proposal-summary-card{min-width:0;display:grid;gap:7px;border:1px solid rgba(255,255,255,.055);border-radius:8px;padding:14px;background:#ffffff07}.proposal-summary-card strong{color:var(--text);font-size:24px;line-height:1.12}.proposal-summary-card small{color:var(--text-muted);font-size:11px;line-height:1.4}.proposal-line-items,.proposal-document-sections{display:grid;gap:12px}.active-preview-section{outline:1px solid rgba(46,191,165,.38);box-shadow:0 0 0 4px #2ebfa50e,0 18px 60px #2ebfa50d}.proposal-document-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.proposal-document-section-head h3,.proposal-document-section h3{margin:0;color:var(--text);font-size:17px}.proposal-line-item,.proposal-document-section{border:1px solid rgba(255,255,255,.055);border-radius:8px;padding:15px;background:#ffffff07}.proposal-line-item{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.proposal-line-item strong,.proposal-line-item span{display:block}.proposal-line-item strong{color:var(--text)}.proposal-line-item span{margin-top:5px;color:var(--text-muted);font-size:12px;line-height:1.45}.proposal-document-section p{margin:10px 0 0;color:var(--text-2);font-size:14px;line-height:1.68;white-space:pre-line}.app-shell:has(.proposal-output-route.presentation-mode){grid-template-columns:1fr}.app-shell:has(.proposal-output-route.presentation-mode) .sidebar,.app-shell:has(.proposal-output-route.presentation-mode) .topbar{display:none}.app-shell:has(.proposal-output-route.presentation-mode) .main-pane{min-height:100vh;padding:18px}.proposal-output-route.presentation-mode .route-header.presentation-toolbar{position:sticky;top:12px;z-index:12;justify-content:flex-end;min-height:0;margin-bottom:-8px;border-color:transparent;padding:0;background:transparent}.proposal-output-route.presentation-mode .route-header.presentation-toolbar>div:first-child,.proposal-output-route.presentation-mode .section-safety-strip.presentation-toolbar{display:none}.proposal-output-route.presentation-mode .proposal-document{min-height:calc(100vh - 64px);max-width:min(1280px,calc(100vw - 36px))}.proposal-output-route.presentation-mode .proposal-presentation-panel{position:sticky;top:12px;z-index:11;width:min(1280px,calc(100vw - 36px));padding:10px 12px}.proposal-output-route.presentation-mode .presentation-check-grid,.proposal-output-route.presentation-mode .presentation-warning-list,.proposal-output-route.presentation-mode .proposal-section-nav{display:none}.proposal-output-route.presentation-mode .proposal-presentation-status{padding-bottom:8px}.proposal-output-route.presentation-mode .slide-controls{margin-top:0;padding-top:8px}.proposal-output-route.presentation-mode .proposal-cover{min-height:min(64vh,680px)}@media (max-width: 880px){.presentation-check-grid,.proposal-investment-summary,.client-approval-layout,.contract-summary-grid,.contract-document-meta,.contract-handoff-layout,.contract-docusign-grid,.contract-preflight-list,.contract-template-library-head,.contract-custom-template-form{grid-template-columns:1fr}.contract-template-library-head,.contract-document-export-header{align-items:stretch;flex-direction:column}.client-portal-layout{grid-template-columns:1fr}.client-decision-panel,.client-portal-decision-panel{position:relative;top:auto}.slide-controls{align-items:stretch;flex-direction:column}.slide-controls strong{order:-1}}@media print{body{background:#fff}.sidebar,.topbar,.ambient-layer,.texture-layer,.proposal-presentation-panel,.presentation-toolbar,.route-header{display:none!important}.app-shell,.main-pane{display:block;padding:0}.proposal-document{max-width:none;margin:0;border:0;border-radius:0;box-shadow:none;color:#111;background:#fff}.proposal-cover,.proposal-investment-summary,.proposal-line-items,.proposal-document-section{break-inside:avoid;page-break-inside:avoid}.proposal-cover,.proposal-summary-card,.proposal-line-item,.proposal-document-section{border-color:#ddd;color:#111;background:#fff}.proposal-cover h2,.proposal-summary-card strong,.proposal-line-item strong,.proposal-document-section h3{color:#111}.proposal-cover p,.proposal-line-item span,.proposal-document-section p,.proposal-summary-card small{color:#333}.contract-handoff-route>.section-safety-strip,.contract-summary-grid,.contract-handoff-layout,.contract-settings-panel,.contract-docusign-panel,.contract-preflight-panel,.contract-history-panel,.contract-handoff-route>.snapshot-json-panel,.contract-document-status,.contract-document-export-header,.contract-document-json-preview,.contract-document-panel>.snapshot-download-name{display:none!important}.contract-document-panel,.contract-document-shell{border:0;border-radius:0;box-shadow:none;color:#111;background:#fff}.contract-document-panel,.contract-document-shell{padding:0}.contract-document-cover,.contract-document-meta-card,.contract-document-line,.contract-document-section{break-inside:avoid;border-color:#ddd;color:#111;background:#fff}.contract-document-cover h3,.contract-document-meta-card strong,.contract-document-line strong,.contract-document-block h3,.contract-document-section h4{color:#111}.contract-document-cover p,.contract-document-line span,.contract-document-line small,.contract-document-section p,.contract-document-meta-card small{color:#333}}@keyframes ambient-drift{0%{transform:translate3d(-.004%,-.003%,0) scale(1)}to{transform:translate3d(.004%,.003%,0) scale(1.00008)}}@keyframes border-sweep{0%{background-position:0 0,0% 100%}to{background-position:0 0,100% 0%}}@keyframes fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 900px){.app-shell,.app-shell.sidebar-collapsed{grid-template-columns:1fr}.sidebar{min-height:auto;border-right:0;border-bottom:1px solid var(--border)}.sidebar-header{align-items:center}.primary-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell.sidebar-collapsed .sidebar{padding:16px 14px}.app-shell.sidebar-collapsed .sidebar-header{justify-content:space-between}.app-shell.sidebar-collapsed .brand-mark{max-width:none;min-width:100px;opacity:1}.app-shell.sidebar-collapsed .primary-nav{grid-template-columns:repeat(5,minmax(42px,1fr))}.app-shell.sidebar-collapsed .nav-item{width:100%}.app-shell.sidebar-collapsed .nav-item:after{display:none}.topbar,.route-header,.workspace-row{align-items:flex-start;flex-direction:column}.workspace-row{grid-template-columns:1fr}.workspace-row-main{align-items:flex-start;flex-direction:column}.workspace-row-actions{width:100%;flex-wrap:wrap;justify-content:flex-start}.dashboard-grid,.system-map,.catalog-metrics,.offer-summary-grid,.activity-toolbar,.activity-event-card,.activity-event-meta,.ai-boundary-checks,.catalog-toolbar,.catalog-module-grid,.module-card-stats,.catalog-import-grid,.catalog-detail-grid,.catalog-detail-grid.compact,.manual-recommendation-grid,.recommendation-edit-grid,.pricing-input-grid,.adjustment-form,.custom-line-grid,.package-builder-grid,.context-layout,.context-review-grid,.proposal-workspace-grid,.proposal-field-grid,.proposal-notes-grid,.proposal-preview-grid,.proposal-section-list,.proposal-investment-summary,.snapshot-summary-grid,.snapshot-detail-grid{grid-template-columns:1fr}.catalog-import-panel summary{align-items:flex-start;flex-direction:column}.recommendation-command-panel,.recommendation-main,.manual-recommendation-panel summary,.offer-panel-header,.offer-panel-actions,.margin-alert-panel,.catalog-add-panel summary,.custom-line-panel summary,.package-builder-panel summary{align-items:flex-start;grid-template-columns:1fr;flex-direction:column}.catalog-add-row{align-items:flex-start;flex-direction:column}.module-item-row{grid-template-columns:1fr}.module-item-actions,.recommendation-actions{width:100%}.recommendation-actions .compact-action{flex:1}.bridge-badge{white-space:normal}.catalog-status-panel{align-items:flex-start;flex-direction:column}.catalog-source-meta{min-width:0;width:100%}}@media (prefers-reduced-motion: reduce){.ambient-layer,.panel:hover,.owner-column:hover,.bridge-column:hover,.route-view{animation:none}}
