:root{--ink:#14283a;--paper:#f6f4ee;--line:#d7d1c6;--muted:#63717c;--accent:#b24734;--green:#286b5b}*{box-sizing:border-box}body{margin:0;background:var(--ink);font-family:"Noto Sans SC","PingFang SC",system-ui,sans-serif;color:var(--ink)}.shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}aside{padding:34px 24px;color:#dbe5e7;display:flex;flex-direction:column}.brand{color:white;text-decoration:none;font-size:22px;font-weight:700}.brand span{display:inline-grid;place-items:center;width:34px;height:34px;margin-right:9px;background:var(--accent);font-size:13px}nav{display:grid;gap:7px;margin:56px 0}nav a{padding:11px 12px;color:#b8c7cd;text-decoration:none;border-left:2px solid transparent}nav a.active,nav a:hover{color:white;border-color:#d87958;background:#20394c}.identity{margin-top:auto;font-size:13px;color:#8ea3ad;line-height:1.8}.identity strong{color:#dbe5e7;font-weight:500}button{margin-top:24px;padding:10px;background:transparent;border:1px solid #607886;color:#dbe5e7;cursor:pointer}.surface{margin:18px 18px 18px 0;padding:54px 58px;background:var(--paper);min-width:0}.date{color:var(--accent);font-weight:700;margin:0 0 16px}h1{font-size:42px;margin:0;letter-spacing:-2px}.lead{max-width:560px;color:var(--muted);line-height:1.7}.pulse{display:grid;grid-template-columns:repeat(4,1fr);margin:48px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.pulse div{padding:24px 20px;border-right:1px solid var(--line)}.pulse div:last-child{border:0}.pulse small,.pulse span{display:block;color:var(--muted);font-size:13px}.pulse b{display:block;margin:8px 0;font-size:36px}.split{display:grid;grid-template-columns:1fr 1fr;gap:42px}h2{font-size:18px;margin:0 0 22px}ol{margin:0;padding:0;list-style:none}li{display:flex;gap:14px;margin:20px 0}em{font-style:normal;color:var(--accent);font-weight:700}li p{margin:5px 0;color:var(--muted);font-size:14px}.table-head,.template-list>div{display:grid;grid-template-columns:1fr 90px 70px;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}.table-head{color:var(--muted)}.status{color:var(--green);font-weight:700}.notice{margin-top:46px;padding:19px 22px;border-left:4px solid var(--accent);background:#eee8dd}.notice p{margin:6px 0 0;color:#5f5d57;font-size:14px}.feedback-panel{margin-top:46px;padding-top:34px;border-top:1px solid var(--line)}.feedback-card{padding:20px 0;border-bottom:1px solid var(--line)}.feedback-card-head{display:flex;justify-content:space-between;gap:16px;font-weight:700}.feedback-card p{margin:12px 0;color:var(--muted);white-space:pre-wrap;line-height:1.6}.feedback-card p strong{color:var(--ink)}.feedback-card textarea{display:block;width:100%;min-height:90px;padding:10px;border:1px solid var(--line);background:#fff;font:inherit;line-height:1.5;resize:vertical}.feedback-actions{display:flex;gap:10px;margin-top:12px}.feedback-actions button{margin:0;color:var(--ink);border-color:var(--accent);background:#fff}.feedback-actions button.quiet{border-color:#607886}.feedback-actions button:disabled{opacity:.5;cursor:wait}@media(max-width:800px){.shell{grid-template-columns:1fr}aside{padding:20px;min-height:auto}nav{margin:25px 0;grid-template-columns:repeat(2,1fr)}.identity,aside button{display:none}.surface{margin:0;padding:32px 24px}.pulse,.split{grid-template-columns:1fr 1fr}.pulse div{border-bottom:1px solid var(--line)}h1{font-size:32px}}
.login-view{display:grid;min-height:100vh;place-items:center;padding:24px;background:var(--ink)}.login-card{width:min(100%,420px);padding:44px;background:var(--paper);border-top:5px solid var(--accent)}.login-card h1{font-size:32px;letter-spacing:-1px}.eyebrow{margin:0 0 22px;color:var(--accent);font-size:12px;font-weight:700;letter-spacing:2px}.login-card label{display:block;margin-top:22px;font-size:14px;font-weight:700}.login-card input{width:100%;margin-top:8px;padding:12px;border:1px solid var(--line);background:#fff;color:var(--ink);font:inherit}.login-card input:focus{outline:2px solid #d87958;outline-offset:1px}.primary-button{width:100%;margin-top:28px;border-color:var(--accent);background:var(--accent);color:#fff;font:inherit;font-weight:700}.primary-button:disabled{opacity:.6;cursor:wait}.form-error{margin:18px 0 0;color:#a3231a;font-size:14px;line-height:1.5}
