:root{font-family:Inter,Arial,sans-serif;color:#19362f;background:#f2f4ee;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,.button{cursor:pointer;border:1px solid #c8d2c6;background:#fff;color:#23463a;border-radius:8px;padding:11px 16px;text-decoration:none;display:inline-block}button:hover,.button:hover{background:#e7eedc}button:focus-visible,a:focus-visible{outline:3px solid #9abf52;outline-offset:2px}.primary{background:#244e3d;color:#fff;border-color:#244e3d}.primary:hover{background:#18392c}button:disabled{opacity:.45;cursor:default}h1{font-size:42px;letter-spacing:-1.6px;line-height:1.12;font-weight:500;margin:12px 0 20px}h2{font-size:18px;font-weight:500;margin:0 0 14px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#70806b}.muted{color:#6d7b70;line-height:1.65}.small{font-size:12px}.mark{width:48px;height:48px;background:#d6edab;color:#214c37;font-size:36px;border-radius:12px;padding-left:10px;position:relative}.mark span{font-size:19px;position:absolute;right:4px;top:2px}.login{max-width:460px;margin:9vh auto;padding:32px}.login h1{font-size:50px}.login label{margin:18px 0}.login button{width:100%}#loginError{color:#a13328}aside{width:230px;background:#e9eee3;border-right:1px solid #d9dfd3;padding:32px 22px;position:fixed;inset:0 auto 0 0}.brand{display:flex;align-items:center;gap:14px;font-size:20px;line-height:1.05;margin-bottom:54px}nav{display:grid;gap:9px;margin-top:20px}nav button{text-align:left;background:transparent;border-color:transparent;color:#627464}nav button.active{background:#d9e6c9;color:#234733}.aside-bottom{position:absolute;bottom:28px;font-size:12px;color:#5c705e}.aside-bottom p{font-size:11px}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#7a9d4a;margin-right:5px}main{margin-left:230px;padding:0 42px;max-width:1600px}header{height:78px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dbe1d5;color:#778272;font-size:12px}.pill{border:1px solid #d9e1d0;border-radius:20px;padding:7px 12px}.heading{display:flex;justify-content:space-between;align-items:center;margin:36px 0 28px;gap:20px}.actions{display:flex;gap:8px;flex-wrap:wrap}.card{background:#fff;border:1px solid #e0e5db;border-radius:14px;padding:24px;margin:20px 0;box-shadow:0 3px 8px #263b2010}.card-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.card-title h2{margin:0}.card-title span{font-size:11px;color:#7b856f}label{display:block;font-size:12px;color:#51644f}input:not([type=checkbox]),select,textarea{width:100%;border:1px solid #d5dece;border-radius:7px;padding:11px 12px;color:#203b2e;background:#fbfcf9;margin-top:7px;outline:none}input:focus,select:focus,textarea:focus{border-color:#658a44;box-shadow:0 0 0 2px #dfeccb}input:disabled{background:#f0f0ed;color:#a4aa9d}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-bottom:18px}.grid:last-child{margin-bottom:0}.four{grid-template-columns:repeat(4,1fr)}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;color:#728268;font-size:11px;font-weight:500;padding:12px 8px;border-bottom:1px solid #dce4d5}td{padding:10px 8px;border-bottom:1px solid #ecf0e6}table input,table select{min-width:75px}.materials{min-width:840px}.materials td:first-child{min-width:160px}.materials input,.materials select{padding:9px 6px}.materials button{padding:8px}.checks{display:grid;gap:12px;margin-top:20px}.checks label{display:flex;align-items:center;gap:8px}.form-footer{display:flex;align-items:center;gap:10px;margin:24px 0}.form-footer span{flex:1;font-size:12px}#results{margin:30px 0}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.metric{background:#e3edd7;border-radius:12px;padding:22px}.metric strong{display:block;font-size:30px;font-weight:500;margin:12px 0}.metric span{font-size:11px;color:#66735b}.warning{padding:12px 16px;background:#fff3d7;color:#766023;border-radius:8px;margin:10px 0;line-height:1.5}#message{padding:14px;margin:16px 0;background:#e2eccf;border-radius:8px}#message.error{background:#fae4dc;color:#8c3425}.entry{display:flex;align-items:center;gap:15px;padding:23px;background:white;border:1px solid #dfe6d7;border-radius:12px;margin:12px 0}.entry .info{flex:1;min-width:0;overflow-wrap:anywhere}.entry h2{margin:0 0 6px}.entry p{margin:0;font-size:12px}.entry .actions{justify-content:flex-end}.empty{text-align:center;padding:60px 25px;color:#76846e;border:1px dashed #ccd9bf;border-radius:12px;margin:24px 0}.prose{max-width:900px;line-height:1.8}.prose h2{margin-top:26px}.prose a{color:#416e31}#compare h1,#methods h1{margin-top:28px}footer{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.5px;color:#86917d;padding:35px 0;border-top:1px solid #dbe1d5;margin-top:50px}[hidden]{display:none!important}@media(max-width:1050px){aside{width:185px;padding:24px 14px}main{margin-left:185px;padding:0 22px}.heading{align-items:flex-start}.four,.metrics{grid-template-columns:repeat(2,1fr)}h1{font-size:35px}}@media(max-width:720px){aside{position:static;width:100%;padding:18px;border-right:0}.brand{margin:0 0 20px}.aside-bottom,aside>.eyebrow{display:none}nav{grid-template-columns:repeat(2,1fr);margin:0;gap:3px}main{margin:0;padding:0 16px}header .pill{display:none}.heading{display:block}.heading .actions{margin-top:20px}h1{font-size:34px}.grid{grid-template-columns:1fr}.four,.metrics{grid-template-columns:1fr 1fr}.card{padding:18px}.form-footer{flex-wrap:wrap}.form-footer span{flex-basis:100%}.entry{flex-wrap:wrap}.entry .info{flex-basis:70%}footer span{display:none}.card-title{gap:12px}.metric{padding:16px}}

.ai-answer{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.75;margin-bottom:20px}#aiSend{margin-top:16px}#aiStatus{font-size:15px;line-height:1.5}

.three{grid-template-columns:repeat(3,1fr)}.notice{border-left:4px solid #789b47;padding:16px 20px;background:#e8efd9;border-radius:0 9px 9px 0;line-height:1.6}.molecule{display:grid;grid-template-columns:2fr 1fr 2fr;gap:14px}.target-molecule{background:#eef4e5;padding:16px;border-radius:10px;margin-bottom:18px}.route-material{border-bottom:1px solid #dbe3d2;padding:18px 0}.route-material:last-child{margin-bottom:16px}.remove-row{font-size:11px;padding:7px 11px;margin-top:12px}.route-stage{padding:20px 0;border-top:1px solid #dbe3d2}.stage-head{display:flex;gap:18px;align-items:center;margin-bottom:16px}.stage-head label{flex:1}.stage-number{font-size:27px;color:#879e75}.source-grid{grid-template-columns:1fr 2fr}.constraint{padding:22px;border-radius:12px;margin:22px 0;background:#e8eddf;line-height:1.6}.constraint.fail{background:#f8e3d9;color:#863e2e}.constraint.uncertain{background:#fff0ce;color:#735e20}.constraint.pass{background:#e1efd4}.primary-metric{background:#264c39;color:#f4f8ee}.primary-metric span{color:#cfe0bc}summary{cursor:pointer;font-size:18px;padding:4px 0}details[open] summary{margin-bottom:18px}.aside-bottom{position:static;margin-top:40px}aside{overflow-y:auto}nav{gap:3px}.brand{margin-bottom:30px}@media(max-width:1000px){.molecule,.three{grid-template-columns:1fr 1fr}.molecule label:first-child{grid-column:1/-1}}@media(max-width:720px){.three,.molecule,.source-grid{grid-template-columns:1fr}.stage-head{gap:10px}.metrics .metric strong{font-size:26px}nav button{font-size:12px;padding:9px}.heading h1{font-size:30px}}
