:root{color:#233b31;--paper:#fffdf7;--green:#294f3e;--muted:#53655b;--border:#d8ddd0;background:#f8f5ed;font:1rem/1.55 system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,textarea,.media-record select{font:inherit}button,summary{cursor:pointer}button:disabled{cursor:default;opacity:.62}:focus-visible{outline-offset:3px;outline:3px solid #a34e34}.skip{color:var(--green);background:var(--paper);z-index:10;padding:.75rem;position:fixed;top:-100px;left:1rem}.skip:focus{top:1rem}.site-header{background:var(--paper);border-bottom:1px solid var(--border);align-items:center;gap:.7rem;padding:.8rem max(1rem,50vw - 560px);display:flex}.site-header strong{font:700 1.15rem Georgia,serif}.site-header>span:last-child{color:var(--muted);text-align:right;margin-left:auto;font-size:.8rem}.welcome,.workspace{max-width:1160px;margin:0 auto;padding:clamp(1rem,4vw,2.6rem)}.welcome{grid-template-columns:1fr 1fr;align-items:stretch;gap:clamp(1rem,3vw,2rem);display:grid}.welcome-art{background:#e4ebdc;border-radius:20px;min-height:370px;position:relative;overflow:hidden}.brand-mark{background:var(--green);color:#fffdf7;border-radius:9px;place-items:center;width:32px;height:32px;font-size:1.4rem;line-height:1;display:grid}.landscape{background:radial-gradient(circle at 74% 28%,#ebce91 0 11%,#0000 11.4%),#e4ebdc;position:absolute;inset:28% 0 0;overflow:hidden}.landscape:before,.landscape:after{content:"";border-radius:50% 50% 0 0;width:130%;height:70%;position:absolute}.landscape:before{background:#aab592;top:38%;left:0;transform:rotate(-7deg)}.landscape:after{background:#718c74;top:69%;right:4%;transform:rotate(8deg)}.cottage{z-index:1;background:#fff0cc;border-radius:0 0 3px 3px;width:19%;height:24%;position:absolute;bottom:22%;right:23%}.cottage:before{content:"";clip-path:polygon(50% 0,100% 100%,0 100%);background:#a65c49;width:124%;height:66%;position:absolute;bottom:100%;left:-12%}.cottage:after{content:"";background:#53715a;border-radius:50% 50% 0 0;position:absolute;inset:38% 34% 0}.welcome-text{z-index:1;padding:clamp(1.4rem,4vw,3rem);position:relative}.tagline{max-width:12ch;margin:.5rem 0 0;font:500 clamp(1.8rem,4vw,3.25rem)/1.06 Georgia,serif}.card{background:var(--paper);border:1px solid var(--border);border-radius:20px;min-width:0;padding:clamp(1rem,3vw,1.9rem)}.eyebrow{color:#446250;letter-spacing:.12em;margin:0;font-size:.75rem;font-weight:750}h1,h2{overflow-wrap:anywhere;margin:.45rem 0 .75rem;font-family:Georgia,serif;line-height:1.12}h1{font-size:clamp(1.85rem,4vw,3rem)}h2{font-size:clamp(1.4rem,3vw,1.9rem)}h3{margin:0 0 .25rem;font-size:1rem}.muted,.hint{color:var(--muted);overflow-wrap:anywhere}.hint{margin:-.5rem 0 0;font-size:.86rem}form{gap:.8rem;display:grid}label{gap:.3rem;font-weight:650;display:grid}input:not([type=checkbox]),textarea,.media-record select{color:#233b31;background:#fff;border:1px solid #aab8ad;border-radius:9px;width:100%;min-height:44px;padding:.56rem .7rem;display:block}textarea{resize:vertical}.check{align-items:center;gap:.6rem;min-height:44px;font-weight:500;display:flex}.check input{width:1.1rem;height:1.1rem;accent-color:var(--green);flex:none}summary{min-height:44px;color:var(--green);padding:.4rem 0}button{border:1px solid #0000;border-radius:10px;min-height:44px;padding:.57rem .9rem;font-weight:650}.primary{background:var(--green);color:#fff}.secondary{background:var(--paper);color:var(--green);border-color:#aab8ad}.quiet{color:var(--green);background:0 0;padding-inline:0;text-decoration:underline}.actions{flex-wrap:wrap;align-items:center;gap:.7rem;margin-top:.85rem;display:flex}.message{color:#244432;background:#e8f0e4;border-radius:10px;margin:.75rem 0;padding:.65rem .8rem}.error{color:#722f21;background:#f8e7dd}.workspace-heading{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.workspace>.card,.note-grid{margin-top:1rem}.note-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;display:grid}.record-list{margin:0;padding:0;list-style:none}.record-list li{border-top:1px solid var(--border);padding-block:.9rem}.record-list p{margin:0}.preserve{white-space:pre-wrap;overflow-wrap:anywhere}.device{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}@media (width<=720px){.welcome,.note-grid{grid-template-columns:1fr}.welcome-art{min-height:165px}.landscape{inset:0 0 0 39%}.welcome-text{width:66%;padding:1.2rem}.workspace-heading{flex-wrap:wrap;align-items:start}}.section-title{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.partnership-records,.invitation{margin-top:1rem}.workspace details{margin:1rem 0}.workspace summary{cursor:pointer;min-height:44px;padding-block:.6rem;font-weight:650}.workspace .check{align-items:flex-start}.workspace button,.workspace h2,.workspace h3{overflow-wrap:anywhere}.media-library{margin-top:1rem}.media-library form{margin-block:1rem}.media-library input[type=file]{max-width:100%}.media-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:1rem;display:grid}.media-record{border:1px solid var(--border,#d9e1d4);border-radius:.75rem;min-width:0;padding:.75rem}.media-record select{height:2.75rem}.media-preview{border-radius:.5rem;max-width:100%;max-height:24rem;margin-block:.75rem;display:block}.media-record img.media-preview{aspect-ratio:4/3;object-fit:contain;height:auto}.media-library progress{width:min(100%,20rem)}.media-library .actions a{align-items:center;min-height:44px;display:inline-flex}.unread-count{font-variant-numeric:tabular-nums;margin-inline-start:.3rem}.notification-row{margin-block:.5rem}.notification-detail{border:1px solid #d9e1d4;border-radius:.75rem;margin-block:1rem;padding:1rem}.note-comparison{grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));gap:.75rem;display:grid}.note-comparison>section{min-width:0}a{color:var(--green)}.icon{flex:none;width:24px;height:24px;display:block}.app-shell{min-height:100dvh}.app-topbar{background:var(--paper);border-bottom:1px solid var(--border);z-index:5;justify-content:space-between;align-items:center;gap:1rem;min-height:72px;padding:.65rem 2rem;display:flex;position:sticky;top:0}.app-brand,.top-actions{align-items:center;gap:.75rem;min-width:0;display:flex}.app-brand strong{font:700 1.15rem Georgia,serif}.connection{color:var(--muted);align-items:center;gap:.4rem;min-width:0;font-size:.8rem;display:flex}.connection i{background:#547458;border-radius:50%;flex:none;width:7px;height:7px}.connection i.disconnected{background:#ad6b3c}.bell{width:44px;height:44px;color:var(--green);background:0 0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid;position:relative}.bell:hover,.bell[aria-current=page]{background:#e4ead8}.count{color:#fff;background:var(--green);border-radius:20px;min-width:20px;padding:.05rem .25rem;font-size:.75rem;font-weight:750;position:absolute;top:-2px;right:-4px}.app-nav{border-right:1px solid var(--border);background:var(--paper);z-index:4;flex-direction:column;gap:.4rem;width:208px;padding:2rem 1.2rem;display:flex;position:fixed;top:72px;bottom:0}.app-nav button{text-align:left;color:var(--muted);background:0 0;border-radius:12px;align-items:center;gap:.8rem;min-height:48px;display:flex}.app-nav button:hover{background:#eff1e7}.app-nav button[aria-current=page]{color:var(--green);background:#e4ead8}.nav-caption{letter-spacing:.1em;color:var(--muted);margin:0 0 1.1rem .5rem;font-size:.75rem}.nav-footer{color:var(--muted);margin:auto .5rem 0;font-size:.75rem}.app-content{max-width:1250px;margin:0 auto 0 208px;padding:clamp(1.2rem,3.5vw,3rem)}.page-heading{margin-bottom:1.6rem}.page-heading h1{scroll-margin-top:90px;font-size:clamp(1.9rem,3.5vw,2.8rem)}.page-heading p{margin-block:.4rem}.home-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin-block:1.2rem;display:grid}.shared-summary{background:#edf0e3}.journal-summary{flex-direction:column;align-items:start;display:flex}.journal-summary>button{margin-top:auto}.summary-count{margin:.4rem 0;font:2rem/1.2 Georgia,serif}.summary-count span{color:var(--muted);font:.85rem system-ui,sans-serif}.compact-records{color:var(--muted);overflow-wrap:anywhere;margin:.5rem 0 1.2rem;padding-left:1.2rem}.home-notices{margin-top:1.2rem}.notice-open{color:var(--green);text-align:left;overflow-wrap:anywhere;background:0 0;border-radius:.5rem;justify-content:space-between;gap:.75rem;width:100%;min-height:48px;display:flex}.notice-open>span:first-child{min-width:0}.notice-open:hover{background:#eff1e7}.notification-row.unread{border-left:3px solid var(--green);background:#f1f4e9;padding-left:.6rem}.notification-row p{padding-left:.9rem;font-size:.8rem}.notice-context{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;display:flex}.notice-context p,.message>p{margin:0}.settings-grid{gap:1.2rem;display:grid}.facts{gap:.6rem;display:grid}.facts div{flex-wrap:wrap;gap:.4rem 1rem;display:flex}.facts dt{min-width:3.5rem;color:var(--muted)}.facts dd{overflow-wrap:anywhere;margin:0}.unavailable{background:#f2f1e7;margin:1rem 0}fieldset{border:1px solid var(--border);border-radius:12px;min-width:0}.memory-photos{flex-wrap:wrap;gap:.6rem;display:flex}.memory-photos img{object-fit:cover;border-radius:10px;width:150px;max-width:100%;height:150px}.photo-choice img{object-fit:cover;border-radius:5px;width:56px;height:56px}.app-content>.card{margin-top:1rem}.app-content [id]{scroll-margin-top:88px}input,textarea,select{min-width:0}@media (width<=810px){.app-topbar{gap:.5rem;min-height:64px;padding:.6rem 1rem}.app-nav{width:auto;padding:.4rem .35rem calc(.4rem + env(safe-area-inset-bottom));border-top:1px solid var(--border);border-right:0;flex-direction:row;justify-content:space-around;gap:.1rem;inset:auto 0 0}.app-nav button{flex-direction:column;flex:1 1 0;justify-content:center;gap:.15rem;min-width:0;min-height:52px;padding:.3rem .1rem;font-size:.75rem;display:flex}.app-nav .icon{width:22px;height:22px}.nav-caption,.nav-footer{display:none}.app-content{max-width:none;padding:1.3rem 1rem calc(6.5rem + env(safe-area-inset-bottom));margin:0}.home-grid{gap:.85rem}.app-brand strong{font-size:1rem}.connection{font-size:.75rem}}@media (width<=580px){.home-grid{grid-template-columns:1fr}.app-brand strong{max-width:9ch;line-height:1.1}.top-actions{gap:.4rem}.card{border-radius:16px}.app-content{padding-inline:.9rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.memory-photos figure{min-width:0;margin:.6rem 0}.memory-photos img{height:auto}.memory-photos figcaption a{align-items:center;min-height:44px;display:inline-flex}.form-fields{border:0;gap:.8rem;margin:0;padding:0;display:grid}.memory-links{overflow-wrap:anywhere;margin:.3rem 0;padding:0;list-style:none}.memory-links a{align-items:center;min-height:44px;display:inline-flex}.memory-links li{border:0;padding:0}.album-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:1rem;margin:1rem 0;display:grid}.album-grid figure{min-width:0;margin:0}.album-grid figcaption{overflow-wrap:anywhere;color:var(--muted);padding-block:.4rem}.media-thumbnail{width:100%;color:var(--green);background:#edf0e3;border-radius:12px;padding:0;display:block;overflow:hidden}.media-thumbnail img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto;display:block}.media-viewer{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;padding:max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));background:var(--paper);color:#233b31;border:0;margin:0;inset:0;overflow:auto}.media-viewer::backdrop{background:#233b31}.viewer-heading{align-items:center}.media-viewer .full-image,.media-viewer video{object-fit:contain;width:100%;max-height:min(65dvh,44rem);margin:1rem auto;display:block}.media-viewer .actions a{overflow-wrap:anywhere;align-items:center;min-height:44px;display:inline-flex}@media (width<=580px){.album-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.media-viewer h2{font-size:1.4rem}}.form-fields select{font:inherit;color:inherit;background:#fff;border:1px solid #aab8ad;border-radius:9px;width:100%;height:44px;padding:.5rem}.selected-media{margin:.4rem 0;padding-left:1.3rem}.selected-media li{border-bottom:1px solid var(--border);overflow-wrap:anywhere;padding:.6rem 0}.album-cover{object-fit:contain;border-radius:12px;width:100%;max-width:100%;height:auto;max-height:22rem;margin-block:.7rem;display:block}.album-cover.compact{object-fit:cover;flex:none;width:84px;height:63px;margin:0}.plan-checklist{padding:0;list-style:none}.plan-checklist li{margin-block:.35rem}.plan-checklist .check{overflow-wrap:anywhere;align-items:flex-start}.plan-checklist input{flex:none;margin-top:.25rem}.plan-edit-items{padding-left:1.4rem}.plan-edit-items li{min-width:0;margin-block:.8rem}.plan-edit-items button{margin-top:.4rem}
