:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#17362f;background:#f5f6f1;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{display:flex;align-items:center;gap:22px;padding:22px 5%;border-bottom:1px solid #dbe2d9;background:#fff}.brand{font-size:26px;font-weight:800;text-decoration:none;color:inherit}.brand span{font-size:14px;color:#648273}.tag{border:1px solid #cedbce;border-radius:24px;padding:8px 13px;font-size:12px}header button{margin-left:auto}main{max-width:1440px;margin:auto;padding:36px 5%}h1{font-size:clamp(30px,4vw,52px);letter-spacing:-1.7px;line-height:1.12;margin:12px 0 20px}h2{font-size:21px}p{line-height:1.6}.eyebrow{font-size:11px;letter-spacing:2px;color:#5d7568;font-weight:700}.muted{font-size:13px;color:#567064}.intro,.toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.card{background:white;border:1px solid #dbe2d9;border-radius:16px;padding:24px;box-shadow:0 3px 12px #17362f04}.narrow{max-width:450px;margin:30px 0}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:16px}.cards p{white-space:pre-wrap;overflow-wrap:anywhere}label{display:block;font-size:13px;font-weight:600;margin:15px 0}input,select,textarea{display:block;width:100%;margin-top:7px;border:1px solid #b5c7ba;border-radius:8px;padding:12px;background:#fff;color:#17362f;font:inherit}textarea{resize:vertical}button{border:1px solid transparent;border-radius:9px;padding:12px 18px;background:#185a42;color:white;font:inherit;font-size:13px;font-weight:650;cursor:pointer}button:hover{background:#287653}button:focus-visible,a:focus-visible{outline:3px solid #bd682b;outline-offset:3px}button:disabled{opacity:.6;cursor:wait}.secondary,nav button,.month button{background:#fff;color:#17362f;border-color:#cbd7cb}nav{display:flex;gap:8px;flex-wrap:wrap;margin:28px 0}nav .selected{background:#dcebb9;border-color:#bfd58c}.month{display:flex;align-items:center;gap:12px}.month h2{min-width:175px;text-align:center}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid #d4dfd1;border-left:1px solid #d4dfd1;background:#fff;border-radius:12px;overflow:hidden}.day{min-height:110px;padding:9px;border-right:1px solid #d4dfd1;border-bottom:1px solid #d4dfd1;font-size:13px}.day.outside{background:#f0f2ec;color:#8d9c90}.day.today{box-shadow:inset 0 0 0 2px #347c56}.weekday{padding:10px;font-size:12px;text-align:center;background:#e8eee0}.event{display:block;padding:5px;margin-top:6px;background:#e7edfb;color:#354b7e;border-radius:5px;font-size:11px;overflow-wrap:anywhere}.event.approved,.badge.approved{background:#dcebb9;color:#385425}.event.in_review,.badge.in_review{background:#fff1cf;color:#775615}.badge{display:inline-block;background:#e7edfb;color:#354b7e;padding:5px 9px;border-radius:6px;font-size:11px}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.actions button{padding:9px 12px}#notice:not(:empty){border:1px solid #c58b64;background:#fff3e5;padding:16px;border-radius:9px;margin-bottom:22px;white-space:pre-wrap}dialog{width:min(600px,95vw);border:1px solid #cbd7cb;border-radius:18px;padding:26px;color:#17362f}dialog::backdrop{background:#17362f88}li{margin:14px 0;line-height:1.6;overflow-wrap:anywhere}footer{padding:30px 5%;color:#5d7568;font-size:12px}[hidden]{display:none!important}@media(max-width:650px){header{gap:10px;flex-wrap:wrap}.tag{font-size:10px}.calendar{overflow-x:auto}.day{min-height:88px;padding:4px;font-size:11px}.event{font-size:9px;padding:3px}.weekday{font-size:10px;padding:6px 0}.toolbar{align-items:stretch}.toolbar>label{flex:1}.month{width:100%;justify-content:space-between}main{padding:22px 4%}nav button{flex:1;padding:10px}.cards{grid-template-columns:1fr}.intro>button{width:100%}}
.ai-preview{white-space:pre-wrap;overflow-wrap:anywhere}#aiResult{border-top:1px solid #dbe2d9;margin-top:24px;padding-top:16px}
