:root{--ink:#1c1a17;--muted:#78716a;--line:#e7e2da;--bg:#f6f4f0;--card:#fff;--brass:#a8834f;--ok:#2f7a4f;--warn:#b7791f;--bad:#b4433a;--info:#3b6aa8}
*{box-sizing:border-box}
body{margin:0;font:14px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--bg)}
a{color:inherit;text-decoration:none}
h1,h2,h3{margin:0}h2{font-size:16px}h3{font-size:15px;margin:18px 0 10px}
.side{position:fixed;inset:0 auto 0 0;width:250px;background:var(--ink);color:#cfc7bb;padding:18px 12px;overflow:auto;z-index:20;display:flex;flex-direction:column}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;color:#fff;font-size:16px;padding:6px 8px 18px}
.brand span{width:34px;height:34px;border-radius:50%;border:1.5px solid var(--brass);display:grid;place-items:center;font-family:Georgia,serif;color:#d6b680;font-size:18px}
.brand small{margin-left:auto;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--brass)}
.nav-g{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#7d7468;margin:14px 10px 6px}
.side a{display:flex;align-items:center;gap:6px;padding:9px 10px;border-radius:8px;transition:.15s}
.side a:hover{background:#2c2925;color:#fff}.side a.on{background:var(--brass);color:#fff}
.nb{margin-left:auto;background:#d14f43;color:#fff;font-size:11px;border-radius:9px;padding:0 7px;font-weight:700}
.side-foot{margin-top:auto;border-top:1px solid #34302b;padding-top:10px}
.main{margin-left:250px;min-height:100vh}
.top{position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:14px;padding:14px 24px}
.top h1{font-size:19px;font-weight:650}.who{margin-left:auto;color:var(--muted)}
.menu{display:none;border:0;background:var(--bg);width:38px;height:38px;border-radius:8px;font-size:18px;cursor:pointer}
.content{padding:24px;max-width:1400px}
.panel{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:18px;margin-bottom:18px}
.ph{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.ph a{color:var(--brass);font-weight:600}
.cols{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;align-items:start}
.stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin-bottom:18px}
.stat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;transition:.15s}
.stat:hover{border-color:var(--brass);transform:translateY(-2px)}
.stat b{display:block;font-size:24px;font-weight:700}.stat span{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.06em}
.stat.dark{background:var(--ink);color:#fff;grid-column:span 2}.stat.dark span{color:#bfb6a8}
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.filters{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.b{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border-radius:8px;border:1px solid var(--line);background:#fff;font:inherit;font-weight:600;cursor:pointer;white-space:nowrap;transition:.15s}
.b:hover{border-color:var(--ink)}.b.primary{background:var(--ink);color:#fff;border-color:var(--ink)}.b.primary:hover{background:var(--brass);border-color:var(--brass)}
.b.danger{color:var(--bad);border-color:#efcfcb}.b.danger:hover{background:var(--bad);color:#fff}.b.ghost{background:transparent}
.b.sm{padding:5px 10px;font-size:12.5px}
input,select,textarea{font:inherit;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:#fff;width:100%;outline:0}
input:focus,select:focus,textarea:focus{border-color:var(--brass);box-shadow:0 0 0 3px rgba(168,131,79,.15)}
input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--brass)}
.filters input,.filters select,.toolbar>div>input{width:auto;min-width:160px}
textarea.code{font-family:ui-monospace,Menlo,monospace;font-size:12.5px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}
.f{display:flex;flex-direction:column;gap:5px;margin-bottom:4px}.f.full{grid-column:1/-1}
.f label{font-size:12px;font-weight:600;color:#4a453f}
.checks{flex-direction:row;flex-wrap:wrap;gap:18px;align-items:center}
.ck{display:inline-flex;align-items:center;gap:7px;cursor:pointer;font-weight:500!important;font-size:13.5px!important}
.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.hint{color:var(--muted);font-size:13px}
.tw{overflow-x:auto}
.t{width:100%;border-collapse:collapse}
.t th{text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600;padding:9px 10px;border-bottom:1px solid var(--line);white-space:nowrap}
.t td{padding:10px;border-bottom:1px solid #f0ece6;vertical-align:middle}
.t tr:hover td{background:#fbfaf7}.t tr.unread td{background:#fdf8ef;font-weight:600}
.t small{color:var(--muted)}
.t input:not([type=checkbox]),.t textarea{min-width:120px}
.nowrap{white-space:nowrap}
.empty{text-align:center;color:var(--muted);padding:30px!important}
.thumb{width:52px;height:52px;object-fit:cover;border-radius:8px;background:#eee;display:block}
.thumb-lg{width:140px;height:140px;object-fit:cover;border-radius:10px;margin-bottom:6px}
.mini{width:100%;max-width:120px;padding:7px 9px}.mini.red{border-color:var(--bad);background:#fdf1f0}.mini.amber{border-color:var(--warn);background:#fdf7ea}
.pill{display:inline-block;padding:2px 10px;border-radius:20px;font-size:11.5px;font-weight:700;background:#eee;color:#555}
.pill.ok{background:#e4f3ea;color:var(--ok)}.pill.warn{background:#fcf0d9;color:var(--warn)}.pill.bad{background:#f7e2df;color:var(--bad)}.pill.info{background:#e5edf8;color:var(--info)}
.pv{display:flex;gap:6px;flex-wrap:wrap}.pv img{width:64px;height:64px;object-fit:cover;border-radius:6px}
.gal{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.gal label,.gal a{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:12px}
.gal img{width:90px;height:90px;object-fit:cover;border-radius:8px}
.pdf{width:90px;height:90px;display:grid;place-items:center;background:#f3efe8;border-radius:8px;font-weight:700}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}
.tiles.wide{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.tile{position:relative;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}
.tile img{width:100%;aspect-ratio:4/3;object-fit:cover}
.tile>div{padding:10px;display:flex;flex-direction:column;gap:4px}.tile small{color:var(--muted)}
.tile .b{align-self:flex-start;margin-top:4px}
.tick-sel{position:absolute;top:8px;left:8px;background:#fff;border-radius:6px;padding:3px 5px;display:flex}
.dl{display:grid;grid-template-columns:150px 1fr;gap:8px 14px;margin:0}.dl dt{color:var(--muted)}.dl dd{margin:0;font-weight:500}
.msg{background:var(--bg);padding:16px;border-radius:10px;margin-top:16px;white-space:normal}
.quick{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.alert{padding:12px 16px;border-radius:10px;margin-bottom:16px;font-weight:500}.alert-success{background:#e4f3ea;color:#1c5a37}.alert-error{background:#f7e2df;color:#8b2c24}
.fb{border:1px dashed var(--line);border-radius:10px;padding:12px;background:#fcfbf8}
.fb-head,.fb-row{display:grid;grid-template-columns:1.3fr 1fr 1.5fr 1fr 40px 40px;gap:8px;align-items:start}
.fb-head{font-size:11px;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:6px}
.fb-row{margin-bottom:8px}.fb-row textarea{resize:vertical}.fb-row .ck{justify-content:center;padding-top:10px}
code{background:#f1ede6;padding:2px 6px;border-radius:5px}
hr{border:0;border-top:1px solid var(--line);margin:18px 0}
.login{display:grid;place-items:center;min-height:100vh;background:linear-gradient(135deg,#1c1a17,#3a3329)}
.login-box{background:#fff;padding:32px;border-radius:16px;width:min(380px,92vw);box-shadow:0 30px 80px rgba(0,0,0,.4)}
.brand.big{color:var(--ink);font-size:20px;justify-content:center;flex-direction:column;text-align:center;gap:6px}
.brand.big small{margin:0}
.login .f{margin-bottom:14px}
@media (max-width:960px){
  .side{transform:translateX(-100%);transition:.3s}.side.open{transform:none;box-shadow:20px 0 60px rgba(0,0,0,.3)}
  .main{margin-left:0}.menu{display:block}.cols,.grid2{grid-template-columns:1fr}
  .content{padding:14px}.stat.dark{grid-column:auto}
  .fb-head{display:none}.fb-row{grid-template-columns:1fr 1fr;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff}
  .dl{grid-template-columns:1fr}.dl dt{margin-top:6px}
}
@media print{.side,.top,.toolbar,form .actions,.b{display:none!important}.main{margin:0}}
