:root{--ink:#0b0a09;--ink2:#151311;--paper:#faf8f5;--line:#eeeae3;--accent:#BB4A16;--accent2:#7A2D0C;--warm:#D9560F;--soft:#fbeee3;--gray:#7a7268;--gray7:#3c362f}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,system-ui,sans-serif;background:var(--paper);color:var(--ink);font-size:14px;line-height:1.5}a{text-decoration:none;color:inherit}h1{font-size:22px;font-weight:800;letter-spacing:-.01em}h3{font-size:14.5px;font-weight:700}code,.mono{font-family:ui-monospace,Menlo,monospace;font-size:12.5px}.muted{color:var(--gray)}.small{font-size:12px}.small-link{font-size:12.5px;display:inline-block;margin-bottom:6px}.small-link:hover{color:var(--accent)}.shell{display:flex;min-height:100vh}.side{width:230px;flex-shrink:0;padding:22px 16px;display:flex;flex-direction:column;gap:22px;background:linear-gradient(170deg,#171310,#0b0a09);color:#fff;position:sticky;top:0;height:100vh}.brand{font-size:15.5px;font-weight:600;color:#fff}.brand b{background:linear-gradient(135deg,#e8792f,#bb4a16);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:800}.brand.big{font-size:20px;margin-bottom:6px}.side nav{display:flex;flex-direction:column;gap:4px;flex:1}.side nav a{padding:10px 14px;border-radius:9px;color:#ffffffa6;font-weight:600;font-size:13.5px}.side nav a:hover{background:#ffffff12;color:#fff}.side nav a.active{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff}.logout{align-self:stretch}.main{flex:1;padding:30px 36px;max-width:1100px}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px;flex-wrap:wrap}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;margin-bottom:18px}.card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;gap:12px;flex-wrap:wrap}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:18px}.stat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px}.stat-label{font-size:11.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--gray)}.stat-value{font-size:26px;font-weight:800;margin-top:4px;background:linear-gradient(135deg,var(--warm),var(--accent2));-webkit-background-clip:text;background-clip:text;color:transparent}table{width:100%;border-collapse:collapse;font-size:13.5px}th{font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--gray);text-align:left;padding:8px 10px;border-bottom:1px solid var(--line)}td{padding:11px 10px;border-bottom:1px solid var(--line);vertical-align:middle}tr:last-child td{border-bottom:none}.actions{display:flex;gap:8px;justify-content:flex-end}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;padding:9px 16px;border-radius:9px;border:1px solid var(--line);background:#fff;font:inherit;font-weight:600;font-size:13px;transition:.15s;color:var(--ink)}.btn:hover{border-color:#d9c9b8;background:var(--soft)}.btn.primary{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border:none}.btn.primary:hover{opacity:.92}.btn.small{padding:6px 12px;font-size:12px}.btn.wide{width:100%}.btn.ghost{background:#ffffff0f;border-color:#fff3;color:#fff}.btn.ghost:hover{background:#ffffff24}.btn.danger{color:#c53030;border-color:#f0c4c4}.btn.danger:hover{background:#fdecec}.btn:disabled{opacity:.6;cursor:default}label{display:block;font-size:12px;font-weight:600;color:var(--gray7);margin:12px 0 5px}input,select,textarea{width:100%;font:inherit;font-size:13.5px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--paper);outline:none;transition:border .15s}input:focus,select:focus,textarea:focus{border-color:var(--accent)}textarea{resize:vertical;font-family:ui-monospace,Menlo,monospace;font-size:13px}.inline-form{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap}.inline-form>div{flex:1;min-width:220px}.inline-form label{margin-top:0}.post-form .two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.post-form button{margin-top:16px}.filters{display:flex;gap:8px}.filters input{width:180px}.filters select{width:auto}.badge{font-size:11px;font-weight:700;padding:3px 10px;border-radius:99px;text-transform:capitalize}.badge.active,.badge.published{background:#e6f4ea;color:#2f855a}.badge.paused,.badge.draft{background:var(--soft);color:var(--accent2)}.alert{padding:11px 14px;border-radius:9px;font-size:13px;margin-bottom:14px;background:#fdecec;color:#c53030;border:1px solid #f0c4c4}.alert.ok{background:#e6f4ea;color:#2f855a;border-color:#c6e6d0}.tabs{display:flex;gap:8px;margin-bottom:16px}.tabs button{font:inherit;font-weight:700;font-size:13px;padding:8px 16px;border-radius:99px;border:1px solid var(--line);background:#fff;cursor:pointer;color:var(--gray)}.tabs button.on{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border-color:transparent}.key-reveal .key-warn{font-weight:700;color:var(--accent2);margin-bottom:10px}.key-row{display:flex;gap:10px;align-items:center;background:var(--soft);border:1px solid #e9cdb8;border-radius:9px;padding:10px 12px}.key-row code{word-break:break-all;flex:1}.key-sub{margin:14px 0 6px;font-weight:600;font-size:12.5px;color:var(--gray7)}.key-reveal pre{background:#0b0a09;color:#ffb37a;border-radius:9px;padding:12px;font-size:12px;overflow:auto;white-space:pre-wrap}.danger-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}.danger-row:last-child{border-bottom:none}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(700px 400px at 80% -10%,#3a1608 0%,transparent 60%),linear-gradient(180deg,#0b0a09,#12100d)}.login-card{width:360px;background:#fff;border-radius:16px;padding:32px;box-shadow:0 30px 70px -30px #0009}.login-card .muted{margin-bottom:8px}.login-card button{margin-top:20px}@media(max-width:800px){.shell{flex-direction:column}.side{width:auto;height:auto;position:static;flex-direction:row;align-items:center}.side nav{flex-direction:row}.main{padding:20px}.post-form .two{grid-template-columns:1fr}}
