:root{--ink:#17201d;--green:#155e4b;--lime:#dff36d;--bg:#f4f5ef;--line:#d8ddd4}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 Inter,system-ui,sans-serif}header{height:72px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 4%;gap:32px;position:sticky;top:0;z-index:3}.brand{font-size:20px;margin-right:auto}.brand:first-letter{background:var(--green);color:white}nav{display:flex;gap:6px}button{border:1px solid var(--line);background:white;padding:10px 14px;border-radius:10px;font:inherit;cursor:pointer}.primary{background:var(--green);color:white}.danger{color:#a03025}.local{background:var(--lime);padding:6px 10px;border-radius:20px}.view{display:none}.view.active{display:block}.hero,.page{max-width:1140px;margin:auto;padding:70px 30px}.hero h1,.page h1{font:700 clamp(44px,7vw,82px)/.98 Georgia,serif;margin:14px 0}.hero>p:last-child{font-size:20px;max-width:650px}.grid{max-width:1140px;margin:0 auto 70px;padding:0 30px;display:grid;grid-template-columns:minmax(300px,.8fr) 1.2fr;gap:24px}.card,.source,.conversation,.trustgrid article{background:white;border:1px solid var(--line);border-radius:18px;padding:22px}label{display:grid;gap:6px;margin:12px 0}input,textarea,select{font:inherit;padding:11px;border:1px solid #bdc6bc;border-radius:9px;background:white}textarea{min-height:100px}.source,.conversation{margin-bottom:12px}.source-head{display:flex;justify-content:space-between}.chips span{display:inline-block;background:#edf2e9;border-radius:20px;padding:4px 8px;margin:3px}.flag{color:#9a402b}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.stats div{background:white;border:1px solid var(--line);border-radius:14px;padding:16px}.stats b{font-size:26px;display:block}.citation{border-left:4px solid var(--green);padding:12px;margin:10px 0;background:#f5f8f2}.trustgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:30px 0}#toast{position:fixed;right:20px;bottom:20px;background:var(--ink);color:white;padding:12px 18px;border-radius:10px;opacity:0}#toast.show{opacity:1}@media(max-width:760px){header{overflow:auto}nav{display:none}.grid,.trustgrid{grid-template-columns:1fr}.stats{grid-template-columns:1fr}.local{display:none}}
.test-result{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:start}.test-result.pass{border-left:5px solid #188054}.test-result.fail{border-left:5px solid #b74330}.suite-bar{height:10px;background:#e4e8e1;border-radius:8px;overflow:hidden;margin:10px 0}.suite-bar span{height:100%;background:var(--green);display:block}
.version{font-size:13px;color:#5e6b64}.stale{background:#fff0d9;color:#805000;padding:4px 8px;border-radius:12px}.fresh{background:#e8f4eb;color:#19613c;padding:4px 8px;border-radius:12px}.history{border-top:1px solid var(--line);margin-top:10px;padding-top:10px}
.provider{border:1px solid var(--line);border-radius:14px;padding:14px;background:#f7f9f4;margin:14px 0}.manifest{font:13px/1.45 ui-monospace,monospace;white-space:pre-wrap;background:#15201c;color:#eaf4ed;padding:12px;border-radius:10px;max-height:260px;overflow:auto}.provider p{font-size:13px}

.cost-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.cost-estimate{padding:10px;background:#fff4d7;border-radius:10px;margin:10px 0}@media(max-width:700px){.cost-grid{grid-template-columns:1fr}}

.handoff{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.handoff textarea{width:100%}.action-card{padding:12px;background:#fff5df;border:1px solid #ecd49a;border-radius:10px;margin:8px 0}.action-card.approved{background:#e9f5ec;border-color:#9dccaa}

.metric-row{display:grid;grid-template-columns:minmax(100px,1fr) 3fr auto;gap:10px;align-items:center;margin:10px 0}.bar{height:9px;background:#e4e8e1;border-radius:9px;overflow:hidden}.bar span{display:block;height:100%;background:var(--green)}.failure{padding:10px;border-left:4px solid #b74330;background:#fff4f0;margin:8px 0}

.import-button{display:inline-block;border:1px solid var(--line);background:white;padding:10px 14px;border-radius:10px;margin:0 6px}.import-button input{position:absolute;width:1px;height:1px;opacity:0}.restore-ok,.restore-error{padding:12px;border-radius:10px;margin:10px 0}.restore-ok{background:#e9f5ec}.restore-error{background:#fff0ec;color:#8c2f21}
