:root{font-family:system-ui,"Microsoft YaHei",sans-serif;color:#172239;background:#f3f5f9;font-size:16px;line-height:1.6}*{box-sizing:border-box}body{margin:0}header{height:80px;background:#132c58;color:#fff;display:flex;align-items:center;gap:32px;padding:0 32px}header strong{font-size:26px;letter-spacing:.04em}header strong span{color:#9cbfff;margin-left:8px}#identity{margin-left:auto;font-size:14px}#notice{padding:12px 32px;background:#e5edfd;color:#173763;border-bottom:1px solid #c8d6ef;min-height:48px}main{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:calc(100vh - 180px)}aside{background:#fff;border-right:1px solid #dce2ed;padding:24px}.workspace{padding:32px;min-width:0}h1{font-size:28px;margin:2px 0 20px}h2{font-size:19px;margin:12px 0}h3{font-size:17px}.eyebrow,.muted{color:#647086;font-size:14px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:16px}label{display:block;font-size:14px;font-weight:600;margin:16px 0 8px}select,textarea,input{width:100%;padding:11px;border:1px solid #bdc8d8;border-radius:6px;font:inherit;color:inherit;background:#fff}textarea{min-height:100px;resize:vertical}button{font:inherit;cursor:pointer;border:1px solid #cbd5e4;border-radius:6px;padding:9px 14px;background:white;color:#183769}button:hover{background:#edf2fc}button:disabled{opacity:.5;cursor:not-allowed}button[type=submit],#new{background:#224c94;color:white;border-color:#224c94}#new{margin-top:18px;width:100%}nav button{display:block;text-align:left;width:100%;margin:8px 0;overflow-wrap:anywhere}nav button.active{border-color:#224c94;background:#e9f0fc;font-weight:600}.empty{margin-top:48px;border-left:4px solid #244d92;padding:16px 24px}.empty h2{font-size:25px}#create,article{background:white;padding:24px;border:1px solid #dce2ed;border-radius:8px}#create{max-width:720px}#progress{display:flex;gap:4px;margin-bottom:24px}#progress span{height:7px;flex:1;background:#d6deea}#progress span.done{background:#275795}.review-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:24px}article{min-width:0}#output{overflow-wrap:anywhere;white-space:pre-wrap}#output dl{margin:0}dt{font-size:14px;color:#536681;margin-top:18px}dd{margin:4px 0 10px}#issues{color:#922f2f;background:#fff3f2;padding:12px}#issues:empty{display:none}details{margin:24px 0;padding-top:16px;border-top:1px solid #dce2ed}#review{border-top:2px solid #dce2ed;padding-top:8px}footer{text-align:right;padding:16px 32px;font-size:14px;color:#66718a}button:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #7ba9f8;outline-offset:2px}[hidden]{display:none!important}@media(max-width:900px){main{grid-template-columns:1fr}aside{border-right:0;border-bottom:1px solid #dce2ed}.workspace{padding:20px}.review-layout{grid-template-columns:1fr}#nodes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}header{padding:16px;gap:16px;height:auto;flex-wrap:wrap}header strong{font-size:22px}#notice{padding:12px 20px}}

#login{max-width:420px;margin:2rem auto;padding:1.5rem;background:white;border-radius:12px}#login input{width:100%;padding:.7rem;margin:.4rem 0 1rem}#logout{margin-left:1rem}

#model-handoff{background:#edf4ff;border:1px solid #bed1ef;border-radius:8px;padding:16px;margin-bottom:20px}#model-handoff h2{margin-top:0}#handoff-link{margin-top:12px}#handoff-url{font-family:ui-monospace,monospace;font-size:13px}.handoff-page{display:block;max-width:1100px;margin:30px auto;min-height:calc(100vh - 180px)}.handoff-page pre{max-height:45vh;overflow:auto;background:#101828;color:#e8edf7;padding:16px;border-radius:6px;white-space:pre-wrap;word-break:break-word}.handoff-page textarea{min-height:260px;font-family:ui-monospace,monospace;font-size:13px}
