:root{font:17px/1.5 system-ui,sans-serif;color:#23332d;background:#f4f1e9;--green:#173d33;--wine:#792f40}*{box-sizing:border-box}body{margin:0}main{max-width:1100px;margin:auto;padding:24px}header{background:var(--green);color:#fff;border-radius:24px;padding:28px}header a{color:#e5d8b1}h1{font-size:clamp(25px,5vw,38px);line-height:1.2;margin:10px 0}.eyebrow{font-size:13px;letter-spacing:.08em}h2{font-size:23px}h3{font-size:19px}section,article,.notice{background:#fff;padding:22px;border:1px solid #dfdfd5;border-radius:18px;margin:18px 0}button,.button{display:inline-block;border:0;border-radius:10px;padding:12px 18px;background:var(--green);color:white;font:inherit;cursor:pointer;min-height:46px;text-decoration:none;margin:5px 6px 5px 0}button.secondary,.button.secondary{background:#e6ede8;color:var(--green)}button.danger{background:var(--wine)}button:disabled{opacity:.5;cursor:wait}input,select{font:inherit;padding:11px;border:1px solid #a9b9b0;border-radius:9px;max-width:100%;min-height:46px}input[type=checkbox]{accent-color:var(--green);min-height:24px;width:24px;flex-shrink:0}label{display:block;margin:10px 0}a{color:var(--green)}.row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.slots{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.slot{display:flex;gap:7px;align-items:center;background:#eef4ef;border-radius:9px;padding:10px;font-size:15px}.date{border-bottom:1px solid #ddd;padding-bottom:12px}summary{cursor:pointer;padding:12px 0;font-weight:650}.tag{display:inline-block;padding:5px 10px;border-radius:8px;background:#e4f2e8;color:#173d33;font-weight:650}.warning{background:#fff4d3}.error{background:#fbe8ed;color:#792f40}.muted,footer{color:#59665e;font-size:14px}footer{padding:16px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:500px}td,th{text-align:left;border-bottom:1px solid #ddd;padding:12px;vertical-align:top}textarea{width:100%;min-height:80px;font:inherit;padding:10px}.linkbox{overflow-wrap:anywhere;background:#f4f1e9;padding:12px}.busy #app{opacity:.7;pointer-events:none}#status:empty{display:none}:focus-visible{outline:3px solid #c39e39;outline-offset:3px}@media(max-width:600px){main{padding:12px}header,section,article{padding:18px}.slots{grid-template-columns:repeat(2,1fr)}.row>*{max-width:100%}button,.button{width:100%;margin-right:0}h2{font-size:21px}}
