:root{
  --green:#2f6f4e; --green-d:#245a3f; --leaf:#8bbf9f;
  --bg:#f4f6f2; --card:#fff; --ink:#1e2a22; --muted:#6d7d72;
  --line:#e2e8e1; --danger:#c0392b; --warn:#c9821a;
  --radius:12px; --shadow:0 2px 10px rgba(30,42,34,.06);
}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  background:var(--bg);color:var(--ink);line-height:1.5}
a{color:var(--green);text-decoration:none}
a:hover{text-decoration:underline}

.topbar{display:flex;align-items:center;justify-content:space-between;
  background:var(--green);color:#fff;padding:.7rem 1.2rem;flex-wrap:wrap;gap:.5rem}
.brand a{color:#fff;font-weight:700;font-size:1.15rem}
.mainnav{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.mainnav a{color:#e9f3ec}
.mainnav .user{color:#cfe6d7;font-size:.9rem}
.btn-logout{background:rgba(255,255,255,.15);padding:.3rem .7rem;border-radius:8px}

.wrap{max-width:1000px;margin:1.5rem auto;padding:0 1rem}
.foot{text-align:center;color:var(--muted);padding:2rem;font-size:.85rem}

h1{font-size:1.5rem;margin:.2rem 0 1rem}
h2{font-size:1.15rem;margin:0 0 .8rem}

.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow);padding:1.2rem;margin-bottom:1.2rem}
.card-narrow{max-width:440px;margin:2rem auto}

.flash{background:#e7f4ec;border:1px solid var(--leaf);color:var(--green-d);
  padding:.7rem 1rem;border-radius:8px;margin-bottom:1rem}
.err{background:#fdecea;border:1px solid #f0b7b0;color:var(--danger);
  padding:.6rem .9rem;border-radius:8px}
.muted{color:var(--muted);font-size:.92rem}

label{display:block;margin:.6rem 0;font-weight:600;font-size:.92rem}
input,select,textarea{width:100%;padding:.55rem .7rem;margin-top:.25rem;
  border:1px solid var(--line);border-radius:8px;font:inherit;font-weight:400;background:#fff}
input:focus,select:focus,textarea:focus{outline:2px solid var(--leaf);border-color:var(--green)}

.btn{display:inline-block;background:#eef3ee;color:var(--ink);border:1px solid var(--line);
  padding:.5rem .9rem;border-radius:8px;cursor:pointer;font:inherit}
.btn:hover{background:#e2ebe3;text-decoration:none}
.btn-primary{background:var(--green);color:#fff;border-color:var(--green)}
.btn-primary:hover{background:var(--green-d)}
.btn-tiny{font-size:.75rem;padding:.2rem .5rem;background:#fbece9;color:var(--danger);
  border:1px solid #f0b7b0;border-radius:6px;cursor:pointer;margin-top:.3rem}

.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:1.2rem}
.stat{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow);padding:1.1rem;text-align:center;color:var(--ink)}
.stat:hover{text-decoration:none;border-color:var(--leaf)}
.stat .num{display:block;font-size:2rem;font-weight:700;color:var(--green)}

.tbl{width:100%;border-collapse:collapse}
.tbl th,.tbl td{text-align:left;padding:.6rem .5rem;border-bottom:1px solid var(--line);vertical-align:top}
.tbl th{font-size:.8rem;text-transform:uppercase;color:var(--muted);letter-spacing:.03em}

.badge{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.78rem;font-weight:600}
.s-new,.s-pending{background:#fff3e0;color:var(--warn)}
.s-reviewed,.s-in_progress{background:#e3eefb;color:#2c6cb0}
.s-done,.s-converted{background:#e7f4ec;color:var(--green-d)}
.s-cancelled,.s-rejected{background:#fdecea;color:var(--danger)}

.filters{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}
.chip{padding:.35rem .8rem;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:.88rem}
.chip.on{background:var(--green);color:#fff;border-color:var(--green)}

.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.7rem;margin-bottom:1rem}
.gallery img,.gallery video{width:100%;height:150px;object-fit:cover;border-radius:8px;background:#000}
.gallery figure{margin:0}

.row-between{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}
.row-gap{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1rem}
.inline{display:inline-flex;gap:.4rem;align-items:center;margin:0}
.upload-row{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin-top:.6rem}
.upload-row input[type=file]{width:auto}

.grid2{display:grid;grid-template-columns:1fr 1fr;gap:.4rem 1rem}
.grid2 .full{grid-column:1/-1}

.dropdown{position:relative}
.dropdown summary{list-style:none}
.dropdown summary::-webkit-details-marker{display:none}
.dropdown .pop{position:absolute;right:0;top:110%;z-index:10;background:#fff;
  border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);
  padding:1rem;width:290px}

@media(max-width:600px){.grid2{grid-template-columns:1fr}}
