@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600;700&family=Montserrat:wght@400;500;600;700;800&display=swap');
:root{--green:#0B6048;--gold:#C7A23A;--rose:#CC4D70;--ink:#231F20;--cream:#FFFEFA;--line:#e7e0d6;--muted:#706962;--shadow:0 18px 50px rgba(34,31,32,.1)}
*{box-sizing:border-box;margin:0;padding:0}body{font-family:Montserrat,Arial,sans-serif;background:#f6f3ed;color:var(--ink);line-height:1.5}a{color:inherit}button,input,select,textarea{font:inherit}.admin-shell{display:grid;grid-template-columns:245px 1fr;min-height:100vh}.sidebar{background:linear-gradient(180deg,#0b6048,#063d2f);color:#fff;padding:24px 18px;position:sticky;top:0;height:100vh}.sidebar-brand{display:flex;align-items:center;gap:11px;margin-bottom:28px}.sidebar-brand img{width:48px;height:48px;border-radius:12px;object-fit:cover;object-position:center 33%;border:1px solid rgba(255,255,255,.18)}.sidebar-brand strong{font-family:Cinzel,serif;font-size:13px;letter-spacing:.08em}.sidebar-brand span{display:block;color:#e5c96d;font-size:9px;letter-spacing:.11em;margin-top:3px}.side-nav{display:grid;gap:8px}.side-nav a{text-decoration:none;padding:12px 13px;border-radius:12px;font-size:13px;font-weight:700;color:rgba(255,255,255,.76)}.side-nav a:hover,.side-nav a.active{background:rgba(255,255,255,.12);color:#fff}.sidebar-foot{position:absolute;bottom:22px;left:18px;right:18px}.sidebar-foot a{display:block;text-decoration:none;color:#f2d780;font-size:12px;margin-top:8px}.admin-main{padding:32px;min-width:0}.admin-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:25px}.admin-top .eyebrow{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:800}.admin-top h1{font-family:Cinzel,serif;color:var(--green);font-size:30px;margin-top:5px}.admin-top p{color:var(--muted);font-size:13px;margin-top:6px}.top-actions{display:flex;gap:9px;flex-wrap:wrap}.admin-btn{display:inline-flex;align-items:center;justify-content:center;border:0;text-decoration:none;border-radius:11px;padding:10px 14px;font-weight:800;font-size:12px;cursor:pointer;background:var(--green);color:#fff}.admin-btn.secondary{background:#fff;color:var(--green);border:1px solid var(--line)}.admin-btn.danger{background:#8f3442}.admin-btn.small{padding:8px 10px;font-size:11px}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:22px}.kpi{background:#fff;border:1px solid var(--line);border-radius:17px;padding:18px;box-shadow:0 8px 24px rgba(30,28,26,.03)}.kpi span{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-weight:800}.kpi strong{display:block;font-family:Cinzel,serif;font-size:29px;color:var(--green);margin-top:5px}.panel{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);overflow:hidden}.panel-head{padding:17px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:15px}.panel-head h2{font-family:Cinzel,serif;font-size:14px;color:var(--green)}.filters{display:flex;gap:9px;flex-wrap:wrap}.filters input,.filters select{border:1px solid var(--line);border-radius:10px;padding:9px 10px;background:#fffefa;min-width:140px;font-size:12px;outline:none}.filters input:focus,.filters select:focus{border-color:var(--gold)}.table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse;min-width:1000px}.admin-table th,.admin-table td{padding:12px 13px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:12px}.admin-table th{background:#faf8f4;font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#615a54;position:sticky;top:0}.admin-table tr:hover td{background:#fffdf8}.admin-table strong{color:var(--green)}.subtle{color:var(--muted);font-size:11px}.badge{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800;background:#ece7df;color:#5f5852;white-space:nowrap}.badge.green{background:#e1f2e9;color:#186047}.badge.rose{background:#f8e3e8;color:#9b3c50}.badge.gold{background:#f7edcb;color:#745b0c}.inline-form{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.inline-form select,.inline-form input{border:1px solid var(--line);border-radius:8px;padding:7px 8px;font-size:11px;max-width:145px}.details{max-width:290px;white-space:normal}.notes{width:200px;min-height:54px;border:1px solid var(--line);border-radius:8px;padding:8px;font-size:11px;resize:vertical}.empty{padding:50px;text-align:center;color:var(--muted)}.alert{padding:11px 14px;border-radius:11px;margin-bottom:15px;font-size:12px;font-weight:700}.alert.success{background:#e4f4ea;color:#195d43}.alert.error{background:#fbe5e7;color:#8c3341}.alert.info{background:#fff0c8;color:#735611}
.admin-login{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 70% 20%,rgba(199,162,58,.16),transparent 35%),linear-gradient(135deg,#0b6048,#063d2f)}.login-card{width:min(430px,100%);background:#fff;border-radius:26px;padding:32px;box-shadow:0 28px 80px rgba(0,0,0,.25)}.login-logo{width:120px;height:150px;object-fit:cover;object-position:center 33%;border-radius:18px;margin:0 auto 18px}.login-card .eyebrow{text-align:center;color:var(--gold);text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:800}.login-card h1{text-align:center;font-family:Cinzel,serif;color:var(--green);font-size:24px;margin:6px 0 22px}.admin-form{display:grid;gap:14px}.admin-form label{font-size:11px;font-weight:800;color:var(--green)}.admin-form input{width:100%;margin-top:6px;border:1px solid var(--line);border-radius:11px;padding:12px;outline:none}.login-note{font-size:10px;color:var(--muted);margin-top:17px;text-align:center}
@media(max-width:900px){.admin-shell{grid-template-columns:1fr}.sidebar{height:auto;position:static;padding:14px}.sidebar-brand{margin-bottom:10px}.side-nav{display:flex;overflow:auto}.side-nav a{white-space:nowrap}.sidebar-foot{position:static;margin-top:10px}.admin-main{padding:18px}.kpis{grid-template-columns:1fr 1fr}.admin-top{flex-direction:column}.panel-head{align-items:flex-start;flex-direction:column}}
@media(max-width:540px){.kpis{grid-template-columns:1fr}.admin-main{padding:12px}.admin-top h1{font-size:24px}}
