/* ACCG admin theme */
:root{
    --a-primary:#003a5d;
    --a-secondary:#0072ce;
    --a-bg:#f1f4f8;
    --a-sidebar:#0a2a40;
    --a-line:#e2e8f0;
}
body.admin{background:var(--a-bg);font-family:"Segoe UI",system-ui,sans-serif}

/* Login */
body.admin-blank{background:linear-gradient(135deg,#003a5d,#0072ce);min-height:100vh;font-family:"Segoe UI",system-ui,sans-serif}
.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem}
.login-card{background:#fff;border-radius:.75rem;box-shadow:0 18px 50px rgba(0,0,0,.25);padding:2.25rem;width:100%;max-width:400px}
.login-brand{text-align:center;margin-bottom:1.5rem}
.login-brand .mark{font-size:2.25rem;font-weight:800;color:var(--a-primary);letter-spacing:1px}
.login-logo{max-width:100%;max-height:72px;height:auto;width:auto;object-fit:contain;margin:0 auto .5rem;display:block}

/* Shell */
.admin-shell{display:flex;min-height:100vh}
.admin-sidebar{width:250px;background:var(--a-sidebar);color:#cdd9e4;flex-shrink:0;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;z-index:1040}
.admin-brand{padding:1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}
.admin-brand a{color:#fff;text-decoration:none}
.admin-brand .mark{font-size:1.5rem;font-weight:800;letter-spacing:1px}
.admin-brand .sub{font-size:.75rem;text-transform:uppercase;letter-spacing:2px;opacity:.7}
.admin-nav{padding:1rem 0}
.admin-navlink{display:flex;align-items:center;gap:.7rem;padding:.7rem 1.5rem;color:#cdd9e4;font-weight:500;text-decoration:none}
.admin-navlink:hover{background:rgba(255,255,255,.07);color:#fff}
.admin-navlink.active{background:var(--a-secondary);color:#fff;box-shadow:inset 4px 0 0 var(--brand-accent,#f2a900)}
.admin-nav-section{font-size:.7rem;text-transform:uppercase;letter-spacing:1.5px;opacity:.5;padding:1rem 1.5rem .35rem}

.admin-main{margin-left:250px;flex:1;display:flex;flex-direction:column;min-width:0}
.admin-topbar{background:#fff;border-bottom:1px solid var(--a-line);padding:.85rem 1.5rem;display:flex;align-items:center;gap:1rem;position:sticky;top:0;z-index:1020}
.admin-title{font-size:1.3rem;font-weight:700;margin:0;color:var(--a-primary)}
.admin-user{font-size:.9rem;color:#475569}
.admin-content{padding:1.75rem 1.5rem}

/* Stat cards */
.stat-card{display:flex;align-items:center;gap:1rem;background:#fff;border:1px solid var(--a-line);border-radius:.6rem;padding:1.1rem 1.25rem;text-decoration:none;color:inherit;transition:box-shadow .15s,transform .15s}
.stat-card:hover{box-shadow:0 8px 22px rgba(0,0,0,.1);transform:translateY(-2px)}
.stat-icon{width:48px;height:48px;border-radius:.5rem;display:flex;align-items:center;justify-content:center;font-size:1.4rem;color:var(--a-primary)}
.stat-num{font-size:1.6rem;font-weight:800;line-height:1;color:var(--a-primary)}
.stat-label{font-size:.85rem;color:#64748b}

.card{border:1px solid var(--a-line);border-radius:.6rem;box-shadow:0 1px 3px rgba(0,0,0,.04)}
.card-header{background:#fff;font-weight:700;color:var(--a-primary);border-bottom:1px solid var(--a-line)}
.form-actions{margin-top:1.5rem;display:flex;gap:.5rem;align-items:center}
textarea.code{font-family:"Cascadia Code",Consolas,monospace;font-size:.9rem}
.division-checklist{max-height:340px;overflow-y:auto;border:1px solid var(--a-line);border-radius:.4rem;padding:.75rem}
.img-preview img{max-width:100%;max-height:160px;border:1px solid var(--a-line);border-radius:.4rem;display:block}
.admin-brand-logo{max-width:100%;max-height:46px;height:auto;width:auto;object-fit:contain;display:block}
.hero-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem}
.hero-thumb{position:relative;border:1px solid var(--a-line);border-radius:.5rem;overflow:hidden;aspect-ratio:24/10;background:#f8fafc}
.hero-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.hero-thumb-tools{position:absolute;top:.4rem;right:.4rem;display:flex;gap:.25rem}
.hero-thumb-tools form{margin:0}
.hero-thumb-tools .btn{padding:.15rem .4rem;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.hero-order{position:absolute;bottom:.4rem;left:.4rem;background:rgba(0,0,0,.6);color:#fff;font-size:.75rem;font-weight:700;line-height:1;padding:.2rem .45rem;border-radius:1rem}
.btn-primary{background:var(--a-primary);border-color:var(--a-primary)}
.btn-primary:hover{background:var(--a-secondary);border-color:var(--a-secondary)}

/* Responsive sidebar */
@media(max-width:991px){
    .admin-sidebar{transform:translateX(-100%);transition:transform .2s}
    .admin-sidebar.open{transform:translateX(0)}
    .admin-main{margin-left:0}
}
