/* Admin Layout */
.admin-layout{display:flex;margin-top:var(--nh);min-height:calc(100vh - var(--nh))}
.aside{width:240px;background:var(--b1);border-left:1px solid var(--bd);padding:18px 10px;position:fixed;top:var(--nh);right:0;bottom:0;overflow-y:auto;z-index:50}
.amn{flex:1;margin-right:240px;padding:24px}

.as-i{display:flex;align-items:center;gap:10px;padding:9px 14px;border-radius:var(--rs);color:var(--tx2);font-size:13px;font-weight:500;cursor:pointer;transition:all .3s;margin-bottom:2px}
.as-i:hover{background:rgba(255,255,255,.03);color:var(--tx)}
.as-i.on{background:var(--g-bg);color:var(--g);border:1px solid var(--g-br)}
.as-i .ic{font-size:16px;width:22px;text-align:center}

.at{display:none}
.at.on{display:block}

/* Admin Stats */
.asg{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:24px}
.asc{background:var(--gl);border:1px solid var(--bd);border-radius:var(--r);padding:18px;transition:all .3s}
.asc:hover{border-color:rgba(200,161,76,.15);box-shadow:var(--warm-glow)}
.asc-ic{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;margin-bottom:10px}
.asc-v{font-size:28px;font-weight:800}
.asc-l{font-size:12px;color:var(--tx2);margin-top:2px}

/* Admin Header */
.a-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:10px}
.a-hdr h2{font-size:20px;font-weight:700}
.a-hdr-btns{display:flex;gap:8px;flex-wrap:wrap}

/* Admin Forms in Modals */
.fgr{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fgr .fg.full{grid-column:1/-1}
@media(max-width:600px){.fgr{grid-template-columns:1fr}}

/* Color Input */
input[type="color"].fi{height:44px;padding:4px;cursor:pointer}

/* Checkbox */
.chk{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;color:var(--tx2)}
.chk input{accent-color:var(--g)}

/* Sync indicator */
.sync-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-left:6px;vertical-align:middle}
.sync-dot.ok{background:var(--ok)}
.sync-dot.pending{background:var(--wr);animation:pulse 1s infinite}
.sync-dot.err{background:var(--er)}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}

/* Live preview frame */
.preview-frame{border:1px solid var(--bd);border-radius:var(--rs);overflow:hidden;background:var(--b0);min-height:200px;margin-top:12px;padding:20px;position:relative}
.preview-label{position:absolute;top:8px;left:8px;font-size:10px;color:var(--tx3);background:var(--b2);padding:2px 8px;border-radius:4px}

/* Landing section builder */
.lp-section-card{background:var(--gl);border:1px solid var(--bd);border-radius:var(--r);padding:16px;margin-bottom:10px;display:flex;align-items:center;gap:12px;cursor:grab}
.lp-section-card:hover{border-color:rgba(200,161,76,.15)}
.lp-section-card .drag-handle{font-size:18px;color:var(--tx3);cursor:grab}
.lp-section-card .section-info{flex:1}
.lp-section-card .section-info strong{display:block;font-size:14px;margin-bottom:2px}
.lp-section-card .section-info span{font-size:11px;color:var(--tx3)}

/* Responsive Admin */
@media(max-width:900px){
  .aside{position:fixed;bottom:0;right:0;left:0;top:auto;width:100%;height:auto;display:flex;padding:6px;overflow-x:auto;gap:2px;border-top:1px solid var(--bd);border-left:none}
  .as-i{flex-direction:column;gap:2px;font-size:9px;padding:6px 8px;white-space:nowrap;min-width:60px;text-align:center}
  .as-i .ic{font-size:16px;width:auto}
  .amn{margin-right:0;padding:16px;padding-bottom:80px}
}
