:root{color:#24201d;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--accent:#b4432b;--accent-dark:#87301f;--border:#ded8cd;--surface:#fff;background:#f8f6f1;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body{min-width:0}body{overflow-wrap:anywhere;min-height:100vh;margin:0}a{color:var(--accent-dark)}a:focus-visible{outline-offset:3px;outline:3px solid #e9a48f}.skip-link{z-index:10;color:#fff;background:#24201d;border-radius:.4rem;padding:.65rem .9rem;position:fixed;top:.5rem;left:.5rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-shell{flex-direction:column;min-height:100vh;display:flex}.site-header{border-bottom:1px solid var(--border);background:#ffffffeb}.site-header__inner,.site-main,.site-footer{width:min(100% - 2rem,68rem);margin-inline:auto}.site-header__inner{justify-content:space-between;align-items:center;gap:1rem;min-height:4.5rem;display:flex}.site-brand{color:#24201d;letter-spacing:.04em;font-weight:800;text-decoration:none}.site-nav,.footer-nav{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;display:flex}.site-nav__link{color:#554d47;border-radius:.4rem;padding:.45rem .25rem;text-decoration:none}.site-nav__link:hover,.site-nav__link.is-active{color:var(--accent-dark);text-underline-offset:.3rem;text-decoration:underline}.site-main{flex:1}.page{padding-block:clamp(3rem,8vw,6rem)}.page h1{letter-spacing:-.035em;max-width:16ch;margin:0;font-size:clamp(2rem,7vw,4rem);line-height:1.1}.eyebrow{color:var(--accent-dark);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .75rem;font-size:.8rem;font-weight:800}.lead{color:#554d47;max-width:42rem;margin:1.25rem 0 0;font-size:clamp(1rem,2.5vw,1.2rem);line-height:1.8}.button-link{background:var(--accent);color:#fff;border-radius:.55rem;margin-top:2rem;padding:.8rem 1.2rem;font-weight:700;text-decoration:none;display:inline-block}.button-link:hover{background:var(--accent-dark)}.button{background:var(--accent);color:#fff;cursor:pointer;font:inherit;border:0;border-radius:.55rem;padding:.8rem 1.2rem;font-weight:700}.button:hover{background:var(--accent-dark)}.button:disabled{cursor:not-allowed;opacity:.65}.button:focus-visible{outline-offset:3px;outline:3px solid #e9a48f}.button--secondary{color:#6f291b;background:#fff;border:1px solid #a79e96}.button--secondary:hover{background:#f7eee9}.button--danger{background:#8b210a}.button--danger:hover{background:#681806}.button-link--secondary{color:#6f291b;background:#fff;border:1px solid #a79e96;margin-top:0}.button-link--secondary:hover{color:#6f291b;background:#f7eee9}.auth-state{place-items:center;min-height:100vh;padding:1rem;display:grid}.auth-state__panel{border:1px solid var(--border);background:var(--surface);border-radius:.75rem;width:min(100%,34rem);padding:clamp(1.25rem,4vw,2rem)}.auth-state__panel h1{margin-top:0;font-size:clamp(1.5rem,5vw,2rem)}.auth-state__panel .button{margin-top:.5rem}.dev-auth-info{color:#403716;background:#fff7d6;border-bottom:1px solid #d7caa5;padding:.5rem max(1rem,50% - 34rem);font-size:.8rem}.dev-auth-info summary{cursor:pointer;font-weight:700}.dev-auth-info code{margin-top:.5rem;display:block;overflow-x:auto}.plans-section{margin-top:clamp(3.5rem,9vw,6rem)}.plans-section>h2{margin:0 0 1.25rem;font-size:clamp(1.5rem,4vw,2rem)}.plan-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:1rem;display:grid}.plan-card,.list-state{border:1px solid var(--border);background:var(--surface);border-radius:.75rem;padding:clamp(1.25rem,4vw,1.5rem)}.plan-card{flex-direction:column;min-width:0;display:flex}.plan-card__heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.plan-card__heading h3{margin:0;font-size:1.3rem;line-height:1.35}.plan-card__heading a{color:#24201d;text-underline-offset:.2em;text-decoration-thickness:.08em}.plan-card__details{gap:.8rem;margin:1.25rem 0;display:grid}.plan-card__details>div{grid-template-columns:4.5rem minmax(0,1fr);gap:.5rem;display:grid}.plan-card__details dt{color:#6b625b;font-size:.85rem;font-weight:700}.plan-card__details dd{min-width:0;margin:0}.plan-card__footer{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:auto;padding-top:1rem;display:flex}.list-state{max-width:46rem}.list-state p{margin-top:0}.list-state>:last-child{margin-bottom:0}.create-page{max-width:52rem}.plan-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-top:3rem;display:grid}.form-field{border:0;min-width:0;margin:0;padding:0}.form-field--wide{grid-column:1/-1}.form-field label,.form-field legend{color:#322d29;margin-bottom:.45rem;font-weight:750;display:block}.required-label{color:#8b210a;font-size:.8em;font-weight:800}.form-field input:not([type=radio]),.form-field select,.form-field textarea{color:#24201d;width:100%;font:inherit;background:#fff;border:1px solid #a79e96;border-radius:.5rem;min-width:0;max-width:100%;padding:.7rem .75rem}.form-field input::placeholder,.form-field textarea::placeholder{color:#716861;opacity:1}.form-field input:not([type=radio]){text-overflow:ellipsis}.form-field textarea{resize:vertical;min-height:7rem}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--accent-dark);outline-offset:1px;outline:3px solid #f2c5b8}.form-field [aria-invalid=true]{border-color:#a4260b}.choice-row{flex-wrap:wrap;gap:.75rem 1.5rem;display:flex}.choice-row label{align-items:center;gap:.45rem;margin:0;font-weight:500;display:inline-flex}.choice-row input{width:1.1rem;height:1.1rem;accent-color:var(--accent-dark);margin:0}.field-hint,.field-error{margin:.4rem 0 0;font-size:.85rem;line-height:1.5}.field-hint{color:#6b625b}.field-error,.submit-error{color:#8b210a;font-weight:650}.form-section-heading{border-top:1px solid var(--border);margin-top:.75rem;padding-top:1.75rem}.form-section-heading h2{margin:0;font-size:1.4rem}.form-section-heading p{color:#6b625b;margin:.5rem 0 0}.safety-notice{color:#403716;background:#fff8dc;border:1px solid #d8c47d;border-radius:.75rem;padding:1.25rem}.safety-notice h2{margin:0;font-size:1.1rem}.safety-notice p{margin:.6rem 0 0;line-height:1.7}.submit-error{margin:0}.form-actions{justify-content:flex-end;display:flex}.owner-actions{border:1px solid var(--border);background:var(--surface);border-radius:.75rem;margin-top:2rem;padding:clamp(1.25rem,4vw,2rem)}.owner-actions h2{margin:0;font-size:1.3rem}.owner-actions__buttons{flex-wrap:wrap;gap:.75rem;margin-top:1rem;display:flex}.owner-actions .submit-error{margin:1rem 0 0}.report-actions>p{line-height:1.7}.report-actions__open{color:var(--accent-dark);cursor:pointer;font:inherit;text-underline-offset:.25rem;background:0 0;border:0;padding:.25rem 0;font-weight:700;text-decoration:underline}.report-actions__open:focus-visible{outline-offset:3px;outline:3px solid #e9a48f}.report-form{gap:1.25rem;margin-top:1.25rem;display:grid}.report-form__actions{flex-wrap:wrap;gap:.75rem;display:flex}.plan-detail-page{max-width:52rem}.back-link{margin-bottom:2rem;display:inline-block}.plan-detail__header{justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex}.plan-status{border-radius:999px;flex:none;padding:.4rem .75rem;font-size:.85rem;font-weight:800}.plan-status--open{color:#1f5728;background:#dcebdc}.plan-status--expired{color:#514a45;background:#e5e1dc}.expired-notice,.viewer-state{border-radius:.65rem;padding:1rem}.expired-notice{color:#443d38;background:#eeeae6;border:1px solid #c5bbb3;margin:2rem 0 0;font-weight:750}.viewer-state{color:#244d73;background:#edf5fd;border:1px solid #c5d5e7;margin:1rem 0 0}.detail-section{border:1px solid var(--border);background:var(--surface);border-radius:.75rem;margin-top:2rem;padding:clamp(1.25rem,4vw,2rem)}.detail-section h2{margin:0;font-size:1.3rem}.detail-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 2rem;margin:1.5rem 0 0;display:grid}.detail-list>div{min-width:0}.detail-list dt{color:#6b625b;margin-bottom:.25rem;font-size:.85rem;font-weight:700}.detail-list dd{margin:0;line-height:1.6}.meeting-note p{overflow-wrap:anywhere;white-space:pre-wrap;margin:1rem 0 0}.detail-section__heading{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.detail-section__heading>span{color:#6b625b;font-weight:700}.people-list{gap:.75rem;margin:1.25rem 0 0;padding:0;list-style:none;display:grid}.person{border:1px solid var(--border);border-radius:.6rem;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.detail-state{max-width:42rem}.detail-state>p{line-height:1.7}.detail-state__actions{flex-wrap:wrap;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.participant-actions>p{line-height:1.7}.join-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin-top:1.5rem;display:grid}.action-feedback{border-radius:.55rem;margin:0;padding:.8rem 1rem;font-weight:650}.action-feedback--success{color:#1f5728;background:#e3f1e3}.action-feedback--error{color:#8b210a;background:#f8e5df}.action-feedback:focus{outline-offset:3px;outline:3px solid #e9a48f}.prose-page{max-width:52rem}.prose-page h1{max-width:none}.prose-page__intro{color:#554d47;margin:1.5rem 0 0;font-size:1.1rem;line-height:1.8}.prose-page section{margin-top:2.5rem}.prose-page h2{margin:0 0 .75rem;font-size:clamp(1.25rem,4vw,1.55rem)}.prose-page section p,.prose-page li{line-height:1.85}.prose-page section p{margin:.75rem 0 0}.prose-page ul{padding-left:1.5rem}.legal-note{background:#fff8dc;border:1px solid #d8c47d;border-radius:.65rem;margin:2.5rem 0;padding:1rem;line-height:1.7}.site-footer{border-top:1px solid var(--border);color:#6b625b;justify-content:space-between;align-items:center;gap:1rem;padding-block:1.5rem;display:flex}@media (width<=36rem){.site-header__inner,.site-footer{flex-direction:column;justify-content:center;align-items:flex-start;padding-block:1rem}.site-header__inner{min-height:auto}.page{padding-block:2.75rem}.plan-form{grid-template-columns:minmax(0,1fr);margin-top:2.5rem}.form-actions .button{width:100%}.plan-detail__header{flex-direction:column-reverse;align-items:flex-start}.detail-list{grid-template-columns:minmax(0,1fr)}.person{align-items:flex-start}.plan-card__heading,.plan-card__footer,.detail-section__heading{flex-direction:column;align-items:flex-start}.join-form{grid-template-columns:minmax(0,1fr)}.participant-actions>.button{width:100%}.owner-actions__buttons>*{text-align:center;width:100%}.report-form__actions>.button{width:100%}}
