:root{--bg:#fff7fa;--fg:#2a1620;--card:#fff;--ac:#d9407f;--ac2:#b52d66;--mut:#7b6670;--bd:#f0d9e3;--ok:#2e9e4f;--warn:#d9a400;--err:#c8102e;--info:#2f6fd0}
@media(prefers-color-scheme:dark){:root{--bg:#1a1216;--fg:#f5e9ef;--card:#261a20;--mut:#b49aa6;--bd:#3a2a32;--ac:#f06aa0;--ac2:#ff8fb8}}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.4 system-ui,sans-serif}
header{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-bottom:1px solid var(--bd);position:sticky;top:0;background:var(--bg);z-index:5}
.brand{font-weight:700;color:var(--ac);text-decoration:none;font-size:1.2rem;white-space:nowrap;display:inline-flex;align-items:center;gap:8px}.logo{width:30px;height:30px;border-radius:8px}
nav{display:flex;gap:14px;align-items:center}nav a,nav .lnk{display:inline-flex;align-items:center;gap:5px;text-decoration:none}
a{color:var(--ac)}main{max-width:1100px;margin:0 auto;padding:16px}.lnk{background:none;border:0;color:var(--ac);cursor:pointer;font:inherit;padding:0}
.card{background:var(--card);border:1px solid var(--bd);border-radius:14px;padding:14px}
input,select,textarea,button{font:inherit;padding:10px 12px;border-radius:10px;border:1px solid var(--bd);background:var(--card);color:var(--fg)}
button,.btn{background:var(--ac);color:#fff;border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:11px 16px;border-radius:12px;text-decoration:none;font-weight:600}
.btn.alt,button.alt{background:transparent;color:var(--ac);border:1.5px solid var(--ac)}.btn.grey{background:#6b6068}
.btn.danger,button.danger{background:var(--err)}.btn.big{width:100%;padding:16px;font-size:1.15rem}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.filters input{flex:1;min-width:160px}.filters select{max-width:48%}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.item{padding:0;overflow:hidden;text-decoration:none;color:inherit;display:flex;flex-direction:column;position:relative}
.item img,.noimg{width:100%;aspect-ratio:1/1;object-fit:cover;background:var(--bd)}.noimg{display:grid;place-items:center}.noimg .ic{width:2.4rem;height:2.4rem;color:var(--mut)}
.meta{padding:8px 10px;display:flex;flex-direction:column;gap:2px}.meta small,.stats,.mut{color:var(--mut)}.meta b{overflow-wrap:anywhere}
.qty{position:absolute;top:8px;right:8px;background:var(--ac);color:#fff;border-radius:999px;padding:1px 9px;font-weight:700;font-size:.85rem}
.tag{display:inline-block;background:var(--bd);border-radius:999px;padding:0 9px;font-size:.8rem;color:var(--fg)}.tag.w{background:var(--ac);color:#fff}
.stats{display:flex;gap:16px;flex-wrap:wrap;margin:6px 0 12px}.stats b{color:var(--fg);font-size:1.15rem}
.pager{display:flex;justify-content:space-between;align-items:center;margin:16px 0}
.detail{display:grid;gap:16px;grid-template-columns:1fr}@media(min-width:760px){.detail{grid-template-columns:1.1fr 1fr}}
.photos .big{width:100%;border-radius:14px;margin-bottom:10px}.thumbs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.thumbs .t{position:relative}.thumbs img{width:84px;height:84px;object-fit:cover;border-radius:10px;display:block}
.thumbs form{position:absolute;top:2px;right:2px}.thumbs form button{padding:2px 6px;border-radius:999px;background:rgba(0,0,0,.55);font-size:.8rem}
form.card label{display:block;margin-bottom:10px;color:var(--mut);font-size:.9rem}
form.card input,form.card select,form.card textarea{width:100%;display:block;margin-top:4px;color:var(--fg)}
form.card input[type=checkbox]{display:inline-block;width:auto;margin:0 6px 0 0}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}
details{margin:6px 0 12px}summary{cursor:pointer;color:var(--ac);font-weight:600;padding:6px 0}
.login{max-width:320px;margin:12vh auto;display:grid;gap:10px}.err{color:var(--err)}
.chk{margin:.4em 0;padding:8px 10px;border-radius:10px;background:var(--card);border:1px solid var(--bd)}.chk.ok{border-color:var(--ok)}.chk.err{border-color:var(--err)}.chk.warn{border-color:var(--warn)}.chk.info{border-color:var(--info)}
.warn{border-color:var(--warn)}.v.ok{border-color:var(--ok)}.v.new{border-color:var(--info)}.v.warn{border-color:var(--warn)}.v h2{margin:.2em 0}
.chk .ic{margin-right:4px}.chk.ok .ic,.v.ok h2 .ic{color:var(--ok)}.chk.err .ic{color:var(--err)}.chk.warn .ic,.v.warn h2 .ic{color:var(--warn)}.chk.info .ic,.v.new h2 .ic{color:var(--info)}
table{border-collapse:collapse;width:100%;margin:8px 0 18px}td,th{border-bottom:1px solid var(--bd);padding:6px 8px;text-align:left;font-size:.92rem}
.ic{width:1.2em;height:1.2em;vertical-align:-.2em;flex:none}h2 .ic{margin-right:4px}
.cam img{max-width:260px;border-radius:12px;display:block;margin-top:10px}
.tools{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.tools a.card{text-decoration:none;color:inherit;display:flex;gap:10px;align-items:flex-start}
.tools .ic{width:1.6em;height:1.6em;color:var(--ac)}.tools small{color:var(--mut);display:block}
.camera{display:flex;gap:10px;align-items:center;margin-bottom:12px}.camera .btn{flex:1;padding:18px}.camera img{width:84px;height:84px;object-fit:cover;border-radius:12px}
.serie{display:flex;gap:8px;overflow-x:auto;padding:4px 0}.serie a{flex:none;text-align:center;font-size:.75rem;color:var(--mut);text-decoration:none;width:64px}.serie img{width:64px;height:64px;border-radius:10px;object-fit:cover;display:block}
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:18px;background:var(--ok);color:#fff;padding:10px 16px;border-radius:12px;z-index:9;box-shadow:0 4px 14px rgba(0,0,0,.25)}
.sticky-actions{display:grid;gap:8px;grid-template-columns:1fr}.hint{font-size:.85rem;color:var(--mut);margin:.2em 0 .8em}
@media(max-width:520px){header nav .lbl{display:none}header nav .ic{width:1.5em;height:1.5em}header nav{gap:16px}}
[hidden]{display:none!important}
input[type=file]{max-width:100%}
form.card label.btn{color:#fff;font-size:1rem;margin-bottom:0}form.card label.btn.alt{color:var(--ac)}
