@font-face{font-family:Inter;src:url('assets/fonts/inter-variable.woff2?v=comic1') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{--ink:#242122;--paper:#fff7ef;--purple:#8581ef;--pink:#f1a2c7;--yellow:#ffbd42;--green:#b6c5a7;--line:#242122;--muted:#635b59;--radius:25px;font-family:Inter,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizeLegibility}
*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;min-width:320px}button,input,textarea,select{font:inherit}button,a{color:inherit}button{cursor:pointer}a{text-decoration:none}button:disabled{cursor:wait;opacity:.65}a,button,input,textarea,select{ -webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #604bd6;outline-offset:4px}input,textarea,select{min-width:0}h1,h2,h3,p{margin-top:0}svg{display:block;width:100%;height:100%}.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.eyebrow{font-size:11px;line-height:1.4;letter-spacing:1.45px;font-weight:750;margin-bottom:12px}.intro{font-size:15px;line-height:1.6;color:var(--muted);margin:14px 0 0}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:46px;border:2px solid var(--ink);border-radius:100px;padding:11px 21px;font-weight:750;font-size:13px;line-height:1.3;transition:transform .18s,box-shadow .18s}.button-dark{color:var(--paper);background:var(--ink)}.button-light{background:var(--paper)}.button:hover{transform:translate(-2px,-2px);box-shadow:3px 3px 0 var(--ink)}.button-dark:hover{box-shadow:3px 3px 0 var(--pink)}.button span{font-size:20px}.boot-screen{height:100dvh;display:grid;place-content:center;text-align:center;background:var(--purple)}.mini-brand{font-weight:900;font-size:64px;letter-spacing:-5px;color:var(--paper)}.boot-screen p{font-size:14px;margin-top:20px}
/* A little world of our own. */
.login-wrap{position:relative;min-height:100dvh;background:var(--purple);display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.8fr);align-items:center;gap:70px;padding:125px max(6vw,24px) 65px;overflow:hidden}.login-brand{position:absolute;top:32px;left:max(6vw,24px);font-size:13px;font-weight:850;line-height:1.1;letter-spacing:-.5px}.login-brand span{display:block;font-size:42px;letter-spacing:-3px}.login-story{position:relative;max-width:660px}.login-story h1{position:relative;z-index:1;font-size:clamp(44px,5.6vw,83px);font-weight:900;line-height:.95;letter-spacing:-4px;margin:0}.login-story h1 span{color:var(--paper)}.login-story>.eyebrow{margin-bottom:20px}.login-art{height:auto;aspect-ratio:560/430;max-width:490px;margin:-5px 0 -25px 45px}.login-caption{font-size:13px;line-height:1.6;margin:0 0 0 8px}.login-card{position:relative;justify-self:center;display:flex;flex-direction:column;width:100%;max-width:410px;border:2px solid var(--ink);border-radius:28px;background:var(--paper);padding:36px;box-shadow:9px 9px 0 var(--ink)}.login-card h2{font-size:40px;letter-spacing:-2px;font-weight:900;margin:0 0 12px}.login-card>p:not(.eyebrow):not(.form-error){font-size:14px;line-height:1.6;color:var(--muted);margin-bottom:25px}.login-card label{font-size:12px;font-weight:750;margin:0 0 7px}.login-card input{width:100%;height:49px;border:1.5px solid var(--ink);border-radius:12px;background:#fffdfa;padding:0 14px;font-size:15px}.login-card>input{margin-bottom:18px}.password-field{position:relative}.password-field input{padding-right:65px}.password-field button{position:absolute;right:8px;top:8px;height:33px;padding:0 10px;font-size:11px;font-weight:750;border:0;border-radius:8px;background:#ede5de}.login-submit{margin-top:23px;justify-content:space-between;font-size:15px}.login-private{text-align:center;font-size:10px;letter-spacing:.5px;color:var(--muted)}.form-error{font-size:12px!important;line-height:1.5;color:#a12638;min-height:18px;margin:12px 0}.login-flower{position:absolute;right:-28px;top:-42px;width:86px;height:86px;color:var(--pink);transform:rotate(15deg)}.login-edition{position:absolute;bottom:25px;right:6vw;font-size:9px;letter-spacing:1.7px;font-weight:700}
/* The family dashboard. */
.site-header{max-width:1360px;padding:24px 44px 20px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}.wordmark{display:flex;align-items:center;gap:10px;min-width:180px}.wordmark>svg{width:48px;height:48px;color:var(--pink)}.wordmark>span{font-size:11px;font-weight:800;line-height:1.1;letter-spacing:-.3px}.wordmark b{display:block;font-size:35px;font-weight:900;letter-spacing:-2.5px}.main-nav{display:flex;gap:3px;padding:5px;border:1.5px solid var(--ink);border-radius:99px;background:#fffdfa}.main-nav a{font-size:12px;font-weight:750;padding:12px 20px;border-radius:99px;white-space:nowrap;transition:background .15s}.main-nav a:hover{background:#ece7ff}.main-nav a.is-active{background:var(--ink);color:var(--paper)}.profile-button{display:flex;align-items:center;gap:9px;text-align:left;background:none;border:0;padding:5px}.avatar{display:grid;place-items:center;border-radius:50%;border:1.5px solid var(--ink);background:var(--yellow);height:38px;width:38px;font-size:12px;font-weight:850}.profile-button b{display:block;font-size:12px}.profile-button small{display:block;font-size:10px;margin-top:3px;color:var(--muted)}.content{max-width:1360px;margin:0 auto;padding:0 44px}.topbar{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #24212225;padding:18px 0;font-size:10px;line-height:1.5}.breadcrumbs{letter-spacing:1px}.breadcrumbs b{font-weight:600;text-transform:uppercase}.topbar time{color:var(--muted)}.welcome-row{position:relative;isolation:isolate;display:grid;grid-template-columns:1.12fr 1fr;align-items:center;min-height:375px;padding:38px 44px 46px;background:var(--purple);border:2px solid var(--ink);border-radius:30px;overflow:hidden}.hero-copy{z-index:1}.welcome-row h1{font-size:clamp(40px,5.2vw,74px);font-weight:900;letter-spacing:-3.7px;line-height:.98;margin:0;overflow-wrap:anywhere}.welcome-row h1 em{color:var(--paper);font-style:normal}.welcome-row .intro{color:#302749;font-size:14px;margin:18px 0 22px}.hero-art{position:relative;align-self:stretch;display:grid;align-items:center}.hero-art>svg{position:absolute;width:112%;height:125%;max-height:430px;left:-4%;top:-11%;filter:drop-shadow(0 5px 0 #24212215)}.hero-sticker{position:absolute;z-index:1;top:0;right:-16px;display:grid;place-content:center;width:88px;height:88px;border:2px solid var(--ink);border-radius:50%;background:var(--paper);font-size:15px;line-height:1.05;font-weight:850;text-align:center;transform:rotate(12deg);box-shadow:3px 3px 0 var(--ink)}.hero-edition{position:absolute;right:29px;bottom:17px;font-size:8px;letter-spacing:1.2px;font-weight:700}.section-label{display:flex;justify-content:space-between;align-items:center;margin:35px 2px 16px;font-size:14px;font-weight:800}.section-label>span:last-child{font-size:25px}.home-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:21px;margin-bottom:21px}.card{border:1.5px solid var(--ink);border-radius:var(--radius);padding:27px;background:#fffdfa;min-width:0}.card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.card-heading h2{font-size:28px;line-height:1.05;font-weight:850;letter-spacing:-1.2px;margin:0}.card-heading .eyebrow{font-size:9px;margin-bottom:9px}.round-link{width:39px;height:39px;display:grid;place-items:center;flex-shrink:0;border:1.5px solid var(--ink);border-radius:50%;font-size:22px;background:var(--paper);transition:transform .15s}.round-link:hover{transform:rotate(45deg);background:var(--yellow)}.subtle{font-size:11px;line-height:1.6;color:var(--muted);margin:17px 0 0}.agenda-filters{display:flex;flex-wrap:wrap;gap:9px;margin:21px 0 14px}.legend{display:inline-flex;align-items:center;gap:6px;font-size:10px;border:1px solid #24212230;border-radius:20px;padding:5px 8px}.agenda-dot{width:7px;height:7px;border:1px solid var(--ink);border-radius:50%}.dot-me{background:var(--purple)}.dot-family{background:var(--pink)}.dot-qa{background:var(--yellow)}.agenda-list,.task-list,.file-list{list-style:none;padding:0;margin:0}.agenda-item{display:grid;grid-template-columns:63px 3px minmax(0,1fr);gap:14px;align-items:start;padding:14px 0;border-bottom:1px solid #24212218}.agenda-time{font-size:12px;font-weight:600;padding-top:2px}.agenda-line{height:100%;min-height:38px;border-radius:4px;background:var(--purple)}.agenda-item.family .agenda-line{background:var(--pink)}.agenda-item.qa .agenda-line{background:var(--yellow)}.agenda-copy b{display:block;font-size:13px;line-height:1.45;font-weight:750;overflow-wrap:anywhere}.agenda-meta{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:5px;font-size:10px;color:var(--muted)}.agenda-chip{font-style:normal;font-size:9px;font-weight:700;border-radius:4px;background:#eae7ff;padding:3px 5px;color:var(--ink)}.family .agenda-chip{background:#fbdbea}.qa .agenda-chip{background:#ffedc0}.agenda-day{font-size:13px;font-weight:800;padding:27px 0 7px}.agenda-day:first-child{padding-top:8px}.weather-card{background:var(--yellow)}.weather-icon{font-size:41px;line-height:1}.weather-now{display:flex;align-items:flex-end;gap:17px;margin:24px 0 13px}.weather-now strong{font-size:64px;line-height:.85;letter-spacing:-5px;font-weight:850}.weather-now>span{font-size:12px;max-width:145px;line-height:1.4}.weather-details{display:flex;flex-wrap:wrap;gap:18px;font-size:10px}.weather-details b{margin-left:4px}.forecast{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid #24212245;padding-top:18px;margin-top:24px;gap:5px}.forecast-day{display:grid;justify-items:center;gap:8px;font-size:9px}.forecast-day i{font-size:19px;font-style:normal}.forecast-day b{font-size:12px}.forecast-day small{font-size:10px;color:#5f471c}.weather-card .subtle{font-size:9px;color:#594319}.tasks-card{background:var(--pink)}.quick-add{display:flex;gap:8px;margin:23px 0 17px}.quick-add input,.quick-add select{min-height:46px;padding:11px 14px;border:1.5px solid var(--ink);border-radius:12px;background:var(--paper);font-size:13px;flex:1;min-width:0}.quick-add select{flex:0 1 140px}.quick-add>button:not(.button){flex:none;border:1.5px solid var(--ink);border-radius:12px;width:46px;background:var(--ink);color:var(--paper);font-size:26px}.task-row{display:flex;align-items:flex-start;gap:12px;padding:15px 0;border-top:1px solid #24212225}.task-check{appearance:none;flex:none;cursor:pointer;border:1.5px solid var(--ink);width:21px;height:21px;border-radius:6px;margin:0;background:var(--paper)}.task-check:checked{background:var(--ink)}.task-check:checked:after{content:'✓';display:block;text-align:center;color:var(--paper);font-size:15px;line-height:18px}.task-row>span{font-size:13px;line-height:1.5;overflow-wrap:anywhere}.task-assignee{margin-left:auto;font-size:10px;padding-top:4px;color:#634355;white-space:nowrap}.family-links-card{background:var(--green)}.family-links-card>p{font-size:12px;margin:15px 0 20px;color:#384331}.photo-doodle{font-size:43px;line-height:1;transform:rotate(14deg)}.photo-link{display:flex;align-items:center;gap:12px;border-top:1px solid #24212240;padding:15px 0}.photo-link:last-child{padding-bottom:0}.photo-symbol{display:grid;place-items:center;height:39px;width:43px;background:var(--paper);border:1.5px solid var(--ink);border-radius:9px;font-size:24px;transform:rotate(-5deg)}.photo-link:nth-of-type(2) .photo-symbol{background:var(--purple);transform:rotate(5deg)}.photo-link b,.photo-link small{display:block}.photo-link b{font-size:13px}.photo-link small{font-size:10px;margin-top:5px}.external{margin-left:auto;font-size:23px}.photo-link:hover b{text-decoration:underline}.pages-teaser{display:flex;align-items:center;gap:27px;background:#e8e4fc;margin-top:8px}.pages-teaser>svg{width:96px;height:96px;flex-shrink:0;color:var(--pink);transform:rotate(-12deg)}.pages-teaser h2{font-size:28px;font-weight:850;letter-spacing:-1.2px;line-height:1.05;margin:0 0 10px}.pages-teaser p:last-child{font-size:12px;margin:0;color:var(--muted)}.pages-teaser>.button{margin-left:auto;flex-shrink:0}.footer-note{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:40px;padding:25px 0 32px;border-top:1px solid #24212240;font-size:10px;color:var(--muted)}.footer-note>b{font-size:28px;letter-spacing:-2px;color:var(--ink);font-weight:900}.footer-note>span:last-child{font-size:8px;letter-spacing:2px}.view-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 0 35px}.view-intro h1{font-size:clamp(40px,5vw,64px);line-height:1;font-weight:900;letter-spacing:-3px;margin:0}.intro-doodle{display:grid;place-items:center;border:2px solid var(--ink);background:var(--pink);width:80px;height:80px;border-radius:24px;font-size:45px;transform:rotate(10deg);margin-right:20px}.task-tabs{display:flex;gap:10px;margin-bottom:20px}.task-tabs button{padding:11px 25px;border:1.5px solid var(--ink);border-radius:30px;background:transparent;font-size:13px;font-weight:700}.task-tabs button.is-active{background:var(--purple);box-shadow:2px 3px 0 var(--ink)}.task-manager{min-height:260px}.wide-add{margin-top:0}.task-list-full .task-row{padding:19px 0}.task-list-full .task-assignee{color:var(--muted)}.pages-layout{display:grid;grid-template-columns:195px minmax(0,1fr) 270px;gap:17px;align-items:start}.page-sidebar,.comments-sidebar,.page-editor{padding:18px}.page-sidebar{background:#e8e4fc}.page-sidebar-title{font-size:9px;font-weight:800;letter-spacing:1px;display:flex;justify-content:space-between;padding:7px 2px 16px}.page-list{display:grid;gap:5px}.page-list button{display:flex;gap:8px;align-items:center;text-align:left;border:1px solid transparent;border-radius:10px;background:none;padding:10px 8px;min-height:40px;font-size:11px;line-height:1.5;overflow-wrap:anywhere}.page-list button:hover{background:#ffffff70}.page-list button.is-active{background:var(--paper);border-color:var(--ink)}.page-symbol{font-size:14px}.empty-page{display:grid;place-content:center;text-align:center;min-height:410px}.empty-page>span{font-size:74px;color:var(--purple)}.empty-page h2{font-size:26px;font-weight:850;letter-spacing:-1px;margin:20px 0 10px}.empty-page p{font-size:13px;line-height:1.6;color:var(--muted)}.page-editor-inner input{width:100%;font-size:27px;font-weight:850;letter-spacing:-1px;border:0;padding:13px 0;background:transparent;color:var(--ink)}.page-editor-inner textarea{display:block;width:100%;min-height:420px;resize:vertical;background:transparent;padding:17px 0;border:0;border-top:1px solid #24212230;font-size:14px;line-height:1.8;color:#3b3434}.page-savebar{display:flex;align-items:center;gap:12px;border-top:1px solid #24212230;padding-top:15px}.page-savebar .subtle{margin:0;flex:1;font-size:10px}.page-savebar button{background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:20px;padding:11px 16px;font-size:12px;font-weight:700}.comments-sidebar{background:#fff0cc}.comments-sidebar h2{font-size:22px;letter-spacing:-.8px;font-weight:850;margin:0}.comments-sidebar header{border-bottom:1px solid #24212230;padding-bottom:17px}.comments-sidebar .eyebrow{font-size:9px;margin-bottom:7px}.comments-list{display:grid;gap:15px;max-height:360px;overflow:auto;padding:17px 0}.comments-list>.subtle{margin:0}.comment{border-bottom:1px solid #24212220;padding-bottom:12px}.comment-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:5px;font-size:9px;color:var(--muted)}.comment-meta b{font-size:11px;color:var(--ink)}.comment p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.6;margin:8px 0 0}.comment-form{display:grid;gap:10px}.comment-form textarea{width:100%;padding:12px;border:1.5px solid var(--ink);border-radius:12px;font-size:12px;line-height:1.6;resize:vertical;background:var(--paper)}.comment-form .button{font-size:11px;min-height:40px}.attachment-box{border-top:1px solid #24212235;padding-top:18px;margin-top:25px}.attachment-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.attachment-heading h3{font-size:13px;margin:0}.upload-label{cursor:pointer;font-size:9px;padding:7px 9px;min-height:32px}.upload-label:focus-within{outline:3px solid var(--purple);outline-offset:2px}.file-list{margin-top:14px;display:grid;gap:10px}.file-row{display:flex;align-items:center;gap:6px;font-size:10px;min-width:0}.file-row a{overflow-wrap:anywhere;text-decoration:underline}.file-row small{white-space:nowrap;color:var(--muted)}.skeleton-row{height:48px;border-radius:10px;margin:12px 0;background:#2421220c;animation:pulse 1.3s ease-in-out infinite alternate}.toast{position:fixed;z-index:30;bottom:28px;left:50%;transform:translate(-50%,20px);border:1.5px solid var(--ink);border-radius:14px;background:var(--ink);color:var(--paper);box-shadow:4px 4px 0 var(--purple);padding:14px 22px;font-size:13px;max-width:calc(100% - 35px);opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}.toast.is-visible{opacity:1;transform:translate(-50%,0)}@keyframes pulse{to{opacity:.35}}
@media(min-width:1500px){.login-wrap{padding-left:max(6vw,calc((100vw - 1250px)/2));padding-right:max(6vw,calc((100vw - 1250px)/2))}}
@media(max-width:1100px){.site-header{padding:20px 25px}.content{padding:0 25px}.wordmark{min-width:145px}.main-nav a{padding:11px 14px}.welcome-row{padding:30px;min-height:335px}.welcome-row h1{font-size:57px}.pages-layout{grid-template-columns:175px minmax(0,1fr) 235px;gap:12px}.card{padding:22px}.page-sidebar,.page-editor,.comments-sidebar{padding:14px}.login-wrap{gap:40px}.login-story h1{font-size:65px}.login-art{margin-left:0}.login-card{padding:30px}.pages-teaser{gap:20px}.pages-teaser h2{font-size:25px}}
@media(max-width:850px){.site-header{flex-wrap:wrap;gap:18px}.main-nav{order:3;width:100%;justify-content:space-around}.main-nav a{text-align:center;flex:1}.home-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:15px}.card-heading h2{font-size:25px}.welcome-row h1{font-size:49px}.hero-sticker{width:66px;height:66px;font-size:12px;right:-16px}.pages-layout{grid-template-columns:170px minmax(0,1fr)}.comments-sidebar{grid-column:2}.pages-teaser>svg{width:65px;height:65px}.pages-teaser h2{font-size:24px}.pages-teaser .button{font-size:11px;padding:12px 15px}.login-wrap{grid-template-columns:1fr 1fr;gap:25px;padding:115px 30px 60px}.login-story h1{font-size:48px;letter-spacing:-2.5px}.login-art{width:120%;max-width:none;margin-left:-25px}.login-card{padding:25px}.login-card h2{font-size:32px}.login-flower{right:-14px;width:67px;height:67px;top:-36px}.weather-now strong{font-size:58px}.weather-details{gap:9px}.forecast{gap:2px}.forecast-day{font-size:8px}.profile-button{margin-left:auto}}
@media(max-width:600px){.site-header{padding:18px 17px 12px;gap:16px}.wordmark>svg{width:38px;height:38px}.wordmark b{font-size:30px}.main-nav a{font-size:11px;padding:11px 8px}.content{padding:0 16px}.topbar{font-size:8px;padding:13px 0}.welcome-row{grid-template-columns:1fr;padding:27px 25px 20px;min-height:unset;border-radius:23px}.welcome-row h1{font-size:clamp(39px,10.5vw,63px);letter-spacing:-2.5px}.welcome-row .eyebrow{font-size:9px}.welcome-row .intro{font-size:13px;margin:15px 0 20px}.welcome-row .button{font-size:12px;min-height:42px;padding:10px 18px}.hero-art{height:225px;margin-top:7px}.hero-art>svg{width:100%;height:112%;top:-4%;left:0}.hero-sticker{top:15px;right:0;width:69px;height:69px}.hero-edition{font-size:7px;right:22px;bottom:12px}.home-grid{grid-template-columns:1fr;gap:16px;margin-bottom:16px}.card{padding:24px 21px;border-radius:22px}.section-label{margin-top:27px;font-size:13px}.card-heading h2{font-size:28px}.agenda-item{grid-template-columns:55px 3px minmax(0,1fr);gap:11px}.agenda-copy b{font-size:13px}.weather-now strong{font-size:72px}.forecast{gap:5px}.forecast-day{font-size:10px}.forecast-day b{font-size:13px}.pages-teaser{position:relative;align-items:flex-start;flex-wrap:wrap;gap:15px;padding-top:28px}.pages-teaser>svg{position:absolute;right:16px;top:20px;width:58px;height:58px}.pages-teaser>div{padding-right:40px}.pages-teaser h2{font-size:27px}.pages-teaser .eyebrow{font-size:9px}.pages-teaser>.button{margin-left:0;font-size:12px}.footer-note{margin-top:29px;gap:10px}.footer-note>span:last-child{display:none}.footer-note>span{font-size:9px}.view-intro{align-items:flex-start;flex-direction:column;padding:22px 0 27px}.view-intro h1{font-size:43px;letter-spacing:-2px}.view-intro .intro{font-size:13px;max-width:310px}.view-intro .eyebrow{font-size:10px}.intro-doodle{display:none}.task-tabs{gap:8px}.task-tabs button{flex:1;padding:11px 14px;font-size:12px}.wide-add{flex-wrap:wrap}.wide-add input{flex-basis:100%;min-height:48px}.wide-add select{flex:1}.wide-add .button{font-size:12px}.task-assignee{font-size:9px}.pages-layout{grid-template-columns:1fr}.page-sidebar{padding:17px}.page-list{max-height:215px;overflow:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.page-list button{font-size:11px;align-items:flex-start}.page-sidebar-title{padding-bottom:12px}.comments-sidebar{grid-column:auto}.page-editor{padding:20px}.page-editor-inner input{font-size:25px}.page-editor-inner textarea{min-height:340px}.page-savebar{align-items:flex-start}.comments-sidebar{padding:24px}.login-wrap{display:flex;flex-direction:column;gap:34px;padding:110px 24px 45px;min-height:100dvh}.login-brand{top:23px;left:25px}.login-brand span{font-size:35px}.login-story{width:100%}.login-story>.eyebrow{font-size:9px;margin-bottom:13px}.login-story h1{font-size:49px;letter-spacing:-2.6px;max-width:340px}.login-art{position:absolute;width:155px;height:140px;right:-21px;bottom:-29px;margin:0;opacity:1}.login-caption{display:none}.login-card{align-self:center;max-width:420px;padding:30px 25px;box-shadow:5px 5px 0 var(--ink)}.login-card h2{font-size:36px}.login-flower{width:63px;height:63px;top:-35px;right:18px}.login-edition{position:static;text-align:center;font-size:8px}.login-card input{font-size:16px}.login-card>p:not(.eyebrow):not(.form-error){font-size:13px}.profile-button small{font-size:9px}.profile-button b{font-size:11px}.avatar{width:34px;height:34px}.login-story h1 span{position:relative;z-index:1}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.page-reading{min-height:440px}.page-reading-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px}.page-reading-toolbar .eyebrow{font-size:8px;margin:0}.page-reading-toolbar .button{font-size:10px;padding:8px 12px;min-height:34px}.page-reading>h2{font-size:30px;font-weight:850;letter-spacing:-1.2px;line-height:1.15;overflow-wrap:anywhere;margin-bottom:25px}.page-prose{font-size:13px;line-height:1.8;overflow-wrap:anywhere}.page-prose h3,.page-prose h4,.page-prose h5,.page-prose h6{font-weight:800;letter-spacing:-.4px;margin:25px 0 10px;line-height:1.3}.page-prose h3{font-size:21px}.page-prose h4{font-size:18px}.page-prose h5,.page-prose h6{font-size:15px}.page-prose p{margin:0 0 13px}.page-prose ul{padding-left:20px;margin-bottom:20px}.page-prose li{margin:5px 0}.page-prose a{text-decoration:underline;text-underline-offset:3px;color:#5142a5}.page-prose code{background:#eee9fc;padding:2px 5px;border-radius:4px;font-size:12px}.page-prose hr{border:0;border-top:1px solid #24212230;margin:24px 0}.table-scroll{overflow:auto;max-width:100%;margin:17px 0;border:1px solid #24212240;border-radius:10px}.page-prose table{border-collapse:collapse;min-width:100%;font-size:11px}.page-prose th{text-align:left;background:#e8e4fc;font-weight:750}.page-prose th,.page-prose td{padding:10px;border-bottom:1px solid #24212220;white-space:nowrap}.page-prose tr:last-child td{border-bottom:0}.writing-hint{font-size:9px;color:var(--muted);margin:0 0 12px}.page-editor-inner input:disabled,.page-editor-inner textarea:disabled{opacity:.65}.page-reading>.subtle{border-top:1px solid #24212225;margin-top:32px;padding-top:15px}
@media(max-width:600px){.login-art{display:none}}
.toast:not(.is-visible){visibility:hidden}
.page-list{display:block;max-height:65vh;overflow:auto}.page-tree,.tree-children{list-style:none;padding:0;margin:0}.tree-children{margin-left:10px;padding-left:7px;border-left:1px solid #24212230}.tree-row{display:flex;align-items:center;gap:2px;min-width:0}.page-list .tree-toggle,.page-list .tree-add{display:grid;place-items:center;flex:none;width:23px;min-height:31px;padding:0;font-size:18px;border-radius:6px}.page-list .tree-toggle:disabled{opacity:.4;cursor:default}.page-list .tree-title{display:block;flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:8px 4px;min-height:36px;font-size:11px}.page-list .tree-add{width:21px;opacity:.5}.tree-row:hover .tree-add,.tree-row:focus-within .tree-add{opacity:1}.page-list .tree-title.is-active{font-weight:750}.trash-open{width:100%;text-align:left;border:0;border-top:1px solid #24212230;background:transparent;padding:16px 5px 4px;margin-top:17px;font-size:11px;color:var(--muted)}.trash-open:hover{text-decoration:underline}.page-location{font-size:10px;color:var(--muted);line-height:1.6;overflow-wrap:anywhere;margin:0 0 12px}.page-actions{border:1px solid #24212230;border-radius:12px;margin-bottom:22px;background:#fff7ef}.page-actions summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:10px 12px;font-size:11px;font-weight:700;list-style:none}.page-actions summary::-webkit-details-marker{display:none}.page-actions summary:focus-visible{outline:3px solid var(--purple)}.page-actions-content{display:grid;gap:12px;padding:5px 12px 14px}.page-actions-content>.button{justify-self:start;font-size:11px;min-height:35px;padding:8px 12px}.page-actions-content>label{font-size:10px;font-weight:700;margin-top:3px}.page-move{display:flex;flex-wrap:wrap;gap:8px}.page-move select{flex:1;min-width:100px;max-width:100%;border:1px solid var(--ink);border-radius:9px;background:#fffdfa;padding:9px;font-size:11px}.page-move .button{font-size:10px;padding:8px 13px;min-height:35px}.delete-page{background:transparent;border:0;border-top:1px solid #24212225;color:#a12638;font-size:11px;text-align:left;padding:13px 0 0;justify-self:stretch}.delete-page:hover{text-decoration:underline}.trash-dialog{width:min(600px,calc(100vw - 32px));max-height:80dvh;overflow:auto;border:2px solid var(--ink);border-radius:25px;background:var(--paper);padding:28px;box-shadow:7px 7px 0 var(--ink);color:var(--ink)}.trash-dialog::backdrop{background:#24212275;backdrop-filter:blur(3px)}.trash-dialog>header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.trash-dialog h2{font-size:32px;letter-spacing:-1px;margin:0}.trash-dialog>p{font-size:12px;line-height:1.6;margin:18px 0 22px;color:var(--muted)}.trash-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 0;border-top:1px solid #24212230}.trash-row b{font-size:13px;overflow-wrap:anywhere}.trash-row small{display:block;font-size:10px;color:var(--muted);margin-top:6px}.trash-row .button{font-size:11px;min-height:36px;padding:9px 13px;flex-shrink:0}@media(max-width:600px){.page-list{display:block;max-height:290px}.page-list .tree-title{font-size:12px}.tree-children{margin-left:14px}.trash-dialog{padding:22px}.trash-row{align-items:flex-start}.page-actions-content{padding:6px 10px 12px}}
/* Holiday archive and the shared conversation. */
.main-nav a{padding-inline:15px}.holiday-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.holiday-card{border:2px solid var(--ink);border-radius:28px;overflow:hidden;background:#fffdfa}.holiday-art{position:relative;background:var(--yellow);height:240px;overflow:hidden;border-bottom:2px solid var(--ink)}.holiday-art svg{width:100%;height:100%}.scotland-card .holiday-art{background:#f1dce9}.travel-stamp{position:absolute;right:20px;top:20px;border:2px solid var(--ink);border-radius:50%;background:var(--paper);width:80px;height:80px;display:grid;place-content:center;text-align:center;font-size:11px;line-height:1.35;font-weight:850;transform:rotate(12deg)}.holiday-copy{padding:28px}.holiday-copy h2{font-size:42px;letter-spacing:-2px;margin:0 0 12px}.holiday-copy>p:not(.eyebrow){font-size:14px;line-height:1.65;color:var(--muted);max-width:360px;min-height:46px}.holiday-actions{display:flex;flex-wrap:wrap;gap:10px}.holiday-actions .button{gap:8px}.chat-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;align-items:start;max-width:1120px;margin:0 auto}.chat-about{background:var(--purple);padding:26px}.chat-avatars{display:flex;margin-bottom:24px}.chat-avatars span{display:grid;place-items:center;width:58px;height:58px;border:2px solid var(--ink);border-radius:50%;background:var(--yellow);font-size:22px;font-weight:800;transform:rotate(-10deg)}.chat-avatars span+span{background:var(--pink);margin-left:-8px;transform:rotate(10deg)}.chat-about h2{font-size:24px;letter-spacing:-1px;margin-bottom:12px}.chat-about>p{font-size:13px;line-height:1.7;color:var(--ink)}.chat-about .subtle{font-size:11px}.chat-about details{background:var(--paper);border:1.5px solid var(--ink);border-radius:14px;margin-top:24px;padding:14px;font-size:12px;line-height:1.6}.chat-about summary{font-weight:750;cursor:pointer}.chat-about details p{margin:12px 0}.chat-about form{display:grid;gap:8px}.chat-about input{width:100%;padding:10px;border:1px solid var(--ink);border-radius:8px;background:#fffdfa}.chat-about form .button{font-size:11px;margin-top:8px;padding:10px}.chat-panel{border:2px solid var(--ink);border-radius:26px;background:#f2eee9;overflow:hidden;position:relative;box-shadow:5px 5px 0 #24212215}.chat-heading{display:flex;gap:13px;align-items:center;background:var(--paper);padding:18px 23px;border-bottom:1.5px solid var(--ink)}.chat-heading h2{font-size:17px;margin:0 0 4px}.chat-heading p{font-size:10px;color:var(--muted);margin:0;line-height:1.4}.chat-heart{margin-left:auto;font-size:24px;color:#ad446d}.chat-scroll{height:clamp(300px,46dvh,560px);overflow-y:auto;overscroll-behavior:contain;padding:18px 24px;scrollbar-gutter:stable}.chat-day{font-size:10px;text-align:center;margin:12px 0 23px;color:var(--muted)}.chat-message{width:fit-content;max-width:82%;min-width:125px;padding:13px 16px;border:1px solid var(--ink);border-radius:17px 17px 17px 3px;background:#fffdfa;margin:0 0 14px;overflow-wrap:anywhere}.chat-message.is-own{margin-left:auto;background:#dfdafc;border-radius:17px 17px 3px 17px}.chat-message>b{font-size:10px}.chat-message>p{font-size:14px;line-height:1.6;white-space:pre-wrap;margin:6px 0 10px}.chat-message-meta{display:flex;justify-content:flex-end;gap:10px;font-size:9px;color:var(--muted)}.chat-receipt.is-read{color:#51429b;font-weight:750}.chat-empty{text-align:center;padding:50px 15px;color:var(--muted)}.chat-empty>span{font-size:65px;color:var(--purple)}.chat-empty h3{color:var(--ink);font-size:27px;letter-spacing:-1px;margin:16px 0 12px}.chat-empty p{font-size:12px}.chat-compose{display:grid;grid-template-columns:1fr auto;gap:9px;padding:17px 20px 12px;background:var(--paper);border-top:1.5px solid var(--ink);align-items:center}.chat-compose textarea{width:100%;resize:vertical;min-height:48px;max-height:160px;border:1px solid var(--ink);border-radius:15px;background:#fffdfa;padding:12px 14px;font-size:14px;line-height:1.5}.chat-compose>small{font-size:9px;color:var(--muted);grid-column:1/-1}.chat-compose>p{grid-column:1/-1;color:#a12638;font-size:12px;line-height:1.5;margin:0}.chat-compose>p:empty{display:none}.chat-older{display:block;margin:0 auto 15px;border:1px solid var(--ink);border-radius:20px;padding:9px 15px;background:var(--paper);font-size:11px}.chat-new{display:block;margin:0 auto 10px;border:1px solid var(--ink);border-radius:20px;background:var(--yellow);padding:8px 17px;font-size:12px}[data-chat-badge]{display:inline-grid;place-items:center;background:var(--pink);color:var(--ink);min-width:18px;height:18px;border-radius:10px;font-size:9px;padding:0 4px}
@media(max-width:1100px){.site-header{flex-wrap:wrap}.main-nav{order:3;width:100%;justify-content:center}.profile-button{margin-left:auto}.main-nav a{flex:1;text-align:center}}
@media(max-width:700px){.holiday-grid{grid-template-columns:1fr}.holiday-art{height:210px}.holiday-copy{padding:24px}.holiday-copy h2{font-size:36px}.chat-layout{grid-template-columns:1fr;gap:16px}.chat-about{padding:20px}.chat-about .chat-avatars,.chat-about>h2,.chat-about>p{display:none}.chat-about:not(:has(details:not([hidden]))){display:none}.chat-about details{margin:0}.chat-heading{padding:15px 18px}.chat-scroll{padding:12px 13px;height:48dvh}.chat-message{max-width:90%}.chat-compose{padding:12px;gap:8px}.chat-compose .button{padding:12px;font-size:11px}.chat-compose textarea{font-size:16px}.chat-panel{border-radius:22px}.main-nav{overflow-x:auto;justify-content:flex-start;border-radius:18px}.main-nav a{flex:none;padding:11px 13px}.chat-about input{font-size:16px}}
@media(pointer:coarse){.chat-compose>small{display:none}}
@media(max-width:700px){.main-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;gap:3px}.main-nav a{font-size:11px;padding:10px 6px;text-align:center}}
.page-children{margin:25px 0;padding-top:20px;border-top:1px solid #24212225}.page-children h3{font-size:13px;margin-bottom:12px}.page-children button{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;padding:13px 15px;margin-bottom:8px;text-align:left;font-size:13px;font-weight:650;line-height:1.5;border:1px solid #24212245;border-radius:12px;background:#e8e4fc}.page-children button:hover{background:var(--pink)}.page-children button>span:first-child{overflow-wrap:anywhere}.page-prose ol{padding-left:23px}
.page-prose li.page-check-row{list-style:none;display:flex;align-items:flex-start;gap:11px;margin-left:-23px;padding:5px 0}.page-check-row input{appearance:none;flex:none;width:21px;height:21px;margin:2px 0 0;border:1.5px solid var(--ink);border-radius:6px;background:var(--paper);cursor:pointer}.page-check-row input:checked{background:var(--purple)}.page-check-row input:checked:after{content:'✓';display:block;color:var(--ink);font-weight:800;font-size:16px;text-align:center;line-height:18px}.page-check-row input:disabled{opacity:.5;cursor:wait}.page-check-text{min-width:0;overflow-wrap:anywhere}.page-check-row input:checked+.page-check-text{color:var(--muted)}

/* Direct editing in the family book */
.editor-meta{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin:20px 0}.editor-meta [role=status]{font-size:12px;color:#665f71}.page-editor-inner #page-title{width:100%;border:0;border-radius:0;background:transparent;box-shadow:none;padding:8px 0 22px;font-family:'Space Grotesk',sans-serif;font-size:clamp(27px,3vw,42px);font-weight:650;line-height:1.2}.page-editor-inner #page-title:focus{outline:none;box-shadow:0 2px 0 #b9a0ed}.editor-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:4px;padding:8px;background:#f1ebfa;border:1px solid #d9cfea;border-radius:12px;position:sticky;top:8px;z-index:5}.editor-toolbar button,.editor-toolbar select{border:0;background:transparent;border-radius:6px;min-width:32px;min-height:34px;padding:5px 8px;font:inherit;font-size:13px;color:inherit;cursor:pointer}.editor-toolbar button:hover,.editor-toolbar button[aria-pressed=true]{background:#d8c6f5}.editor-toolbar button:focus-visible,.slash-menu button:focus-visible{outline:2px solid #7452a0}.table-tools{display:flex;flex-wrap:wrap;border-left:1px solid #c8b9dc}.editor-canvas{position:relative}.family-prose{outline:none;min-height:240px;padding:24px 0 36px;font-size:16px;line-height:1.75;overflow-wrap:anywhere;white-space:pre-wrap}.family-prose p{margin:0 0 10px}.family-prose h1,.family-prose h2,.family-prose h3{font-family:'Space Grotesk',sans-serif;line-height:1.3;margin:25px 0 10px}.family-prose h1{font-size:30px}.family-prose h2{font-size:25px}.family-prose h3{font-size:21px}.family-prose ul,.family-prose ol{padding-left:25px;margin:8px 0}.family-prose li p{margin:0}.family-prose ul[data-type=taskList]{list-style:none;padding-left:0}.family-prose li[data-checked]{display:flex;align-items:flex-start;gap:10px;margin:7px 0}.family-prose li[data-checked]>label{flex:none;display:flex;align-items:center;margin-top:5px}.family-prose li[data-checked]>div{flex:1;min-width:0}.family-prose input[type=checkbox]{width:19px;height:19px;accent-color:#9170bb;cursor:pointer}.family-prose li[data-checked=true]>div>p{color:#817888;text-decoration:line-through}.family-prose blockquote{border-left:3px solid #ae8bd6;margin:16px 0;padding:6px 18px;background:#f4eef8}.family-prose a{color:#725095;text-decoration:underline;cursor:pointer}.family-prose code{background:#eee7f1;border-radius:4px;padding:2px 4px;font-size:.9em}.family-prose pre{background:#eee7f1;padding:16px;overflow:auto;border-radius:8px}.family-prose hr{border:0;border-top:1px solid #d8cedb;margin:24px 0}.family-prose table{width:100%;border-collapse:collapse;table-layout:fixed}.family-prose td,.family-prose th{border:1px solid #d3c6de;padding:8px;vertical-align:top;position:relative;min-width:60px}.family-prose th{background:#eee6f8;text-align:left}.family-prose .selectedCell{background:#dfcff5}.family-prose .tableWrapper{overflow-x:auto}.family-prose p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:#94869b;float:left;height:0;pointer-events:none}.editor-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #e3dbe7;padding-top:15px;color:#82758a;font-size:11px}.editor-footer button{font-size:12px}.slash-menu{position:absolute;width:220px;max-height:310px;overflow-y:auto;background:#fffdf9;box-shadow:0 8px 28px #30203a26;border:1px solid #c5b3d4;border-radius:12px;padding:6px;z-index:10}.slash-menu button{display:block;border:0;border-radius:7px;background:none;padding:8px 12px;width:100%;text-align:left;font:inherit;font-size:14px;cursor:pointer}.slash-menu button:hover,.slash-menu button.is-active{background:#eee4fc}[data-save-error]{margin-top:15px;background:#fff1d4;padding:16px;border-radius:10px;font-size:13px}[data-save-error] button{margin:4px;padding:7px;border:1px solid #ad956a;background:#fffdf8;border-radius:6px;cursor:pointer}@media(max-width:650px){.editor-meta{align-items:flex-start}.editor-toolbar{top:4px}.editor-footer{align-items:flex-start}.family-prose{font-size:15px}.family-prose h1{font-size:26px}}

/* Compact page starts: content directly below navigation. */
.site-header{padding-top:16px;padding-bottom:16px}.topbar{padding:12px 0;min-height:0;margin:0}.breadcrumbs h1{display:inline;font:inherit;font-weight:700;margin:0}.new-page-compact{width:100%;margin-bottom:18px;font-size:12px;padding:10px 12px;min-height:40px}.agenda-actions{display:flex;justify-content:flex-end;margin-bottom:12px}.agenda-actions .button{font-size:12px;padding:8px 12px;min-height:36px}[data-view="vakanties"]>.section-label{margin:0 0 12px;padding:0}[data-view="taken"]>.task-tabs{margin-top:0}@media(max-width:600px){.site-header{padding-top:12px;padding-bottom:10px}.topbar{padding:10px 0}.new-page-compact{width:auto;margin-bottom:12px}.agenda-actions{margin-bottom:10px}}

.tree-row{position:relative}.tree-drag{flex-shrink:0;border:0;background:transparent;color:#94849e;padding:0;min-width:18px;min-height:32px;font-size:19px;cursor:grab;touch-action:none;user-select:none}.tree-drag:hover,.tree-drag:focus-visible{color:#4f316d;background:#e5d8f5;border-radius:5px}.tree-drag:active{cursor:grabbing}.tree-row.is-dragging{opacity:.45}.tree-row.drop-before:before,.tree-row.drop-after:after{content:'';position:absolute;left:0;right:0;height:3px;background:#8757b8;border-radius:3px;pointer-events:none}.tree-row.drop-before:before{top:-2px}.tree-row.drop-after:after{bottom:-2px}

/* Align checkboxes to the first text line; compact chat composer. */
.family-prose li[data-checked]>label{margin-top:0;height:1.75em;align-items:center}.family-prose li[data-checked]>label input[type=checkbox]{margin:0;flex:none}.chat-compose textarea{height:46px;min-height:46px;max-height:46px;resize:none;padding:11px 14px;line-height:22px;overflow-y:auto}.avatar,.chat-avatars span{overflow:hidden}.avatar img,.chat-avatars img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 35%;border-radius:inherit}.chat-avatars span:has(img){transform:none}

/* Dates for tasks planned for later. */
.task-date-field{display:flex;flex-direction:column;gap:4px;flex:0 0 155px;font-size:10px;color:var(--muted)}.wide-add .task-date-field input{width:100%;min-width:0;min-height:40px;padding:8px 10px;border:1px solid var(--ink);border-radius:10px;background:var(--paper);font:inherit;font-size:13px}.task-row:has(.task-date-existing){flex-wrap:wrap}.task-date-existing{display:flex;align-items:center;gap:8px;margin-left:auto;font-size:10px;color:var(--muted)}.task-date-existing input{font:inherit;font-size:12px;padding:6px 8px;max-width:155px;border:1px solid #c8bfd0;border-radius:8px;background:var(--paper);color:var(--ink)}@media(max-width:600px){.wide-add .task-date-field{flex:1 1 155px}.task-date-existing{margin-left:30px;width:calc(100% - 30px)}.task-date-existing input{font-size:16px}}

/* Unread messages remain visible in every menu, including narrow phones. */
.main-nav [data-route="chat"]{position:relative}.main-nav [data-chat-badge]{background:#b12a53;color:white;font-weight:800;min-width:19px;height:19px;font-size:10px;line-height:1;border:1px solid var(--paper);vertical-align:middle}
@media(max-width:700px){
.main-nav{overflow:visible;gap:0;width:100%;padding:4px;justify-content:space-between}.main-nav a{flex:1 1 0;white-space:nowrap;padding:10px 4px;font-size:10px;text-align:center}.main-nav [data-chat-badge]{position:absolute;top:-5px;right:-2px}
body.chat-screen{overflow:hidden;height:100dvh}body.chat-screen [data-app]{position:fixed;inset:auto 0;top:var(--chat-viewport-top,0px);height:var(--chat-viewport-height,100dvh);display:flex;flex-direction:column;overflow:hidden}
body.chat-screen .site-header{flex:none;padding:10px 12px 8px;gap:8px;margin:0}body.chat-screen .wordmark>svg{width:30px;height:30px}body.chat-screen .wordmark b{font-size:25px}body.chat-screen .avatar{width:30px;height:30px}
body.chat-screen .content{flex:1;min-height:0;display:flex;flex-direction:column;width:100%;padding:0 10px 8px}body.chat-screen .topbar{flex:none;padding:6px 0;font-size:8px}body.chat-screen .footer-note{display:none}
body.chat-screen [data-view="chat"]{flex:1;min-height:0;display:flex;flex-direction:column}body.chat-screen .chat-layout{flex:1;min-height:0;width:100%;display:flex;flex-direction:column;gap:6px;margin:0}body.chat-screen .chat-about{flex:none;padding:8px;max-height:25%;overflow:auto}body.chat-screen .chat-about details{padding:8px}
body.chat-screen .chat-panel{flex:1;min-height:0;width:100%;display:flex;flex-direction:column;border-radius:18px;box-shadow:none}body.chat-screen .chat-heading{flex:none;padding:9px 12px;gap:9px}body.chat-screen .chat-heading h2{font-size:15px}body.chat-screen .chat-scroll{flex:1;min-height:0;height:auto;padding:10px 12px;overscroll-behavior:contain}body.chat-screen .chat-compose{flex:none;padding:8px 10px max(8px,env(safe-area-inset-bottom));gap:6px}body.chat-screen .chat-compose>small{display:none}body.chat-screen .chat-compose textarea{height:44px;min-height:44px;max-height:44px;padding:10px 12px}body.chat-screen .chat-compose .button{min-height:44px;padding:9px 12px}body.chat-screen .chat-new{flex:none;margin:3px auto;font-size:10px;padding:6px 12px}body.chat-screen .chat-empty{padding:15px 8px}body.chat-screen .chat-empty>span{font-size:35px}body.chat-screen .chat-empty h3{font-size:22px;margin:8px 0}

}

/* The same compact header on every mobile page. */
.mobile-menu-button{display:none}.mobile-menu-dialog{width:min(360px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:20px;border:2px solid var(--ink);border-radius:24px;background:var(--paper);color:var(--ink);box-shadow:6px 6px 0 #24212235}.mobile-menu-dialog::backdrop{background:#24212280;backdrop-filter:blur(3px)}.mobile-menu-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.mobile-menu-heading h2{font-size:24px;margin:0}.mobile-menu-heading button{width:38px;height:38px;border:1.5px solid var(--ink);border-radius:50%;background:var(--pink);font-size:25px;line-height:1}.mobile-popup-nav{display:grid;gap:7px}.mobile-popup-nav a{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border:1.5px solid transparent;border-radius:13px;font-size:15px;font-weight:700}.mobile-popup-nav a:hover{background:#e9e1fa}.mobile-popup-nav a.is-active{background:var(--purple);border-color:var(--ink)}.mobile-popup-nav [data-chat-badge],.mobile-menu-button [data-chat-badge]{display:inline-grid;place-items:center;min-width:21px;height:21px;padding:0 4px;background:#b12a53;color:white;font-size:11px;font-weight:800;border:1px solid var(--paper);border-radius:20px}
@media(max-width:700px){
body.menu-open{overflow:hidden}.site-header,body.chat-screen .site-header{display:flex;flex-wrap:nowrap;align-items:center;gap:10px;padding:10px 12px 8px;margin:0;min-height:58px;flex:none}.site-header .main-nav{display:none}.site-header .wordmark{min-width:0;margin-right:auto;gap:7px}.site-header .wordmark>svg,body.chat-screen .site-header .wordmark>svg{width:30px;height:30px}.site-header .wordmark b,body.chat-screen .site-header .wordmark b{font-size:25px}.site-header .profile-button{margin-left:0;padding:2px}.site-header .avatar,body.chat-screen .site-header .avatar{width:30px;height:30px}.site-header .profile-button b{font-size:11px}.site-header .profile-button small{font-size:9px}.mobile-menu-button{display:grid;place-items:center;position:relative;flex:none;width:40px;height:40px;padding:9px;background:var(--paper);border:1.5px solid var(--ink);border-radius:12px}.mobile-menu-button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.mobile-menu-button [data-chat-badge]{position:absolute;right:-7px;top:-6px}.content{padding-left:10px;padding-right:10px}.topbar,body.chat-screen .topbar{padding:6px 0;font-size:8px}
}

.mobile-chat-end{display:inline-flex;align-items:center;gap:9px}

.task-people{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px}.task-people>span{font-size:12px;font-weight:650}.person-drag{display:inline-flex;align-items:center;gap:7px;border:1px solid #c4b8d2;border-radius:30px;padding:4px 10px 4px 4px;background:var(--paper);touch-action:none;cursor:grab;user-select:none}.person-drag b{font-size:11px}.person-drag .avatar{width:33px;height:33px}.person-drag[aria-pressed=true]{background:var(--purple);border-color:var(--ink)}.task-people small{width:100%;font-size:10px;color:var(--muted)}.assignment-cancel{border:0;background:none;text-decoration:underline;font-size:11px}.task-row .task-title{flex:1;min-width:100px}.task-owner{display:inline-flex;align-items:center;gap:6px;border:1px solid #cfc2dc;border-radius:20px;padding:3px 8px;background:var(--paper);font-size:10px;flex:none}.task-owner .avatar{width:27px;height:27px}.task-row.assignment-target{outline:2px dashed #7650b2;outline-offset:2px;background:#eee5fb;border-radius:10px}.assigning-person .task-row{cursor:pointer}.assignment-ghost{position:fixed;z-index:1000;pointer-events:none;box-shadow:0 6px 18px #24212240;opacity:.95}.owner-dialog{border:2px solid var(--ink);border-radius:22px;background:var(--paper);padding:22px;width:min(340px,calc(100vw - 32px))}.owner-dialog::backdrop{background:#24212280}.owner-dialog h2{font-size:21px}.owner-dialog button{display:flex;align-items:center;gap:10px;width:100%;padding:10px;margin:6px 0;background:#eee5fb;border:0;border-radius:12px}.owner-dialog .avatar{width:32px;height:32px}@media(max-width:600px){.task-row:has(.task-owner){flex-wrap:wrap}.task-people{gap:8px}.task-people>span{width:100%}}

.cloud-card{max-width:1000px;margin:0 auto}.cloud-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.cloud-heading h2{font-size:28px;margin-bottom:8px}.cloud-heading p{font-size:13px;color:var(--muted);margin:0}.cloud-connection{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:20px 0}.cloud-connection p{flex:1;min-width:180px;font-size:13px;margin:0}.cloud-connection .button,.cloud-approval .button{font-size:12px}.cloud-approval{padding:16px;border:1px solid #c4b4dc;border-radius:15px;background:#eee5fb;margin-bottom:18px}.cloud-approval p{font-size:13px;line-height:1.6}.cloud-approval .button{margin:4px}.cloud-search{display:flex;gap:10px;margin:12px 0}.cloud-search input{flex:1;width:100%;padding:12px 15px;border:1.5px solid var(--ink);border-radius:14px;background:var(--paper)}.cloud-results{list-style:none;padding:0;margin:0}.cloud-results li+li{border-top:1px solid #d9cfde}.cloud-results a{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px 8px}.cloud-results b{display:block;font-size:14px;overflow-wrap:anywhere}.cloud-results small{display:block;color:var(--muted);font-size:11px;margin-top:6px;overflow-wrap:anywhere}.cloud-results a:hover{background:#eee5fb;border-radius:10px}[data-cloud-message]{font-size:13px}@media(max-width:700px){.cloud-heading{align-items:flex-start;flex-direction:column}.cloud-heading h2{font-size:24px}.cloud-heading .button{font-size:11px}.cloud-search{flex-wrap:wrap}.cloud-search input{min-width:180px;font-size:16px}.cloud-search .button{font-size:12px}}

/* Existing task controls share a centered baseline and wrap together. */
.task-row{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;column-gap:12px;row-gap:10px}.task-row .task-title{min-width:0}.task-row .task-check{margin:0}.task-actions{grid-column:2/-1;display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}.task-owner{min-height:35px;justify-content:center;align-items:center;padding:3px 10px;line-height:1.25}.task-owner>span:not(.avatar){display:block;line-height:1.25}.task-moment{min-height:35px;max-width:100%;border:1px solid #cfc2dc;border-radius:18px;padding:6px 26px 6px 10px;background:var(--paper);color:var(--ink);font:inherit;font-size:12px;line-height:1.25;cursor:pointer}.task-actions .task-date-existing{margin:0;width:auto;min-height:35px}.task-actions .task-date-existing input{min-height:35px}.task-owner:focus-visible,.task-moment:focus-visible{outline:3px solid var(--purple);outline-offset:2px}@media(min-width:1000px){.task-list-full .task-row{grid-template-columns:20px minmax(0,1fr) auto}.task-list-full .task-actions{grid-column:3;max-width:430px;justify-content:flex-end}}@media(max-width:600px){.task-moment{font-size:16px}.task-actions .task-date-existing{flex-wrap:wrap}}
