:root{--bg:#f4f6f3;--ink:#192b27;--muted:#657670;--accent:#246a56;--border:#dce4dd;--card:#fff;--danger:#a33b36}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.top{background:var(--card);border-bottom:1px solid var(--border);padding:17px max(24px,calc((100vw - 1180px)/2));display:flex;align-items:center;gap:28px}.brand{font-size:23px;font-weight:750;color:var(--ink);white-space:nowrap}.brand span{color:var(--accent)}nav{display:flex;gap:24px;flex:1}nav a{color:var(--muted)}main{max-width:1180px;margin:0 auto;padding:40px 24px 64px}.heading,.section-head,.item{display:flex;align-items:center;justify-content:space-between;gap:18px}.heading{margin-bottom:26px}.heading h1{margin:4px 0 8px}h1{font-size:30px;line-height:1.3}h2{font-size:18px;margin:0 0 18px}h3{font-size:16px;margin:8px 0}.eyebrow{font-size:12px;letter-spacing:.08em;color:var(--accent);margin:0}.muted,.meta{color:var(--muted)}.muted{font-size:13px}.meta{font-size:12px;margin:5px 0}.panel{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:25px;margin-bottom:22px}.narrow{max-width:460px;margin:48px auto}.wide{max-width:760px;margin:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:26px}.stat{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:20px 24px}.stat span{color:var(--muted);font-size:13px}.stat strong{display:block;font-size:32px;line-height:1.4}.columns{display:grid;grid-template-columns:1.3fr 1fr;gap:24px;align-items:start}.item{padding:16px 0;border-bottom:1px solid var(--border)}.item:last-child{border-bottom:0}.item-title{color:var(--ink);font-weight:650}.stack{display:flex;flex-direction:column;gap:17px}label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600}input,select,textarea{font:inherit;font-weight:400;width:100%;border:1px solid #ccd8cf;border-radius:8px;padding:10px 12px;background:#fff;color:var(--ink);min-height:43px}input:focus,select:focus,textarea:focus{outline:2px solid #87b9a5;outline-offset:1px}textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}button,.button{display:inline-block;border:0;border-radius:8px;background:var(--accent);color:#fff;padding:10px 17px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;text-align:center}.button:hover{text-decoration:none;background:#195540}.quiet{background:#eaf1ec;color:var(--accent)}.danger{background:#faece9;color:var(--danger)}.inline{display:inline;margin:0}.search{display:flex;gap:12px;margin:0 0 22px;align-items:center}.search input{flex:1}.search select{max-width:170px}.search button{min-height:43px}.notice{background:#e1f0e5;border:1px solid #b5d3bd;padding:13px 18px;border-radius:9px}.error{background:#fff0ed;border-color:#e8beb5;color:var(--danger)}.empty{color:var(--muted);padding:20px 0;font-size:14px}.pre{white-space:pre-wrap;overflow-wrap:anywhere}.timeline{border-left:2px solid #c6dcd0;padding:0 0 22px 18px;margin:20px 0 0}.pager{display:flex;justify-content:center;gap:24px;align-items:center;margin-top:22px}hr{border:0;border-top:1px solid var(--border);margin:28px 0}footer{text-align:center;color:var(--muted);font-size:11px;padding:20px}strong,a,p{overflow-wrap:anywhere}
@media(max-width:780px){.top{padding:14px 18px;flex-wrap:wrap;gap:12px}.top nav{order:3;flex-basis:100%;gap:20px;font-size:13px}.top>form{margin-left:auto}main{padding:26px 16px 40px}.columns{grid-template-columns:1fr;gap:0}.stats{grid-template-columns:repeat(2,1fr);gap:10px}.stat{padding:15px 18px}.panel{padding:20px}.heading{align-items:flex-start}.heading h1{font-size:25px}.form-grid{grid-template-columns:1fr}.search{flex-wrap:wrap}.search input{flex-basis:100%}.narrow{margin:26px auto}.item{align-items:flex-start}.item .inline button{padding:8px 10px}.section-head{align-items:flex-start}.brand{font-size:21px}}

nav{flex-wrap:wrap} .stack+.stack{margin-top:18px}

.heading>div,.item>div,.section-head>h2{min-width:0}.heading>div{flex:1}.heading h1{overflow-wrap:anywhere}.heading>.inline{flex-shrink:0}
