.help-btn-wrap{position:relative;display:inline-block}.help-btn{width:30px;height:30px;padding:0;border-radius:50%;border:var(--hairline) solid var(--border);color:var(--text-secondary);font-size:15px;line-height:1;display:inline-flex;align-items:center;justify-content:center}.help-menu{position:absolute;right:0;top:calc(100% + 4px);z-index:20;min-width:190px;background:var(--surface-2);border:var(--hairline) solid var(--border);border-radius:8px;box-shadow:0 4px 16px #00000029;overflow:hidden}.help-menu-item{display:block;width:100%;text-align:left;padding:10px 14px;font-size:13px;background:none;border:none;border-bottom:var(--hairline) solid var(--border);cursor:pointer;color:var(--text-primary)}.help-menu-item:last-child{border-bottom:none}.help-menu-item:hover{background:var(--surface-1)}.help-menu-note{padding:10px 14px;font-size:12px;color:var(--text-muted);max-width:220px}.help-lead{padding:14px 16px;font-size:14px;line-height:1.5}.help-section{padding:14px 16px;border-top:var(--hairline) solid var(--border)}.help-section:first-child{border-top:none}.help-section-hdr{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.help-section-hdr h2{font-size:15px;font-weight:600;margin:0}.help-photo-btn{flex:none;width:30px;height:30px;border-radius:50%;border:var(--hairline) solid var(--border);background:var(--surface-1);color:var(--text-secondary);font-size:14px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.help-body{font-size:14px;line-height:1.55}.help-body p{margin:8px 0}.help-body ul,.help-body ol{margin:8px 0;padding-left:22px}.help-body li{margin:3px 0}.help-body code{background:var(--surface-1);border-radius:4px;padding:1px 4px;font-size:.92em}.help-callout{margin:8px 0;padding:8px 12px;border-left:3px solid var(--border-strong);background:var(--surface-1);border-radius:0 6px 6px 0;color:var(--text-secondary);font-size:13px}.help-table-wrap{overflow-x:auto;margin:8px 0}.help-table{border-collapse:collapse;width:100%;font-size:13px}.help-table th,.help-table td{border:var(--hairline) solid var(--border);padding:6px 10px;text-align:left}.help-table th{background:var(--surface-1);font-weight:600}.help-link{color:var(--accent);background:none;border:none;padding:0;font:inherit;cursor:pointer;text-decoration:underline}.help-all-topics{display:block;width:100%;text-align:center;padding:12px 16px}.help-index-group{padding:10px 16px 4px;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.02em}.help-index-item{display:block;width:100%;text-align:left;background:none;border:none;cursor:pointer}.help-gallery{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#000000e6;display:flex;flex-direction:column;align-items:center;justify-content:center;touch-action:pan-y}.help-gallery img{max-width:92vw;max-height:78vh;object-fit:contain}.help-gallery-cap{color:#fff;font-size:13px;margin-top:10px;max-width:80vw;text-align:center}.help-gallery-count{color:#ffffffb3;font-size:12px;margin-top:4px}.help-gallery-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:#ffffff1f;color:#fff;border:none;font-size:20px;cursor:pointer}.help-gallery-nav.prev{left:12px}.help-gallery-nav.next{right:12px}.help-gallery-close{position:absolute;top:12px;right:12px;width:34px;height:34px;border-radius:50%;background:#ffffff1f;color:#fff;border:none;font-size:16px;cursor:pointer}.hdr.shdr{gap:8px 12px;flex-wrap:wrap;z-index:5}.shdr-left{display:flex;align-items:center;gap:10px;position:relative;min-width:0;flex:1 1 auto}.shdr-left h1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.shdr-menu-btn{width:32px;height:32px;padding:0;border-radius:50%;flex:none;border:var(--hairline) solid var(--border);background:var(--surface-2);color:var(--text-secondary);font-size:15px;line-height:1;display:inline-flex;align-items:center;justify-content:center}.shdr-menu{position:absolute;left:0;top:calc(100% + 6px);z-index:20;min-width:210px;background:var(--surface-2);border:var(--hairline) solid var(--border);border-radius:8px;box-shadow:0 4px 16px #00000029;overflow:hidden}.shdr-menu-sep{border-top:var(--hairline) solid var(--border);margin:2px 0}.shdr-right{display:flex;align-items:center;gap:8px;flex:none;flex-wrap:wrap}@media(max-width:480px){.shdr-right:has(>:first-child:not(.shdr-pill)){flex:1 1 100%;justify-content:space-between}}.shdr-pill{display:flex;align-items:center;gap:4px;padding:3px;border-radius:999px;background:var(--surface-1);border:var(--hairline) solid var(--border);flex:none}.shdr-pill button{width:28px;height:28px;border-radius:50%;border:none;background:transparent;color:var(--text-primary);font-size:16px;line-height:1;display:inline-flex;align-items:center;justify-content:center;padding:0}.shdr-pill button:hover{background:var(--neutral-fill)}.shdr-pill .shdr-ask{background:var(--accent);color:#fff}.shdr-pill .shdr-ask:hover{background:var(--accent);filter:brightness(1.05)}@media(min-width:900px)and (min-height:600px){.canvas .lists-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.canvas .shop-grid{grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.panel>.sec.panel-t{padding:11px 16px;border-bottom:var(--hairline) solid var(--border);font-weight:600;align-items:center}.panel>.sec.panel-t .btn.ghost{flex:none;height:26px;padding:0 8px;font-size:12px}.canvas .panel>.panel-scroll{max-height:calc(100vh - 300px)}.panel>.add-row{border-top:var(--hairline) solid var(--border);padding:10px 16px}.panel>.add-row:first-child{border-top:none}.panel>details>summary{border-top:var(--hairline) solid var(--border);padding-top:10px}.canvas .panel.new-list[data-title]:before{content:attr(data-title);display:block;padding:11px 16px;border-bottom:var(--hairline) solid var(--border);font-size:13px;font-weight:600;color:var(--text-primary)}.canvas .panel>.empty{padding:28px 16px}.canvas .panel .list-item>select.input{flex:none}}.cal .cal-bar{display:contents}.cal .cal-strip,.cal .cal-side .panel-t,.cal .month .day .chips{display:none}@media(min-width:900px)and (min-height:600px){.cal .cal-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:0 2px 14px}.cal .cal-bar .hdr{position:static;z-index:auto;background:transparent;border-bottom:none;padding:0;flex:1 1 320px;min-width:0;gap:20px}.cal .cal-bar .hdr h1{font-size:22px;font-weight:600;letter-spacing:-.01em}.cal .cal-bar .seg button{padding:6px 14px;font-size:13px}.cal .cal-bar .cal-nav{padding:0;border-bottom:none;flex:none;gap:6px;justify-content:flex-end}.cal .cal-bar .cal-nav .btn{height:30px;padding:0 10px}.cal .cal-bar .cal-nav .label{min-width:200px;text-align:center;font-size:14px;white-space:nowrap}.cal .cal-body:not(.cols)>.cal-side{margin-top:16px}.cal .cal-side .panel-t{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 16px;border-bottom:var(--hairline) solid var(--border);font-size:13px;font-weight:600;color:var(--text-primary)}.cal .cal-people .legend{padding:12px 16px;gap:16px;font-size:12px}.cal .cal-people .legend span{display:inline-flex;align-items:center;gap:6px}.cal .cal-main .cal-cols{height:calc(100vh - 210px);min-height:420px}.cal .cal-main .cal-col{min-height:0;overflow:auto;overscroll-behavior:contain}.cal .cal-main .cal-colhead{top:0;padding:9px 6px;font-size:12px;font-weight:500;letter-spacing:.01em;z-index:1}.cal .cal-main .blk{margin:6px 8px;width:calc(100% - 16px);padding:7px 9px 7px 10px;border-radius:7px;font-size:13px;line-height:1.35}.cal .cal-main .blk:hover{box-shadow:inset 0 0 0 1px var(--bar, var(--border-strong))}.cal .cal-main .blk .bt{white-space:normal;text-overflow:clip;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cal .cal-main .blk .bs{margin-top:1px}.cal .cal-body.cols .cal-main .blk{margin:8px 12px;width:calc(100% - 24px);padding:9px 12px;font-size:14px}.cal .cal-body.cols .cal-main .blk .bs{font-size:12px;margin-top:2px}.cal .cal-main .month{min-height:calc(100vh - 210px);grid-template-rows:auto repeat(6,minmax(96px,1fr))}.cal .cal-main .month .wd{padding:9px 0;font-size:12px}.cal .cal-main .month .day{min-height:96px;padding:6px 7px;gap:4px;overflow:hidden;align-items:stretch}.cal .cal-main .month .day.today{background:var(--accent-fill)}.cal .cal-main .month .day:hover{background:var(--surface-1)}.cal .cal-main .month .day .n{font-size:12px;font-weight:500}.cal .cal-main .month .day .dots{display:none}.cal .cal-main .month .day .chips{display:flex;flex-direction:column;gap:2px;min-width:0}.cal .cal-main .month .chip{display:block;padding:1px 5px;border-radius:4px;border-left:2px solid var(--bar, var(--neutral-bar));background:var(--fill, var(--neutral-fill));color:var(--ptext, var(--neutral-text));font-size:11px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal .cal-main .month .chip.chore{background:var(--neutral-fill);color:var(--neutral-text);border-left-color:var(--chore-bar)}.cal .cal-main .month .chip b{font-weight:500;opacity:.75}.cal .cal-main .month .chip-more{font-size:10px;color:var(--text-muted);padding:0 5px}.cal .cal-main .month .day.dim .chip{opacity:.55}.cal .cal-strip{display:block}.cal .cal-strip .strip{display:flex;flex-direction:column;padding:6px}.cal .cal-strip .strip-day{display:flex;align-items:center;gap:10px;width:100%;padding:7px 10px;border:none;background:none;border-radius:var(--radius);color:var(--text-primary);text-align:left;font-size:13px}.cal .cal-strip .strip-day:hover{background:var(--surface-1)}.cal .cal-strip .strip-day.sel{background:var(--accent-fill);color:var(--accent-text)}.cal .cal-strip .strip-day .wd{width:34px;flex:none;color:var(--text-secondary)}.cal .cal-strip .strip-day.sel .wd{color:inherit}.cal .cal-strip .strip-day .n{width:20px;flex:none;font-variant-numeric:tabular-nums}.cal .cal-strip .strip-day.today .n{color:var(--accent);font-weight:600}.cal .cal-strip .strip-day .marks{display:flex;align-items:center;gap:3px;flex-wrap:wrap;min-width:0}.cal .cal-strip .strip-day .marks .more{font-size:10px;color:var(--text-muted)}}@media(max-width:899px),(max-height:599px){.page.cal{display:flex;flex-direction:column;height:100%;min-height:0}.cal .cal-body,.cal .cal-main{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.cal .cal-main>.tgrid{flex:1 1 auto}.cal .cal-main>.month{overflow-y:auto}.cal .cal-side{display:none}}.cal .cal-main{touch-action:pan-y pinch-zoom}.tgrid{--gutter: 44px;display:flex;flex-direction:column;min-height:0}.tgrid-heads,.tgrid-allday,.tgrid-body{display:grid}.tgrid-heads{position:sticky;top:0;z-index:2;background:var(--surface-2);border-bottom:var(--hairline) solid var(--border)}.tgrid-head{padding:7px 4px;text-align:center;font-size:12px;color:var(--text-secondary);border-left:var(--hairline) solid var(--border);min-width:0}.tgrid-head .n{font-weight:500;color:var(--text-primary)}.tgrid-head.today,.tgrid-head.today .n{color:var(--accent)}.tgrid-allday{border-bottom:var(--hairline) solid var(--border);background:var(--surface-2);max-height:88px;overflow-y:auto}.tgrid-allday-label{font-size:10px;color:var(--text-muted);text-align:right;padding:6px 6px 0 0;line-height:1.2}.tgrid-allday-col{border-left:var(--hairline) solid var(--border);min-width:0;padding:3px 0}.tgrid-allday-col .blk{margin:2px;width:calc(100% - 4px)}.tgrid-scroll{overflow-y:auto;overscroll-behavior:contain;min-height:0;flex:1 1 auto}.tgrid-body,.tgrid-gutter,.tgrid-hour{position:relative}.tgrid-hour span{position:absolute;right:6px;top:0;transform:translateY(-50%);font-size:10px;color:var(--text-muted);white-space:nowrap;background:var(--surface-2);padding:0 1px}.tgrid-col{position:relative;min-width:0;border-left:var(--hairline) solid var(--border);background-image:repeating-linear-gradient(to bottom,var(--border) 0,var(--border) 1px,transparent 1px,transparent var(--hour));background-size:100% var(--hour)}.tgrid-col.today{background-color:var(--accent-fill)}.blk.tblk{position:absolute;margin:0;padding:3px 5px;overflow:hidden;border-left-width:3px;border-radius:5px}.blk.tblk .bhead{display:flex;align-items:flex-start;gap:4px}.blk.tblk .bt{font-size:11px;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.blk.tblk .bhead .avstack{margin-left:auto}.blk.tblk .bs{font-size:10px}.blk.tblk .bs .bw{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tgrid-allday-col .blk{display:flex;align-items:center;gap:4px}.tgrid-allday-col .blk .bt{min-width:0;overflow:hidden;text-overflow:ellipsis}.tgrid-allday-col .blk .avstack{margin-left:auto}.blk.tblk.short{padding-top:1px}.blk.tblk.short .bs{display:none}.blk.tblk.tiny{padding-top:0;padding-bottom:0;overflow:visible}.blk.tblk.tiny .bt{font-size:9px;line-height:1.15}.blk.tblk.tiny .bhead{align-items:center}.tgrid-now{position:absolute;left:0;right:0;height:2px;background:var(--danger-strong);z-index:1}.tgrid-now:before{content:"";position:absolute;left:-3px;top:-3px;width:8px;height:8px;border-radius:50%;background:var(--danger-strong)}@media(min-width:900px)and (min-height:600px){.tgrid{--gutter: 56px}.tgrid-scroll{flex:none;height:calc(100vh - 250px)}.tgrid-head{padding:9px 4px;font-size:13px}.tgrid-hour span{font-size:11px}.blk.tblk{padding:4px 6px}.blk.tblk .bt{font-size:12px}.blk.tblk .bs{font-size:11px}}.cal .cal-main .blk.tblk,.cal .cal-body.cols .cal-main .blk.tblk{margin:0;padding:3px 5px;font-size:11px;line-height:1.25;border-radius:5px}.cal .cal-main .blk.tblk .bt,.cal .cal-body.cols .cal-main .blk.tblk .bt{display:block;-webkit-line-clamp:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px}.cal .cal-main .blk.tblk .bs,.cal .cal-body.cols .cal-main .blk.tblk .bs{margin-top:0;font-size:10px}.cal .cal-main .tgrid-allday-col .blk{margin:2px;width:calc(100% - 4px);padding:3px 6px;font-size:11px}.cal .cal-main .tgrid-allday-col .blk .bt{-webkit-line-clamp:none;white-space:nowrap}@media(min-width:900px)and (min-height:600px){.cal .cal-main .blk.tblk,.cal .cal-body.cols .cal-main .blk.tblk{padding:4px 7px}.cal .cal-main .blk.tblk .bt,.cal .cal-body.cols .cal-main .blk.tblk .bt{font-size:12px}.cal .cal-main .blk.tblk .bs,.cal .cal-body.cols .cal-main .blk.tblk .bs{font-size:11px}.cal .cal-body.cols .cal-main .blk.tblk{padding:5px 10px}.cal .cal-body.cols .cal-main .blk.tblk .bt{font-size:13px}}.cal-people-bar{display:flex;align-items:center;gap:8px;overflow-x:auto;scrollbar-width:none;padding:8px 16px;border-bottom:var(--hairline) solid var(--border);background:var(--surface-2)}.cal-people-bar::-webkit-scrollbar{display:none}.cal-funnel{flex:none;display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 9px;border-radius:999px;border:var(--hairline) solid var(--border-strong);background:var(--surface-2);color:var(--text-secondary);font-size:12px}.cal-funnel.on{background:var(--accent-fill);color:var(--accent-text);border-color:transparent}.cal-person{flex:none;display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 11px;border-radius:999px;border:var(--hairline) solid transparent;font-size:13px;background:var(--fill, var(--neutral-fill));color:var(--ptext, var(--neutral-text))}.cal-person .dot{width:7px;height:7px;background:var(--bar, var(--neutral-bar))}.cal-person.off{background:var(--surface-1);color:var(--text-muted);border-color:var(--border)}.cal-person.off .dot{background:var(--text-muted)}.cal-filter-row{justify-content:space-between}.cal-filter-row input{width:20px;height:20px}@media(min-width:900px)and (min-height:600px){.cal .cal-bar .cal-people-bar{flex:1 1 100%;order:3;padding:0;border-bottom:none;background:transparent}}.pp-card{margin:0 16px;background:var(--surface-2);border-radius:12px;overflow:hidden;border:var(--hairline) solid var(--border)}.pp-row{display:flex;align-items:center;gap:10px;width:100%;padding:11px 12px;background:none;border:0;border-bottom:var(--hairline) solid var(--border);font:inherit;color:var(--text-primary);text-align:left}button.pp-row{cursor:pointer}button.pp-row:hover{background:var(--surface-1)}.pp-card>:last-child,.pp-card>div:last-child>:last-child{border-bottom:0}.pp-row .input{width:100%}.pp-ic{width:24px;text-align:center;flex:none}.pp-grow{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.pp-t{font-size:15px}.pp-s{font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis}.pp-faces{display:flex}.pp-faces .avatar{margin-left:-6px;border:2px solid var(--surface-2)}.pp-plus{color:var(--accent);font-size:22px;line-height:1}.pp-check{color:var(--accent);font-weight:600}.pp-chev{color:var(--text-muted);font-size:18px;transition:transform .15s}.pp-chev.open{transform:rotate(90deg)}.pp-member{padding-left:34px;background:var(--surface-1)}.pp-free{font-size:12px;color:var(--success, #0f6e56)}.pp-busy{font-size:12px;color:var(--text-muted)}.pp-pill{font-size:12px;padding:3px 9px;border-radius:999px;white-space:nowrap}.pp-pill.you{background:var(--accent-fill);color:var(--accent-text)}.pp-pill.waiting,.pp-pill.needsOK{background:var(--warning-fill, #fdf3e2);color:var(--warning, #633806)}.pp-pill.needsDriver{background:var(--danger-fill, #fbeaea);color:var(--danger)}.pp-sheet{padding:0 16px 12px}.pp-sheet .pp-card{margin:0}.pp-sheet .sec{padding-left:4px;padding-right:4px}.pp-sheet .field{padding-left:0;padding-right:0}.pp-seg{margin:8px 0;display:flex;width:100%}.pp-seg button{flex:1}.pp-search{margin:4px 0 0;width:100%}.pp-bubble{margin:0;padding:10px 13px;border-radius:16px;white-space:pre-wrap;background:var(--accent);color:#fff;font-size:14px;line-height:1.4}.pp-done{margin:12px 16px;padding:12px;border-radius:12px;background:var(--surface-2)}.pp-ask{padding-bottom:84px}.glass-dock{position:sticky;bottom:0;display:flex;justify-content:center;padding:10px 16px calc(12px + env(safe-area-inset-bottom));pointer-events:none}.glass-btn{pointer-events:auto;font:inherit;font-size:15px;font-weight:600;padding:12px 30px;border-radius:999px;border:0;cursor:pointer;color:var(--danger);background:linear-gradient(180deg,#ffffff4d,#ffffff14 55%,#ffffff29);-webkit-backdrop-filter:blur(8px) saturate(1.8);backdrop-filter:blur(8px) saturate(1.8);box-shadow:inset 0 1px #ffffffb3,inset 0 0 0 .5px #ffffff73,0 6px 18px #00000024}.glass-btn.primary{color:var(--accent)}.glass-btn:disabled{opacity:.5;cursor:default}@media(min-width:900px)and (min-height:600px){.ev-page>.hdr .tools{gap:10px}.ev-page .ev-list .panel-scroll{max-height:calc(100vh - 132px)}.ev-page .ev-list .sec{position:sticky;top:0;z-index:1;background:var(--surface-2);padding-top:10px;padding-bottom:6px}.ev-page .ev-list .item.sel{background:var(--accent-fill)}.ev-page .ev-list .item.sel .title{font-weight:500}.ev-page .ev-list .empty{padding:40px 16px}.ev-page .pend{padding:0 12px 6px}.ev-page .pend .card{border:var(--hairline) solid var(--border);border-left:3px solid var(--neutral-bar);border-radius:10px}.ev-page .pend .card.warn{border-color:var(--warning-border);border-left-color:var(--warning-border)}.ev-page .pend .card.crit{border-color:var(--danger-strong);border-left-color:var(--danger-strong)}.ev-page .acts{gap:8px}.ev-page .acts button,.ev-page .acts .btn{flex:0 1 auto;min-width:92px;max-width:180px}.ev-page .acts .btn.primary{max-width:260px}.ev-page .ev-detail{position:sticky;top:0;max-height:calc(100vh - 132px);overflow:auto}.ev-page .ev-detail .panel-t{position:sticky;top:0;z-index:2;background:var(--surface-2)}.ev-page .ev-detail .ed-embed>:last-child{border-bottom:none}.ev-page .ev-blank{padding:96px 24px;text-align:center;color:var(--text-muted);font-size:13px}.ev-page .ev-needs{margin-bottom:16px}.ev-page .ev-needs .pend{padding:0 16px 16px}.ev-page .ev-needs>.sec.strong{padding:12px 16px 10px}}.dk-only.dk-only{display:none}.hw-suggest{display:flex;flex-wrap:wrap;gap:6px}.hw-suggest .chip{font:inherit;font-size:12px;padding:5px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface-1);color:var(--text-primary);cursor:pointer}.hw-suggest .chip:hover{background:var(--surface-2)}@media(min-width:900px)and (min-height:600px){.dk-block.dk-block{display:block}.dk-flex.dk-flex{display:flex}.field.hw-who-phone{display:none}.hw-tools{align-items:center;gap:8px;margin-left:auto}.hw-tools label{font-size:13px;color:var(--text-secondary)}.hw-tools .input{width:auto;min-width:150px}.hw-sections .panel+.panel{margin-top:0}.hw-sec>.sec,.hw-sec>summary.sec{padding:11px 16px;border-bottom:var(--hairline) solid var(--border);font-size:13px;font-weight:600;color:var(--text-primary)}.hw-sec:not([open])>summary.sec{border-bottom:none}.hw-empty{margin-bottom:16px}.add-row.hw-add{margin-top:16px;padding:12px 16px;border-radius:12px;background:var(--surface-2);border:var(--hairline) solid var(--border)}.rw-body .panel+.panel{margin-top:0}.rw-offer .add-row{border-top:var(--hairline) solid var(--border)}.mr-nav{max-width:560px}.fam-roster .panel+.panel{margin-top:0}.kv.fam-card{padding:14px 16px;align-items:center;gap:12px}.fam-note{padding:16px 2px 0}.set-body .panel+.panel{margin-top:0}}.hw-classes{list-style:none;margin:0;padding:0}.hw-classes .list-item{padding:6px 0}.hw-classes-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.hw-classes-panel .new-flag{color:var(--danger)}.hw-filters{padding:8px 16px 14px}.hw-filters .sec{padding-left:0}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:4px}.chips .chip{font:inherit;font-size:12px;padding:5px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface-1);color:var(--text-primary);cursor:pointer}.chips .chip:hover{background:var(--surface-2)}.chips .chip.on{border-color:var(--accent, var(--border-strong));background:var(--accent-fill, var(--surface-2));font-weight:600}.fam-card-btn{font:inherit;color:inherit;text-align:left;width:100%;background:none;border:none;cursor:pointer}.fam-card-btn:hover{background:var(--surface-1)}.fam-card-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.fam-picker{display:flex;flex-wrap:wrap;gap:10px;padding:4px 16px 12px}.fam-swatch{width:34px;height:34px;border-radius:50%;padding:0;border:.5px solid var(--border);cursor:pointer;background:var(--bar, var(--neutral-bar));display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:700}.fam-face{width:34px;height:34px;border-radius:8px;padding:0;border:2px solid transparent;background:none;cursor:pointer;font-size:22px;line-height:1}.fam-swatch.on{box-shadow:0 0 0 2px var(--surface-2),0 0 0 4px var(--border-strong)}.fam-face.on{border-color:var(--border-strong)}.fam-swatch:focus-visible,.fam-face:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fam-perm{align-items:center;gap:12px}.fam-perm .lbl{flex:1;min-width:0}.fam-perm .note{font-size:12px;margin-top:2px}.fam-perm input[type=checkbox]{width:20px;height:20px;flex:none}.fam-readout{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:15px;font-weight:600;-webkit-user-select:all;user-select:all;word-break:break-all}.fam-note{padding:16px;font-size:12px}.mr-row{width:100%;text-align:left;background:none;border:none;gap:12px;min-height:48px}.mr-row .txt{flex:1}.mr-ic{width:24px;text-align:center}.mr-row input[type=checkbox]{width:20px;height:20px}.mr-customize .txt{color:var(--accent)}.mr-lede{padding:8px 16px 12px;font-size:12px}:root{--surface-1: #F5F4F2;--surface-2: #FFFFFF;--border: #DEDCD7;--border-strong: #B8B5AE;--text-primary: #1A1917;--text-secondary: #6B6862;--text-muted: #94918A;--danger: #A32D2D;--danger-fill: #FBEAEA;--danger-strong: #C0392B;--warning: #633806;--warning-fill: #FDF3E2;--warning-border: #E0A94A;--chore-bar: #BA7517;--work-bar: #534AB7;--work-fill: #EEEDFE;--work-text: #3C3489;--external-fill: #F5F4F2;--external-bar: #B8B5AE;--badge-backing: #3D3B37;--accent: #185FA5;--accent-fill: #E6F1FB;--accent-text: #0C447C;--neutral-bar: #B8B5AE;--neutral-fill: #F0EEEA;--neutral-text: #3D3B37;--p-blue-bar: #185FA5;--p-blue-fill: #E6F1FB;--p-blue-text: #0C447C;--p-green-bar: #0F6E56;--p-green-fill: #E1F5EE;--p-green-text: #04342C;--p-plum-bar: #7D3475;--p-plum-fill: #F7EAF5;--p-plum-text: #4A1B45;--p-amber-bar: #9A6212;--p-amber-fill: #FBF0DE;--p-amber-text: #5C3A08;--p-teal-bar: #11636B;--p-teal-fill: #E2F3F5;--p-teal-text: #063C41;--p-rose-bar: #A83C55;--p-rose-fill: #FBEBEE;--p-rose-text: #651F31;--p-indigo-bar: #3B4CA8;--p-indigo-fill: #EBEDFA;--p-indigo-text: #212B66;--p-clay-bar: #8A4B2A;--p-clay-fill: #F7EDE6;--p-clay-text: #522A14;--radius: 8px;--hairline: .5px;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, system-ui, sans-serif;color-scheme:light}:root[data-theme=dark],:root:not([data-theme=light]).dark-system{--surface-1: #1A1917;--surface-2: #252320;--border: #3A3733;--border-strong: #55514A;--text-primary: #F2F0EC;--text-secondary: #A8A49C;--text-muted: #7C786F;--danger: #E98080;--danger-fill: #3A1F1F;--danger-strong: #C0392B;--warning: #E8C078;--warning-fill: #33290F;--warning-border: #8A6A22;--chore-bar: #D9922E;--work-bar: #9188E8;--work-fill: #272348;--work-text: #C3BDF5;--external-fill: #2A2724;--external-bar: #55514A;--badge-backing: #1C1A17;--accent: #4E9BE0;--accent-fill: #152B3F;--accent-text: #AFD3F2;--neutral-bar: #55514A;--neutral-fill: #2A2724;--neutral-text: #CFCBC4;--p-blue-bar: #4E9BE0;--p-blue-fill: #152B3F;--p-blue-text: #AFD3F2;--p-green-bar: #45B394;--p-green-fill: #123229;--p-green-text: #A8E2D0;--p-plum-bar: #C079B6;--p-plum-fill: #332030;--p-plum-text: #E3BEDD;--p-amber-bar: #D79A34;--p-amber-fill: #322611;--p-amber-text: #EDCD91;--p-teal-bar: #46AAB4;--p-teal-fill: #102E31;--p-teal-text: #A6DEE3;--p-rose-bar: #E0808F;--p-rose-fill: #3A1C23;--p-rose-text: #F0BCC5;--p-indigo-bar: #8390E4;--p-indigo-fill: #1E2242;--p-indigo-text: #BEC5F2;--p-clay-bar: #C98A63;--p-clay-fill: #33231A;--p-clay-text: #E5C3AC;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--surface-1);color:var(--text-primary);font-family:var(--font);font-size:14px;line-height:1.4;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--accent)}.shell{display:flex;flex-direction:column;height:100%;height:100dvh}.shell-main{flex:1;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column}.shell-main>.page{flex:1 0 auto;width:100%}.page{max-width:760px;margin:0 auto;background:var(--surface-2);min-height:100%}.side{display:none}@media(min-width:900px)and (min-height:600px){.shell{flex-direction:row}.side{display:flex;flex-direction:column;width:232px;flex:none;background:var(--surface-1);border-right:var(--hairline) solid var(--border);padding:14px 10px 12px;gap:2px;overflow:auto}.side-brand{padding:2px 10px 14px}.side-brand .name{font-size:15px;font-weight:600;letter-spacing:-.01em}.side-brand .fam{font-size:12px;color:var(--text-secondary);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-nav{display:flex;flex-direction:column;gap:2px}.side-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;background:none;border-radius:var(--radius);font-size:14px;color:var(--text-secondary);text-align:left}.side-item .ic{width:18px;text-align:center;font-size:15px;flex:none}.side-item:hover{background:var(--neutral-fill);color:var(--text-primary)}.side-item.on{background:var(--accent-fill);color:var(--accent-text);font-weight:500}.side-foot{margin-top:auto;padding-top:10px}.side-ask{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:36px;border-radius:var(--radius);border:none;background:var(--accent);color:#fff;font-size:14px;font-weight:500}}@media(min-width:1280px){.cols.c2-wide{grid-template-columns:repeat(3,minmax(0,1fr))}}.hdr{padding:14px 16px 12px;border-bottom:var(--hairline) solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:8px;position:sticky;top:0;background:var(--surface-2);z-index:2}.hdr h1{font-size:18px;font-weight:500;margin:0}.hdr .tools{display:flex;gap:8px;align-items:center;color:var(--text-secondary)}.sec{padding:12px 16px 6px;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--text-secondary)}.sec.strong{color:var(--text-primary)}.badge{background:var(--danger-fill);color:var(--danger);font-size:11px;padding:1px 7px;border-radius:10px;font-weight:500}.card{padding:12px 16px;border-bottom:var(--hairline) solid var(--border)}.card.warn{border-left:3px solid var(--warning-border);background:var(--warning-fill);color:var(--warning)}.card.crit{border-left:3px solid var(--danger-strong);background:var(--danger-fill);color:var(--danger)}.card .t{font-size:14px;font-weight:500}.card .s{font-size:13px;margin-top:3px;line-height:1.45}.row{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.when{font-size:12px;white-space:nowrap}.acts{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.acts button,.btn{flex:1;min-width:0;font-size:13px;height:32px;padding:0 12px;border-radius:var(--radius);border:var(--hairline) solid var(--border-strong);background:var(--surface-2);color:var(--text-primary)}.btn{flex:none}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.danger{color:var(--danger)}.btn:disabled,.acts button:disabled{opacity:.5;cursor:default}.btn.ghost{border-color:transparent;background:transparent;color:var(--accent)}.item{padding:10px 16px 10px 13px;display:flex;gap:10px;align-items:flex-start;border-bottom:var(--hairline) solid var(--border);border-left:3px solid var(--neutral-bar);cursor:pointer;text-align:left;width:100%;background:transparent;border-top:none;border-right:none}.item:hover{background:var(--surface-1)}.item.chore{border-right:5px solid var(--chore-bar)}.item.external{background:var(--external-fill);border-left-color:var(--external-bar);color:var(--text-secondary)}.item.done{opacity:.6}.item .time{font-size:12px;color:var(--text-secondary);width:56px;flex:none;padding-top:1px}.item .body{flex:1;min-width:0}.item .title{font-size:14px}.item .sub{font-size:12px;color:var(--text-secondary);margin-top:2px}.item .sub .flag{color:var(--danger)}.pill{display:inline-flex;align-items:center;gap:4px;font-size:11px;padding:1px 7px;border-radius:10px;background:var(--neutral-fill);color:var(--neutral-text)}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;background:var(--neutral-bar)}.tabs{display:flex;border-top:var(--hairline) solid var(--border);background:var(--surface-1);padding-bottom:env(safe-area-inset-bottom)}.tab{flex:1;text-align:center;padding:9px 0 8px;font-size:11px;color:var(--text-secondary);background:none;border:none}.tab.on{color:var(--accent);font-weight:500}.seg{display:inline-flex;border:var(--hairline) solid var(--border-strong);border-radius:var(--radius);overflow:hidden}.seg button{border:none;background:transparent;padding:5px 10px;font-size:12px;color:var(--text-secondary)}.seg button.on{background:var(--accent-fill);color:var(--accent-text)}.field{display:flex;flex-direction:column;gap:4px;padding:8px 16px}.field label{font-size:12px;color:var(--text-secondary)}.field input,.field select,.field textarea,.input{border:var(--hairline) solid var(--border-strong);border-radius:var(--radius);padding:8px 10px;background:var(--surface-2);color:var(--text-primary);width:100%}.field input:focus,.input:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px}.field input[type=checkbox]{width:20px;height:20px;padding:0;margin:0;flex:none}.field .check{padding:6px 0 0;white-space:nowrap}.check{display:flex;align-items:center;gap:8px;padding:8px 16px;font-size:14px}.err{color:var(--danger);font-size:13px;padding:8px 16px}.muted{color:var(--text-muted)}.empty{padding:32px 16px;text-align:center;color:var(--text-muted);font-size:13px}.hr{border-top:var(--hairline) solid var(--border)}.sheet-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:10;display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-width:560px;max-height:92vh;max-height:92dvh;overflow:auto;background:var(--surface-2);border-radius:12px 12px 0 0;border:var(--hairline) solid var(--border);padding-bottom:env(safe-area-inset-bottom)}@media(min-width:900px)and (min-height:600px){.sheet-back{align-items:center}.sheet{border-radius:12px}}.cal-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 16px;border-bottom:var(--hairline) solid var(--border)}.cal-nav .label{font-weight:500}.cal-cols{display:grid}.cal-col{border-right:var(--hairline) solid var(--border);min-width:0}.cal-col:last-child{border-right:none}.cal-colhead{padding:6px 4px;text-align:center;font-size:12px;color:var(--text-secondary);border-bottom:var(--hairline) solid var(--border);position:sticky;top:49px;background:var(--surface-2)}.cal-colhead.today{color:var(--accent);font-weight:500}.blk{display:block;width:100%;text-align:left;margin:4px;padding:5px 6px 5px 7px;border-radius:6px;border:none;border-left:3px solid var(--neutral-bar);background:var(--neutral-fill);color:var(--neutral-text);font-size:12px;line-height:1.3;cursor:pointer;width:calc(100% - 8px)}.blk.chore{border-right:4px solid var(--chore-bar)}.blk.proposed{border-style:dashed;opacity:.85}.blk .bt{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.blk .bs{font-size:11px;opacity:.85;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.month{display:grid;grid-template-columns:repeat(7,1fr)}.month .wd{text-align:center;font-size:11px;color:var(--text-secondary);padding:6px 0;border-bottom:var(--hairline) solid var(--border)}.month .day{min-height:64px;padding:4px;border-bottom:var(--hairline) solid var(--border);border-right:var(--hairline) solid var(--border);background:transparent;border-top:none;border-left:none;text-align:left;font-size:12px;color:var(--text-primary);display:flex;flex-direction:column;gap:3px}.month .day.dim{color:var(--text-muted)}.month .day.today .n{color:var(--accent);font-weight:600}.month .day.sel{background:var(--accent-fill)}.month .dots{display:flex;gap:3px;flex-wrap:wrap}.month .dots .dot{width:7px;height:7px}.month .more{font-size:10px;color:var(--text-muted)}.legend{display:flex;gap:12px;flex-wrap:wrap;padding:8px 16px;font-size:11px;color:var(--text-secondary)}.pal-blue{--bar: var(--p-blue-bar);--fill: var(--p-blue-fill);--ptext: var(--p-blue-text)}.pal-green{--bar: var(--p-green-bar);--fill: var(--p-green-fill);--ptext: var(--p-green-text)}.pal-plum{--bar: var(--p-plum-bar);--fill: var(--p-plum-fill);--ptext: var(--p-plum-text)}.pal-amber{--bar: var(--p-amber-bar);--fill: var(--p-amber-fill);--ptext: var(--p-amber-text)}.pal-teal{--bar: var(--p-teal-bar);--fill: var(--p-teal-fill);--ptext: var(--p-teal-text)}.pal-rose{--bar: var(--p-rose-bar);--fill: var(--p-rose-fill);--ptext: var(--p-rose-text)}.pal-indigo{--bar: var(--p-indigo-bar);--fill: var(--p-indigo-fill);--ptext: var(--p-indigo-text)}.pal-clay{--bar: var(--p-clay-bar);--fill: var(--p-clay-fill);--ptext: var(--p-clay-text)}.pal-neutral{--bar: var(--neutral-bar);--fill: var(--neutral-fill);--ptext: var(--neutral-text)}.item[class*=pal-]{border-left-color:var(--bar)}.blk[class*=pal-]{border-left-color:var(--bar);background:var(--fill);color:var(--ptext)}.pill[class*=pal-]{background:var(--fill);color:var(--ptext)}.dot[class*=pal-]{background:var(--bar)}.avatar{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:14px;background:var(--fill, var(--neutral-fill));color:var(--ptext, var(--neutral-text));border:2px solid var(--bar, var(--neutral-bar));flex:none}.avatar.sm{width:20px;height:20px;font-size:11px;border-width:1.5px}.markwrap{position:relative;display:inline-flex;flex:none}.mark-badge{position:absolute;right:-3px;bottom:-3px;min-width:11px;height:11px;padding:0 1px;border-radius:6px;background:var(--badge-backing);color:#fff;font-size:8px;font-weight:700;line-height:11px;text-align:center;letter-spacing:-.02em}.markwrap.xs .mark-badge{min-width:9px;height:9px;font-size:7px;line-height:9px;right:-2px;bottom:-2px}.avatar.unclaimed{background:var(--danger-fill);border-color:var(--danger);color:var(--danger);font-weight:700}.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.avatar.xs{width:15px;height:15px;font-size:9px;border-width:1px}.avstack{display:inline-flex;align-items:center;gap:2px;flex:none}.avmore{font-size:10px;color:var(--text-muted);margin-left:2px}.pill .avatar.xs{margin-left:-3px}.signin{max-width:380px;margin:10vh auto;background:var(--surface-2);border:var(--hairline) solid var(--border);border-radius:12px;padding:8px 0 16px}.signin h1{font-size:22px;font-weight:500;margin:16px 16px 4px}.signin p{margin:0 16px 12px;color:var(--text-secondary);font-size:13px}.photo-preview{max-width:100%;max-height:240px;border-radius:var(--radius);border:var(--hairline) solid var(--border);display:block;margin:8px 16px}.list-item{display:flex;align-items:center;gap:10px;padding:8px 16px;border-bottom:var(--hairline) solid var(--border)}.list-item input[type=checkbox]{width:20px;height:20px;flex:none}.list-item .txt{flex:1}.list-item.done .txt{text-decoration:line-through;color:var(--text-muted)}.list-item .qty{color:var(--text-secondary);font-size:12px}.add-row{display:flex;gap:8px;padding:8px 16px}.add-row input{flex:1}.kv{display:flex;justify-content:space-between;padding:8px 16px;border-bottom:var(--hairline) solid var(--border);font-size:14px}.kv .k{color:var(--text-secondary)}.spinner{padding:24px;text-align:center;color:var(--text-muted)}@media(min-width:900px)and (min-height:600px){.tabs{display:none}.page.canvas{max-width:1360px;margin:0 auto;background:transparent;padding:20px 24px 56px;min-height:0}.page.canvas>.hdr,.page.canvas>.canvas-hdr{position:static;background:transparent;border-bottom:none;padding:0 2px 14px}.page.canvas>.hdr h1,.page.canvas>.canvas-hdr h1{font-size:22px;font-weight:600;letter-spacing:-.01em}.panel{background:var(--surface-2);border:var(--hairline) solid var(--border);border-radius:12px;overflow:hidden}.panel+.panel{margin-top:16px}.panel>.hdr{position:static}.panel>.sec:first-child{padding-top:12px}.panel>:last-child{border-bottom:none}.panel-t{padding:11px 16px;border-bottom:var(--hairline) solid var(--border);font-size:13px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;justify-content:space-between;gap:8px}.panel-scroll{max-height:calc(100vh - 190px);overflow:auto}.cols{display:grid;gap:16px;align-items:start}.cols.c2{grid-template-columns:repeat(2,minmax(0,1fr))}.cols.c3{grid-template-columns:repeat(3,minmax(0,1fr))}.cols.master{grid-template-columns:minmax(340px,420px) minmax(0,1fr)}.cols.aside{grid-template-columns:minmax(0,1fr) minmax(300px,360px)}.grid-auto{display:grid;gap:16px;align-items:start;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.page.canvas .card,.page.canvas .item,.page.canvas .list-item{background-clip:padding-box}}@media(max-width:899px),(max-height:599px){input,select,textarea,.input{font-size:16px}}@media(orientation:landscape)and (max-height:599px){.shell{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.page{max-width:none}.hdr{padding:6px 16px}.hdr h1{font-size:16px}.tab{padding:4px 0 3px;font-size:10px}.tab>div{display:none}.tabs{padding-bottom:max(2px,env(safe-area-inset-bottom))}.sheet{max-height:96dvh}}.ed-head{padding:14px 16px 12px;border-bottom:var(--hairline) solid var(--border);display:flex;flex-direction:column;gap:4px}.ed-title{font-size:20px;font-weight:600;line-height:1.25}.ed-line{color:var(--text-secondary);font-size:14px}.ed-place{color:var(--accent);text-decoration:none}.ed-who{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.ed-acts{margin-top:10px}.ed-notes{padding:10px 16px;border-bottom:var(--hairline) solid var(--border)}.ed-notes .k{color:var(--text-secondary);font-size:12px;margin-bottom:4px}.ed-notes .v{white-space:pre-wrap;font-size:14px;line-height:1.45}.kv>span:last-child{text-align:right}@media(max-width:899px),(max-height:599px){.sheet{min-height:60dvh}}
