@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;600;700;800&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#1c302a;background:#f5f6f1;font-size:16px;--green:#164c3c;--gold:#c49a52}*{box-sizing:border-box}body{margin:0}header{padding:24px 5%;display:flex;align-items:center;gap:36px;background:#fff;border-bottom:1px solid #dfe5dc}.brand{display:flex;gap:12px;align-items:center;font:bold 34px Manrope;color:var(--green);text-decoration:none}.brand>span{font-size:19px;letter-spacing:3px}.brand small{display:block;font:9px 'DM Sans';letter-spacing:2px;margin-top:4px}nav{display:flex;gap:8px;flex:1}nav button{background:transparent;color:#41574e}#identity{font-size:12px;color:#637268}main{max-width:1360px;margin:auto;padding:48px 5% 80px}.view#visit{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;align-items:start}[hidden]{display:none!important}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:#8c672f}.intro{padding-top:32px}h1{font:800 clamp(32px,4vw,55px)/1.12 Manrope;letter-spacing:-2px;margin:22px 0}h2{font:800 23px Manrope;margin:12px 0 24px}h3{font-size:17px}p{line-height:1.7;color:#56685f}.intro>p{font-size:18px;max-width:410px}.steps{display:grid;gap:21px;margin:38px 0}.steps span{display:flex;align-items:center;gap:16px}.steps b{font-size:12px;color:var(--green);background:#e2eadf;border-radius:50%;padding:10px}aside{border-top:1px solid #d5ddcf;padding-top:28px;max-width:400px}aside p{font-size:14px}.card{background:#fff;border:1px solid #e0e5dc;padding:30px;border-radius:16px;box-shadow:0 10px 35px #1c302a05}label{display:block;font-size:13px;font-weight:600;margin-bottom:18px;flex:1}input,select,textarea{display:block;font:inherit;width:100%;margin-top:8px;border:1px solid #c7d2c8;border-radius:7px;padding:12px;color:#1c302a;background:#fff}input:focus,select:focus,textarea:focus{outline:2px solid #88b89f;outline-offset:2px}button{font:600 13px 'DM Sans';cursor:pointer;border:0;border-radius:7px;padding:13px 20px;background:var(--green);color:#fff;min-height:42px}button:hover{filter:brightness(1.12)}button:disabled{opacity:.5;cursor:wait}.secondary{color:var(--green);background:#eaf0e8}.link{background:transparent;color:var(--green);padding:0;min-height:30px;text-decoration:underline}.wide{width:100%;padding:16px}.inline,.filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.inline>button{margin-bottom:18px}.inline label{min-width:120px}.muted{font-size:12px;color:#6b7970}.check{display:flex;align-items:start;gap:9px;font-size:12px;font-weight:400;line-height:1.7}.check input{width:auto;margin-top:5px}.check .link{font-size:12px;display:inline;min-height:0}.person{background:#f8faf6;padding:18px;border-radius:8px;margin:16px 0}.person-head{display:flex;justify-content:space-between;font-size:12px;font-weight:700;color:#6b7970}.person .inline label{margin-bottom:0}#message,.notice{padding:16px 20px;margin-bottom:24px;border-radius:8px;background:#fff2d7;color:#6a4a18;line-height:1.6}#message.error{background:#fbe6e0;color:#7b3028}#message.success{background:#e2f1e5;color:#1a5435}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:24px;margin-top:24px}.section-title{margin-bottom:30px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:24px 0}.metrics>div{background:#e6ece2;padding:24px;border-radius:12px}.metrics b{display:block;font:800 36px Manrope;margin-top:10px}.filters{margin-bottom:20px}.filters label{min-width:130px}.filters button{margin-bottom:18px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}th{font-weight:500;color:#627268}td,th{padding:15px 8px;border-bottom:1px solid #e4e9df}td button{padding:8px;font-size:11px}.days{display:flex;gap:8px;flex-wrap:wrap}.days label{flex:none;font-size:12px}.days input{width:auto}fieldset{border:1px solid #d7dfd3;border-radius:8px;margin-bottom:20px}footer{padding:28px 5%;border-top:1px solid #dce3d7;display:flex;justify-content:space-between;font-size:12px;letter-spacing:2px}footer span{letter-spacing:0;color:#748173}dialog{max-width:600px;border:0;border-radius:16px;padding:32px}dialog::backdrop{background:#152d2388}#generated-link{overflow-wrap:anywhere}@media(max-width:850px){header{flex-wrap:wrap;gap:15px}nav{order:3;width:100%}nav button{padding:10px}.view#visit{grid-template-columns:1fr;gap:25px}main{padding-top:20px}.intro{padding-top:10px}h1{letter-spacing:-1px}.steps{grid-template-columns:repeat(3,1fr);gap:8px}.steps span{flex-direction:column;align-items:start;font-size:12px}aside{max-width:none}.card{padding:22px}.metrics{gap:8px}.metrics>div{padding:15px}.metrics small{font-size:10px}footer span{display:none}}
.calendar-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 0}.calendar-nav button{padding:8px;font-size:12px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-bottom:20px}.calendar-grid button{padding:10px 0;min-height:40px;background:#e2f1e5;color:#174d3a}.calendar-grid button[aria-pressed=true]{background:#174d3a;color:white;outline:2px solid #bc913c}.calendar-grid button:disabled{background:#eee;color:#aaa;cursor:not-allowed;opacity:1}.calendar-grid small{text-align:center}.check{flex-wrap:wrap}.check .link{padding:0}

#campaign-logo-preview{display:block;max-width:220px;max-height:160px;object-fit:contain;margin:12px 0}#campaign-logo-preview[hidden]{display:none}#campaign-logo-status{font-size:12px}#campaign-form details{margin:18px 0}
