:root{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#253634;background:#f1f5f2;font-synthesis:none;color-scheme:light;--accent:#215e50;--muted:#61736d;--line:#dce6df;--card:#fff}*{box-sizing:border-box}body{margin:0}main{max-width:560px;margin:auto;padding:28px 22px calc(24px + env(safe-area-inset-bottom))}header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:28px}.brand{font-size:11px;letter-spacing:1.8px;font-weight:800}.badge{font-size:11px;color:var(--accent);background:#e0ebe3;border-radius:20px;padding:6px 9px;white-space:nowrap}nav{display:flex;gap:8px;padding:5px;background:#e5ede7;border-radius:14px;margin-bottom:25px}button,input{font:inherit}button{cursor:pointer;min-height:48px;border:0;border-radius:12px;padding:13px 16px;transition:background .15s}button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #c59752;outline-offset:3px}button:disabled{cursor:default;opacity:.55}.tab{flex:1;min-height:42px;background:transparent;color:var(--muted);font-size:14px}.tab.active{background:white;color:var(--accent);box-shadow:0 2px 4px #143d2610;font-weight:700}h1{font-size:29px;line-height:1.15;letter-spacing:-.7px;margin:10px 0 16px}p{font-size:15px;line-height:1.6;margin:10px 0 20px;color:var(--muted)}#progress{font-size:12px;font-weight:700;color:var(--accent);letter-spacing:.4px;min-height:18px}.primary{background:var(--accent);color:white;font-weight:700;width:100%;margin-top:12px}.secondary{border:1px solid var(--line);background:var(--card);color:var(--accent);width:100%;margin-top:10px}.option{display:block;width:100%;text-align:left;background:var(--card);border:1px solid var(--line);margin:10px 0;padding:18px}.option strong{display:block;font-size:17px}.option small{display:block;color:var(--muted);line-height:1.5;margin-top:6px;font-size:13px}.option:hover{border-color:var(--accent)}label{display:block;font-size:14px;font-weight:650;margin:22px 0 8px}input{width:100%;padding:15px;border:1px solid #b5c9bd;border-radius:12px;background:var(--card);color:inherit;font-size:16px}.hint{font-size:12px;margin-top:8px}.document{white-space:pre-wrap;font-size:14px;line-height:1.65;max-height:280px;overflow:auto;border:1px solid var(--line);background:var(--card);border-radius:12px;padding:16px}details{margin:18px 0}summary{cursor:pointer;color:var(--accent);font-size:14px;font-weight:650;padding:10px 0}.grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin:18px 0}.weekday{text-align:center;font-size:11px;color:var(--muted);padding:5px}.day{font-size:14px;border-radius:9px;padding:8px 1px;min-height:52px;background:#e0eee3;color:#22573f}.day small{display:block;font-size:9px;margin-top:2px}.day.partial{background:#fff0cb;color:#76560c}.day.full{background:#f7e1dd;color:#854339}.day.closed,.day.unavailable,.day.outside{background:#e6eae7;color:#727f78}.day.short{background:#ffe5c9;color:#925414}.day:disabled{opacity:.75}.times{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.times button{background:var(--card);border:1px solid var(--line);font-weight:650}.review{background:var(--card);border:1px solid var(--line);padding:18px;border-radius:16px;margin:20px 0}.row{padding:10px 0;border-bottom:1px solid var(--line)}.row:last-child{border:0}.row span{display:block;font-size:12px;color:var(--muted);margin-bottom:5px}.row strong{font-size:15px;font-weight:600;overflow-wrap:anywhere}#error{background:#f9e5df;color:#803e30;padding:15px;border-radius:12px;line-height:1.5;margin-bottom:15px}footer{border-top:1px solid var(--line);margin-top:32px;padding-top:15px;text-align:center}footer p{font-size:11px;margin:0}.link{background:transparent;color:var(--accent);font-size:13px;text-decoration:underline}.success{font-size:40px;color:var(--accent);margin:18px 0}.note{font-size:12px;border-left:3px solid #b6cabe;padding-left:12px}@media(max-width:360px){main{padding:20px 14px}.brand{font-size:10px;letter-spacing:1px}h1{font-size:26px}}@media(prefers-reduced-motion:reduce){*{transition:none}}
.weekday.weekend,.day.weekend{font-weight:700}
.day.weekend small{font-weight:400}
