:root{--bg:#f4f5f1;--paper:#fff;--ink:#13201c;--muted:#6c7772;--line:#dde2dd;--accent:#bc8f2a;--accent2:#0d5d4f;--soft:#eef2ed;--danger:#a5473e;--shadow:0 18px 55px rgba(20,34,29,.08);--workspace-text:16px;font-family:"DM Sans",Arial,sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0;background:linear-gradient(135deg,#f7f7f2 0%,#eef2ed 100%);min-height:100vh;font-size:var(--workspace-text)}.page-shell{min-height:100vh}.topbar{height:78px;background:rgba(255,255,255,.92);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 34px;position:sticky;top:0;z-index:20;backdrop-filter:blur(14px)}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--ink)}.brand strong{display:block;font-size:18px;letter-spacing:-.3px}.brand small{display:block;font:600 9px/1.4 "IBM Plex Mono",monospace;letter-spacing:1.2px;color:var(--muted)}.brand-mark{width:32px;height:32px;display:grid;grid-template-columns:repeat(3,1fr);align-items:end;gap:3px;padding:5px;background:var(--ink);border-radius:8px}.brand-mark i{display:block;background:#fff;border-radius:2px}.brand-mark i:nth-child(1){height:9px}.brand-mark i:nth-child(2){height:17px}.brand-mark i:nth-child(3){height:13px}.top-actions{display:flex;align-items:center;gap:14px}.autosave{font:500 11px "IBM Plex Mono",monospace;color:var(--muted);display:flex;align-items:center;gap:7px}.autosave i{width:7px;height:7px;border-radius:50%;background:#57a36d}.ghost-btn,.secondary-btn,.primary-btn,.text-btn{font:600 14px "DM Sans",sans-serif;cursor:pointer;border:0}.ghost-btn{background:transparent;color:var(--muted);padding:9px 12px}.ghost-btn:hover{color:var(--ink)}.workspace{display:grid;grid-template-columns:360px minmax(0,1fr);max-width:1680px;margin:0 auto;min-height:calc(100vh - 78px)}.progress-panel{border-right:1px solid var(--line);padding:44px 32px;background:rgba(248,249,245,.72);position:sticky;top:78px;height:calc(100vh - 78px);overflow:auto}.progress-head h2{font-size:27px;line-height:1.15;letter-spacing:-.9px;margin:8px 0 12px}.progress-head p{color:var(--muted);font-size:14.5px;line-height:1.65;margin:0}.eyebrow{font:600 10.5px "IBM Plex Mono",monospace;letter-spacing:1.1px;text-transform:uppercase;color:var(--accent2)}.steps{list-style:none;padding:0;margin:34px 0 30px;display:grid;gap:8px}.steps li{display:flex;gap:13px;padding:14px 15px;border-radius:12px;color:#8a938f;transition:.2s;min-width:0}.steps li.available{cursor:pointer}.steps li>span{font:600 11px "IBM Plex Mono",monospace;padding-top:3px;flex:0 0 auto}.steps li div{min-width:0}.steps li strong{display:block;font-size:15px;line-height:1.3}.steps li small{display:block;font-size:12px;line-height:1.35;margin-top:3px}.steps li.active{background:#fff;color:var(--ink);box-shadow:0 8px 26px rgba(20,34,29,.06)}.steps li.complete{color:var(--accent2)}.progress-metric{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;display:flex;gap:14px;align-items:center}.progress-ring{--p:0;width:62px;height:62px;border-radius:50%;background:conic-gradient(var(--accent2) calc(var(--p)*1%),#dfe4df 0);display:grid;place-items:center;position:relative;flex:0 0 auto}.progress-ring:after{content:"";position:absolute;inset:5px;border-radius:50%;background:#f5f6f2}.progress-ring span{z-index:1;font:600 11px "IBM Plex Mono",monospace}.progress-metric strong{display:block;font-size:14px}.progress-metric small{display:block;color:var(--muted);font-size:11.5px;line-height:1.45;margin-top:4px}.future-stack{margin-top:24px}.future-stack>span{font:600 9px "IBM Plex Mono",monospace;color:#9aa29e;text-transform:uppercase;letter-spacing:1px}.future-stack p{margin:10px 0;color:#7d8883;font-size:12px}.content{padding:42px 54px 90px;max-width:1320px;width:100%;min-width:0}.process-map{background:rgba(255,255,255,.82);border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:0 10px 36px rgba(20,34,29,.045);margin-bottom:34px;overflow:hidden}.process-map-head{display:flex;gap:12px;align-items:baseline;padding:2px 4px 13px}.process-map-head strong{font-size:14px}.process-map-head small{color:var(--muted);font-size:11px;margin-left:auto}.process-track{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.process-stage{border:1px solid transparent;background:var(--soft);color:#7d8883;border-radius:11px;padding:12px 10px;text-align:left;min-width:0;cursor:not-allowed;transition:.2s;font-family:"DM Sans",sans-serif}.process-stage span{display:block;font:600 9px "IBM Plex Mono",monospace;color:#8b9691;margin-bottom:6px}.process-stage strong{display:block;font-size:12.5px;line-height:1.22;color:inherit}.process-stage small{display:block;font-size:10.5px;line-height:1.3;margin-top:3px;color:inherit;opacity:.82}.process-stage.available{cursor:pointer;background:#f7f9f6;color:#51605a;border-color:#e0e5e1}.process-stage.available:hover{border-color:#a8c2b7;transform:translateY(-1px)}.process-stage.complete{color:var(--accent2);background:#edf5f1}.process-stage.active{background:var(--ink);color:#fff;border-color:var(--ink);box-shadow:0 8px 20px rgba(19,32,28,.14)}.process-stage.active span{color:#b7c7c1}.step-view{display:none}.step-view.active{display:block}.hero-copy{max-width:850px;margin-bottom:35px}.hero-copy.compact{margin-bottom:28px}.hero-copy h1{font-size:50px;line-height:1.03;letter-spacing:-2.2px;margin:10px 0 16px}.hero-copy p{font-size:17px;color:var(--muted);line-height:1.7;max-width:800px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:26px;box-shadow:0 10px 35px rgba(20,34,29,.035);min-width:0}.source-panel{margin-bottom:16px}.panel-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:20px}.panel-head>div{display:flex;gap:13px;min-width:0}.panel-number{font:600 10px "IBM Plex Mono",monospace;background:var(--soft);color:var(--accent2);width:30px;height:30px;border-radius:8px;display:grid;place-items:center;flex:0 0 auto}.panel h3,.panel-head h3{margin:0;font-size:18px}.panel-head p{margin:4px 0 0;color:var(--muted);font-size:13.5px;line-height:1.45}.required-pill,.optional-pill{font:600 9px "IBM Plex Mono",monospace;padding:5px 8px;border-radius:999px;background:#f3eee2;color:#8a6a25}.optional-pill{background:var(--soft);color:var(--muted)}.field-label{display:block;font-size:13px;font-weight:600;margin:0 0 7px}.url-row{display:flex;align-items:center;border:1px solid #cfd6d1;background:#fafbf8;border-radius:10px;overflow:hidden}.url-row span{padding:13px 0 13px 14px;color:#87918c;font-size:15px}.url-row input{border:0;background:transparent;outline:0;font:500 16px "DM Sans",sans-serif;flex:1;padding:13px 14px 13px 3px;color:var(--ink);min-width:0}textarea,input{font:500 15px/1.5 "DM Sans",sans-serif;color:var(--ink)}textarea{width:100%;border:1px solid #cfd6d1;background:#fafbf8;border-radius:10px;padding:13px 14px;resize:vertical;outline:none}textarea:focus,.url-row:focus-within{border-color:#8daca2;box-shadow:0 0 0 3px rgba(13,93,79,.08)}.field-help,.privacy-note{font-size:12px;color:#8c9691;line-height:1.5;margin:8px 0 0}.upload-zone{border:1.5px dashed #bdc8c1;border-radius:13px;min-height:140px;display:grid;place-items:center;align-content:center;text-align:center;cursor:pointer;background:#fafbf8;transition:.2s}.upload-zone:hover,.upload-zone.dragging{border-color:var(--accent2);background:#f3f7f4}.upload-icon{font-size:26px;color:var(--accent2)}.upload-zone strong{font-size:14px;margin-top:6px}.upload-zone small{color:var(--muted);font-size:11px;margin-top:4px}.document-list{display:grid;gap:8px;margin-top:12px}.doc-item{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line);padding:10px 12px;border-radius:10px}.doc-item div{display:flex;gap:10px;align-items:center}.doc-item strong{font-size:12px}.doc-item small{display:block;color:var(--muted);font-size:10px}.doc-status{font:600 9px "IBM Plex Mono",monospace;color:var(--accent2)}.doc-remove{border:0;background:transparent;color:#a37b73;cursor:pointer;font-size:16px}.step-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px;padding-top:24px}.step-actions.split{justify-content:space-between}.primary-btn{background:var(--ink);color:white;border-radius:10px;padding:12px 17px;display:inline-flex;gap:10px;align-items:center;justify-content:center;box-shadow:0 8px 22px rgba(19,32,28,.14)}.primary-btn:hover{transform:translateY(-1px)}.primary-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.secondary-btn{background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:11px 15px}.small{padding:9px 12px;font-size:12px}.inline-error{color:var(--danger);font-size:12px}.question-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.question-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;position:relative}.question-card>span{font:600 10px "IBM Plex Mono",monospace;color:var(--accent2);display:block;margin-bottom:10px}.question-card label{font-weight:600;font-size:16px;line-height:1.4}.question-card label small{display:block;color:var(--muted);font-weight:400;font-size:12.5px;line-height:1.55;margin:7px 0 12px}.signal-question{border-color:#d7c28d;background:linear-gradient(180deg,#fffdf8,#fff)}.analysis-state{text-align:center;padding:110px 20px}.loader-orbit{width:74px;height:74px;margin:0 auto 28px;position:relative;animation:spin 2.5s linear infinite}.loader-orbit i{position:absolute;width:16px;height:16px;background:var(--accent2);border-radius:50%;left:29px;top:0}.loader-orbit i:nth-child(2){top:49px;left:2px;background:var(--accent)}.loader-orbit i:nth-child(3){top:49px;left:56px;background:#8fa49a}@keyframes spin{to{transform:rotate(360deg)}}.analysis-state h2{font-size:32px;margin:10px 0}.analysis-state p{color:var(--muted);font-size:15px}.analysis-log{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:25px}.analysis-log span{font:500 10px "IBM Plex Mono",monospace;background:#fff;border:1px solid var(--line);padding:7px 9px;border-radius:999px}.profile-header{display:flex;justify-content:space-between;gap:30px;align-items:flex-start;margin-bottom:24px}.profile-header>div:first-child{min-width:0}.profile-header h1{font-size:42px;letter-spacing:-1.4px;margin:7px 0 9px}.profile-header p{max-width:760px;color:var(--muted);line-height:1.65;margin:0;font-size:15px}.profile-header-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end;flex:0 0 auto}.profile-status{font:600 10px "IBM Plex Mono",monospace;padding:7px 9px;border-radius:999px;background:#f4eee0;color:#876920}.profile-status.approved{background:#e7f2ea;color:#337247}.intelligence-banner{background:var(--ink);color:#fff;border-radius:16px;padding:25px 28px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:center;margin-bottom:18px;box-shadow:var(--shadow)}.intelligence-banner>div:first-child{min-width:0}.intelligence-banner span{display:block;font:600 9px "IBM Plex Mono",monospace;color:#a9b9b3;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.intelligence-banner strong{font-size:16px;line-height:1.6;overflow-wrap:anywhere}.score-block{text-align:right;min-width:150px;padding-left:8px}.score-block small{display:block;font-size:12px;line-height:1.35}.score-block strong{font-size:32px;color:#e0bd68;white-space:nowrap}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}.profile-field{background:#fff;border:1px solid var(--line);border-radius:14px;padding:19px;min-width:0}.profile-field.wide{grid-column:1/-1}.profile-field label{display:block;font:600 10px "IBM Plex Mono",monospace;color:var(--muted);text-transform:uppercase;letter-spacing:.8px;margin-bottom:8px}.profile-field textarea{border:0;background:transparent;padding:0;min-height:58px;resize:none;font-size:15px;line-height:1.6}.profile-field textarea[readonly]{cursor:default}.profile-field textarea:not([readonly]){background:#f7f9f6;border:1px solid #ced7d1;padding:10px}.signals-panel{margin-bottom:16px}.section-title h3{margin:6px 0 5px;font-size:20px}.section-title p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.signal-list{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:18px}.signal-item{border:1px solid var(--line);border-radius:11px;padding:13px 14px;display:flex;gap:10px;align-items:flex-start}.signal-item input{margin-top:3px;accent-color:var(--accent2)}.signal-item strong{font-size:13.5px}.signal-item small{display:block;color:var(--muted);font-size:11px;line-height:1.5;margin-top:4px}.priority{font:600 8px "IBM Plex Mono",monospace;margin-left:auto;padding:4px 6px;border-radius:999px;background:#f2eee4;color:#846b32}.profile-lower-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:14px}.source-summary{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.source-chip{background:var(--soft);padding:6px 8px;border-radius:8px;font:500 10px "IBM Plex Mono",monospace;color:#50605a}.evidence-digest{font-size:13px;color:var(--muted);line-height:1.65}.gap-list{display:grid;gap:8px;margin:15px 0}.gap-item{font-size:12.5px;border-left:2px solid #d5b25e;padding-left:9px;color:#6e746f}.gap-item.good{border-color:#69a978}.text-btn{background:transparent;color:var(--accent2);padding:4px 0}.approval-card{margin-top:16px;border:1px solid #d8c38f;background:linear-gradient(135deg,#fffdf7,#f7f4ea);border-radius:16px;padding:22px;display:flex;justify-content:space-between;align-items:center;gap:25px}.approval-card h3{margin:6px 0;font-size:18px}.approval-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.55;max-width:700px}.approval-card.approved{border-color:#b8d8c1;background:#f1f8f3}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:#192722;color:#fff;padding:10px 14px;border-radius:9px;font-size:12px;opacity:0;pointer-events:none;transition:.2s;z-index:50}.toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:1180px){.process-track{grid-template-columns:repeat(4,minmax(130px,1fr))}.workspace{grid-template-columns:320px minmax(0,1fr)}.content{padding-left:38px;padding-right:38px}}@media(max-width:980px){.workspace{grid-template-columns:1fr}.progress-panel{position:relative;top:0;height:auto;border-right:0;border-bottom:1px solid var(--line);padding:26px}.progress-head p,.future-stack{display:none}.steps{grid-template-columns:repeat(3,1fr);margin:20px 0}.steps li{padding:10px}.progress-metric{padding:14px 0}.content{padding:30px 26px 70px;max-width:none}.process-map{margin-bottom:28px}.process-track{display:flex;overflow-x:auto;padding-bottom:3px}.process-stage{flex:0 0 145px}.hero-copy h1{font-size:42px}.question-grid,.profile-grid,.profile-lower-grid{grid-template-columns:1fr}.profile-field.wide{grid-column:auto}.signal-list{grid-template-columns:1fr}.profile-header{display:block}.profile-header-actions{justify-content:flex-start;margin-top:18px}}@media(max-width:620px){.topbar{padding:0 18px;height:68px}.autosave{display:none}.progress-panel{padding:20px 18px}.steps li small{display:none}.progress-metric{display:none}.content{padding:24px 17px 60px}.process-map{padding:12px;margin-bottom:24px}.process-map-head{display:block}.process-map-head strong{display:block;margin-top:4px}.process-map-head small{display:block;margin:4px 0 0}.hero-copy h1{font-size:36px}.hero-copy p{font-size:15px}.panel,.question-card{padding:18px}.question-grid{gap:10px}.step-actions.split{flex-wrap:wrap}.profile-header h1{font-size:34px}.intelligence-banner{grid-template-columns:1fr}.score-block{text-align:left;padding-left:0}.approval-card{display:block}.approval-card .primary-btn{margin-top:18px;width:100%}}