:root{--base: #fafaf7;--surface: #f1f0ea;--contrast: #1a1a1a;--text-secondary: #4a4a48;--text-muted: #8a8884;--accent: #c84812;--accent-hover: #a23a0d;--accent-active: #8b2f08;--border: #e3e1da;--radius: 4px;--maxw: 880px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--base);color:var(--contrast);font-family:Inter,system-ui,sans-serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3{font-family:Inter Tight,Inter,sans-serif;line-height:1.2;margin:0 0 .4em}h1{font-size:2.1rem;font-weight:700;letter-spacing:-.02em}h2{font-size:1.45rem;font-weight:600}h3{font-size:1.1rem;font-weight:600}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.mono{font-family:JetBrains Mono,monospace}.muted{color:var(--text-muted)}.secondary{color:var(--text-secondary)}.center{text-align:center}.container{max-width:var(--maxw);margin:0 auto;padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}.page{padding-top:40px;padding-bottom:80px}.stack>*+*{margin-top:16px}.row{display:flex;gap:12px;align-items:center}.row.wrap{flex-wrap:wrap}.spread{display:flex;justify-content:space-between;align-items:center;gap:12px}.grow{flex:1}.topbar{border-bottom:1px solid var(--border);background:var(--base);position:sticky;top:0;z-index:10}.topbar .inner{display:flex;justify-content:space-between;align-items:center;height:60px}.brand{font-family:Inter Tight,sans-serif;font-weight:700;font-size:1.25rem;letter-spacing:-.01em;color:var(--contrast)}.brand:hover{text-decoration:none}.brand .dot{color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:500;padding:9px 16px;border-radius:var(--radius);border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;transition:background .12s ease;text-decoration:none}.btn:hover{background:var(--accent-hover);border-color:var(--accent-hover);text-decoration:none}.btn:active{background:var(--accent-active)}.btn:disabled{opacity:.5;cursor:default}.btn.ghost{background:transparent;color:var(--accent)}.btn.ghost:hover{background:#c8481212}.btn.subtle{background:transparent;color:var(--text-secondary);border-color:var(--border)}.btn.subtle:hover{background:var(--surface);border-color:var(--border)}.btn.sm{padding:5px 11px;font-size:.9rem}.btn.danger{background:transparent;color:var(--accent);border-color:var(--border)}.btn.danger:hover{background:#c8481212}.card{border:1px solid var(--border);border-radius:var(--radius);background:var(--base);padding:20px}.card.surface{background:var(--surface)}.card.collapsible{padding:0}.collapse-head{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;background:none;border:none;cursor:pointer;font:inherit;color:inherit;padding:15px 20px;text-align:left}.collapse-body{padding:0 20px 20px}.chevron{color:var(--text-muted);transition:transform .15s ease;transform-origin:center;flex:none}.chevron.open{transform:rotate(180deg)}.collapse-head:hover .chevron{color:var(--accent)}label{display:block;font-size:.9rem;font-weight:500;margin-bottom:5px;color:var(--text-secondary)}input,select,textarea{width:100%;font:inherit;padding:9px 11px;border:1px solid var(--border);border-radius:var(--radius);background:#fff;color:var(--contrast)}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}textarea{resize:vertical;min-height:64px}.guest-input::-webkit-calendar-picker-indicator{display:none!important}.guest-input::-webkit-list-button{display:none!important}.field+.field{margin-top:14px}.err,.ok{color:var(--accent);font-size:.92rem}.notice{border:1px solid var(--border);border-left:3px solid var(--accent);background:var(--surface);padding:10px 14px;border-radius:var(--radius);font-size:.95rem}.cal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.cal-title{font-family:Inter Tight,sans-serif;font-weight:600;font-size:1.15rem;text-transform:capitalize}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.cal-wd{background:var(--surface);text-align:center;font-size:.72rem;font-weight:600;color:var(--text-muted);padding:6px 0;text-transform:uppercase;letter-spacing:.04em}.cal-day{background:var(--base);min-height:62px;padding:5px 6px;position:relative;font-size:.85rem}.cal-day.dim{background:var(--surface);color:var(--text-muted)}.cal-day .dnum{font-variant-numeric:tabular-nums;color:var(--text-secondary)}.cal-day.today .dnum{color:#fff;background:var(--accent);border-radius:50%;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;font-weight:600}.cal-bar{margin-top:3px;font-size:.72rem;line-height:1.45;padding:1px 5px;border-radius:3px;color:#fff;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cal-day.sel{outline:2px solid var(--accent);outline-offset:-2px}.cal-day.inrange{background:#c848121a}.cal-day.conflict{background:#c8481214;box-shadow:inset 0 2px 0 var(--accent)}.cal-conflict,.cal-conflict-key{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;border-radius:50%;background:var(--accent);color:#fff;font-size:.7rem;font-weight:700}.cal-conflict{position:absolute;top:4px;right:5px}.cal-legend{margin-top:8px;display:flex;align-items:center;gap:7px;font-size:.78rem;color:var(--text-muted)}.bk{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--border)}.bk:last-child{border-bottom:none}.bk .swatch{width:10px;height:10px;border-radius:50%;margin-top:7px;flex:none}.bk .who{font-weight:600}.bk .when{font-size:.92rem;color:var(--text-secondary)}.bk .note{font-size:.92rem;color:var(--text-muted)}.qr{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.qr img{width:132px;height:132px;border:1px solid var(--border);border-radius:var(--radius);background:#fff;padding:6px}.linkbox{display:flex;gap:8px;align-items:center}.linkbox input{font-family:JetBrains Mono,monospace;font-size:.85rem}.pill{display:inline-block;font-size:.75rem;font-weight:600;color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:2px 10px}.divider{height:1px;background:var(--border);margin:28px 0;border:none}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.step .n{font-family:JetBrains Mono,monospace;color:var(--accent);font-weight:600}.resource-card{cursor:pointer;transition:border-color .12s}.resource-card:hover{border-color:var(--accent)}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a1a1a66;display:flex;align-items:center;justify-content:center;padding:20px;z-index:50}.modal{background:var(--base);border-radius:var(--radius);border:1px solid var(--border);padding:24px;max-width:460px;width:100%;max-height:90vh;overflow:auto}footer.site{border-top:1px solid var(--border);margin-top:40px;padding:36px 0 28px;color:var(--text-muted);font-size:.9rem}.footer-grid{display:flex;justify-content:space-between;gap:24px 40px;flex-wrap:wrap}.footer-brand-col{max-width:360px}.footer-company{margin:12px 0 0;font-size:.8rem;color:var(--text-muted);line-height:1.5}.footer-company a{color:var(--text-secondary)}.footer-nav{display:flex;flex-direction:column;gap:8px}.footer-nav a{color:var(--text-secondary)}.footer-legal{margin-top:28px;padding-top:18px;border-top:1px solid var(--border);font-size:.8rem;color:var(--text-muted)}.footer-legal a{color:var(--text-secondary)}.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:999;background:var(--base);border-top:1px solid var(--border);box-shadow:0 -8px 24px -10px #1a1a1a2e;padding:14px 0}.cookie-inner{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.cookie-lead{margin:0;flex:1 1 320px;font-size:.92rem;color:var(--text-secondary)}.cookie-more{white-space:nowrap}.cookie-actions{display:flex;gap:8px;flex:0 0 auto}.footer-linkbtn{background:none;border:none;padding:0;margin:0;font:inherit;color:var(--text-secondary);cursor:pointer;text-align:left}.footer-linkbtn:hover{color:var(--accent);text-decoration:underline}@media (max-width: 560px){.cookie-actions{width:100%}.cookie-actions .btn{flex:1}}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}.stat{border:1px solid var(--border);border-radius:var(--radius);padding:16px}.stat .v{font-family:Inter Tight,sans-serif;font-size:1.9rem;font-weight:700;line-height:1}.stat .l{color:var(--text-muted);font-size:.85rem;margin-top:4px}.spark{display:flex;align-items:flex-end;gap:3px;height:60px}.spark .bar{flex:1;background:var(--accent);border-radius:2px 2px 0 0;min-height:2px}table.stats-t{width:100%;border-collapse:collapse;font-size:.9rem}table.stats-t th,table.stats-t td{text-align:left;padding:7px 8px;border-bottom:1px solid var(--border)}table.stats-t th{color:var(--text-muted);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}table.stats-t td.num{text-align:right;font-variant-numeric:tabular-nums}.prose p{color:var(--text-secondary)}.paid-toggle{background:none;border:1px solid var(--border);border-radius:999px;padding:2px 10px;font:inherit;font-size:.78rem;color:var(--text-muted);cursor:pointer}.paid-toggle:hover{border-color:var(--accent);color:var(--accent)}.paid-toggle.paid{background:var(--accent);border-color:var(--accent);color:#fff}.paid-label{font-size:.8rem;color:var(--accent);font-weight:600}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.plan-pro{border-color:var(--accent)}.plan-price{font-family:Inter Tight,sans-serif;font-size:1.8rem;font-weight:700;margin:8px 0 12px}.plan-feats{list-style:none;padding:0;margin:0 0 16px}.plan-feats li{padding:5px 0 5px 22px;position:relative;color:var(--text-secondary);font-size:.95rem}.plan-feats li:before{content:"✓";position:absolute;left:0;color:var(--accent);font-weight:700}@media (max-width: 560px){.plan-grid{grid-template-columns:1fr}}.faq-item{border-bottom:1px solid var(--border);padding:4px 0}.faq-item summary{cursor:pointer;padding:12px 0;font-weight:600;font-family:Inter Tight,sans-serif;list-style:none;display:flex;justify-content:space-between;align-items:center}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";color:var(--text-muted);font-weight:400;font-size:1.3rem}.faq-item[open] summary:after{content:"–"}.faq-item summary:hover{color:var(--accent)}.faq-item p{margin:0 0 14px}@media (max-width: 600px){body{font-size:16px}h1{font-size:1.7rem}.steps{grid-template-columns:1fr}.cal-day{min-height:52px}.page{padding-top:24px;padding-bottom:60px}.stat-grid{grid-template-columns:1fr 1fr}}
