:root{font-family:system-ui,sans-serif;color:#17302d;background:#f3f5ef;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{background:#103e35;color:white;display:flex;justify-content:space-between;align-items:center;padding:22px max(5vw,20px)}.brand{font-size:22px;font-weight:850;color:inherit;text-decoration:none}.brand small{display:block;font-size:10px;letter-spacing:3px;margin-top:4px}main{max-width:1120px;margin:auto;padding:32px 22px}.hero{padding:38px 0 40px}.tag{font-size:12px;letter-spacing:3px;font-weight:800;color:#47715c}h1{font-size:clamp(38px,6vw,68px);line-height:1.05;letter-spacing:-2px;margin:18px 0}p{line-height:1.6;color:#5a6b61}button,.link{background:#d5ef69;border:0;border-radius:9px;padding:12px 18px;color:#153b30;font-weight:750;cursor:pointer}button:hover{filter:brightness(.94)}button:disabled{opacity:.5;cursor:wait}label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:650}input,select,textarea{font:inherit;padding:12px;border:1px solid #ccd5c9;border-radius:8px;background:white;min-width:0;color:#17302d}textarea{min-height:70px}.notice{background:#e5ebd5;padding:15px 20px;border-radius:10px;font-size:14px}.toolbar{display:flex;align-items:end;gap:12px;margin:25px 0}.toolbar label{flex:1}nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}nav button{background:white;border:1px solid #cdd7cb}.card,form.panel{background:white;padding:24px;border:1px solid #dce2d7;border-radius:15px;margin:14px 0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.row>*{flex:1}.row button{flex:0 0 auto}form button{margin-top:15px}.slot{display:inline-block;background:#eef3de;padding:10px;margin:4px;border-radius:8px;font-size:13px}.occupied{background:#f4e5e0;color:#a04431}.badge{font-size:12px;font-weight:700;color:#56734b}.muted{color:#657367;font-size:13px}h2{font-size:27px}h3{margin-top:0}#message:not(:empty){padding:14px;background:#fff1cc;border-radius:9px;margin:15px 0}.money{font-size:32px;font-weight:800}footer{margin:45px 0 15px;font-size:12px;color:#6d7b6b}[hidden]{display:none!important}a{color:#21664e}hr{border:0;border-top:1px solid #e4e9df;margin:20px 0}@media(max-width:600px){header{padding:18px}.brand{font-size:17px}header button{padding:10px}.row>*{flex-basis:100%}.toolbar{align-items:stretch;flex-direction:column}.card{padding:18px}}
