:root{--green:#1d5c2e;--lime:#9bd13c;--sun:#f2b705;--ink:#12201a;--paper:#f3f4f1;--road:#d9dcd8;--line:#c5c9c3}
*{box-sizing:border-box}body{margin:0;font:16px/1.5 Barlow,system-ui,sans-serif;color:var(--ink);background:var(--paper)}
h1,h2,h3,.brand,.bigtitle{font-family:'Barlow Condensed',sans-serif;font-weight:800;line-height:1}
.top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;padding:12px 20px;background:var(--green);color:#fff}
.brand{color:var(--lime);font-size:26px;text-decoration:none;letter-spacing:.5px}
nav a{color:#fff;margin-left:18px;text-decoration:none;font-weight:600}nav a:hover{color:var(--lime)}
main{max-width:1100px;margin:0 auto;padding:24px 16px}
.hero{text-align:center;padding-top:8vh}.lead{font-size:18px;margin:0 0 14px}
.bigtitle{display:inline-block;font-size:clamp(48px,12vw,130px);color:var(--green);text-decoration:none;padding:6px 28px;border:6px solid var(--green);border-radius:10px;background:#fff;margin:6px}
.bigtitle:hover{background:var(--lime)}.hint{color:#4b5a51}
input,select,button,textarea{font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:#fff}
button,.btn{background:var(--green);color:#fff;border:0;font-weight:600;cursor:pointer;text-decoration:none;display:inline-block;padding:10px 16px;border-radius:6px}
button:hover,.btn:hover{background:#15441f}.btn.alt{background:var(--sun);color:var(--ink)}.btn.red,button.red{background:#b3261e}
form.inline{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:18px 0}
.searchbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:14px 0}.searchbar input[type=text]{flex:1;min-width:220px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin-top:16px}
.card{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:var(--road)}
.card .row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px}
.price{font-family:'Barlow Condensed';font-weight:800;font-size:22px}
.dl{padding:8px 12px;border-radius:6px;font-weight:600;border:0;text-decoration:none;font-size:14px}
.dl.locked{background:#c9ccc7;color:#666;cursor:not-allowed}.dl.paid{background:#1fa347;color:#fff}
.sel{display:flex;gap:6px;align-items:center;padding:0 10px 10px;font-size:14px}
.bar{position:sticky;bottom:0;background:var(--ink);color:#fff;padding:12px 16px;display:flex;justify-content:space-between;align-items:center;margin-top:18px;border-radius:8px}
table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line)}th,td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:14px}th{background:var(--road)}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:14px 0}.stat{background:#fff;border:1px solid var(--line);padding:14px;border-radius:8px}.stat b{display:block;font:800 30px 'Barlow Condensed'}
.panel{background:#fff;border:1px solid var(--line);border-radius:8px;padding:16px;margin:16px 0}.panel form{display:grid;gap:8px;max-width:420px}
.msg{padding:10px 14px;border-radius:6px;background:#e4f3c9;margin:10px 0}.err{background:#fbd9d6}
.tag{padding:2px 8px;border-radius:99px;font-size:12px;font-weight:600}.pending{background:var(--sun)}.paid_t{background:#bfe8c9}.rejected{background:#f3c6c2}
.urow{display:flex;gap:10px;align-items:center;border-bottom:1px solid var(--line);padding:8px 0}.urow img{width:70px;height:70px;object-fit:cover;border-radius:4px}
.urow div{display:grid;gap:4px;flex:1}.loginbox{max-width:360px;margin:10vh auto}.loginbox form{display:grid;gap:10px}
.scroll{overflow-x:auto}
@media(max-width:600px){nav a{margin:0 12px 0 0}}
