:root{--a-bg:#f6f6f7;--a-surface:#fff;--a-text:#1f2225;--a-muted:#6b7177;--a-border:#dcdfe3;--a-accent:#1f2225;--a-danger:#c8372d;--a-ok:#17785a;--a-radius:8px}*{box-sizing:border-box}body{background:var(--a-bg);color:var(--a-text);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.5}a{color:inherit}.admin{grid-template-columns:220px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--a-surface);border-right:1px solid var(--a-border);padding:20px 14px}.sidebar__brand{letter-spacing:.12em;text-transform:uppercase;padding:6px 10px 18px;font-size:13px;font-weight:600}.sidebar__link{color:var(--a-text);border-radius:6px;margin-bottom:2px;padding:9px 10px;text-decoration:none;display:block}.sidebar__link:hover{background:var(--a-bg)}.sidebar__link.is-active{background:var(--a-text);color:#fff}.sidebar__foot{border-top:1px solid var(--a-border);margin-top:26px;padding-top:16px}.main{max-width:1100px;padding:26px 30px 70px}.page-title{justify-content:space-between;align-items:center;gap:16px;margin:0 0 20px;display:flex}.page-title h1{margin:0;font-size:22px}.card{background:var(--a-surface);border:1px solid var(--a-border);border-radius:var(--a-radius);margin-bottom:18px;padding:18px}.card h2{margin:0 0 14px;font-size:15px}label{color:var(--a-muted);margin-bottom:5px;font-size:13px;display:block}input[type=text],input[type=number],input[type=password],input[type=search],textarea,select{border:1px solid var(--a-border);width:100%;font:inherit;color:var(--a-text);background:#fff;border-radius:6px;padding:9px 11px}input:focus,textarea:focus,select:focus{outline:2px solid var(--a-text);outline-offset:-1px}textarea{min-height:130px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.field{margin-bottom:14px}.row{flex-wrap:wrap;gap:12px;display:flex}.row>*{flex:1;min-width:150px}.btn{border:1px solid var(--a-text);background:var(--a-text);color:#fff;font:inherit;cursor:pointer;white-space:nowrap;border-radius:6px;padding:9px 16px;text-decoration:none;display:inline-block}.btn:hover{opacity:.88}.btn--ghost{color:var(--a-text);border-color:var(--a-border);background:#fff}.btn--danger{color:var(--a-danger);border-color:var(--a-danger);background:#fff}.btn--sm{padding:5px 10px;font-size:13px}table{border-collapse:collapse;background:var(--a-surface);width:100%}th,td{text-align:left;border-bottom:1px solid var(--a-border);vertical-align:middle;padding:10px 12px}th{text-transform:uppercase;letter-spacing:.06em;color:var(--a-muted);font-size:12px}.table-wrap{border:1px solid var(--a-border);border-radius:var(--a-radius);overflow-x:auto}.thumb{object-fit:cover;background:var(--a-bg);border-radius:4px;width:46px;height:58px;display:block}.pill{border:1px solid var(--a-border);color:var(--a-muted);border-radius:999px;padding:2px 9px;font-size:12px;display:inline-block}.pill--ok{color:var(--a-ok);border-color:currentColor}.pill--out{color:var(--a-danger);border-color:currentColor}.flash{border-radius:var(--a-radius);border:1px solid;margin-bottom:16px;padding:11px 14px}.flash--ok{color:var(--a-ok);background:#eaf7f1;border-color:#a9dcc7}.flash--err{color:var(--a-danger);background:#fdeceb;border-color:#f0b6b1}.muted{color:var(--a-muted);font-size:13px}.images{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;display:grid}.image-card{border:1px solid var(--a-border);background:#fff;border-radius:6px;overflow:hidden}.image-card img{aspect-ratio:3/4;object-fit:cover;width:100%;display:block}.image-card__bar{justify-content:space-between;align-items:center;gap:4px;padding:6px;display:flex}.checkbox-list{border:1px solid var(--a-border);border-radius:6px;gap:6px;max-height:320px;padding:12px;display:grid;overflow-y:auto}.checkbox-list label{color:var(--a-text);cursor:pointer;align-items:center;gap:9px;margin:0;font-size:14px;display:flex}.checkbox-list input{width:auto}.login{place-items:center;min-height:100vh;padding:20px;display:grid}.login__box{background:var(--a-surface);border:1px solid var(--a-border);border-radius:var(--a-radius);width:min(380px,100%);padding:30px}@media (width<=780px){.admin{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid var(--a-border)}.main{padding:18px 16px 60px}}
