:root{--green:#087a43;--green2:#0ba35a;--ink:#14231b;--muted:#607167;--line:#dce7e0;--bg:#f5f8f6;--white:#fff;--danger:#b42318;--warning:#b54708}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 Inter,system-ui,-apple-system,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.shell{max-width:1180px;margin:auto;padding:0 22px}.topbar{background:#0d2418;color:#fff}.nav{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-size:22px;font-weight:800}.brand span{color:#63dc9b}.navlinks{display:flex;align-items:center;gap:18px}.btn{border:0;border-radius:10px;padding:11px 17px;font-weight:700;cursor:pointer;background:var(--green);color:#fff}.btn:hover{background:#056c3a}.btn.ghost{background:#e7f5ed;color:var(--green)}.btn.dark{background:#14231b}.btn.danger{background:#b42318}.hero{padding:74px 0 58px;background:linear-gradient(135deg,#0d2418,#0a6339);color:#fff}.hero h1{font-size:clamp(36px,6vw,64px);max-width:820px;line-height:1.03;margin:0 0 18px}.hero p{font-size:19px;color:#d2e9dc;max-width:680px}.search{display:flex;max-width:720px;background:#fff;border-radius:14px;padding:7px;margin-top:30px}.search input{flex:1;border:0;outline:0;padding:11px;color:var(--ink)}.section{padding:46px 0}.section h2{font-size:28px;margin:0 0 8px}.sub{color:var(--muted);margin:0 0 24px}.categories{display:flex;gap:10px;flex-wrap:wrap}.chip{border:1px solid var(--line);background:#fff;padding:9px 14px;border-radius:999px;cursor:pointer}.chip.active{background:#14231b;color:#fff}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 6px 22px #183c2410}.card-img{height:170px;background:linear-gradient(135deg,#d6f5e4,#91d4af);display:grid;place-items:center;font-size:44px}.card-img.has-photo{display:block;overflow:hidden;background:#e8f6ee}.card-img.has-photo img{width:100%;height:100%;object-fit:cover;display:block}.card-body{padding:18px}.tag{font-size:12px;font-weight:800;text-transform:uppercase;color:var(--green)}.card h3{font-size:19px;margin:8px 0}.meta{color:var(--muted);font-size:13px}.highlight{outline:2px solid #ffb629;position:relative}.highlight:after{content:'DESTAQUE';position:absolute;top:10px;right:10px;background:#ffb629;color:#2e2100;padding:5px 8px;border-radius:7px;font-size:11px;font-weight:900}.empty{background:#fff;border:1px dashed var(--line);border-radius:14px;padding:36px;text-align:center;color:var(--muted)}.footer{background:#0d1c14;color:#bcd0c4;padding:34px 0;margin-top:30px}.socials{display:flex;gap:12px;flex-wrap:wrap}.modal{position:fixed;inset:0;background:#07150dbc;display:none;place-items:center;padding:20px;z-index:30}.modal.open{display:grid}.dialog{background:#fff;border-radius:18px;padding:26px;width:min(460px,100%)}.dialog h2{margin-top:0}.field{display:grid;gap:6px;margin:14px 0}.field input,.field textarea,.field select{border:1px solid #cbd9d0;border-radius:10px;padding:12px;width:100%;background:#fff}.upload-help{color:var(--muted);font-size:12px}.image-preview{margin-top:10px;width:120px;height:120px;border-radius:14px;overflow:hidden;border:1px solid var(--line);background:#eef5f0}.image-preview img{width:100%;height:100%;object-fit:cover;display:block}.row{display:flex;gap:10px;align-items:center}.row>*{flex:1}.notice{padding:11px;border-radius:10px;background:#e8f6ee;color:#056c3a;margin:12px 0}.error{background:#feeceb;color:var(--danger)}.admin-layout{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{background:#0d2418;color:#fff;padding:24px;position:sticky;top:0;height:100vh;overflow:auto}.sidebar nav{display:grid;gap:8px;margin-top:30px}.sidebar button{background:transparent;color:#c9dbd0;border:0;text-align:left;padding:11px;border-radius:8px;cursor:pointer}.sidebar button.active,.sidebar button:hover{background:#183f29;color:#fff}.admin-main{padding:32px;max-width:1400px;width:100%}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px}.stat b{display:block;font-size:28px}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:14px;margin-top:22px}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:13px;border-bottom:1px solid var(--line);vertical-align:middle}th{font-size:12px;text-transform:uppercase;color:var(--muted);white-space:nowrap}.badge{display:inline-block;border-radius:999px;padding:4px 8px;background:#e7f5ed;color:var(--green);font-size:12px;font-weight:700}.late{background:#feeceb;color:var(--danger)}.admin-form{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;margin:20px 0}.admin-form h2{margin:0 0 6px}.admin-form-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px 16px;align-items:end}.admin-form-grid .field{margin:0}.admin-form-grid .wide{grid-column:span 2}.checkline,.switchline{display:flex;align-items:center;gap:8px;min-height:44px}.inline-input,.inline-textarea{border:1px solid #cbd9d0;border-radius:8px;padding:9px 10px;background:#fff;min-width:150px}.inline-input.small{min-width:90px;width:90px}.social-url{width:min(520px,60vw)}.inline-textarea{width:280px;min-height:70px;resize:vertical}.inline-actions{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.action-cell{min-width:320px}.checks{display:flex;gap:10px;flex-wrap:wrap}.checks label{display:flex;align-items:center;gap:4px}.card .card-actions{padding:0 18px 18px}.card .card-actions .btn{width:100%;display:block;text-align:center}@media(max-width:850px){.grid{grid-template-columns:1fr 1fr}.stats{grid-template-columns:1fr 1fr}.admin-layout{display:block}.sidebar{height:auto;position:static}.navlinks a{display:none}.admin-form-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.grid{grid-template-columns:1fr}.hero{padding-top:48px}.search{display:grid}.row{display:grid}.stats{grid-template-columns:1fr}.admin-main{padding:18px}.admin-form-grid{grid-template-columns:1fr}.admin-form-grid .wide{grid-column:auto}.social-url,.inline-textarea{width:100%;min-width:220px}}
