.adm{background:#eef1f4}
.adm-top{display:flex;flex-wrap:wrap;gap:14px;align-items:center;background:#111;color:#fff;padding:12px 20px}
.adm-brand{font-weight:900;color:var(--yellow)}
.adm-nav{display:flex;gap:14px;flex-wrap:wrap;margin-left:auto}
.adm-nav a{color:#fff;font-size:14px;padding:4px 8px;border-radius:6px}
.adm-nav a:hover{background:#333}
.adm-main{max-width:1200px;margin:0 auto;padding:22px 20px 60px}
.adm-form{display:grid;gap:12px;max-width:820px;background:#fff;padding:18px;border-radius:12px;box-shadow:var(--shadow);margin-bottom:18px}
.adm-form label{display:grid;gap:6px;font-weight:600;font-size:14px}
.adm-form label.inline{grid-auto-flow:column;justify-content:start;align-items:center;gap:8px}
.adm-form input,.adm-form select,.adm-form textarea{padding:9px;border:2px solid #dcdfe3;border-radius:8px;font:inherit}
.adm-form input:focus,.adm-form textarea:focus,.adm-form select:focus{border-color:var(--green);outline:none}
.login-box{max-width:420px;margin:60px auto}
.btn--sm{padding:6px 10px;font-size:13px;border-width:2px}
.btn--danger{background:#ffdede}
.flash{padding:12px 16px;border-radius:10px;margin-bottom:16px;font-weight:600}
.flash.ok{background:#dff5e4;border:2px solid var(--green)}
.flash.err{background:#ffe1e1;border:2px solid #c0392b}
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:16px 0}
.stat{background:#fff;border-radius:12px;padding:16px;box-shadow:var(--shadow);text-align:center}
.stat b{display:block;font-size:30px}
.stat span{color:#666;font-size:13px}
.quick{display:flex;gap:10px;margin:14px 0 26px}
.tbl{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:var(--shadow)}
.tbl th,.tbl td{padding:10px 12px;border-bottom:1px solid #eceff1;text-align:left;font-size:14px;vertical-align:top}
.tbl th{background:#f7f8fa;font-size:12px;text-transform:uppercase;letter-spacing:.5px}
.row-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.adm-tree{list-style:none;padding-left:18px;border-left:2px dashed #ccd}
.adm-tree__row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;background:#fff;padding:8px 12px;margin:6px 0;border-radius:10px;box-shadow:var(--shadow)}
.adm-filter{display:flex;gap:10px;align-items:center;margin-bottom:14px}
.adm-cmt{background:#fff;border-radius:12px;padding:14px;box-shadow:var(--shadow);margin-bottom:12px}
.adm-cmt__head{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}
.adm-cmt .raw{background:#f7f8fa;padding:10px;border-radius:8px;font-size:14px}
.editor__bar{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:6px}
.editor__bar button{border:2px solid #000;background:#fff;border-radius:6px;padding:5px 9px;cursor:pointer;font:700 13px/1 inherit}
.editor textarea{width:100%;font:14px/1.5 ui-monospace,Consolas,monospace}
.img-list{list-style:none;padding:0;display:grid;gap:10px}
.img-item{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:#fff;padding:10px;border-radius:10px;box-shadow:var(--shadow)}
.img-item.dragging{opacity:.4}
.img-item img{width:120px;height:90px;object-fit:cover;border-radius:6px}
.grip{cursor:grab;font-size:20px;color:#888}
.img-meta{display:flex;gap:6px;flex-wrap:wrap}
.crumbs{display:flex;gap:8px;flex-wrap:wrap;font-size:14px;color:#666;margin:14px 0}
.hint,.empty{color:#666}