:root{color:#1c1d20;background:#f5f7f8;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}.center-state,.auth-screen{align-items:center;display:flex;min-height:100vh;justify-content:center;padding:24px}.auth-screen{background:linear-gradient(135deg,rgba(32,95,126,.12),transparent 36%),linear-gradient(315deg,rgba(196,68,55,.12),transparent 40%),#f5f7f8}.auth-card{background:#fff;border:1px solid #dde4e8;border-radius:8px;box-shadow:0 20px 80px #212a321f;display:grid;gap:14px;max-width:420px;padding:28px;width:100%}.brand-mark{align-items:center;background:#213f52;border-radius:8px;color:#fff;display:flex;height:44px;justify-content:center;width:44px}.app-shell{min-height:100vh;padding:24px}.topbar,.toolbar,.topbar-actions,.score-row,.tag-row,.check-row,.panel-heading,.source-link{align-items:center;display:flex}.topbar{justify-content:space-between;gap:16px;margin:0 auto 20px;max-width:1440px}.topbar h1,.auth-card h1{font-size:clamp(24px,3vw,38px);line-height:1.15;margin:4px 0 0}.eyebrow{color:#c04437;font-size:12px;font-weight:800;letter-spacing:0;margin:0;text-transform:uppercase}.topbar-actions{gap:10px}.icon-button,.text-button,.primary-button,.link-button{align-items:center;border:0;display:inline-flex;justify-content:center}.icon-button{background:#fff;border:1px solid #dce3e7;border-radius:8px;color:#23313a;height:40px;width:40px}.text-button,.primary-button{border-radius:8px;font-weight:700;gap:8px;min-height:40px;padding:0 14px}.text-button{background:#fff;border:1px solid #dce3e7;color:#23313a}.primary-button{background:#213f52;color:#fff}.primary-button:disabled{cursor:wait;opacity:.7}.danger-button{align-items:center;background:#fff5f3;border:1px solid #efc3bd;border-radius:8px;color:#a33b31;display:inline-flex;font-weight:700;gap:7px;min-height:38px;padding:0 12px}.danger-button:hover{background:#ffe9e5}.full{width:100%}.link-button{background:transparent;color:#205f7e;min-height:36px}.metrics-band{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 auto 16px;max-width:1440px}.metric{background:#fff;border:1px solid #dde4e8;border-radius:8px;display:grid;gap:6px;padding:14px}.metric span{color:#69757d;font-size:12px}.metric strong{font-size:22px}.layout{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) 380px;margin:0 auto;max-width:1440px}.content-panel,.side-panel,.drawer{background:#fff;border:1px solid #dde4e8;border-radius:8px}.content-panel{min-height:680px;padding:16px}.toolbar{border-bottom:1px solid #edf1f3;gap:10px;margin-bottom:16px;padding-bottom:16px}.search-box,.select-label{align-items:center;background:#f7f9fa;border:1px solid #dce3e7;border-radius:8px;color:#65737d;display:flex;min-height:40px;padding:0 10px}.search-box{flex:1;min-width:220px}.search-box input,.select-label select,.post-form input,.post-form select,.post-form textarea,.auth-card input{background:transparent;border:0;color:#1c1d20;outline:0;width:100%}.select-label select{min-width:116px}.post-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.post-card{border:1px solid #dde4e8;border-radius:8px;cursor:pointer;overflow:hidden;transition:border-color .16s ease,transform .16s ease}.post-card:hover{border-color:#205f7e;transform:translateY(-2px)}.cover{aspect-ratio:16 / 10;background:#e9eef1;overflow:hidden}.cover img,.detail-cover{display:block;height:100%;object-fit:cover;width:100%}.cover-fallback{align-items:center;color:#8d99a1;display:flex;font-weight:800;height:100%;justify-content:center}.post-card-body{display:grid;gap:10px;padding:14px}.post-card h2{font-size:16px;line-height:1.45;margin:0}.muted{color:#69757d;font-size:13px;margin:0}.tag-row{flex-wrap:wrap;gap:6px}.tag-row span{background:#eff5f7;border-radius:6px;color:#205f7e;font-size:12px;font-weight:700;padding:4px 7px}.score-row{color:#69757d;flex-wrap:wrap;font-size:12px;gap:8px}.score-row strong{align-items:center;color:#c04437;display:inline-flex;gap:4px}.side-panel{padding:16px;position:sticky;top:16px}.panel-heading{justify-content:space-between;gap:12px;margin-bottom:14px}.panel-heading h2{font-size:18px;margin:0}.post-form{display:grid;gap:10px}.post-form input,.post-form select,.post-form textarea,.auth-card input{background:#f7f9fa;border:1px solid #dce3e7;border-radius:8px;min-height:40px;padding:0 11px}.post-form textarea{min-height:78px;padding:11px;resize:vertical}.two-cols,.three-cols,.detail-grid{display:grid;gap:10px}.two-cols{grid-template-columns:repeat(2,minmax(0,1fr))}.three-cols{grid-template-columns:repeat(3,minmax(0,1fr))}.check-row{flex-wrap:wrap;gap:14px}.check-row label{align-items:center;color:#3f4b53;display:inline-flex;gap:6px}.alert{background:#fff3ef;border:1px solid #f1c2b6;border-radius:8px;color:#9d2f22;margin:0 auto 16px;max-width:1440px;padding:12px 14px}.compact{margin:0}.empty-state{align-items:center;border:1px dashed #ccd6dc;border-radius:8px;color:#69757d;display:flex;grid-column:1 / -1;justify-content:center;min-height:220px}.drawer-backdrop{background:#0e181f6b;top:0;right:0;bottom:0;left:0;position:fixed;z-index:10}.drawer{height:calc(100vh - 32px);margin:16px 16px 16px auto;max-width:560px;overflow:auto;padding:18px}.detail-cover{aspect-ratio:16 / 9;border-radius:8px;margin-bottom:12px}.source-link{color:#205f7e;font-weight:800;gap:6px;margin:8px 0 14px;text-decoration:none}.danger-button+.detail-grid{margin-top:16px}.detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}.detail-list{display:grid;gap:10px 14px;grid-template-columns:88px 1fr;margin:0}.detail-list dt{color:#69757d;font-size:13px}.detail-list dd{margin:0}@media (max-width: 1080px){.layout{grid-template-columns:1fr}.side-panel{position:static}}@media (max-width: 760px){.app-shell{padding:14px}.topbar,.toolbar{align-items:stretch;flex-direction:column}.metrics-band,.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.two-cols,.three-cols{grid-template-columns:1fr}.drawer{height:auto;margin:0;max-width:none;min-height:100vh}}
