:root{color:#1f2933;background:#edf1f5;--control-border: #cbd5df;--control-height: 38px;--control-line-height: 1.2;--control-padding-x: 10px;--control-radius: 6px;--control-text: #17212b;font-family: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;overflow:hidden}button,input,select{font:inherit}button,select,input{border-radius:var(--control-radius)}input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{background:#fff;border:1px solid var(--control-border);color:var(--control-text);font-size:14px;height:var(--control-height);line-height:var(--control-line-height);min-height:var(--control-height);padding:0 var(--control-padding-x)}input[type=checkbox],input[type=radio]{height:16px;min-height:0;padding:0;width:16px}.app-shell{height:100vh;min-height:100vh;overflow:hidden}.workflow-shell{display:grid;grid-template-columns:280px minmax(0,1fr);height:100vh;min-height:100vh;overflow:hidden}.workflow-sidebar{background:#182433;color:#d9e4ef;display:flex;flex-direction:column;gap:18px;height:100vh;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:20px 16px;scrollbar-width:none}.workflow-sidebar::-webkit-scrollbar{display:none}.brand-block{border-bottom:1px solid rgba(255,255,255,.12);padding:4px 4px 18px}.brand-block strong{color:#fff;display:block;font-size:22px;margin-bottom:6px}.brand-block p{color:#aebccd;font-size:13px;line-height:1.4;margin:0}.workflow-nav{display:grid;gap:8px}.workflow-nav-main{align-items:center;background:transparent;border:1px solid transparent;color:#d9e4ef;cursor:pointer;display:grid;gap:10px;grid-template-columns:42px minmax(0,1fr) 10px;min-height:58px;padding:9px;text-align:left;width:100%}.workflow-nav-main.active,.workflow-nav-main:hover{background:#ffffff14;border-color:#ffffff1f}.workflow-step{align-items:center;background:#ffffff14;border-radius:6px;color:#fff;display:inline-flex;font-size:12px;font-weight:700;height:34px;justify-content:center}.workflow-nav-copy{min-width:0}.workflow-nav-copy strong,.workflow-nav-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workflow-nav-copy small{color:#9fb0c3;font-size:12px;margin-top:2px}.workflow-state{border-radius:999px;display:block;height:8px;width:8px}.workflow-state.done{background:#34d399}.workflow-state.active{background:#fbbf24}.workflow-state.idle{background:#64748b}.sidebar-manifest{border-top:1px solid rgba(255,255,255,.12);display:grid;gap:12px;margin-top:auto;padding:16px 4px 0}.sidebar-manifest span{color:#9fb0c3;display:block;font-size:12px}.sidebar-manifest strong{color:#fff;display:block;font-size:14px;margin-top:3px}.workflow-main{height:100vh;min-width:0;overflow-y:auto;overscroll-behavior:contain;padding:22px 24px 28px}.topbar{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:12px}.title-block h1{color:#142235;font-size:26px;letter-spacing:0;line-height:1.2;margin:0}.actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.icon-button,.primary-button,.secondary-button{align-items:center;border:1px solid var(--control-border);cursor:pointer;display:inline-flex;gap:8px;line-height:var(--control-line-height);min-height:var(--control-height);padding:0 12px}.icon-button{background:#fff;color:#243447;overflow:hidden;position:relative}.icon-button input,.file-button input{cursor:pointer;top:0;right:0;bottom:0;left:0;opacity:0;position:absolute}.file-button{overflow:hidden;position:relative}.primary-button{background:#0f766e;border-color:#0f766e;color:#fff;font-weight:700}.primary-button:disabled{cursor:wait;opacity:.75}.primary-button.compact{min-height:34px}.secondary-button{background:#fff;color:#243447}.encoding-select{color:#243447}.status-line{border-radius:8px;font-size:14px;margin-bottom:16px;padding:10px 12px}.status-line.ok{background:#e7f6f3;color:#0f625d}.status-line.error{background:#fdecec;color:#a61b1b}.project-dashboard,.results{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.results{grid-template-columns:repeat(4,minmax(130px,1fr))}.diagnostics-page{display:grid;gap:16px;max-width:1240px}.diagnostics-metric-strip{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(130px,1fr))}.diagnostics-metric-strip.compact .metric{padding:12px 14px}.diagnostics-section{background:#fff;border:1px solid #d8e0e8;border-radius:8px;box-shadow:0 10px 30px #23313f0f;min-width:0}.diagnostics-section-header{align-items:start;border-bottom:1px solid #e5ebf0;display:grid;gap:16px;grid-template-columns:minmax(220px,320px) minmax(0,1fr);padding:14px 16px}.diagnostics-section-header h2{color:#1f2933;font-size:18px;letter-spacing:0;margin:2px 0 0}.diagnostics-section-header p{color:#607080;font-size:13px;line-height:1.5;margin:0}.eyebrow{color:#0f625d;font-size:11px;font-weight:800;letter-spacing:.08em;margin:0;text-transform:uppercase}.diagnostics-section-body{display:grid;gap:14px;padding:16px}.diagnostics-summary-grid{align-items:start;display:grid;gap:14px;grid-template-columns:minmax(0,1fr) minmax(260px,360px)}.diagnostics-summary-grid .panel{box-shadow:none;padding:12px 14px}.diagnostics-figure-card,.diagnostics-table-card{border:1px solid #e1e7ec;border-radius:7px;min-width:0;padding:14px}.publication-figure{margin:0 auto;max-width:760px}.publication-figure-overlap{max-width:680px}.publication-figure-love{max-width:740px}.publication-figure-km{max-width:820px}.publication-figure-ph{max-width:760px}.page-stack{display:grid;gap:16px}.design-flow{display:grid;gap:12px;max-width:1240px}.design-section{background:#fff;border:1px solid #d8e0e8;border-radius:8px;box-shadow:0 10px 30px #23313f0f;min-width:0}.design-section-header{align-items:start;border-bottom:1px solid #e5ebf0;display:grid;gap:12px;grid-template-columns:42px minmax(0,1fr);padding:13px 16px}.design-section-step{align-items:center;background:#e7f6f3;border:1px solid #b7ded6;border-radius:6px;color:#0f625d;display:inline-flex;font-size:12px;font-weight:800;height:34px;justify-content:center}.design-section-header h2{color:#1f2933;font-size:16px;letter-spacing:0;line-height:1.25;margin:0}.design-section-header p{color:#607080;font-size:13px;line-height:1.45;margin:3px 0 0}.design-section-body{display:grid;gap:13px;padding:14px 16px 16px}.design-endpoint-grid,.design-two-column,.design-method-grid{align-items:start;display:grid;gap:14px}.design-endpoint-grid{grid-template-columns:1fr}.design-two-column{grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr)}.design-method-grid{grid-template-columns:1fr}.design-control-block{display:grid;gap:10px;min-width:0}.design-control-label{color:#607080;display:block;font-size:12px;font-weight:700;text-transform:uppercase}.design-segmented{grid-template-columns:repeat(4,minmax(100px,1fr))}.design-method-switch{grid-template-columns:repeat(2,minmax(150px,1fr));max-width:440px}.design-method-switch button{padding:0 22px}.design-method-header{align-items:center;display:grid;gap:14px;grid-template-columns:minmax(320px,440px) minmax(0,1fr)}.compact-note{margin-top:0}.design-summary-grid,.design-detail-grid{display:grid;gap:8px;margin:0}.design-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.design-summary-grid div{background:#f7fafc;border:1px solid #e0e7ef;border-left:3px solid #0f766e;border-radius:6px;min-width:0;padding:9px 10px}.design-summary-grid dt,.design-detail-grid dt{color:#607080;font-size:12px}.design-summary-grid dd,.design-detail-grid dd{color:#1f2933;margin:0;overflow-wrap:anywhere}.design-summary-grid strong,.design-summary-grid span{display:block}.design-summary-grid strong{color:#12202f;font-size:16px;line-height:1.25;margin-top:4px}.design-summary-grid span{color:#607080;font-size:12px;line-height:1.35;margin-top:2px}.design-detail-grid,.design-detail-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.design-detail-grid div{border-bottom:1px solid #e5ebf0;display:grid;gap:3px;min-width:0;padding:0 0 8px}.design-tag-list{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}.design-tag-list li{background:#f5f7fa;border:1px solid #e0e7ef;border-radius:999px;color:#243447;font-size:12px;max-width:100%;overflow:hidden;padding:5px 9px;text-overflow:ellipsis;white-space:nowrap}.design-tag-list.compact li{background:#fff;color:#607080}.design-check-list{gap:8px}.design-check-list li{padding:8px 10px}.check-list li.idle{border-color:#d8e0e8;color:#607080}.design-subsection{border-top:1px solid #e5ebf0;display:grid;gap:12px;padding-top:12px}.design-subsection-title{align-items:baseline;display:flex;flex-wrap:wrap;gap:8px}.design-subsection-title strong{color:#243447;font-size:14px}.design-subsection-title span{color:#607080;font-size:12px}.design-dictionary-section .design-section-body{padding-left:0;padding-right:0}.design-dictionary-section .dictionary-note{margin:0;padding:0 16px}.panel,.metric{background:#fff;border:1px solid #d8e0e8;border-radius:8px;box-shadow:0 10px 30px #23313f0f;min-width:0;padding:16px}.panel h2,.panel-title h2{color:#1f2933;font-size:16px;letter-spacing:0;margin:0 0 12px}.compact-panel{padding:12px 16px}.panel-title{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:10px}.panel-title h2{margin:0}.panel-title span{color:#607080;font-size:13px}.table-one th:first-child,.table-one td:first-child{min-width:180px}.table-one-group td:first-child{color:#1f2933;font-weight:700}.table-one-level{color:#4d5c6b;padding-left:24px}.form-grid{display:grid;gap:12px}.design-parameter-grid{align-items:end;grid-template-columns:minmax(220px,1fr) minmax(260px,1.15fr) minmax(180px,.75fr)}.weighting-parameter-grid{grid-template-columns:minmax(180px,.75fr) minmax(280px,1.15fr) minmax(220px,.9fr)}.bootstrap-grid{align-items:end;grid-template-columns:minmax(240px,1.2fr) minmax(150px,.7fr) minmax(160px,.8fr)}.form-grid label{display:grid;gap:6px}.form-grid label>span{color:#607080;font-size:13px}.form-grid input:not([type=checkbox]):not([type=radio]),.form-grid select{width:100%}.segmented-control{display:grid;gap:6px;grid-template-columns:repeat(4,minmax(0,1fr))}.segmented-control button{background:#fff;border:1px solid var(--control-border);color:#243447;cursor:pointer;line-height:var(--control-line-height);min-height:var(--control-height);padding:0 12px}.truncation-control{grid-template-columns:repeat(3,minmax(0,1fr))}.segmented-control button.active{background:#0f766e;border-color:#0f766e;color:#fff;font-weight:700}.endpoint-control{grid-template-columns:repeat(4,minmax(110px,1fr))}.check-row{align-items:center;display:flex!important;gap:8px!important;justify-content:flex-start}.check-row input{flex:0 0 16px;min-height:0;width:16px}.panel-note{color:#607080;font-size:13px;line-height:1.5;margin:12px 0 0}.method-summary{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.method-summary dt{color:#607080;font-size:12px}.method-summary dd{color:#1f2933;margin:4px 0 0;overflow-wrap:anywhere}.metric{padding:14px}.metric span{color:#607080;display:block;font-size:12px;margin-bottom:6px}.metric strong{color:#12202f;display:block;font-size:20px;line-height:1.2;overflow-wrap:anywhere}.wide{grid-column:1 / -1}.manifest-list{display:grid;gap:10px;margin:0}.manifest-list div{display:grid;gap:8px;grid-template-columns:150px minmax(0,1fr)}.manifest-list dt{color:#607080;font-size:13px}.manifest-list dd{color:#1f2933;margin:0;overflow-wrap:anywhere}.project-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.report-export-actions{justify-content:flex-end;margin-top:0}.quality-list,.tag-list,.check-list{display:grid;gap:10px;list-style:none;margin:0;padding:0}.quality-list{grid-template-columns:repeat(4,minmax(0,1fr))}.quality-list li,.tag-list li,.check-list li{background:#f5f7fa;border:1px solid #e0e7ef;border-radius:6px;padding:10px}.quality-list strong,.quality-list span{display:block}.quality-list strong{color:#12202f;font-size:20px}.quality-list span,.muted{color:#607080;font-size:12px}.tag-list{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.check-list li.ok{border-color:#9dd6c8;color:#0f625d}.check-list li.warn{border-color:#f0c36b;color:#9a5b00}.dictionary-panel{padding:0}.dictionary-panel h2{padding:16px 16px 0}.dictionary-note{padding:0 16px}.dictionary-table-scroll{overflow:auto;padding:0 16px 16px}.compact-table-scroll{padding:0}.compact-list{margin-top:12px}table{border-collapse:collapse;font-size:14px;width:100%}th,td{border-bottom:1px solid #e5ebf0;padding:10px 8px;text-align:left;vertical-align:top;white-space:nowrap}th{color:#607080;font-size:12px;text-transform:uppercase}.dictionary-variable-cell,.dictionary-level-cell{display:grid;gap:4px;max-width:220px}.dictionary-level-cell span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mini-input,td select{min-width:120px;width:100%}.tiny-button{background:#fff;border:1px solid var(--control-border);color:#243447;cursor:pointer;line-height:var(--control-line-height);min-height:30px;padding:0 10px}.empty-state{max-width:720px}.empty-state p{color:#607080;margin:0}.warn{color:#b45309;font-weight:700}.love-plot{display:block;height:auto;max-width:100%;overflow:visible;width:100%}.overlap-plot{display:block;height:auto;max-width:100%;width:100%}.survival-plot{display:block;height:auto;margin:8px 0 14px;max-width:100%;width:100%}.figure-svg{width:100%}.figure-svg svg{display:block;height:auto;width:100%}.km-figure-workbench{display:grid;gap:10px}.km-controls{align-items:end;display:grid;gap:10px;grid-template-columns:minmax(120px,160px) minmax(220px,1fr) minmax(120px,150px) auto;max-width:860px}.km-controls label{display:grid;gap:5px}.km-controls span{color:#607080;font-size:12px}.km-controls input,.km-controls select{width:100%}.km-export-actions{display:flex;gap:6px}.km-validation{font-size:12px;margin:0}.km-validation.warn{color:#9a5b00}.km-validation.error{color:#a61b1b}.top-note{margin:0 0 12px}.ph-diagnostic-grid{align-items:start;display:grid;gap:14px;grid-template-columns:minmax(180px,240px) minmax(0,1fr);margin-bottom:12px}.ph-status{border:1px solid #cbd5df;border-radius:8px;display:grid;gap:4px;padding:12px}.ph-status strong{color:#17212b;font-size:14px}.ph-status span{color:#607080;font-size:13px}.ph-status.ok{background:#e7f6f3;border-color:#a6d8cf}.ph-status.warn{background:#fff7e6;border-color:#f0c36a;color:#9a5b00}.ph-figure-block{display:grid;gap:10px;margin-top:14px}.ph-figure-toolbar{display:flex;justify-content:flex-end}.ph-figure-toolbar label{display:grid;gap:5px;min-width:180px}.ph-figure-toolbar span{color:#607080;font-size:12px}.ph-figure-toolbar select{width:100%}.estimate-label-cell{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.inference-cell{color:#1f2933;display:grid;gap:3px;line-height:1.25;min-width:132px}.inference-cell span:last-child{color:#607080;font-size:12px}.inference-cell.muted{color:#8190a0;display:inline;min-width:0}.estimate-warning-badge{background:#fff7e6;border:1px solid #f0c36a;border-radius:999px;color:#9a5b00;display:inline-flex;font-size:11px;font-weight:700;line-height:1;padding:4px 7px}.diagnostic-list{display:grid;gap:8px;list-style:none;margin:0;padding:0}.diagnostic-list li{border:1px solid #d7dee6;border-radius:8px;display:grid;gap:4px;padding:10px 12px}.diagnostic-list li.warn{background:#fff7e6;border-color:#f0c36a;color:#7a4300}.diagnostic-list li.info{background:#eef7f4;border-color:#9dd6c8;color:#0f625d}.diagnostic-list strong{font-size:12px;text-transform:uppercase}.diagnostic-list span{font-size:13px;line-height:1.45}.survival-design-controls{display:grid;gap:12px;margin-top:12px}.survival-domain{border-top:1px solid #e0e7ef;display:grid;gap:10px;padding-top:12px}.survival-domain h3{color:#243447;font-size:13px;margin:0}.survival-field-grid{display:grid;gap:10px;grid-template-columns:minmax(120px,180px) minmax(0,1fr)}.survival-design-controls label,.survival-field-grid label{display:grid;gap:5px}.survival-design-controls label>span,.survival-field-grid label>span{color:#607080;font-size:12px}.survival-design-controls input,.survival-design-controls select{width:100%}.survival-effect-options{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.survival-effect-options button{background:#fff;border:1px solid #cbd5df;color:#243447;cursor:pointer;display:grid;gap:2px;min-height:48px;padding:8px 10px;text-align:left}.survival-effect-options button strong,.survival-effect-options button span{display:block;overflow-wrap:anywhere}.survival-effect-options button strong{font-size:13px}.survival-effect-options button span{color:#607080;font-size:12px}.survival-effect-options button.active{background:#0f766e;border-color:#0f766e;color:#fff}.survival-effect-options button.active span{color:#d8f3ed}.survival-effect-options button:disabled{background:#f6f8fa;color:#607080;cursor:not-allowed}.survival-effect-settings{display:grid;gap:10px}.axis,.grid-line{stroke:#d8e0e8;stroke-width:1}.axis-strong{stroke:#b8c4cf}.threshold{stroke:#b45309;stroke-dasharray:4 4;stroke-width:1.5}.axis-label,.legend,.row-label,.risk-table-title,.risk-table-heading,.risk-table-row,.risk-table-cell{fill:#536273;font-size:12px}.risk-table-title{fill:#22313f;font-weight:700}.risk-table-heading,.risk-table-row{fill:#607080;font-size:11px}.risk-table-cell{fill:#1f2933;font-variant-numeric:tabular-nums}.row-label{fill:#22313f}.point-before{fill:#6b7280}.point-after{fill:#0f766e}.support-band{fill:#dbeafe;opacity:.55}.legend-band{opacity:1}.treated-bar{fill:#0f766e;opacity:.68}.control-bar{fill:#64748b;opacity:.5}.treated-density-line,.control-density-line{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5}.treated-density-line{stroke:#0f766e}.control-density-line{stroke:#475569}.survival-treated-line,.survival-control-line{fill:none;stroke-linecap:square;stroke-linejoin:miter;stroke-width:2.5}.survival-censor-tick{stroke-linecap:round;stroke-width:2}.survival-treated-line{stroke:#0f766e}.survival-control-line{stroke:#475569}@media(max-width:980px){body{overflow:auto}.app-shell,.workflow-shell,.workflow-main{height:auto;min-height:0;overflow:visible}.workflow-shell{grid-template-columns:1fr}.workflow-sidebar{height:auto;min-height:auto;overflow:visible}.project-dashboard,.results,.diagnostics-metric-strip,.diagnostics-summary-grid,.diagnostics-section-header,.design-endpoint-grid,.design-two-column,.design-method-grid,.design-method-header,.design-parameter-grid,.weighting-parameter-grid,.bootstrap-grid,.km-controls{grid-template-columns:1fr}.design-summary-grid,.design-detail-grid,.design-detail-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.ph-diagnostic-grid{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}.actions{justify-content:flex-start}}@media(max-width:640px){.design-section-header{grid-template-columns:36px minmax(0,1fr);padding:12px}.diagnostics-section-header,.diagnostics-section-body,.design-section-body{padding:12px}.design-segmented,.design-summary-grid,.design-detail-grid,.design-detail-grid.compact,.survival-effect-options,.survival-field-grid{grid-template-columns:1fr}.design-dictionary-section .dictionary-note{padding:0 12px}}
