*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#0f1117;color:#e0e0e0}.app{display:flex;min-height:100vh}.nav{width:220px;background:#1a1d27;padding:20px 0;display:flex;flex-direction:column;gap:4px;position:fixed;height:100vh;overflow-y:auto}.nav button{background:none;border:none;color:#888;padding:12px 24px;text-align:left;cursor:pointer;font-size:15px;transition:all .2s}.nav button:hover{color:#fff;background:#ffffff0d}.nav button.active{color:#4da6ff;background:#4da6ff1a;border-left:3px solid #4da6ff}.main{margin-left:220px;padding:32px;flex:1}h1{font-size:24px;margin-bottom:20px;color:#fff}h2{font-size:18px;margin:16px 0 12px;color:#ccc}.card{background:#1a1d27;border-radius:12px;padding:20px;margin-bottom:16px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:#1a1d27;border-radius:12px;padding:20px;text-align:center}.stat-card .num{font-size:36px;font-weight:700;color:#4da6ff}.stat-card .label{font-size:13px;color:#888;margin-top:4px}table{width:100%;border-collapse:collapse}th,td{padding:10px 12px;text-align:left;border-bottom:1px solid #2a2d37;font-size:14px}th{color:#888;font-weight:500}.badge{padding:2px 10px;border-radius:12px;font-size:12px;font-weight:500}.badge.planned{background:#333;color:#999}.badge.draft{background:#1a3a5a;color:#4da6ff}.badge.published{background:#1a3a2a;color:#4da64f}input,select,textarea{background:#0f1117;border:1px solid #333;color:#e0e0e0;border-radius:8px;padding:8px 12px;font-size:14px;width:100%}textarea{min-height:200px;font-family:Menlo,monospace;resize:vertical}button.btn{background:#4da6ff;color:#fff;border:none;border-radius:8px;padding:8px 18px;cursor:pointer;font-size:14px;transition:opacity .2s}button.btn:hover{opacity:.85}button.btn.secondary{background:#333}button.btn.danger{background:#c44}.log-box{background:#0a0c12;border-radius:8px;padding:16px;font-family:monospace;font-size:13px;max-height:400px;overflow-y:auto;white-space:pre-wrap;color:#aaa}.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.preview{background:#1a1d27;border-radius:8px;padding:20px;min-height:200px;overflow-y:auto}.preview h1{font-size:20px}.preview h2{font-size:16px}.preview p{margin:8px 0;line-height:1.6}.toolbar{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.gallery-item{border-radius:8px;overflow:hidden;cursor:pointer;background:#1a1d27}.gallery-item img{width:100%;aspect-ratio:16/9;object-fit:cover}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:100;cursor:pointer}.lightbox img{max-width:90vw;max-height:90vh;border-radius:8px}.checkbox-cell{width:40px}.modern-background{position:relative;isolation:isolate;background-color:#090e1b;background-image:radial-gradient(ellipse at 12% 12%,rgba(65,105,225,.26),transparent 48%),radial-gradient(ellipse at 88% 22%,rgba(139,80,220,.2),transparent 44%),radial-gradient(ellipse at 65% 95%,rgba(24,153,173,.12),transparent 46%),linear-gradient(145deg,#0c1528,#0c1020 55%,#101425)}.modern-background:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background-image:linear-gradient(rgba(160,183,230,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(160,183,230,.045) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:linear-gradient(to bottom,#000,transparent 85%);mask-image:linear-gradient(to bottom,#000,transparent 85%)}.dashboard-shell .nav{z-index:1;background:#0f1524ed;border-right:1px solid rgba(164,186,231,.1)}.dashboard-shell .card,.dashboard-shell .stat-card{background:linear-gradient(135deg,#1f2a41e0,#141c2ef0);border:1px solid rgba(164,186,231,.13);box-shadow:0 12px 32px #0206112e,inset 0 1px #ffffff06}.dashboard-shell .stat-card .label{color:#a4aec2}.login-shell>form{background:linear-gradient(145deg,#192338f5,#101829f7)!important;border-color:#a4bae72e!important;box-shadow:0 28px 80px #02061173,inset 0 1px #ffffff0a!important;max-width:calc(100vw - 32px)}
