:root{--primary: #5645d4;--primary-pressed: #4534b3;--on-primary: #ffffff;--brand-navy: #0a1530;--brand-navy-deep: #070f24;--brand-navy-mid: #1a2a52;--link-blue: #0075de;--brand-orange: #dd5b00;--brand-pink: #ff64c8;--brand-purple: #7b3ff2;--brand-teal: #2a9d99;--brand-green: #1aae39;--brand-yellow: #f5d75e;--brand-brown: #523410;--tint-peach: #ffe8d4;--tint-rose: #fde0ec;--tint-mint: #d9f3e1;--tint-lavender: #e6e0f5;--tint-sky: #dcecfa;--tint-yellow: #fef7d6;--tint-yellow-bold: #f9e79f;--tint-cream: #f8f5e8;--canvas: #ffffff;--surface: #f6f5f4;--surface-soft: #fafaf9;--hairline: #e5e3df;--hairline-soft: #ede9e4;--hairline-strong: #c8c4be;--ink-deep: #000000;--ink: #1a1a1a;--charcoal: #37352f;--slate: #5d5b54;--steel: #787671;--stone: #a4a097;--muted: #bbb8b1;--success: #1aae39;--warning: #dd5b00;--error: #e03131;color:var(--ink);background:var(--surface);font-family:Notion Sans,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--surface)}button,input,select,textarea{font:inherit}button{border:0;cursor:pointer}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.55}.app-shell{min-height:100vh;padding:12px}h1,h2,h3,p{margin-top:0}h1{margin-bottom:6px;color:#fff;font-size:28px;font-weight:600;letter-spacing:0;line-height:1.1}h2{margin-bottom:10px;color:var(--ink);font-size:18px;font-weight:600;letter-spacing:0;line-height:1.3}h3{margin-bottom:6px;color:var(--charcoal);font-size:15px;font-weight:600;letter-spacing:0;line-height:1.35}.app-header{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;margin-bottom:12px;border-radius:12px;background:var(--brand-navy);padding:18px;color:#fff}.app-header:before,.app-header:after{position:absolute;width:15px;height:15px;border-radius:4px;content:""}.app-header:before{top:18px;right:132px;background:var(--brand-yellow);transform:rotate(10deg)}.app-header:after{right:22px;bottom:18px;background:var(--brand-pink);transform:rotate(-8deg)}.header-copy{position:relative;z-index:1;min-width:0}.user-info{position:relative;z-index:1;grid-column:1 / -1;display:flex;align-items:center;gap:8px;margin-top:-4px;font-size:.78rem;color:#ffffffb3}.user-info .user-name{font-weight:600;color:#fff}.user-info.muted{color:#ffffff80}.auth-error-msg{font-size:.72rem;color:#ffc8c8d9;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-info .ghost-button{padding:2px 10px;border:1px solid rgba(255,255,255,.3);border-radius:6px;color:#fff;font-size:.75rem;background:transparent;cursor:pointer}.user-info .ghost-button:hover{background:#ffffff1a}.app-header p{max-width:560px;margin-bottom:0;color:#d7d4ce;font-size:14px;line-height:1.45}.eyebrow{display:block;margin-bottom:8px;color:#fff;font-size:11px;font-weight:600;letter-spacing:0;line-height:1.4;text-transform:uppercase}.header-mockup{position:relative;z-index:1;display:grid;gap:9px;width:148px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:#fff;padding:12px;box-shadow:#0f0f0f33 0 24px 48px -8px}.mockup-line,.mockup-row span{border-radius:4px;background:var(--hairline)}.mockup-line{width:70%;height:10px}.mockup-line.wide{width:100%}.mockup-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.mockup-row span{height:34px}.mockup-row span:nth-child(1){background:var(--tint-peach)}.mockup-row span:nth-child(2){background:var(--tint-lavender)}.mockup-row span:nth-child(3){background:var(--tint-mint)}.setup-panel,.progress-panel,.section-picker,.results-panel,.detail-panel{min-width:0;border:1px solid var(--hairline);border-radius:12px;background:var(--canvas);padding:16px}.setup-panel{display:grid;gap:14px;margin-bottom:12px}.setup-copy,.setup-actions,.detail-actions{display:flex;flex-wrap:wrap;gap:8px}.setup-copy{align-items:center;justify-content:space-between}.setup-copy p,.panel-heading p{margin-bottom:0;color:var(--steel);font-size:13px;line-height:1.4}.setup-copy h2,.panel-heading h2{margin-bottom:4px}.setup-grid{display:grid;grid-template-columns:minmax(220px,1.35fr) minmax(160px,1fr) minmax(190px,1.15fr) minmax(250px,auto);gap:10px;align-items:end}.setup-grid.billing-setup{grid-template-columns:minmax(220px,1fr) minmax(250px,auto)}.setup-actions{justify-content:flex-end}.comment-mode{display:inline-flex;align-items:center;min-height:28px;border-radius:999px;background:var(--tint-lavender);padding:4px 10px;color:#391c57;font-size:13px;font-weight:600;line-height:1.4}.control-field,.comment-toggle{display:grid;gap:6px}.control-field span,.comment-toggle span{color:var(--steel);font-size:12px;font-weight:500;line-height:1.4}.control-field select{width:100%;min-width:150px;min-height:44px;border:1px solid var(--hairline-strong);border-radius:8px;background:var(--canvas);color:var(--ink);padding:0 12px}.control-field select:focus{outline:2px solid var(--primary);outline-offset:1px}.strength-field select{min-width:0}.comment-toggle{grid-template-columns:18px auto;align-items:center;min-height:44px;border:1px solid var(--hairline-strong);border-radius:8px;background:var(--surface-soft);padding:0 12px}.comment-toggle input{margin:0;accent-color:var(--primary)}.primary-button,.secondary-button,.ghost-button{min-height:40px;border-radius:8px;padding:10px 14px;font-size:14px;font-weight:500;line-height:1.3}.compact-button{min-height:32px;padding:7px 10px;font-size:12px;font-weight:600}.primary-button{background:var(--primary);color:var(--on-primary)}.primary-button:active{background:var(--primary-pressed)}.secondary-button{border:1px solid var(--hairline-strong);background:transparent;color:var(--ink)}.ghost-button{background:transparent;color:var(--ink)}.disclaimer,.error-banner{margin:12px 0;border-radius:8px;padding:10px 12px;font-size:13px;line-height:1.45}.disclaimer{border:1px solid var(--hairline);background:var(--tint-yellow);color:var(--brand-brown)}.disclaimer strong{font-weight:600}.error-banner{border:1px solid rgba(224,49,49,.3);background:#fff3f3;color:var(--error)}.progress-panel{margin:12px 0}.progress-copy{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px;color:var(--charcoal);font-size:13px}.progress-copy span{color:var(--steel);font-weight:600}.progress-track{overflow:hidden;height:10px;border-radius:999px;background:var(--hairline-soft)}.progress-fill{height:100%;border-radius:inherit;background:var(--primary);transition:width .26s ease}.progress-fill-waiting{background-image:linear-gradient(45deg,rgba(255,255,255,.24) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.24) 50%,rgba(255,255,255,.24) 75%,transparent 75%,transparent);background-size:18px 18px;animation:progress-stripes .9s linear infinite}.progress-note{margin:10px 0 0;border:1px solid var(--hairline);border-radius:8px;background:var(--surface-soft);padding:8px 10px;color:var(--slate);font-size:13px;font-weight:500;line-height:1.35}.generation-meter{display:grid;gap:8px;margin-top:10px;border:1px solid var(--hairline);border-radius:8px;background:var(--surface-soft);padding:9px 10px}.generation-meter-copy{display:flex;justify-content:space-between;gap:12px;align-items:center;color:var(--steel);font-size:12px;font-weight:500}.generation-meter-copy strong{color:var(--charcoal);font-size:13px;font-weight:600}.generation-track{overflow:hidden;height:6px;border-radius:999px;background:var(--hairline-soft)}.generation-fill{height:100%;border-radius:inherit;background:var(--brand-teal);transition:width .18s ease}.progress-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:12px 0 0;padding:0;list-style:none}.progress-steps li{min-width:0;color:var(--steel);font-size:12px;font-weight:500;line-height:1.25}.progress-steps li:before{display:block;width:9px;height:9px;margin-bottom:5px;border-radius:3px;background:var(--hairline-strong);content:""}.progress-steps li.active{color:var(--primary);font-weight:600}.progress-steps li.active:before,.progress-steps li.complete:before{background:var(--primary)}.progress-steps li.complete{color:var(--charcoal)}@keyframes progress-stripes{0%{background-position:0 0}to{background-position:36px 0}}.workspace-grid{display:grid;grid-template-columns:minmax(220px,292px) minmax(380px,1fr) minmax(260px,330px);gap:12px;align-items:start}.toggle-list,.result-list,.finding-list,.review-results-stack{display:grid;gap:10px}.scope-header{display:flex;justify-content:space-between;gap:10px;align-items:start}.scope-header h2{margin-bottom:4px}.scope-header p{margin-bottom:0;color:var(--steel);font-size:13px;line-height:1.4}.scope-content{overflow:hidden;max-height:1200px;opacity:1;transition:max-height .22s ease,opacity .18s ease,margin-top .18s ease}.section-picker:not(.scope-collapsed) .scope-content{margin-top:10px}.scope-collapsed .scope-content{max-height:0;margin-top:0;opacity:0;pointer-events:none}.toggle-row{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;align-items:start;border:1px solid var(--hairline);border-radius:12px;background:var(--canvas);padding:11px}.toggle-row:nth-child(3n+1){background:var(--tint-cream)}.toggle-row:nth-child(3n+2){background:var(--surface-soft)}.toggle-row input{margin-top:3px;accent-color:var(--primary)}.toggle-row strong,.toggle-row small{display:block}.toggle-row strong{margin-bottom:4px;color:var(--charcoal);font-size:13px;font-weight:600;line-height:1.35}.toggle-row small{color:var(--slate);font-size:12px;line-height:1.4}.panel-heading,.section-card header{display:flex;justify-content:space-between;gap:12px;align-items:center}.section-header-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;align-items:center}.mode-toggle{display:inline-grid;overflow:hidden;grid-template-columns:1fr 1fr;border:1px solid var(--hairline-strong);border-radius:8px;background:var(--surface-soft)}.mode-toggle button{min-height:30px;background:transparent;padding:5px 9px;color:var(--slate);font-size:12px;font-weight:600;line-height:1.25}.mode-toggle button+button{border-left:1px solid var(--hairline-strong)}.mode-toggle button.selected{background:var(--primary);color:var(--on-primary)}.panel-heading{margin-bottom:12px}.panel-heading>span{border-radius:999px;background:var(--tint-lavender);padding:4px 10px;color:#391c57;font-size:13px;font-weight:600;white-space:nowrap}.review-context{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}.review-context span{border-radius:6px;background:var(--surface);padding:6px 8px;color:var(--steel);font-size:13px;line-height:1.4}.review-context strong{color:var(--charcoal);font-weight:600}.bulk-apply-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin-bottom:12px;border:1px solid rgba(221,91,0,.22);border-radius:12px;background:var(--tint-peach);padding:12px}.bulk-apply-copy h3{margin-bottom:4px;color:var(--ink);font-size:14px}.bulk-apply-copy p{margin-bottom:0;color:#793400;font-size:13px;line-height:1.45}.bulk-apply-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.contract-score-card{display:grid;gap:14px;border-radius:12px;background:var(--tint-yellow-bold);padding:18px;color:var(--charcoal)}.contract-score-main{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:start}.score-badge{display:grid;justify-items:center;min-width:112px;border:1px solid rgba(82,52,16,.14);border-radius:12px;background:#ffffffb8;padding:12px}.score-badge span,.score-badge small{color:var(--slate);font-size:12px;font-weight:600;line-height:1.35}.score-badge strong{color:var(--ink);font-size:44px;font-weight:600;letter-spacing:0;line-height:.95}.score-copy h3{margin-bottom:6px;color:var(--ink);font-size:20px}.score-copy p,.score-impact{margin-bottom:0;color:var(--charcoal);font-size:14px;line-height:1.5}.score-meter{overflow:hidden;height:10px;margin-top:14px;border-radius:999px;background:linear-gradient(90deg,var(--tint-peach) 0%,#ffffff 50%,var(--tint-mint) 100%)}.score-meter-fill{height:100%;border-radius:inherit;background:var(--primary)}.market-counterparty .score-meter-fill{background:var(--brand-orange)}.market-reviewer .score-meter-fill{background:var(--success)}.score-axis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:7px;color:var(--slate);font-size:11px;font-weight:500;line-height:1.25}.score-axis span:nth-child(2){text-align:center}.score-axis span:last-child{text-align:right}.score-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.stat-card{border-radius:8px;padding:10px}.stat-lavender{background:var(--tint-lavender)}.stat-sky{background:var(--tint-sky)}.stat-peach{background:var(--tint-peach)}.stat-mint{background:var(--tint-mint)}.score-stats strong,.score-stats span,.section-card header span:not(.status){display:block}.score-stats strong{color:var(--ink);font-size:18px;font-weight:600;line-height:1;text-transform:capitalize}.score-stats span,.section-card header span:not(.status){margin-top:4px;color:var(--slate);font-size:12px;font-weight:500;line-height:1.35}.section-card{border:1px solid var(--hairline);border-radius:12px;background:var(--canvas);padding:14px}.section-card p{color:var(--slate);font-size:13px;line-height:1.5}.status{display:inline-flex;align-items:center;min-height:24px;border-radius:999px;padding:3px 9px;white-space:nowrap;font-size:13px;font-weight:600;line-height:1.35}.status-pass{background:var(--tint-mint);color:var(--success)}.status-issue{background:var(--tint-peach);color:#793400}.status-missing{background:var(--tint-rose);color:#a02e6d}.status-needs_review{background:var(--tint-sky);color:var(--link-blue)}.finding-item{overflow:hidden;border:1px solid var(--hairline-soft);border-radius:12px;background:var(--surface-soft)}.finding-item.expanded{border-color:var(--primary);background:var(--canvas);box-shadow:#0f0f0f0a 0 1px 2px}.finding-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;width:100%;background:transparent;padding:9px;color:var(--charcoal);text-align:left}.selectable-finding-row{grid-template-columns:18px minmax(0,1fr)}.selectable-finding-row input,.section-bulk-row input{margin:0;accent-color:var(--primary)}.finding-row-button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;width:100%;background:transparent;padding:0;color:var(--charcoal);text-align:left}.billing-group-summary{display:grid;gap:3px}.billing-group-summary strong,.billing-group-summary small,.billing-group-summary span{display:block}.billing-group-summary strong{color:var(--charcoal);font-size:13px;font-weight:600;line-height:1.35}.billing-group-summary small{color:var(--steel);font-size:12px;font-weight:600;line-height:1.35}.billing-group-summary span{color:var(--slate);font-size:13px;line-height:1.4}.section-bulk-row{display:flex;justify-content:flex-end}.section-bulk-row label{display:inline-grid;grid-template-columns:16px auto;gap:7px;align-items:center;border:1px solid var(--hairline);border-radius:8px;background:var(--surface-soft);padding:6px 8px;color:var(--slate);font-size:12px;font-weight:600}.finding-state{color:var(--steel);font-size:12px;font-weight:600;white-space:nowrap}.finding-detail{border-top:1px solid var(--hairline-soft);padding:12px}.finding-detail p{margin-bottom:10px;color:var(--charcoal);font-size:13px;line-height:1.5}.issue-pager{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px;border:1px solid var(--hairline);border-radius:8px;background:var(--surface-soft);padding:8px}.issue-pager span{margin-right:auto;color:var(--charcoal);font-size:12px;font-weight:600;line-height:1.35}.replacement-editor{display:block;width:100%;min-height:110px;resize:vertical;border:1px solid var(--hairline-strong);border-radius:8px;background:var(--canvas);padding:10px;color:var(--charcoal);font:inherit;font-size:13px;line-height:1.45}.replacement-editor:focus{outline:2px solid var(--primary);outline-offset:1px}.field-hint{margin:7px 0 10px;color:var(--steel);font-size:12px;line-height:1.4}.detail-meta{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}.detail-meta span:not(.status){display:inline-flex;align-items:center;min-height:24px;border-radius:6px;background:var(--surface);padding:3px 8px;color:var(--slate);font-size:12px;font-weight:500}.finding-detail label,.detail-panel label{display:block;margin:14px 0 6px;color:var(--steel);font-size:11px;font-weight:600;letter-spacing:0;line-height:1.4;text-transform:uppercase}blockquote{margin:0;border-left:3px solid var(--primary);border-radius:0 8px 8px 0;background:var(--surface);padding:10px;color:var(--charcoal);font-size:13px;line-height:1.5}.active-source-entry{background:#eefaf8;box-shadow:inset 0 0 0 1px #2a9d9929}.apply-feedback{margin:12px 0;border-radius:8px;padding:9px 10px;font-size:13px;font-weight:500;line-height:1.4}.apply-feedback.success,.latest-apply.success{border:1px solid rgba(26,174,57,.22);background:var(--tint-mint);color:#0f6d25}.apply-feedback.warning,.latest-apply.warning{border:1px solid rgba(221,91,0,.22);background:var(--tint-peach);color:#793400}.apply-feedback.error,.latest-apply.error{border:1px solid rgba(224,49,49,.24);background:#fff3f3;color:var(--error)}.billing-summary-card{display:flex;justify-content:space-between;gap:14px;align-items:center;border-radius:12px;background:var(--tint-sky);padding:16px;color:var(--charcoal)}.billing-summary-card h3{margin-bottom:4px;color:var(--ink);font-size:18px}.billing-summary-card p{margin-bottom:0;color:var(--charcoal);font-size:13px;line-height:1.45}.billing-summary-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-width:210px}.billing-summary-stats span{border-radius:8px;background:#ffffffb3;padding:10px;color:var(--slate);font-size:12px;font-weight:500;line-height:1.3}.billing-summary-stats strong{display:block;margin-bottom:3px;color:var(--ink);font-size:22px;line-height:1}.recommendation-list{margin-top:10px}.consolidation-source-list,.consolidation-choice-list{display:grid;gap:8px}.consolidation-source-entry{transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}.consolidation-source-entry span{display:block;margin-bottom:4px;color:var(--steel);font-size:11px;font-weight:600;line-height:1.4;text-transform:uppercase}.consolidation-source-entry.delete-highlight{border-left-color:var(--error);background:#fff3f3;box-shadow:inset 0 0 0 1px #e031312e}.consolidation-source-entry.combine-highlight{border-left-color:var(--brand-teal);background:#eefaf8;box-shadow:inset 0 0 0 1px #2a9d9929}.consolidation-choice-option{display:grid;grid-template-columns:16px minmax(0,1fr);gap:9px;align-items:start;border:1px solid var(--hairline);border-radius:8px;background:var(--canvas);padding:9px;cursor:pointer;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}.consolidation-choice-option:hover,.consolidation-choice-option.selected{border-color:var(--primary);background:var(--surface-soft);box-shadow:#0f0f0f0a 0 1px 2px}.consolidation-choice-option.delete-option:hover,.consolidation-choice-option.delete-option.selected{border-color:#e031315c;background:#fff3f3}.consolidation-choice-option input{margin:2px 0 0;accent-color:var(--primary)}.consolidation-choice-option.delete-option input{accent-color:var(--error)}.consolidation-choice-option strong,.consolidation-choice-option small{display:block}.consolidation-choice-option strong{margin-bottom:3px;color:var(--charcoal);font-size:13px;font-weight:600;line-height:1.35}.consolidation-choice-option small{color:var(--slate);font-size:12px;line-height:1.4}.warning-hint{color:#793400}.apply-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.apply-summary-grid div{border-radius:12px;background:var(--surface);padding:11px}.apply-summary-grid strong,.apply-summary-grid span{display:block}.apply-summary-grid strong{margin-bottom:3px;color:var(--ink);font-size:24px;font-weight:600;line-height:1}.apply-summary-grid span{color:var(--steel);font-size:12px;font-weight:500}.latest-apply{border-radius:12px;padding:12px}.latest-apply strong,.latest-apply span{display:block}.latest-apply span{margin-top:4px;font-size:12px;font-weight:600}.latest-apply p{margin:8px 0 0;font-size:13px;line-height:1.45}.empty-state{border:1px dashed var(--hairline-strong);border-radius:12px;background:var(--surface-soft);padding:24px;color:var(--steel);text-align:center}.empty-state.compact{padding:14px;font-size:13px}.review-log{margin-top:18px;border-top:1px solid var(--hairline);padding-top:14px}.review-log pre{overflow:auto;white-space:pre-wrap;border:1px solid var(--hairline);border-radius:8px;background:var(--surface-soft);padding:10px;color:var(--charcoal);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.45}@media(max-width:1050px){.setup-grid{grid-template-columns:1fr 1fr}.setup-grid.billing-setup{grid-template-columns:1fr}.setup-actions{grid-column:1 / -1}.workspace-grid{grid-template-columns:1fr}}@media(max-width:680px){.app-shell{padding:10px}.app-header{align-items:stretch;grid-template-columns:1fr}.setup-copy{align-items:stretch;flex-direction:column}.header-mockup{width:100%}.setup-grid{grid-template-columns:1fr 1fr}.control-field,.comment-toggle,.control-field select,.strength-field select{min-width:0}.setup-actions,.setup-actions .primary-button,.comment-toggle{grid-column:1 / -1}.setup-actions{display:grid;grid-template-columns:1fr 1fr}.setup-actions .primary-button{width:100%}.contract-score-main,.score-stats,.billing-summary-card,.bulk-apply-card,.billing-summary-stats{grid-template-columns:1fr}.billing-summary-card,.bulk-apply-actions{display:grid}.score-badge{justify-items:start}.progress-steps{grid-template-columns:1fr}}
