:root{--call-bg: #0d0d14;--call-text: #ffffff;--call-muted: rgba(255, 255, 255, .7);--call-control: rgba(255, 255, 255, .14);--on-colour: #ffffff;--bg: #f6f5fb;--surface: #ffffff;--surface-2: #f9fafb;--surface-3: #fbfbfd;--line: #e5e7eb;--line-2: #d9dce3;--text: #111827;--text-2: #374151;--muted: #6b7280;--faint: #9ca3af;--brand: #5b3ff2;--brand-ink: #ffffff;--brand-soft: #efebff;--brand-text: #4a31d9;--on-brand-soft: #e4deff;--preview-brand-light: #5b3ff2;--preview-brand-dark: #7c63ff;--secondary: #6366f1;--secondary-soft: #e9eafd;--secondary-text: #4f46e5;--placeholder: #eef0f5;--track: #e9e7f2;--toggle-off: #d1d5db;--green: #0e9f6e;--green-soft: #e3f6ee;--green-text: #0b7a55;--orange-soft: #fff1e6;--orange-text: #b5520f;--danger: #e5484d;--danger-soft: #fdecec;--danger-text: #b42318;--shadow: 0 1px 2px rgba(20, 18, 40, .04);--shadow-pop: 0 12px 40px rgba(20, 18, 40, .16);--av1-bg: #ffe4d6;--av1-fg: #b4541e;--av2-bg: #e0e7ff;--av2-fg: #4338ca;--av3-bg: #ddf3e8;--av3-fg: #127a55;--av4-bg: #fce1ec;--av4-fg: #b3245f;--av5-bg: #dcebfc;--av5-fg: #2563a8;--av6-bg: #fff2cc;--av6-fg: #8a6400;--group-purple: #6366f1;--group-green: #119c6b;--group-orange: #d9581a;--group-blue: #2f7bd9;--group-pink: #d9416e;--group-gold: #a87f00;--radius-sm: 8px;--radius: 16px;--radius-lg: 20px;--radius-pill: 999px;--font-body: "Inter", system-ui, sans-serif;--font-head: "Poppins", "Inter", sans-serif;color-scheme:light}:root[data-theme=dark]{--bg: #0c0a12;--surface: #17141f;--surface-2: #1f1b2a;--surface-3: #13111b;--line: #2a2636;--line-2: #363145;--text: #f4f3f8;--text-2: #d9d6e4;--muted: #a9a6b9;--faint: #858299;--brand: #7c63ff;--brand-soft: #2a2343;--brand-text: #bbaeff;--secondary: #818cf8;--secondary-soft: #262a4f;--secondary-text: #a5b4fc;--placeholder: #221e2e;--track: #2a2636;--toggle-off: #3a3548;--danger-soft: #3a1717;--danger-text: #ff9b94;--green-soft: #133126;--green-text: #6fdcae;--orange-soft: #3a2414;--orange-text: #ffb27a;--shadow: none;--shadow-pop: 0 20px 60px rgba(0, 0, 0, .6);--av1-bg: #3e2a20;--av1-fg: #ffb98f;--av2-bg: #262a50;--av2-fg: #b4bcff;--av3-bg: #173528;--av3-fg: #7fddb3;--av4-bg: #3d1c2b;--av4-fg: #ff9cc2;--av5-bg: #1a2b40;--av5-fg: #8cc1ff;--av6-bg: #3a3017;--av6-fg: #f2cf6b;color-scheme:dark}:root[data-app=bundl],:root[data-app=bundlpro],:root[data-app=admin]{--brand: #4862cb;--brand-soft: #e8ecfa;--brand-text: #3a52b5;--on-brand-soft: #dde4fa;--preview-brand-light: #4862cb;--preview-brand-dark: #7d93e8}:root[data-app=bundl][data-theme=dark],:root[data-app=bundlpro][data-theme=dark],:root[data-app=admin][data-theme=dark]{--brand: #6f87e2;--brand-soft: #1f2742;--brand-text: #aebdf3}.fh{min-height:100vh;background:var(--bg);padding:28px var(--page-pad, 32px) 40px}.fh-wrap{max-width:var(--page-max, 1280px);margin:0 auto;display:flex;flex-direction:column;gap:22px}.fh-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.fh-title{font-family:var(--font-head);font-size:28px;font-weight:800;line-height:1.1;margin:0}.fh-clock{font-family:var(--font-head);font-size:30px;font-weight:700;margin-right:6px}.fh-pill{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 14px;border-radius:var(--radius-pill);background:var(--green-soft);color:var(--green-text);font-weight:600;font-size:13.5px}.fh-pill i{width:8px;height:8px;border-radius:50%;background:currentColor}.fh .btn{height:44px;border-radius:var(--radius-pill);padding:0 18px;font-size:14px}.fh .btn.lg{height:50px;font-size:15px}.fh-who{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px}.fh-people{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px}.fh-person{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 10px;border:0;border-radius:18px;background:none;color:var(--text);cursor:pointer;font:inherit;min-width:92px}.fh-person:hover{background:var(--brand-soft)}.fh-person .av{position:relative}.fh-person b{font-size:14.5px}.fh-person small{font-size:12px;color:var(--muted);margin-top:-4px}.fh-badge{position:absolute;right:-2px;bottom:-2px;width:28px;height:28px;border-radius:50%;background:var(--text);color:var(--surface);border:3px solid var(--surface);display:grid;place-items:center}.fh-add .av{border:2px dashed var(--line-2);background:none;color:var(--brand-text)}.av.xxl{width:96px;height:96px;font-size:32px}.av.fh-hero{width:104px;height:104px;font-size:36px}.fh-cols{display:flex;flex-wrap:wrap;gap:22px;align-items:flex-start}.fh-main{flex:2 1 640px;min-width:0;display:flex;flex-direction:column;gap:22px}.fh-side{flex:1 1 340px;min-width:0;display:flex;flex-direction:column;gap:22px}.fh-card{padding:22px}.fh-card h2{font-family:var(--font-head);font-size:19px;font-weight:700;margin:0}.fh-card-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:14px}.fh-label{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0}.fh-week{overflow-x:auto;padding:3px 3px 16px}.fh-week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;min-width:760px}.fh-day{display:flex;flex-direction:column;gap:6px;min-height:165px;padding:6px 8px;border-radius:16px}.fh-day.today{background:var(--brand-soft);box-shadow:inset 0 0 0 2px var(--brand);padding:10px 12px}.fh-day.today .fh-label{color:var(--brand-text)}.fh-ev{border-radius:10px;padding:6px 9px;font-size:13px;line-height:1.25;background:var(--surface-2);color:var(--text)}.fh-ev-t{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}.fh-ev b{display:block;font-weight:600}.fh-ev.t1{background:var(--av1-bg);color:var(--av1-fg)}.fh-ev.t2{background:var(--av2-bg);color:var(--av2-fg)}.fh-ev.t3{background:var(--av3-bg);color:var(--av3-fg)}.fh-ev.t4{background:var(--av4-bg);color:var(--av4-fg)}.fh-ev.t5{background:var(--av5-bg);color:var(--av5-fg)}.fh-ev.t6{background:var(--av6-bg);color:var(--av6-fg)}.fh-scroll{display:flex;gap:14px;overflow-x:auto;padding-bottom:18px}.fh-post{flex:0 0 232px;border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;background:var(--surface)}.fh-post img,.fh-post .fh-ph{width:100%;height:150px;object-fit:cover;display:block}.fh-post-body{padding:14px 16px;display:flex;flex-direction:column;gap:10px;flex:1}.fh-post-text{margin:0;font-size:14.5px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.fh-post.text-only{background:var(--brand-soft)}.fh-post.text-only .fh-post-text{font-family:var(--font-head);font-size:18px;font-weight:600}.fh-ph{background:var(--surface-3);color:var(--muted);display:grid;place-items:center}.fh-photos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.fh-photos img,.fh-photos .fh-ph{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:16px;display:block}.fh-tick-row{display:flex;align-items:center;gap:12px;font-size:14.5px;padding:4px 0}.fh-tick{width:22px;height:22px;border-radius:50%;border:2px solid var(--line-2);display:grid;place-items:center;flex:none}.fh-tick.done{background:var(--green-soft);border-color:transparent;color:var(--green-text)}.fh-done{color:var(--muted);text-decoration:line-through}.fh-note{display:block;width:100%;border:0;text-align:left;font:inherit;color:var(--text);cursor:pointer;border-radius:16px;padding:14px 16px;background:var(--green-soft)}.fh-note:hover{filter:brightness(.97)}.fh-note-full{margin:0;font-size:16px;line-height:1.55;white-space:pre-wrap}.fh-note:nth-child(2n){background:var(--brand-soft)}.fh-note p{margin:0;font-size:14.5px;line-height:1.45;white-space:pre-line}.fh-note small{display:block;margin-top:8px;font-size:12.5px;color:var(--muted)}.fh-foot{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px;font-size:13px;color:var(--muted)}.fh-center{flex:1;display:grid;place-items:center}.fh-panel{background:var(--surface);border:1px solid var(--line);border-radius:28px;padding:40px 48px;display:flex;flex-direction:column;align-items:center;gap:20px;width:100%;max-width:480px;text-align:center}.fh-panel.wide{max-width:560px}.fh-panel h1{font-family:var(--font-head);font-size:28px;font-weight:800;margin:0}.fh-panel p{margin:0}.fh-dots{display:flex;gap:18px;height:22px;align-items:center}.fh-dots i{width:18px;height:18px;border-radius:50%;border:2px solid var(--line-2)}.fh-dots i.on{background:var(--brand);border-color:var(--brand)}.fh-dots.bad i.on{background:var(--danger);border-color:var(--danger)}.fh-dots.bad{animation:fh-shake .35s}@keyframes fh-shake{25%{transform:translate(-8px)}75%{transform:translate(8px)}}.fh-keys{display:grid;grid-template-columns:repeat(3,70px);gap:12px 18px}.fh-key{width:70px;height:70px;border-radius:50%;border:1px solid var(--line);background:var(--surface);font:600 25px var(--font-head);color:var(--text);cursor:pointer;display:grid;place-items:center}.fh-key:hover{background:var(--brand-soft)}.fh-key:active{transform:scale(.96)}.fh-key.plain{border-color:transparent;background:none}.fh-msg{border-radius:14px;padding:12px 14px;font-size:14px;line-height:1.45;text-align:left;width:100%}.fh-msg.bad{background:var(--danger-soft);color:var(--danger-text)}.fh-msg.good{background:var(--green-soft);color:var(--green-text)}.fh-msg.info{background:var(--brand-soft);color:var(--brand-text)}.fh-lock{display:flex;flex-wrap:wrap;gap:24px;min-height:calc(100vh - 68px)}.fh-show{flex:1 1 520px;min-width:0;min-height:560px;position:relative;overflow:hidden;border-radius:28px;background:var(--brand)}.fh-show .fh-top{position:absolute;top:24px;left:24px;right:24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:flex-start}.fh-chip{display:inline-flex;align-items:center;gap:10px;background:var(--surface);color:var(--text);border-radius:var(--radius-pill);padding:6px 16px 6px 6px;font-size:14px}.fh-chip.title{font:700 15px var(--font-head)}.fh-glass{position:absolute;background:#111827c2;color:#fff;border-radius:22px;padding:22px 26px}.fh-glass .big{margin:0;font:800 80px/1 var(--font-head);letter-spacing:-1.5px}.fh-glass p{margin:6px 0 0}.fh-pick{flex:1 1 520px;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:24px;padding:20px 8px}.fh-pick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.fh-pick-grid .fh-person{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:22px 12px;gap:8px}.fh-pick-grid .fh-person b{font-family:var(--font-head);font-size:18px}.fh-saver{position:fixed;inset:0;z-index:80;background:#111827;border:0;padding:0;cursor:pointer;display:block;width:100%}.fh-saver .fh-tap{position:absolute;top:32px;left:50%;transform:translate(-50%);background:#11182799;color:#fff;border-radius:var(--radius-pill);padding:10px 20px;font-size:15px;font-weight:600;white-space:nowrap}.fh-steps{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0;font-size:13px;font-weight:600}.fh-steps li{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--line);color:var(--text-2)}.fh-steps li.done{background:var(--green-soft);color:var(--green-text);border-color:transparent}.fh-steps li.on{background:var(--brand);color:var(--brand-ink);border-color:transparent}.fh-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:14px 0;border-top:1px solid var(--line)}.fh-row .grow{flex:1 1 200px;min-width:0}.fh-switch{width:52px;height:30px;border-radius:var(--radius-pill);border:0;padding:3px;background:var(--toggle-off);cursor:pointer;display:flex;flex:none}.fh-switch i{width:24px;height:24px;border-radius:50%;background:#fff;transition:margin .2s;box-shadow:0 1px 2px #0003}.fh-switch[aria-checked=true]{background:var(--brand)}.fh-switch[aria-checked=true] i{margin-left:22px}.fh-listbox{margin-top:8px;border:1px solid var(--line);border-radius:18px;background:var(--surface);padding:6px;box-shadow:var(--shadow-pop);display:flex;flex-direction:column;gap:2px;max-height:360px;overflow-y:auto}.fh-opt{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:0;border-radius:14px;background:none;font:inherit;color:var(--text);text-align:left;cursor:pointer}.fh-opt:hover:not(:disabled),.fh-opt[aria-selected=true]{background:var(--brand-soft)}.fh-opt:disabled{cursor:not-allowed;opacity:.55}.fh-select{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:8px 14px;border:2px solid var(--line-2);border-radius:16px;background:var(--surface);font:inherit;color:var(--text);cursor:pointer;text-align:left}.fh-select[aria-expanded=true]{border-color:var(--brand)}.fh-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.fh-stats div{background:var(--surface-2);border-radius:16px;padding:12px 14px;font-size:12.5px;color:var(--muted)}.fh-stats b{display:block;font:700 22px var(--font-head);color:var(--text)}@media(max-width:720px){.fh{padding:18px var(--page-pad, 16px) 32px}.fh-keys{grid-template-columns:repeat(3,61px);gap:11px 14px}.fh-key{width:61px;height:61px;font-size:22px}.fh-panel{padding:28px 20px}.fh-photos,.fh-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.fh-glass .big{font-size:56px}.fh-pick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.fh-note p{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}button.fh-post{padding:0;text-align:left;font:inherit;color:inherit;cursor:pointer}button.fh-post:hover{border-color:var(--brand)}.fh-photo{padding:0;border:0;background:none;cursor:pointer;border-radius:16px}.fh-photo:hover img{filter:brightness(.92)}.fh-slide{position:absolute;inset:0;overflow:hidden;background:#111827;opacity:0;transition:opacity 1.2s ease}.fh-slide.on{opacity:1}.fh-slide img{position:absolute;inset:0;width:100%;height:100%}.fh-slide-bg{object-fit:cover;filter:blur(36px) brightness(.62) saturate(1.15);transform:scale(1.15)}.fh-slide-fg{object-fit:contain}@media(prefers-reduced-motion:reduce){.fh-slide.on .fh-slide-fg{animation:none}}.fh-lock:has(.fh-pick.compact){flex-wrap:nowrap}.fh-pick.compact{flex:0 0 300px;justify-content:flex-start;gap:16px;padding:8px 0}.fh-pick-list{display:flex;flex-direction:column;gap:10px;max-height:542px;overflow-y:auto;padding-right:4px}.fh-pick-row{display:flex;align-items:center;gap:14px;min-height:82px;padding:9px 14px;border:1px solid var(--line);border-radius:20px;background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer;flex:none}.fh-pick-row:hover{border-color:var(--brand);background:var(--brand-soft)}.fh-pick-row b{font:700 17px var(--font-head)}.fh-pick-row small{font-size:12.5px;color:var(--muted)}.av.fh-mid{width:60px;height:60px;font-size:21px}@media(max-width:900px){.fh-lock:has(.fh-pick.compact){flex-wrap:wrap}.fh-pick.compact{flex:1 1 100%}}.fh-pick.compact{justify-content:center}.fh-pick-row.just{border-color:var(--brand);background:var(--brand-soft)}.fh-saver .fh-slide{transition-duration:1.8s}.fh-slide.on .fh-slide-fg{animation:10s ease-in-out both}.fh-slide.on .fh-slide-bg{animation:fh-bg 10s ease-in-out both}.fh-slide.m0.on .fh-slide-fg{animation-name:fh-zoom-in}.fh-slide.m1.on .fh-slide-fg{animation-name:fh-zoom-out}.fh-slide.m2.on .fh-slide-fg{animation-name:fh-pan-left}.fh-slide.m3.on .fh-slide-fg{animation-name:fh-pan-right}.fh-slide.m4.on .fh-slide-fg{animation-name:fh-zoom-corner}@keyframes fh-zoom-in{0%{transform:scale(1)}to{transform:scale(1.08)}}@keyframes fh-zoom-out{0%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes fh-pan-left{0%{transform:scale(1.06) translate(2%)}to{transform:scale(1.06) translate(-2%)}}@keyframes fh-pan-right{0%{transform:scale(1.06) translate(-2%)}to{transform:scale(1.06) translate(2%)}}@keyframes fh-zoom-corner{0%{transform:scale(1);transform-origin:30% 30%}to{transform:scale(1.1);transform-origin:30% 30%}}@keyframes fh-bg{0%{transform:scale(1.15)}to{transform:scale(1.25)}}@media(prefers-reduced-motion:reduce){.fh-slide.on .fh-slide-fg,.fh-slide.on .fh-slide-bg{animation:none}}@media(max-width:900px){.fh-week{overflow:visible;padding-bottom:0}.fh-week-grid{grid-template-columns:minmax(0,1fr);min-width:0;gap:8px}.fh-day{min-height:0;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 12px}.fh-day .fh-label{flex:0 0 110px}.fh-day .fh-ev{flex:1 1 180px}.fh-day.empty:not(.today){display:none}.fh-who>div:last-child{display:none}}@media(min-width:901px)and (max-width:1279px){.fh-board{zoom:.86}}@media(min-width:901px)and (max-width:1139px){.fh-board{zoom:.78}}.fh-listcard{display:flex;align-items:center;gap:14px;width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer}.fh-listcard:hover,.fh-folder:hover{background:var(--surface-2)}.fh-listcard>svg,.fh-listcard>.icon{color:var(--muted);flex:none}.fh-listcard-name{font-size:15.5px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fh-listcard .m,.fh-folder .m{font-size:13px;display:inline-flex;align-items:center;gap:4px}.fh-ring{position:relative;width:48px;height:48px;flex:none}.fh-ring svg{position:absolute;inset:0;width:100%;height:100%}.fh-ring span{position:absolute;inset:0;display:grid;place-items:center;font-size:11.5px;font-weight:700;color:var(--muted)}.fh-folders{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.fh-folder{display:flex;flex-direction:column;align-items:flex-start;gap:6px;border:1px solid var(--line);border-radius:18px;background:var(--surface);padding:14px;min-width:0;color:var(--text);font:inherit;text-align:left;cursor:pointer}.fh-folder .fh-bar{align-self:stretch}.fh-bar{height:6px;border-radius:999px;background:var(--line);overflow:hidden;margin:4px 0 2px}.fh-bar i{display:block;height:100%;border-radius:999px}.fh-chips{display:flex;flex-wrap:wrap;gap:5px}.fh-chip{font-size:12px;font-weight:600;padding:4px 9px;border-radius:999px;background:var(--surface-2);color:var(--text);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fh-completed{margin-top:2px}.fh-completed-toggle{display:inline-flex;align-items:center;gap:6px;border:0;background:none;padding:6px 2px;font:inherit;font-size:13.5px;font-weight:600;color:var(--muted);cursor:pointer}.fh-completed-toggle:hover{color:var(--text)}.fh-caret{display:grid;transition:transform .15s}.fh-completed-toggle[aria-expanded=true] .fh-caret{transform:rotate(180deg)}.fh-bigcal{width:100%}.fh-bigcal .page{padding:0;max-width:none}.fh-bigcal .sticky-bar{position:static;background:none;box-shadow:none;padding-top:0}.fhf{position:fixed;inset:0;z-index:60;background:var(--bg);color:var(--text);display:flex;flex-direction:column}.fhf-top{position:absolute;top:0;left:0;right:0;z-index:2;display:flex;align-items:center;gap:14px;padding:16px 22px;background:linear-gradient(var(--bg),transparent);pointer-events:none}.fhf-top>*{pointer-events:auto}.fhf-title{font-family:var(--font-head);font-size:18px}.fhf-sub{font-size:13px;color:var(--muted);display:inline-flex;align-items:center;gap:4px}.fhf-icon{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--text);display:grid;place-items:center;cursor:pointer;flex:none}.fhf-icon:disabled{opacity:.35;cursor:default}.fhf-scroll{flex:1;overflow-y:auto;scroll-snap-type:y mandatory;overscroll-behavior:contain}.fhf-slide{height:100%;scroll-snap-align:start;scroll-snap-stop:always;display:flex;align-items:center;justify-content:center;padding:78px 24px 24px;box-sizing:border-box}.fhf-post{width:min(680px,100%);height:100%;justify-content:center;display:flex;flex-direction:column;gap:14px}.fhf-media{flex:1;min-height:0;border-radius:22px;overflow:hidden;background:var(--surface-2)}.fhf-media .media{height:100%;aspect-ratio:auto;border-radius:0}.fhf-media .media-img,.fhf-media .media img,.fhf-media video{height:100%}.fhf-media .media-fg,.fhf-media video{width:100%;object-fit:contain}.fhf-text{flex:0 1 70%;margin-top:auto;min-height:0;border-radius:22px;background:var(--brand);color:#fff;display:grid;place-items:center;padding:40px}.fhf-text p{margin:0;font-family:var(--font-head);font-size:clamp(22px,3.2vw,34px);font-weight:700;line-height:1.3;text-align:center;white-space:pre-wrap}.fhf-info{display:flex;flex-direction:column;gap:8px;padding:0 4px}.fhf-caption{margin:0;font-size:16px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.fhf-end{flex-direction:column;gap:12px;text-align:center}.fhf-nav{position:absolute;right:22px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:10px;z-index:2}.fhf-nav .fhf-icon svg{transform:rotate(90deg)}@media(max-width:720px){.fhf-nav{display:none}.fhf-slide{padding:72px 12px 16px}}.fh .icon-btn.fh-theme{width:44px;height:44px;border-radius:50%}.fh-board-btn{flex:1;justify-content:center}.fh-show-tap{position:absolute;inset:0;z-index:1;border:0;padding:0;background:transparent;cursor:pointer}.fh-show .fh-top,.fh-show .fh-glass{z-index:2}.fh-show .fh-glass,.fh-show .fh-top{pointer-events:none}@media(max-width:1279px){.fh-who>div:last-child{display:none}}.fh-checking{display:flex;align-items:center;justify-content:center;gap:8px;height:22px;margin:-6px 0 6px;font-size:13.5px;font-weight:600;color:var(--muted);visibility:hidden}.fh-checking.on{visibility:visible}.fh-spinner{width:16px;height:16px;border-radius:50%;border:2.5px solid var(--line-2);border-top-color:var(--brand);animation:fh-spin .7s linear infinite}@keyframes fh-spin{to{transform:rotate(360deg)}}.fh-keys.wait{opacity:.5}@media(prefers-reduced-motion:reduce){.fh-spinner{animation-duration:2s}}.fh-tick-row.tappable{width:100%;border:0;background:none;font:inherit;color:var(--text);text-align:left;cursor:pointer;border-radius:12px;padding:6px 8px;margin:0 -8px;width:calc(100% + 16px)}.fh-tick-row.tappable:hover{background:var(--surface-2)}.fh-by{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--muted);flex:none}.fht-overlay{position:fixed;inset:0;z-index:80;background:#05040a8c;display:grid;place-items:center;padding:16px}.fht-card{width:min(520px,100%);background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:24px;padding:20px 20px 18px;box-shadow:0 24px 70px #00000059}.fht-title{margin:0;font:800 19px var(--font-head)}.fht-close{width:34px;height:34px;border-radius:50%;border:0;background:var(--surface-2);color:var(--muted);display:grid;place-items:center;cursor:pointer;flex:none}.fht-item{display:flex;align-items:center;gap:10px;margin-top:12px;padding:10px 12px;border-radius:14px;background:var(--surface-2);font-size:15px}.fht-people{display:flex;gap:8px;margin-top:14px;overflow-x:auto;padding-bottom:16px}.fht-person{position:relative;flex:0 0 84px;display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px;border-radius:16px;border:1px solid var(--line);background:var(--bg);color:var(--text);font:inherit;cursor:pointer}.fht-person b{font-size:13.5px}.fht-person small{font-size:11px;color:var(--muted)}.fht-person:hover:not(:disabled){border-color:var(--brand);background:var(--brand-soft)}.fht-person:disabled{cursor:default}.fht-person:disabled:not(.busy){opacity:.45}.fht-person.busy{border-color:var(--brand);background:var(--brand-soft)}.fht-spin{position:absolute;top:8px;right:8px}.fht-toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%);z-index:90;display:flex;align-items:center;gap:12px;background:var(--text);color:var(--bg);padding:10px 10px 10px 18px;border-radius:999px;font-weight:600;font-size:15px;box-shadow:0 14px 40px #00000059;max-width:calc(100vw - 32px)}.fht-toast button{border:0;border-radius:999px;padding:8px 16px;font:inherit;font-weight:700;background:color-mix(in srgb,var(--bg) 14%,transparent);color:inherit;cursor:pointer}.fh-types{width:100%;max-width:860px;padding:32px;display:flex;flex-direction:column;gap:16px}.fh-type-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin-top:4px}.fh-type{display:flex;align-items:center;gap:14px;padding:16px;border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--surface);color:var(--text);text-align:left;font:inherit;cursor:pointer}.fh-type:hover{border-color:var(--brand)}.fh-type.on{border:2px solid var(--brand);padding:15px}.fh-type b{font-family:var(--font-head);font-size:17px}.fh-type .m{font-size:13.5px;line-height:1.4}.fh-type-icon{flex:none;width:48px;height:48px;border-radius:14px;background:var(--brand-soft);color:var(--brand-text);display:grid;place-items:center}.fhl{display:flex;flex-direction:column;gap:16px}.fhl-progress{display:flex;flex-direction:column;gap:6px}.fhl-progress b{font-size:15px}.fhl-progress .m{font-size:13px}.fhl-progress .fh-bar{height:8px;margin:2px 0 0}.fhl-who{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border-radius:var(--radius-lg);background:var(--surface-2)}.fhl-who-label{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.fhl-who-row{display:flex;gap:8px;overflow-x:auto;padding-bottom:16px;margin-bottom:-12px}.fhl-who-chip{flex:none;display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:6px 14px 6px 8px;border-radius:var(--radius-pill);border:1px solid var(--line);background:var(--surface);color:var(--text);font:inherit;font-weight:600;font-size:14px;cursor:pointer}.fhl-who-chip:first-child{padding-left:14px}.fhl-who-chip:hover{border-color:var(--brand)}.fhl-who-chip.on{border-color:var(--brand);background:var(--brand);color:#fff}.fhl-who-note{font-size:13px;color:var(--brand);font-weight:600}.fhl-sec{display:flex;flex-direction:column;gap:10px}.fhl-items{display:flex;flex-direction:column;gap:8px}.fhl-row{display:flex;align-items:center;gap:12px;width:100%;min-height:52px;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--text);font:inherit;font-size:15.5px;line-height:1.4;text-align:left;cursor:pointer}.fhl-row:hover:not(:disabled){border-color:var(--brand)}.fhl-row:disabled{cursor:progress}.fhl-row.ing{background:var(--green-soft);border-color:transparent}.fhl-row.step{background:var(--brand-soft);border-color:transparent}.fhl-row.done .fhl-text{color:var(--muted);text-decoration:line-through}.fhl-row .fh-tick{width:26px;height:26px;background:var(--surface)}.fhl-row .fh-tick.done{background:var(--green-text);color:var(--surface)}.fhl-row .fh-tick .fh-spinner{width:14px;height:14px}.fhl-text{flex:1;min-width:0}.fhl-step{display:flex;align-items:flex-start;gap:10px}.fhl-step .recipe-num{margin-top:11px}.fhl-reset{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.fhl-sayrow{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.fhl-sayrow>.fhl-row{flex:1;min-width:0}.fhl-say{flex:none;display:inline-grid;place-items:center;width:36px;height:36px;padding:0;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--muted);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.fhl-say:hover,.fhl-say[aria-pressed=true]{color:var(--brand);border-color:var(--brand)}.fhl-say:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.fhl-row.speaking{box-shadow:0 0 0 2px var(--brand)}.fhl-readall{margin-left:auto;display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;border-radius:var(--radius-pill);border:1px solid var(--line);background:var(--surface);color:var(--text);font:600 13px var(--font-body, inherit);cursor:pointer}.fhl-readall:hover,.fhl-readall.on{border-color:var(--brand);color:var(--brand)}.recipe-head:has(.fhl-readall){width:100%}@media(hover:hover)and (pointer:fine){.fhl-sayrow{position:relative}.fhl-say{position:absolute;right:10px;top:50%;transform:translateY(-50%);box-shadow:0 4px 14px #00000014;opacity:0;transition:opacity .15s}.fhl-sayrow:hover .fhl-say,.fhl-say:focus-visible,.fhl-say[aria-pressed=true]{opacity:1}}@media(hover:none),(pointer:coarse){.fhl-say{width:44px;height:44px}}.fh-say-today{height:40px;padding:0 14px;font-size:14px}.fh-note-say{margin-bottom:12px}.fh-task-say>.fh-tick-row{flex:1;min-width:0}.fh-task-say>.fh-tick-row.tappable{width:auto;margin:0}.fh-task-say .say-btn.fhl-say{width:32px;height:32px;border-radius:50%}@media(hover:none),(pointer:coarse){.fh-task-say .say-btn.fhl-say{width:40px;height:40px}}@media(hover:hover)and (pointer:fine){.fh-task-say .say-btn.fhl-say{position:static;transform:none;box-shadow:none}}.hba{display:flex;flex-direction:column;gap:14px;min-height:260px}.hba .ac-bubble{font-size:16px}.hba-ask{display:flex;align-items:flex-end;gap:8px;width:100%}.hba-ask textarea{flex:1;min-height:44px;max-height:120px;resize:none}.hba-mic{width:44px;height:44px;border-radius:50%;border:1px solid var(--line)}.hba-mic.on{color:var(--brand);border-color:var(--brand);background:var(--brand-soft)}.hba-foot{display:flex;flex-direction:column;gap:6px;margin-top:auto;padding-top:10px;border-top:1px solid var(--line);font-size:13px}@media(max-width:640px){.modal:not(.full) .hba-ask .btn{flex:none}}.fh-setup-ai-opts{display:flex;flex-direction:column;gap:10px;width:100%;text-align:left}.fh-setup-ai-opt{display:flex;align-items:flex-start;gap:16px;padding:16px 18px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface)}.fh-setup-ai-opt b{font-size:16px}.fh-setup-ai-opt .m{font-size:14px;line-height:1.5;margin-top:2px}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:13px;line-height:1.45;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--brand-text);text-decoration:none}h1,h2,h3{margin:0}.h{font-family:var(--font-head);font-weight:700;letter-spacing:-.01em}.app{display:flex;flex-wrap:wrap;min-height:100vh}.side{flex:0 0 236px;background:var(--surface);border-right:1px solid var(--line);padding:18px 14px;display:flex;flex-direction:column;gap:2px;position:sticky;top:0;align-self:flex-start;height:100vh;overflow-y:auto;z-index:20}.main{flex:999 1 560px;min-width:0;display:flex;flex-direction:column}:root{--page-max: 1280px;--page-pad: 32px}@media(max-width:900px){:root{--page-pad: 26px}}.page{padding:26px var(--page-pad);width:100%;max-width:var(--page-max);margin-inline:auto}.row{display:flex;align-items:center;gap:12px}.grow{flex:1}.cols{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start}.col-main{flex:1.6 1 460px;min-width:0;display:flex;flex-direction:column;gap:16px}.col-side{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;gap:16px}.grid-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin:22px 0 16px}.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.logo{display:flex;align-items:center;gap:10px;padding:2px 6px 16px}.logo-mark{width:30px;height:30px;border-radius:9px;background:var(--brand);color:#fff;display:grid;place-items:center;font-family:var(--font-head);font-weight:700;font-size:15px}.logo-word{font-family:var(--font-head);font-weight:700;font-size:19px}.app-logo{display:inline-flex;align-items:center;gap:10px}.logo-badge{font-size:10.5px;font-weight:700;letter-spacing:.08em;line-height:1;padding:4px 7px;border-radius:var(--radius-pill);background:var(--brand);color:var(--brand-ink)}.app-logo.large{gap:12px}.app-logo.large .logo-mark{width:40px;height:40px;border-radius:12px;font-size:20px}.app-logo.large .logo-word{font-size:26px}.app-logo.large .logo-badge{font-size:12px;padding:5px 9px}.app-logo.on-brand .logo-mark,.app-logo.on-brand .logo-badge{background:var(--on-colour);color:var(--brand)}.nav{display:flex;align-items:center;gap:11px;width:100%;padding:7px 10px;border:0;border-radius:9px;background:transparent;color:var(--text-2);font-weight:500;text-align:left}.nav:hover{background:var(--bg)}.nav.on{background:var(--brand-soft);color:var(--brand-text);font-weight:600}.nav svg{color:var(--muted);flex:none}.nav.on svg{color:var(--brand-text)}.count{margin-left:auto;min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:var(--brand);color:#fff;font-size:11px;font-weight:600;display:grid;place-items:center}.count.warn{background:var(--orange-soft);color:var(--orange-text)}.sep{height:1px;background:var(--line);margin:7px 6px}.side-label{font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);padding:4px 10px}.top{height:64px;display:flex;align-items:center;gap:12px;padding:0 24px;border-bottom:1px solid var(--line);background:var(--surface);position:sticky;top:0;z-index:35}.search{flex:0 1 420px;height:38px;border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--line);display:flex;align-items:center;gap:9px;padding:0 12px;color:var(--faint)}.search input{border:0;background:transparent;outline:none;flex:1;height:36px;color:var(--text)}.icon-btn{position:relative;width:38px;height:38px;border-radius:10px;border:0;background:transparent;display:grid;place-items:center;color:var(--muted)}.icon-btn:hover{background:var(--bg)}.badge{position:absolute;top:3px;right:2px;min-width:17px;height:17px;border-radius:9px;background:var(--danger);color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center;border:2px solid var(--surface)}.me{display:flex;align-items:center;gap:8px;padding:3px 10px 3px 4px;border:1px solid var(--line-2);border-radius:20px;background:var(--surface);font-weight:600}.catch{position:fixed;inset:0;z-index:30;border:0;background:transparent}.pop{position:absolute;top:56px;z-index:40;padding:8px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-pop)}.pop-head{display:flex;justify-content:space-between;align-items:center;padding:8px 10px 10px}.pop-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:0;border-radius:9px;background:transparent;text-align:left;font-weight:500;color:var(--text)}.pop-item:hover{background:var(--bg)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.pad{padding:18px 20px}.card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.card-head h3{font-size:16px;font-weight:700}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.title{font-size:24px;margin-top:4px}.sub{color:var(--muted);font-size:13.5px}.t{font-weight:600}.m{font-size:11.5px;color:var(--muted)}.link{border:0;background:transparent;padding:0;color:var(--brand-text);font-weight:600;font-size:12px}.stack{display:flex;flex-direction:column}.btn{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 15px;border-radius:10px;border:1px solid var(--line-2);background:var(--surface);font-weight:600;white-space:nowrap;color:var(--text)}.btn:hover{background:var(--surface-2)}.btn.primary{background:var(--brand);color:var(--brand-ink);border-color:transparent}.btn.primary:hover{filter:brightness(.93)}.btn.sm{height:32px;font-size:12px;padding:0 12px}.btn.soft{background:var(--orange-soft);color:var(--orange-text);border-color:transparent}.av{width:32px;height:32px;border-radius:50%;display:inline-grid;place-items:center;font-weight:700;font-size:11.5px;flex:none}.av.sm{width:24px;height:24px;font-size:9px}.av.lg{width:44px;height:44px;font-size:14px}.av.xl{width:76px;height:76px;font-size:22px}.av.square{border-radius:9px;color:#fff}.av{overflow:hidden}.av.has-photo{background:var(--surface-3)}.av img{width:100%;height:100%;object-fit:cover;display:block}.chip-av{width:14px;height:14px;border-radius:4px;object-fit:cover}.tick-photo{width:100%;height:100%;border-radius:50%;object-fit:cover}.av.xl.square{border-radius:18px}.av-1{background:var(--av1-bg);color:var(--av1-fg)}.av-2{background:var(--av2-bg);color:var(--av2-fg)}.av-3{background:var(--av3-bg);color:var(--av3-fg)}.av-4{background:var(--av4-bg);color:var(--av4-fg)}.av-5{background:var(--av5-bg);color:var(--av5-fg)}.av-6{background:var(--av6-bg);color:var(--av6-fg)}.g-purple{background:var(--group-purple)}.g-green{background:var(--group-green)}.g-orange{background:var(--group-orange)}.g-blue{background:var(--group-blue)}.g-pink{background:var(--group-pink)}.g-gold{background:var(--group-gold)}.item{display:flex;align-items:center;gap:11px;width:100%;padding:9px 0;background:transparent;border:0;border-top:1px solid var(--line);text-align:left;color:var(--text)}.item:first-child{border-top:0}.date{width:36px;text-align:center;flex:none}.date b{display:block;font-size:9.5px;font-weight:700;color:var(--brand-text);letter-spacing:.04em}.date span{font-family:var(--font-head);font-weight:700;font-size:17px;line-height:1.1}.tag{margin-left:auto;font-size:10.5px;font-weight:600;padding:3px 8px;border-radius:6px;background:var(--surface-2);color:var(--muted);white-space:nowrap}.tag.brand{background:var(--brand-soft);color:var(--brand-text)}.chip{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;padding:3px 9px;border-radius:7px;background:var(--surface-2);color:var(--muted);border:1px solid var(--line)}.chip.green{background:var(--green-soft);color:var(--green-text);border-color:transparent}.chip.orange{background:var(--orange-soft);color:var(--orange-text);border-color:transparent}.chip.brand{background:var(--brand-soft);color:var(--brand-text);border-color:transparent}.chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.filter{height:34px;padding:0 14px;border-radius:var(--radius-pill);border:1px solid var(--line-2);background:var(--surface);font-weight:600;color:var(--muted)}.filter.on{background:var(--text);color:var(--bg);border-color:transparent}.rating{margin-left:auto;font-size:10px;font-weight:700;min-width:22px;height:20px;padding:0 4px;border:1px solid var(--line-2);border-radius:6px;display:inline-grid;place-items:center;color:var(--muted)}.placeholder{background:var(--placeholder);border-radius:12px;display:grid;place-items:center;color:var(--muted);font-size:11.5px}.actions{display:flex;gap:16px;margin-top:8px}.act{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;color:var(--muted);font-size:12px;padding:4px 0}.act.on{color:var(--group-pink)}.bar{height:5px;border-radius:3px;background:var(--track);overflow:hidden}.bar>i{display:block;height:100%;background:var(--green);border-radius:3px}.post+.post{border-top:1px solid var(--line);padding-top:14px;margin-top:10px}.stat{text-align:left;color:var(--text)}.stat-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;margin-bottom:12px}.hero{background:linear-gradient(180deg,var(--brand-soft),var(--bg));border-bottom:1px solid var(--line);padding:18px 26px 0;padding-inline:max(var(--page-pad),calc((100% - var(--page-max)) / 2 + var(--page-pad)))}.tabs{display:flex;gap:4px;margin-top:18px;flex-wrap:wrap}.tab{padding:10px 12px 12px;font-weight:600;color:var(--muted);border:0;border-bottom:2px solid transparent;background:transparent}.tab.on{color:var(--text);border-bottom-color:var(--brand)}.composer{display:flex;align-items:center;gap:10px;padding:12px 14px;text-align:left;width:100%}.composer-input{flex:1;height:38px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line);display:flex;align-items:center;padding:0 12px;color:var(--faint)}.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tile{aspect-ratio:1;border-radius:10px;background:var(--placeholder);display:grid;place-items:center;color:var(--muted);font-size:11.5px}.field{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:var(--text-2)}.input{height:42px;border-radius:10px;border:1px solid var(--line-2);background:var(--surface-2);padding:0 12px;width:100%;color:var(--text)}.error{color:var(--danger);font-size:12.5px;font-weight:600}.notice{border:1px solid var(--line);border-radius:12px;background:var(--surface-2);padding:12px;font-size:12px;color:var(--muted)}.toggle{width:38px;height:22px;border-radius:11px;border:0;padding:2px;background:var(--track);flex:none;display:inline-flex;transition:background .15s}.toggle .knob{width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #00000040;transition:transform .15s}.toggle.on{background:var(--brand)}.toggle.on.warn{background:var(--orange-text)}.toggle.on .knob{transform:translate(16px)}.toggle:disabled{opacity:.5}.toggle:focus-visible,.link-btn:focus-visible,.dn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.link-btn{border:0;background:transparent;color:var(--brand-text);font-weight:600;font-size:12px;padding:2px 4px}.mini-select{border:1px solid var(--line-2);background:var(--surface-2);color:var(--text);border-radius:8px;height:28px;padding:0 8px;font-size:12px;font-weight:600}select.input{appearance:auto}.tag.orange{background:var(--orange-soft);color:var(--orange-text);margin-left:0}.icon-tile{width:32px;height:32px;border-radius:9px;background:var(--surface-2);color:var(--muted);display:grid;place-items:center;flex:none}.controls-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.control{border:1px solid var(--line);border-radius:12px;padding:11px 12px;display:flex;flex-direction:column;gap:6px;background:var(--surface-2)}.approval{padding:12px 0;border-top:1px solid var(--line)}.approval:first-of-type{border-top:0;padding-top:2px}.week{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:12px}.week i{height:34px;border-radius:7px;background:var(--track)}.week i.on{background:var(--brand)}.week-labels{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:5px;text-align:center;font-size:10.5px}.overlay{position:fixed;inset:0;z-index:60;background:#0a081e73;display:grid;place-items:center;padding:16px}.modal{width:100%;max-width:460px;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);display:flex;flex-direction:column;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg, 20px);box-shadow:0 24px 64px #0000003d}.modal-head{flex:none;position:relative;display:flex;align-items:center;gap:12px;padding:16px 16px 14px 24px;background:var(--bg);border-bottom:1px solid var(--line)}.modal-titles{flex:1;min-width:0}.modal-title{margin:0;font:600 18px/1.3 var(--font-head);color:var(--text);overflow-wrap:anywhere}.modal-sub{margin-top:2px;font-size:13px;color:var(--muted)}.modal-close{flex:none;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--muted);display:grid;place-items:center;cursor:pointer}.modal-close:hover{color:var(--text);border-color:var(--line-2)}.modal-close:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.modal-grab{display:none}.modal-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:20px 24px}.modal-foot{flex:none;display:flex;justify-content:flex-end;gap:8px;padding:14px 24px;border-top:1px solid var(--line);background:var(--surface)}@media(max-width:640px){.overlay:has(>.modal:not(.full)){place-items:end stretch;padding:0}.modal:not(.full){max-width:none;max-height:92vh;max-height:92dvh;border-radius:24px 24px 0 0;border-bottom:0;animation:modal-up .22s ease-out}.modal:not(.full) .modal-head{padding-top:22px}.modal:not(.full) .modal-grab{display:block;position:absolute;top:8px;left:50%;width:40px;height:5px;margin-left:-20px;border-radius:999px;background:var(--line-2)}.modal:not(.full) .modal-body{padding:18px 16px}.modal:not(.full) .modal-head{padding-left:16px}.modal:not(.full) .modal-foot{padding:12px 16px calc(12px + env(safe-area-inset-bottom))}.modal:not(.full) .modal-foot .btn{flex:1;justify-content:center}}@keyframes modal-up{0%{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){.modal{animation:none!important}}.toast{position:fixed;left:50%;bottom:24px;z-index:70;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:var(--text);color:var(--bg);font-size:13px;font-weight:600;padding:11px 16px;border-radius:12px;transition:opacity .2s,transform .2s;max-width:calc(100% - 32px)}.toast.show{opacity:1;transform:translate(-50%)}.filter.on-soft{background:var(--surface-2);color:var(--text)}.filter{display:inline-flex;align-items:center;gap:7px}.dot{width:9px;height:9px;border-radius:50%;flex:none}.filter[aria-pressed=false] .dot{opacity:.35}.filter[aria-pressed=false]{text-decoration:line-through}.cal{overflow:hidden}.cal-head,.cal-body{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.cal-head div{padding:10px;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--line)}.day{min-height:104px;padding:6px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:3px;cursor:pointer;min-width:0}.day:nth-child(7n){border-right:0}.day:nth-last-child(-n+7){border-bottom:0}.day.out{background:var(--surface-2)}.day.out .dn{color:var(--faint)}.day.sel{box-shadow:inset 0 0 0 2px var(--brand)}.dn{width:26px;height:26px;border-radius:50%;border:0;background:transparent;font-size:12px;font-weight:600;color:var(--text);display:grid;place-items:center}.dn.today{background:var(--brand);color:var(--brand-ink)}.evp{border:0;text-align:left;font-size:11px;font-weight:600;padding:3px 6px;border-radius:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}.ev-purple{background:color-mix(in srgb,var(--group-purple) 16%,var(--surface));border-left:3px solid var(--group-purple)}.ev-green{background:color-mix(in srgb,var(--group-green) 16%,var(--surface));border-left:3px solid var(--group-green)}.ev-orange{background:color-mix(in srgb,var(--group-orange) 16%,var(--surface));border-left:3px solid var(--group-orange)}.ev-blue{background:color-mix(in srgb,var(--group-blue) 16%,var(--surface));border-left:3px solid var(--group-blue)}.ev-pink{background:color-mix(in srgb,var(--group-pink) 16%,var(--surface));border-left:3px solid var(--group-pink)}.ev-gold{background:color-mix(in srgb,var(--group-gold) 16%,var(--surface));border-left:3px solid var(--group-gold)}.more{font-size:10.5px;color:var(--muted);padding-left:4px}.item-btn{cursor:pointer}.item-btn:hover .t{color:var(--brand-text)}.tasks-search{max-width:520px;width:100%;flex:none;height:42px;display:flex;align-items:center;gap:8px}.tasks-search input{flex:1;border:0;background:transparent;color:var(--text);font-size:13.5px;outline:none;min-width:0}.tasks-cols{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:start}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px}.section-head h2{font-size:19px}.add-btn{width:30px;height:30px;border-radius:50%;border:0;background:var(--brand);color:var(--brand-ink);display:grid;place-items:center;flex:none}.add-btn:hover{filter:brightness(.93)}.task-card,.todo-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 12px 12px 14px}.task-card.done .task-name,.task-card.archived .task-name{color:var(--faint)}.task-card.archived{background:var(--surface-2)}.task-name{border:0;background:transparent;padding:0;text-align:left;font-weight:600;font-size:14px;color:var(--text);cursor:pointer;line-height:1.35;word-break:break-word}.task-name:hover{color:var(--brand-text)}.tick{border-radius:50%;border:1.5px solid var(--brand);background:var(--surface);padding:0;position:relative;display:grid;place-items:center;flex:none;color:var(--text)}.tick:hover{background:var(--brand-soft)}.tick.ticked{border-color:transparent;background:var(--av2-bg);color:var(--av2-fg)}.tick.rejected{border-color:var(--line-2);background:var(--surface-2);color:var(--danger)}.tick-ini{font-size:10px;font-weight:700;letter-spacing:-.02em}.tick-badge{position:absolute;right:-3px;bottom:-3px;width:14px;height:14px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;border:2px solid var(--surface)}.tick:focus-visible,.task-name:focus-visible,.add-btn:focus-visible,.menu-item:focus-visible,.pick-row:focus-visible,.fold-btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.reset-label{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;color:var(--muted);white-space:nowrap;padding-top:2px}.fold{display:flex;flex-direction:column;gap:8px}.fold-btn{align-self:stretch;display:flex;justify-content:center;align-items:center;gap:6px;height:34px;border-radius:10px;border:1px solid var(--line);background:var(--surface);font-size:12.5px;font-weight:600;color:var(--text-2)}.fold-btn:hover{background:var(--surface-2)}.empty-note{font-size:13px;color:var(--muted);padding:14px;border:1px dashed var(--line-2);border-radius:12px;text-align:center}.todo-card{display:flex;align-items:center;gap:10px;cursor:pointer;color:var(--muted)}.todo-card:hover,.folder-card:hover{border-color:var(--line-2)}.count-pill{font-size:11px;font-weight:700;padding:2px 7px;border-radius:7px;background:var(--green-soft);color:var(--green-text)}.shared-by{font-size:11px;font-weight:600;padding:2px 8px;border-radius:7px;background:var(--brand-soft);color:var(--brand-text)}.avatars{display:inline-flex;flex:none}.avatars .av{border:2px solid var(--surface);margin-left:-6px}.avatars .av:first-child{margin-left:0}.more-av{background:var(--brand);color:var(--brand-ink);font-size:9px}.folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}.folder-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 12px 12px 14px;display:flex;flex-direction:column;gap:8px;cursor:pointer;min-height:120px}.folder-icon{width:34px;height:34px;border-radius:10px;background:var(--brand-soft);color:var(--brand-text);display:grid;place-items:center;flex:none}.back-link{align-self:flex-start;padding:0;font-size:13px}.sticky-head{position:sticky;top:var(--sticky-top, 64px);z-index:6;background:var(--surface);margin:-18px -20px 12px;padding:16px 20px 12px;border-bottom:1px solid var(--line);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.see-more{align-self:center;margin-top:4px}.menu{position:relative;flex:none}.menu-btn{width:30px;height:30px;color:var(--text-2)}.menu-btn svg{stroke-width:3.4}.menu-pop{position:absolute;right:0;top:34px;z-index:50;min-width:190px;padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 40px #0000002e}.menu-title{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;padding:6px 10px 4px}.menu-item{display:flex;align-items:center;gap:10px;width:100%;border:0;background:transparent;padding:9px 10px;border-radius:8px;font-size:13.5px;color:var(--text);text-align:left}.menu-item:hover{background:var(--surface-2)}.menu-item svg{color:var(--brand-text)}.menu-item.danger,.menu-item.danger svg{color:var(--danger)}.btn.danger{background:var(--danger);color:#fff;border-color:transparent}.form-block{border:1px solid var(--line);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:10px;background:var(--surface-2)}.seg-row{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.seg{height:34px;border-radius:9px;border:1px solid var(--line-2);background:var(--surface);font-size:12.5px;font-weight:600;color:var(--text-2)}.seg.on{background:var(--brand);color:var(--brand-ink);border-color:transparent}.pick-users{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.pick-user{display:flex;align-items:center;gap:10px;padding:6px 4px;font-size:13.5px;cursor:pointer}.pick-user input{width:16px;height:16px;accent-color:var(--brand)}.pick-list{display:flex;flex-direction:column;gap:6px}.pick-row{display:flex;align-items:center;gap:10px;width:100%;padding:12px;border-radius:10px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);font-size:13.5px;font-weight:600;text-align:left}.pick-row:hover{border-color:var(--brand)}.pick-row>:last-child{margin-left:auto}.add-task{display:flex;gap:8px}.add-task .input{flex:1;min-width:0}.feed{display:flex;flex-direction:column;gap:14px}.feed-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.feed-col{display:flex;flex-direction:column;gap:14px;max-width:640px;width:100%}.col-main .feed-col{max-width:none}.feed-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg, 16px);padding:14px 16px 6px}.feed-card .rating{margin-left:0}.feed-card.compact{border:0;padding:0;background:transparent}.feed-card.compact+.feed-card.compact{border-top:1px solid var(--line);padding-top:12px}.caption{margin:10px 0 0;font-size:14px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.media{position:relative;margin-top:12px;border-radius:12px;overflow:hidden;background:var(--surface-3);aspect-ratio:1 / 1;width:100%}.feed-card.compact .media{aspect-ratio:4 / 3;max-height:520px}.media.tall{aspect-ratio:auto;height:100%;max-height:none;margin-top:0;border-radius:12px;background:#0b0a12}.media-img{display:block;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in;position:relative}.media.tall .media-img{cursor:default}.media img,.media video{width:100%;height:100%;object-fit:cover;display:block}.media .media-bg{position:absolute;inset:0;filter:blur(28px) saturate(1.1) brightness(.85);transform:scale(1.2)}.media .media-fg{position:relative;object-fit:contain}.media.tall img,.media.tall video{object-fit:contain}.play-badge{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:48px;height:48px;border-radius:50%;background:#00000080;color:#fff;display:grid;place-items:center;font-size:18px}.media-nav{position:absolute;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:50%;border:0;background:#ffffffe6;color:#222;display:grid;place-items:center;box-shadow:0 2px 8px #0003}.media-nav.prev{left:10px}.media-nav.next{right:10px}.media-nav:disabled{opacity:0;pointer-events:none}.media-count{position:absolute;top:10px;right:10px;font-size:11px;font-weight:700;color:#fff;background:#00000073;border-radius:10px;padding:3px 8px}.dots{position:absolute;bottom:10px;left:0;right:0;display:flex;justify-content:center;gap:5px}.dots i{width:6px;height:6px;border-radius:50%;background:#ffffff8c}.dots i.on{background:#fff}.feed-actions{display:flex;align-items:center;gap:16px;padding:8px 0;margin-top:4px}.feed-actions .act{font-size:13px;font-weight:600;color:var(--text-2);padding:6px 4px;border-radius:8px}.feed-actions .act:hover{background:var(--surface-2)}.feed-actions .act.on{color:var(--brand-text)}.react-wrap{position:relative}.react-emoji{display:inline-grid;place-items:center;font-size:16px;line-height:1;min-width:16px}.react-pop{position:absolute;bottom:calc(100% + 6px);left:-6px;z-index:45;display:grid;grid-template-columns:repeat(6,36px);gap:2px;padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 30px #0003}.react-opt{width:36px;height:36px;border:0;border-radius:10px;background:transparent;font-size:21px;line-height:1;transition:transform .1s}.react-opt:hover,.react-opt:focus-visible{background:var(--surface-2);transform:scale(1.18);outline:none}.react-opt.on{background:var(--brand-soft)}.react-summary{margin-left:auto;display:inline-flex;gap:10px;font-size:12.5px;color:var(--muted)}.empty-feed{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding:36px 16px;color:var(--muted)}.check-label{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;cursor:pointer;padding:3px 0}.check-label input{width:16px;height:16px;accent-color:var(--brand)}.textarea{height:auto;padding:10px 12px;resize:vertical;font:inherit;line-height:1.45}.dropzone{border:1.5px dashed var(--line-2);border-radius:14px;padding:18px;background:var(--surface-2);color:var(--muted)}.dropzone.drag{border-color:var(--brand);background:var(--brand-soft)}.thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px}.thumb{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;background:var(--surface-3)}.thumb img,.thumb video{width:100%;height:100%;object-fit:cover;display:block}.thumb-x{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;border:0;background:#0009;color:#fff;display:grid;place-items:center}.thumb-tag{position:absolute;left:4px;bottom:4px;font-size:9.5px;font-weight:700;color:#fff;background:#0000008c;padding:2px 6px;border-radius:6px}.upload-bar{position:relative;height:34px;border-radius:10px;background:var(--track);overflow:hidden}.upload-bar i{position:absolute;inset:0 auto 0 0;background:var(--brand);transition:width .2s}.upload-bar span{position:relative;display:grid;place-items:center;height:100%;font-size:12.5px;font-weight:700;color:var(--text);mix-blend-mode:normal}.vault-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}.vault-tile{position:relative;aspect-ratio:1;padding:0;border:2px solid transparent;border-radius:12px;overflow:hidden;background:var(--surface-3)}.vault-tile img{width:100%;height:100%;object-fit:cover;display:block}.vault-tile.on{border-color:var(--brand)}.vault-check{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center}.modal.lg{max-width:640px}.modal.xl{max-width:1040px}.viewer{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr);gap:20px;min-height:420px}.viewer.no-media{grid-template-columns:1fr}.viewer-media{min-height:420px;max-height:calc(100vh - 200px)}.viewer-side{display:flex;flex-direction:column;gap:8px;min-width:0}.viewer-comments{flex:1;overflow-y:auto;min-height:80px;max-height:340px}.signin{min-height:100vh;display:flex;flex-wrap:wrap}.signin-brand{flex:1 1 480px;min-width:0;padding:56px 64px;background:var(--brand);color:var(--on-colour);display:flex;flex-direction:column;justify-content:space-between;gap:40px}.signin-form-wrap{flex:1 1 480px;min-width:0;padding:56px 24px;display:grid;place-items:center}.signin-card{width:100%;max-width:420px;padding:36px;display:flex;flex-direction:column;gap:16px}@media(max-width:720px){.side{position:static;height:auto;flex-basis:100%;flex-direction:row;flex-wrap:nowrap;align-items:center;overflow-x:auto;padding:8px 10px;gap:4px;border-right:0;border-bottom:1px solid var(--line);scrollbar-width:none}.side::-webkit-scrollbar{display:none}.side>nav{display:contents}.side .logo{padding:2px 8px 2px 4px;flex:none}.side .logo-word,.side .logo-badge{display:none}.side .nav{width:auto;flex:none;white-space:nowrap;padding:0 10px}.side .sep,.side .side-label,.side .group-link,.side .side-hint,.side .side-more{display:none}.top{padding:0 12px}.top .search,.top .top-crumb-text{display:none}:root{--page-pad: 16px}.page{padding-block:18px}.signin-brand{padding:32px 24px}.controls-grid,.tasks-cols,.viewer{grid-template-columns:1fr}.viewer-media{min-height:0;max-height:60vh}.feed-bar .chips{width:100%}.seg-row{grid-template-columns:repeat(2,1fr)}.day{min-height:54px;padding:3px}.evp{font-size:0;padding:0;height:6px;border-left-width:0}.cal-head div{padding:8px 4px;text-align:center}}.play-badge.sm{width:32px;height:32px;font-size:12px}.vault-page .sub{margin-bottom:4px}.section-head{justify-content:space-between;align-items:center;gap:10px;margin:22px 0 10px}.h2{font-family:var(--font-head);font-size:17px;font-weight:600;margin:0}.icon-btn.on{background:var(--brand-soft);color:var(--brand-text)}.icon-btn.danger{color:var(--danger)}.view-toggle{display:inline-flex;gap:2px;padding:2px;border-radius:10px;background:var(--surface-2)}.round-add{width:34px;height:34px;border-radius:50%;border:0;background:var(--brand);color:var(--brand-ink);display:grid;place-items:center;flex:none}.round-add:hover{filter:brightness(1.08)}.folder-strip{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 18px;scroll-snap-type:x proximity}.folder-tile{flex:none;width:128px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);text-align:left;color:var(--text);scroll-snap-align:start}.folder-tile .t{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.folder-tile .m{font-size:11.5px}.folder-tile:hover{border-color:var(--line-2)}.folder-tile.on{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand) inset}.folder-tile.skeleton{height:92px;background:var(--placeholder);border-color:transparent}.folder-ico{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand-text);margin-bottom:8px}.folder-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}.folder-row{display:flex;align-items:center;gap:4px;padding:4px 8px 4px 6px;border-top:1px solid var(--line)}.folder-row:first-child{border-top:0}.folder-row.on{background:var(--brand-soft)}.folder-lead{width:32px;height:32px;display:grid;place-items:center;color:var(--faint);flex:none;border:0;background:transparent;border-radius:8px}.folder-lead.drag{cursor:grab;color:var(--muted)}.folder-lead.drag:focus-visible{outline:2px solid var(--brand)}.folder-open{flex:1;min-width:0;display:flex;align-items:baseline;gap:10px;border:0;background:transparent;padding:10px 4px;text-align:left;color:var(--text)}.folder-open .t{font-size:13.5px}.sticky-tools{position:sticky;top:var(--sticky-top, 64px);z-index:5;background:var(--bg);padding:10px 0;margin:12px 0 4px}.page-head{position:sticky;z-index:9;background:var(--bg);margin-top:-12px;padding:12px 0 14px}.page-head.row{justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}.sticky-bar{position:sticky;top:var(--sticky-top, 64px);z-index:8;background:var(--bg);margin-top:-10px;padding-top:10px;padding-bottom:10px}.vault-bar{padding-top:0;top:calc(var(--sticky-top, 64px) + var(--folders-h, 0px))}@media(min-width:721px){.vault-folders{position:sticky;top:var(--sticky-top, 64px);z-index:9;background:var(--bg);padding-bottom:2px}.vault-folders .section-head{margin-top:0;padding-top:14px}.vault-folders .folder-list{max-height:232px;overflow-y:auto}}.vault-bar .section-head{margin-top:12px}.vault-tabs{display:flex;gap:6px;flex-wrap:wrap}.vault-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin-top:14px}.vault-cell{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;background:var(--placeholder)}.vault-cell.skeleton{animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{50%{opacity:.55}}.vault-open{position:absolute;inset:0;border:0;padding:0;background:transparent;display:block;width:100%;height:100%;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.vault-open img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s ease}.vault-open:hover img{transform:scale(1.03)}.vault-open:focus-visible{outline:3px solid var(--brand);outline-offset:-3px}.vault-cell.picked .vault-open{outline:3px solid var(--brand);outline-offset:-3px}.vault-cell.picked img{transform:scale(.92);border-radius:6px}.doc-thumb{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:var(--surface-2);color:var(--muted)}.doc-thumb b{font-size:11px;letter-spacing:.04em}.doc-name{position:absolute;left:8px;right:8px;bottom:8px;font-size:11.5px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}.info-btn{position:absolute;top:6px;right:6px;width:28px;height:28px;border-radius:50%;border:0;background:#0000006b;color:#fff;display:grid;place-items:center;opacity:.85}.info-btn:hover,.info-btn:focus-visible{opacity:1;background:#0009}.pick-mark{position:absolute;top:7px;right:7px;width:24px;height:24px;border-radius:50%;border:2px solid #fff;background:#00000040;color:#fff;display:grid;place-items:center;pointer-events:none}.pick-mark.on{background:var(--brand);border-color:var(--brand)}.vault-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px 16px;color:var(--muted);border:1px dashed var(--line-2);border-radius:var(--radius);margin-top:14px}.seg-row.two{grid-template-columns:repeat(2,1fr)}.tag-input{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-height:42px;padding:6px 8px;border:1px solid var(--line-2);border-radius:10px;background:var(--surface)}.tag-input input{flex:1;min-width:90px;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:13.5px;font-weight:400}.tag-input:focus-within{border-color:var(--brand)}.tag-chip{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 4px 0 10px;border-radius:13px;background:var(--brand-soft);color:var(--brand-text);font-size:12.5px;font-weight:600}.tag-chip button{border:0;background:transparent;color:inherit;width:20px;height:20px;display:grid;place-items:center;border-radius:50%}.folder-chips .filter{height:32px}.char-count{align-self:flex-end;font-weight:400;font-size:11.5px}.detail-thumb{width:64px;height:64px;border-radius:10px;overflow:hidden;flex:none;background:var(--placeholder)}.detail-thumb img{width:100%;height:100%;object-fit:cover}.upload-strip{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 18px}.upload-item{flex:none;width:72px;height:72px;border-radius:10px;overflow:hidden;border:2px solid transparent;padding:0;background:var(--surface-2)}.upload-item img{width:100%;height:100%;object-fit:cover}.upload-item.on{border-color:var(--brand)}.progress{height:6px;border-radius:3px;background:var(--track);overflow:hidden}.progress>span{display:block;height:100%;background:var(--brand);transition:width .2s ease}.vviewer{display:flex;flex-direction:column;gap:10px}.vviewer-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.vviewer-stage{position:relative;background:#0d0b16;border-radius:12px;height:min(68vh,640px);display:grid;place-items:center;overflow:hidden}.vviewer-stage img,.vviewer-stage video{max-width:100%;max-height:100%;object-fit:contain;display:block}.vviewer-doc{display:flex;flex-direction:column;align-items:center;gap:12px;color:#fff;text-align:center;padding:20px}.vviewer-doc .doc-thumb{width:96px;height:120px;border-radius:10px}.vviewer-nav{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;border:0;background:#ffffffe6;color:#111;display:grid;place-items:center;box-shadow:var(--shadow)}.vviewer-nav.prev{left:12px}.vviewer-nav.next{right:12px}.vviewer-caption{font-size:13.5px}.vviewer-strip{display:flex;gap:6px;overflow-x:auto;padding:2px 2px 18px}.vviewer-strip button{flex:none;width:56px;height:56px;border-radius:8px;overflow:hidden;border:2px solid transparent;padding:0;background:var(--surface-2);opacity:.7}.vviewer-strip button.on{border-color:var(--brand);opacity:1}.vviewer-strip img{width:100%;height:100%;object-fit:cover}.vviewer-strip .doc-thumb b{display:none}@media(max-width:720px){.vault-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.vault-cell{border-radius:6px}.info-btn{width:24px;height:24px;top:4px;right:4px}.folder-tile{width:112px}.vviewer-stage{height:56vh}}.vault-open,.vviewer-stage{isolation:isolate}.vault-open .fill-bg,.vviewer-stage .fill-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:blur(22px) saturate(1.1) brightness(.8);transform:scale(1.25);z-index:-1}.vault-open .fill-fg{position:relative;width:100%;height:100%;object-fit:contain}.vault-open:hover .fill-fg{transform:none}.vault-cell.picked .fill-fg{transform:scale(.92)}.vviewer-stage .fill-fg{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}.vault-cell.picked .fill-bg{transform:scale(1.25);border-radius:0}.modal.full{max-width:none;width:95vw;height:95vh;display:flex;flex-direction:column}.modal.full{max-height:none}.modal.full .modal-body{flex:1;min-height:0;max-height:none;display:flex}.modal.full .vviewer{flex:1;min-height:0;width:100%}.modal.full .vviewer-stage{flex:1;height:auto;min-height:0}.vviewer-stage .vviewer-video{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;background:#000}.weather-chip{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px 0 10px;border-radius:18px;border:1px solid var(--line);background:var(--surface);color:var(--text);font-size:13px;font-weight:500;white-space:nowrap}.weather-chip b{font-weight:700}.weather-chip .weather-text{color:var(--muted);max-width:140px;overflow:hidden;text-overflow:ellipsis}.weather-chip:hover{border-color:var(--line-2)}.weather-chip[aria-expanded=true]{border-color:var(--brand)}.weather-chip.empty{color:var(--muted)}.weather-pop{right:270px;width:340px}.weather-now{display:flex;align-items:center;gap:12px;padding:4px 12px 12px;color:var(--text)}.weather-temp{font-family:var(--font-head);font-size:34px;font-weight:600;line-height:1}.weather-days{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:0 6px 6px}.weather-day{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 4px;border-radius:10px;background:var(--surface-2);color:var(--text);font-size:12.5px}.weather-rain{color:var(--brand-text);font-size:11px}.weather-foot{justify-content:space-between;padding:8px 10px 4px;border-top:1px solid var(--line);margin-top:4px;font-size:11px}.weather-note{font-size:11.5px}@media(max-width:720px){.weather-chip .weather-text{display:none}.weather-chip{padding:0 10px}.weather-pop{right:8px;left:8px;width:auto}}.online-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;margin-left:8px;border-radius:10px;background:var(--green-soft);color:var(--green-text);font-size:11.5px;font-weight:700;vertical-align:2px}.online-av{position:relative;display:inline-flex;flex:none}.online-dot{position:absolute;right:-1px;bottom:-1px;width:10px;height:10px;border-radius:50%;background:var(--green);border:2px solid var(--surface)}.online-list .item{color:var(--text)}.fav-star{color:var(--faint)}.fav-star:hover{color:var(--orange-text)}.fav-star.on{color:#f5b301}.fav-star.on svg path{fill:currentColor}.side-star{margin-left:auto;color:#f5b301;display:inline-flex}.side-star svg path{fill:currentColor}.side-more{font-size:12.5px;color:var(--muted);padding-left:44px}.tab-star{display:inline-flex;margin-right:4px;color:#f5b301;vertical-align:-2px}.tab-star svg path{fill:currentColor}.group-card{position:relative}.group-card .card-link{position:absolute;inset:0;border-radius:inherit;z-index:1}.group-card .card-link:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.group-card .fav-corner{position:absolute;top:10px;right:10px;z-index:2}.group-card>.row{padding-right:36px}.side .nav .side-star,.side .nav .side-star svg{color:#f5b301;opacity:1}.icon-btn.fav-star.on{background:transparent}.icon-btn.fav-star.on:hover{background:var(--surface-2)}.side-hint{font-size:12px;color:var(--faint);padding:2px 12px 6px 14px}.side .group-link span:not(.av):not(.side-star){overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.side .group-link{padding-top:5px;padding-bottom:5px}.theme-pop{right:200px;width:280px}.pop-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px 6px 6px}.pop-modes .seg{display:inline-flex;align-items:center;justify-content:center;gap:5px;height:32px;font-size:12px}@media(max-width:720px){.theme-pop{right:8px;left:8px;width:auto}}.pick-pictures{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:10px}.pic-btn{height:44px;border-radius:10px;border:1px solid var(--line-2);background:var(--surface);font-size:22px;line-height:1}.pic-btn:hover{border-color:var(--brand);background:var(--brand-soft)}.notes-cols{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:18px;margin-top:18px;align-items:start}.notes-list{display:flex;flex-direction:column;gap:8px;max-height:calc(100vh - 190px);overflow-y:auto;padding-right:4px}.notes-search{width:100%;height:40px;margin-bottom:4px;flex:none}.notes-day{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--faint);padding:8px 4px 2px}.note-card{display:flex;flex-direction:column;gap:4px;width:100%;padding:12px 14px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);color:var(--text);text-align:left;max-height:160px;overflow:hidden;position:relative;flex:none}.note-card:hover{border-color:var(--line-2)}.note-card.on{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand) inset}.note-card.skeleton{height:76px;background:var(--placeholder);border-color:transparent}.note-card-head{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.note-card-head .t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.note-card-head .m{flex:none;font-size:11.5px}.note-card-body{color:var(--text-2);font-size:12.5px;max-height:96px;overflow:hidden;-webkit-mask-image:linear-gradient(#000 70%,transparent);mask-image:linear-gradient(#000 70%,transparent)}.notes-empty,.notes-placeholder{display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px 16px;color:var(--muted);text-align:center}.notes-editor{display:flex;flex-direction:column;min-height:calc(100vh - 190px);padding:10px 14px 12px}.notes-toolbar{display:flex;align-items:center;gap:2px;padding-bottom:8px;border-bottom:1px solid var(--line)}.notes-toolbar .icon-btn b,.notes-toolbar .icon-btn i{font-size:15px}.notes-back{display:none}.notes-status{font-size:12px;margin-right:6px}.notes-status.saved{color:var(--green-text)}.notes-status.error{color:var(--orange-text)}.notes-text{flex:1;width:100%;min-height:360px;border:0;outline:0;resize:none;background:transparent;color:var(--text);font:inherit;font-size:15px;line-height:1.6;padding:14px 4px}.notes-text::placeholder{color:var(--faint)}.notes-foot{display:flex;justify-content:space-between;font-size:11.5px;padding-top:6px;border-top:1px solid var(--line)}.note-md p{margin:0 0 2px}.note-md .md-h{font-weight:700;margin:2px 0}.note-md .md-gap{height:6px}.note-md .md-li,.note-md .md-check{display:flex;gap:6px;align-items:flex-start}.note-md .md-dot{flex:none;min-width:10px;color:var(--muted)}.note-md .md-box{flex:none;width:13px;height:13px;margin-top:3px;border-radius:4px;border:1.5px solid var(--line-2);display:grid;place-items:center}.note-md .md-check.done .md-box{background:var(--brand);border-color:var(--brand);color:#fff}.note-md .md-check.done>span:last-child{text-decoration:line-through;color:var(--muted)}@media(max-width:720px){.notes-cols{grid-template-columns:1fr}.notes-list{max-height:none}.notes-page:not(.editing) .notes-editor{display:none}.notes-page.editing .notes-list{display:none}.notes-back{display:inline-grid}.notes-editor{min-height:70vh}}.av.xs{width:20px;height:20px;font-size:8px}.av.xs.square{border-radius:6px}.cal-top{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}.seg-tabs{display:inline-flex;padding:3px;border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--line)}.seg-tabs button{height:32px;padding:0 16px;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--muted);font-weight:600;font-size:13px}.seg-tabs button.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.cal-search{width:100%;max-width:520px;height:42px;margin-top:14px}.cal-chips{margin:14px 0 0;flex-wrap:nowrap;overflow-x:auto;padding:2px 2px 16px}.cal-chips .filter{flex:none;display:inline-flex;align-items:center;gap:6px}.cal-chips .dot{width:8px;height:8px;border-radius:50%;display:inline-block}.cal-agenda{max-width:760px}.cal-bar{padding-bottom:4px}.cal-cols{margin-top:4px}.cal-cols>.col-main{flex:1.8 1 460px}.cal-cols>.col-side{flex:1 1 280px;max-width:380px}.mini-cal{display:flex;flex-direction:column;gap:10px}.mini-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.mini-head h3{font-size:15px}.mini-head .icon-btn.sm{width:30px;height:30px}.mini-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.mini-dow{text-align:center;font-size:11px;font-weight:600;color:var(--faint);padding:2px 0 4px}.mini-day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;aspect-ratio:1;border:0;border-radius:10px;background:transparent;color:var(--text);font-size:12.5px;font-weight:600}.mini-day:hover{background:var(--surface-2)}.mini-day.out{color:var(--faint);font-weight:500}.mini-day.today{color:var(--brand-text);box-shadow:inset 0 0 0 1.5px var(--brand)}.mini-day.sel{background:var(--brand);color:#fff}.mini-day .cal-dots{height:5px;margin-top:0}.mini-day .cal-dots i{width:4px;height:4px}.mini-day.sel .cal-dots i{box-shadow:0 0 0 1.5px var(--surface)}.cal-recent{display:flex;align-items:center;gap:12px;width:100%;margin-top:10px;padding:12px 14px;border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--surface);color:var(--text);text-align:left;box-shadow:var(--shadow)}.cal-recent .stack{flex:1}.cal-recent .m{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-recent:disabled{cursor:default;box-shadow:none}.cal-section{display:flex;flex-direction:column;gap:10px;margin-top:22px}.cal-empty{padding:14px 16px;border-radius:var(--radius);background:var(--surface-2);color:var(--muted);font-size:13.5px}.cal-nav{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:12px 0}.ev-days{display:flex;flex-direction:column;gap:10px}.ev-day-label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);margin-top:6px}.ev-card{display:flex;gap:12px;align-items:flex-start;width:100%;padding:12px 14px 12px 16px;border-radius:var(--radius-lg);border:1px solid var(--line);border-left:4px solid var(--c, var(--brand));background:var(--surface);color:var(--text);text-align:left;box-shadow:var(--shadow)}.ev-card:hover{border-color:var(--line-2);border-left-color:var(--c, var(--brand))}.ev-tile{flex:none;width:52px;padding:6px 0;border-radius:12px;background:color-mix(in srgb,var(--c, var(--brand)) 12%,var(--surface));color:var(--c, var(--brand));display:flex;flex-direction:column;align-items:center;font-size:10px;font-weight:700;line-height:1.2}.ev-tile b{font-size:20px;font-family:var(--font-head)}.ev-body{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.ev-title{font-weight:700;font-size:14.5px;display:flex;align-items:center;gap:8px}.ev-meta{display:flex;gap:10px;flex-wrap:wrap;font-size:12.5px;color:var(--text-2)}.ev-repeat,.ev-where{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:12.5px}.ev-people{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:4px}.ev-chip{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 9px 0 4px;border-radius:12px;background:var(--brand-soft);color:var(--brand-text);font-size:12px;font-weight:600}.ev-chip:not(.group){padding-left:9px}.ev-chip.group{background:color-mix(in srgb,var(--c) 14%,var(--surface));color:var(--text)}.ev-faces{display:inline-flex;align-items:center}.ev-faces .av{border:2px solid var(--surface);margin-left:-6px;box-sizing:content-box}.ev-faces .av:first-child{margin-left:0}.ev-more{font-size:11px;color:var(--muted);margin-left:4px}.ev-task-box{width:14px;height:14px;border-radius:50%;border:2px solid var(--c, var(--brand));flex:none}.ev-person{gap:6px;font-size:13px}.ev-desc{white-space:pre-wrap;padding:10px 12px;border-radius:10px;background:var(--surface-2)}.ev-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.wk-day{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 0 8px;border-radius:14px;border:1px solid var(--line);background:var(--surface);color:var(--text)}.wk-day span{font-size:12px;color:var(--muted)}.wk-day b{font-size:18px;font-family:var(--font-head)}.wk-day.today b{color:var(--brand-text)}.wk-day.on{background:var(--text);color:var(--bg);border-color:transparent}.wk-day.on span,.wk-day.on b{color:var(--bg)}.cal-dots{display:inline-flex;gap:3px;height:6px;margin-top:2px}.cal-dots i{width:5px;height:5px;border-radius:50%}.evp{background:color-mix(in srgb,var(--c, var(--brand)) 16%,var(--surface));border-left:3px solid var(--c, var(--brand))}@media(max-width:720px){.week-strip{gap:4px}.wk-day{padding:8px 0 6px;border-radius:10px}.ev-form-grid{grid-template-columns:1fr 1fr}.seg-tabs button{padding:0 12px}}.cal-chips .filter[aria-pressed=false]{text-decoration:none}.cal-chips .filter[aria-pressed=false] .dot{opacity:1}.settings{display:grid;grid-template-columns:220px minmax(0,1fr);gap:20px;margin-top:18px;align-items:start}.settings-nav{display:flex;flex-direction:column;gap:2px;position:sticky;top:calc(var(--sticky-top, 64px) + 20px)}.settings-tab{display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:var(--text-2);font-weight:600;font-size:13.5px;text-align:left}.settings-tab:hover{background:var(--surface-2)}.settings-tab.on{background:var(--brand-soft);color:var(--brand-text)}.settings-body{display:flex;flex-direction:column;gap:16px;min-width:0;max-width:760px}.settings-card{padding:22px}.settings-h{font-size:17px;margin:0 0 4px}.settings-sub{margin:0 0 18px;font-size:13px;line-height:1.5}.settings-foot{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.settings-foot .error{margin-right:auto}.settings-photo{display:flex;align-items:center;gap:18px;margin-bottom:20px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}.settings-grid.one{grid-template-columns:minmax(0,420px)}.settings-list{display:flex;flex-direction:column}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid var(--line)}.settings-row:first-child{border-top:0}.settings-row .m{font-size:12.5px}.hint{font-weight:500;font-size:11.5px;color:var(--muted);display:inline-flex;align-items:center;gap:4px}.hint.ok{color:var(--green-text)}.hint.warn{color:var(--orange-text)}.input[readonly]{color:var(--muted)}.input-prefix{position:relative;display:block}.input-prefix>span{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);font-weight:600}.input-prefix .input{padding-left:28px}.check-row{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-2)}.btn.danger-outline{color:var(--danger);border-color:var(--danger);background:transparent}.btn.danger-outline:hover{background:var(--surface-2)}.theme-picks{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.theme-pick{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:14px;border-radius:14px;border:1.5px solid var(--line-2);background:var(--surface);text-align:left;color:var(--text)}.theme-pick.on{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.theme-swatch{width:100%;height:64px;border-radius:10px;display:grid;place-items:center;margin-bottom:6px;border:1px solid var(--line)}.theme-swatch.light{background:#f6f5fb;color:var(--preview-brand-light)}.theme-swatch.dark{background:#15131f;color:var(--preview-brand-dark)}.theme-swatch.auto{background:linear-gradient(135deg,#f6f5fb 50%,#15131f 50%);color:var(--preview-brand-dark)}.conn-tabs{display:flex;gap:6px;margin-top:18px;overflow-x:auto;padding:2px 2px 16px;margin-bottom:-14px}.conn-tab{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--line-2);background:var(--surface);color:var(--text-2);font-weight:600;font-size:13px;white-space:nowrap}.conn-tab.on{background:var(--text);color:var(--bg);border-color:transparent}.conn-card{margin-top:16px;padding:8px 0}.conn-tools{display:flex;gap:10px;padding:10px 16px 6px;flex-wrap:wrap}.conn-search{flex:1 1 260px;display:flex;align-items:center;gap:8px;height:40px;padding:0 12px 0 14px;border-radius:var(--radius-pill);border:1px solid var(--line-2);background:var(--surface);color:var(--muted)}.conn-search input{flex:1;border:0;background:transparent;color:var(--text);outline:none;min-width:0;font:inherit;font-size:13.5px}.conn-type-filter{width:auto;height:40px;flex:0 0 auto;border-radius:var(--radius-pill);padding:0 14px;background:var(--surface)}.conn-section{padding:0 8px}.conn-letter{display:flex;align-items:center;gap:6px;padding:14px 10px 6px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.conn-letter.fav{color:var(--brand-text)}.conn-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border-radius:12px}.conn-row:hover{background:var(--surface-2)}.conn-who{display:flex;align-items:center;gap:12px;min-width:0;flex:1;border:0;background:transparent;padding:0;text-align:left;color:inherit}.conn-who .t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conn-who .m{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conn-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.conn-calls{display:inline-flex;gap:2px}.conn-calls .icon-btn:disabled{opacity:.4;cursor:not-allowed}.conn-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:40px 16px;text-align:center;color:var(--muted)}.conn-note{padding:4px 18px 14px}.conn-detail{display:flex;flex-direction:column;align-items:center;gap:14px}.type-chip{position:relative;display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;border-radius:999px;background:var(--brand-soft);color:var(--brand-text);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.type-chip.empty{background:transparent;border:1px dashed var(--line-2);color:var(--muted)}.type-chip select{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}.type-chip:focus-within{box-shadow:0 0 0 2px var(--brand)}@media(max-width:860px){.settings{grid-template-columns:1fr}.settings-nav{position:static;flex-direction:row;overflow-x:auto;padding-bottom:14px}.settings-tab{white-space:nowrap}.settings-grid,.theme-picks{grid-template-columns:1fr}.conn-calls{display:none}}@media(max-width:560px){.conn-row{flex-wrap:wrap}.conn-actions{width:100%;justify-content:flex-end}.settings-photo{flex-direction:column;align-items:flex-start}}.back-link{display:inline-flex;align-items:center;gap:4px;font-size:13px;margin-bottom:12px;text-decoration:none}.profile-head{display:flex;align-items:center;gap:22px;padding:24px;flex-wrap:wrap}.profile-head .av.xl{width:96px;height:96px;font-size:30px}.profile-id{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1}.profile-counts{display:flex;gap:24px;margin-top:4px}.profile-counts>*{display:flex;align-items:baseline;gap:6px;color:var(--text-2);text-decoration:none;font-size:13px}.profile-counts b{font-family:Poppins,Inter,sans-serif;font-size:18px;color:var(--text)}.profile-counts a:hover span{color:var(--brand-text)}.profile-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.profile-posts{max-width:680px}.settings-admins{display:flex;flex-direction:column;gap:2px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}@media(max-width:560px){.profile-head{flex-direction:column;align-items:flex-start}}.chat-page{padding-bottom:16px}.chat{display:grid;grid-template-columns:340px minmax(0,1fr);gap:16px;height:calc(100vh - 120px);min-height:480px}.chat-list{display:flex;flex-direction:column;gap:10px;padding:14px 0 0;min-height:0;overflow:hidden}.chat-list-head{display:flex;align-items:center;justify-content:space-between;padding:0 14px}.chat-filters{display:flex;gap:6px;padding:2px 12px 16px;margin-bottom:-14px;overflow-x:auto}.chat-filters .conn-tab{height:30px;padding:0 11px;font-size:12px}.chat-items{flex:1;overflow-y:auto;padding:0 6px 8px}.chat-item{display:flex;align-items:center;gap:11px;padding:10px;border-radius:12px;color:inherit;text-decoration:none}.chat-item:hover{background:var(--surface-2)}.chat-item.on{background:var(--brand-soft)}.chat-item.unread .t{font-weight:700}.chat-item.unread .m.ellipsis{color:var(--text-2)}.chat-time{font-size:11px;flex:none}.chat-av{position:relative;flex:none;display:inline-flex}.chat-av .online-dot{position:absolute;right:-1px;bottom:-1px}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.chat-note{padding:14px 12px;font-size:13px}.chat-main{display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:0}.chat-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:32px 20px;text-align:center;color:var(--muted)}.chat-empty .t{color:var(--text)}.chat-empty .m{max-width:340px}.thread{display:flex;flex-direction:column;flex:1;min-height:0}.thread-head{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line)}.thread-back{display:none}.thread-who{display:flex;align-items:center;gap:11px;flex:1;min-width:0;color:inherit;text-decoration:none}.thread-who .m{font-size:12px}.thread-who .m.typing{color:var(--brand-text)}.thread-body{flex:1;overflow-y:auto;padding:14px 18px 8px;display:flex;flex-direction:column;gap:2px}.thread-older{align-self:center;margin-bottom:8px}.day-sep{display:flex;justify-content:center;margin:12px 0 8px}.day-sep span{font-size:11px;font-weight:600;color:var(--muted);background:var(--surface-2);padding:3px 10px;border-radius:999px}.msg-action{text-align:center;font-size:12px;margin:6px 0}.msg{display:flex;align-items:flex-end;gap:8px;margin-top:2px;max-width:100%}.msg.first{margin-top:10px}.msg.mine{justify-content:flex-end}.msg-av{width:32px;flex:none}.msg-col{display:flex;flex-direction:column;max-width:min(72%,560px);min-width:0}.msg.mine .msg-col{align-items:flex-end}.msg-name{font-size:11.5px;font-weight:600;color:var(--muted);margin:0 0 3px 10px}.bubble{position:relative;padding:8px 12px 6px;border-radius:16px;background:var(--surface-2);color:var(--text);font-size:14px;line-height:1.45;overflow-wrap:anywhere;display:flex;flex-direction:column;gap:4px}.msg.mine .bubble{background:var(--brand);color:var(--brand-ink)}.msg.first:not(.mine) .bubble{border-top-left-radius:6px}.msg.first.mine .bubble{border-top-right-radius:6px}.msg.pending .bubble{opacity:.6}.bubble.deleted{font-style:italic;opacity:.7}.bubble.media-only{padding:4px 4px 6px}.msg-text{white-space:pre-wrap}.msg-text a{color:inherit;text-decoration:underline}.msg-meta{align-self:flex-end;font-size:10.5px;opacity:.7;display:inline-flex;gap:4px;padding:0 4px}.ticks{letter-spacing:-2px}.ticks.read{opacity:1;font-weight:700;color:#b9f5d0}.msg-img{display:block;max-width:320px;width:100%;border-radius:12px;overflow:hidden}.msg-img img{display:block;width:100%;height:auto;max-height:360px;object-fit:cover}.msg-file{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;background:#00000014;color:inherit;text-decoration:none;min-width:200px}.msg.mine .msg-file .m{color:inherit;opacity:.8}.typing-bubble{flex-direction:row;gap:4px;padding:12px 14px}.typing-bubble span{width:6px;height:6px;border-radius:50%;background:var(--muted);animation:typing 1.2s infinite ease-in-out}.typing-bubble span:nth-child(2){animation-delay:.15s}.typing-bubble span:nth-child(3){animation-delay:.3s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}@media(prefers-reduced-motion:reduce){.typing-bubble span{animation:none}}.thread-error{padding:6px 16px}.composer{display:flex;align-items:flex-end;gap:8px;padding:10px 12px;border-top:1px solid var(--line)}.composer-box{flex:1;resize:none;min-height:40px;max-height:140px;padding:10px 14px;border-radius:20px;border:1px solid var(--line-2);background:var(--surface-2);color:var(--text);font:inherit;font-size:14px;line-height:1.4}.composer-box:focus{outline:none;border-color:var(--brand)}.composer-send{width:40px;height:40px;padding:0;border-radius:50%;justify-content:center}.newchat-list{max-height:50vh;overflow-y:auto;display:flex;flex-direction:column}.group-chat{display:flex;flex-direction:column;height:calc(100vh - 300px);min-height:420px;padding:0;overflow:hidden}.group-chat-head{justify-content:space-between;padding:10px 16px;border-bottom:1px solid var(--line)}.group-chat-head .link{display:inline-flex;align-items:center;gap:3px;text-decoration:none}.thread.embedded{min-height:0}@media(max-width:860px){.chat{grid-template-columns:1fr;height:calc(100vh - 150px)}.chat.has-open .chat-list{display:none}.chat:not(.has-open) .chat-main{display:none}.thread-back{display:inline-flex}.msg-col{max-width:85%}}.chat-list .conn-search{flex:none}.more-btn{width:100%;justify-content:center;margin-top:10px;gap:6px}.menu-text{display:flex;flex-direction:column;gap:1px;line-height:1.25}.menu-hint{font-size:12px;color:var(--muted);font-weight:400}.support-chips{gap:6px;flex-wrap:wrap}.support-chips .filter{font-weight:500}.head-actions{display:flex;gap:8px;align-items:center}.page-head.profile-sticky{padding-bottom:10px}.profile-sticky .conn-tabs{margin-top:14px}@media(max-width:720px){.page-head.profile-sticky{position:static}}.vault-grid.card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:0}.vault-grid.card-grid .play-badge.sm{transform:scale(.85)}.feed-note{gap:6px}.call-ring{position:fixed;top:76px;right:20px;z-index:120;display:flex;align-items:center;gap:14px;min-width:320px;max-width:calc(100vw - 32px);padding:14px 16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 18px 50px #00000038;animation:call-in .2s ease-out}@keyframes call-in{0%{transform:translateY(-8px);opacity:0}}.call-ring-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.call-ring-text b{font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.call-ring-actions{display:flex;gap:10px}.call-btn{width:44px;height:44px;border-radius:50%;border:0;display:grid;place-items:center;background:var(--surface-2);color:var(--text)}.call-btn.accept{background:var(--green);color:var(--on-colour);animation:call-pulse 1.4s ease-in-out infinite}.call-btn.decline{background:var(--danger);color:var(--on-colour)}.call-btn.decline svg{transform:rotate(135deg)}.call-btn.off{background:var(--text);color:var(--bg)}@keyframes call-pulse{50%{box-shadow:0 0 0 8px color-mix(in srgb,var(--green) 25%,transparent)}}.call-screen{position:fixed;inset:0;z-index:110;display:flex;flex-direction:column;background:var(--call-bg);color:var(--call-text)}.call-head{display:flex;align-items:center;gap:10px;padding:12px 18px}.call-head .m{color:var(--call-muted)}.call-stage{flex:1;min-height:0;position:relative}.call-stage.demo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;text-align:center;padding:20px}.call-stage.demo .m{color:var(--call-muted);max-width:420px}.call-controls{display:flex;gap:14px;margin-top:10px}.call-controls .call-btn:not(.decline):not(.off){background:var(--call-control);color:var(--call-text)}@media(max-width:720px){.call-ring{left:16px;right:16px;top:72px;min-width:0}}.notify-ask{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:var(--radius);background:var(--brand-soft);margin-bottom:6px;flex-wrap:wrap}.notify-ask.blocked{background:var(--orange-soft)}.notify-later{display:flex;align-items:center;gap:6px;margin-top:14px}.chip.red{background:var(--danger-soft);color:var(--danger-text);border-color:transparent}.nav-tag{margin-left:auto;font-size:10.5px;font-weight:600;padding:2px 8px;border-radius:var(--radius-pill);background:var(--surface-2);color:var(--muted);border:1px solid var(--line)}.admin-side-label{padding-top:0}.admin-head{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:16px}.admin-lead{margin:6px 0 0;color:var(--text-2);max-width:820px;line-height:1.5}.admin-tabs{margin-bottom:14px}.admin-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-bottom:14px}.admin-pills{margin:0 0 -14px;padding-bottom:14px}.admin-select{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 6px 0 14px;border-radius:var(--radius-pill);border:1px solid var(--line-2);background:var(--surface);font-size:13px;color:var(--muted)}.admin-select select{border:0;background:transparent;color:var(--text);font:inherit;font-weight:600;padding:0 6px;height:36px}.admin-split{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start}.admin-list{flex:1 1 380px;min-width:0;padding:6px}.admin-detail{flex:1.3 1 440px;min-width:0;position:sticky;top:calc(var(--sticky-top, 64px) + 12px);max-height:calc(100vh - var(--sticky-top, 64px) - 24px);overflow-y:auto}.admin-detail-body{padding:20px 22px}.admin-detail-title{font-size:18px;font-weight:700;margin:12px 0 4px}.admin-row{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:0;border-radius:14px;background:transparent;color:inherit;text-align:left}.admin-row:hover{background:var(--surface-2)}.admin-row.on{background:var(--brand-soft)}.admin-row .t{font-weight:600}.admin-row+.admin-row{margin-top:2px}.admin-row-pills{display:flex;flex-direction:column;align-items:flex-end;gap:5px;flex-shrink:0}.admin-clip{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.admin-post{margin-top:14px;border:1px solid var(--line);border-radius:16px;padding:14px 16px}.admin-post-media{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:6px;margin-top:10px}.admin-post-media img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px}.admin-shot{display:block;max-width:100%;max-height:320px;margin-top:10px;border-radius:12px;border:1px solid var(--line)}.admin-block{margin-top:18px}.admin-block h3{font-size:14px;font-weight:700;margin:0 0 8px}.admin-note{font-size:13px;color:var(--text-2);padding:8px 12px;border-radius:12px;background:var(--surface-2);margin-top:6px}.admin-note b{color:var(--text)}.admin-textarea{height:auto;padding:10px 12px;resize:vertical;font:inherit}.admin-facts{display:grid;grid-template-columns:1fr;gap:0;margin:14px 0 0}.admin-facts>div{display:flex;gap:12px;padding:8px 0;border-top:1px solid var(--line);font-size:13.5px}.admin-facts dt{width:130px;flex:none;color:var(--muted)}.admin-facts dd{margin:0;min-width:0;overflow-wrap:anywhere}.admin-people{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.admin-pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;background:var(--surface-2);border-radius:12px;padding:12px;max-height:280px;overflow:auto}.admin-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}.admin-card{padding:20px 22px;margin-bottom:16px}.admin-two .admin-card{margin-bottom:0}.admin-two+.admin-card{margin-top:16px}.admin-card-title{font-size:16px;font-weight:700;margin:0}.admin-version{font-size:16px;font-weight:600}.admin-prompt{display:flex;flex-direction:column;gap:4px;width:300px;max-width:100%;padding:18px;border-radius:22px;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);font-size:13px;color:var(--text-2)}.admin-prompt b{color:var(--text);font-size:15px}.admin-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}.admin-tile{display:flex;flex-direction:column;gap:4px;padding:16px 18px;color:var(--text)}.admin-tile:hover{border-color:var(--line-2)}.admin-tile-label{font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.admin-tile-n{font-family:var(--font-head);font-size:28px;font-weight:700}.admin-wait{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.admin-wait:first-of-type{border-top:0}.admin-ic{width:36px;height:36px;flex:none;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:var(--orange-soft);color:var(--orange-text)}.admin-ic.green{background:var(--green-soft);color:var(--green-text)}.admin-line{display:flex;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--line);font-size:13.5px}.admin-line:first-of-type{border-top:0}.admin-bar{display:flex;flex-direction:column;gap:5px;margin-bottom:10px;font-size:13px}.admin-bar-track{height:8px;border-radius:var(--radius-pill);background:var(--brand-soft);overflow:hidden}.admin-bar-track>span{display:block;height:100%;border-radius:inherit;background:var(--brand)}@media(max-width:720px){.admin-detail{position:static;max-height:none}.admin-facts dt{width:100px}}.admin-sample{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin:-6px 0 18px;padding:10px 16px;border-radius:14px;background:var(--orange-soft);color:var(--orange-text);font-size:13px;line-height:1.45}.admin-sample b{letter-spacing:.06em;font-size:12.5px}.admin-toolbar{margin:0 0 14px;padding:0 0 4px}.admin-inline{margin-left:8px;vertical-align:2px}.admin-skel{display:flex;align-items:center;gap:12px;padding:12px}.admin-skel .a{width:40px;height:40px;border-radius:50%;background:var(--placeholder);flex:none}.admin-skel .b{flex:1;display:flex;flex-direction:column;gap:7px}.admin-skel .b i{display:block;height:10px;border-radius:6px;background:var(--placeholder);width:60%}.admin-skel .b i+i{width:38%}.admin-skel .a,.admin-skel .b i{animation:admin-pulse 1.4s ease-in-out infinite}@keyframes admin-pulse{50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.admin-skel .a,.admin-skel .b i{animation:none}}.admin-callout{display:flex;flex-direction:column;gap:4px;margin-top:14px;padding:12px 14px;border-radius:14px;background:var(--orange-soft);color:var(--orange-text);font-size:13px}.admin-callout.red{background:var(--danger-soft);color:var(--danger-text)}.admin-callout .btn{align-self:flex-start;margin-top:6px}.admin-bars-plot{display:flex;align-items:flex-end;gap:3px;border-bottom:1px solid var(--line);padding-bottom:2px}.admin-bars-plot span{flex:1;min-width:2px;border-radius:4px 4px 0 0;background:color-mix(in srgb,var(--brand) 35%,transparent)}.admin-bars-plot span.on{background:var(--brand)}.admin-bars-axis{display:flex;justify-content:space-between;margin-top:6px;font-size:11.5px;color:var(--muted)}.admin-table{display:flex;flex-direction:column}.admin-tr{display:grid;grid-template-columns:minmax(0,2.2fr) 1fr .7fr 1fr;gap:12px;align-items:center;padding:10px 8px;border-top:1px solid var(--line);color:var(--text);font-size:13.5px}.admin-tr.four{grid-template-columns:minmax(0,2fr) 1.1fr 1.6fr auto}.admin-tr.head{border-top:0;font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding-top:4px}a.admin-tr:hover{background:var(--surface-2);border-radius:10px}.admin-cohort{display:flex;flex-direction:column;gap:4px;font-size:13px;overflow-x:auto;padding-bottom:14px}.admin-cohort-row{display:grid;grid-template-columns:80px 70px repeat(5,minmax(56px,1fr));gap:4px;align-items:center;min-width:440px}.admin-cohort-row.head{font-size:11.5px;font-weight:700;color:var(--muted)}.admin-cohort-cell{text-align:center;padding:7px 0;border-radius:8px;font-weight:600;font-size:12px}.admin-dot{width:10px;height:10px;border-radius:50%;margin-top:5px;flex:none;background:var(--green-text)}.admin-dot.warn{background:var(--orange-text)}.admin-dot.down{background:var(--danger)}.admin-switch{appearance:none;width:42px;height:24px;flex:none;border-radius:var(--radius-pill);background:var(--toggle-off);position:relative;cursor:pointer;transition:background .15s}.admin-switch:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s;box-shadow:var(--shadow)}.admin-switch:checked{background:var(--brand)}.admin-switch:checked:after{transform:translate(18px)}.admin-jump-wrap{position:fixed;inset:0;z-index:70;background:#0a081e59;display:flex;justify-content:center;align-items:flex-start;padding:12vh 16px 16px}.admin-jump{width:560px;max-width:100%;padding:0;overflow:hidden}.admin-jump .conn-search{height:46px}.admin-jump-list{max-height:50vh;overflow-y:auto;padding:0 8px 8px}.admin-jump-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:0;border-radius:12px;background:transparent;color:var(--text);text-align:left;font-size:14px}.admin-jump-item.on{background:var(--brand-soft)}.admin-jump-foot{padding:10px 16px;border-top:1px solid var(--line)}@media(max-width:720px){.admin-tr,.admin-tr.four{grid-template-columns:1fr auto}.admin-tr>:nth-child(2),.admin-tr>:nth-child(3){display:none}.admin-tr.head{display:none}}.viewas-bar{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:10px;padding:8px 24px;background:var(--brand);color:var(--brand-ink);font-size:13px}.viewas-bar .btn{background:var(--surface);color:var(--text);border-color:transparent}.viewas-bar~.top{top:44px}.admin-av{position:relative;display:inline-flex;flex:none}.admin-online{position:absolute;right:0;bottom:0;width:11px;height:11px;border-radius:50%;background:var(--green-text);border:2px solid var(--surface)}.admin-online.lg{width:14px;height:14px;right:2px;bottom:2px}.admin-online.static{position:static;display:inline-block;flex:none}.admin-tablecard{padding:0;overflow:hidden}.admin-tablewrap{overflow-x:auto;padding-bottom:14px}.admin-grid{width:100%;border-collapse:collapse;font-size:13px;min-width:1380px}.admin-grid td{white-space:nowrap}.admin-grid th{position:sticky;top:0;background:var(--surface-2);text-align:left;font-size:11.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--muted);padding:0;border-bottom:1px solid var(--line);white-space:nowrap}.admin-th,.admin-grid th:not(:has(button)){padding:10px 12px}.admin-th{border:0;background:transparent;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;width:100%;text-align:left}.admin-grid td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}.admin-grid td .m{display:block}.admin-grid tbody tr{cursor:pointer}.admin-grid tbody tr:hover,.admin-grid tbody tr:focus-visible{background:var(--surface-2);outline:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.pw-wrap{position:relative;display:block}.pw-wrap .input{width:100%;padding-right:48px;box-sizing:border-box}.pw-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:38px;height:38px;border:0;border-radius:50%;background:none;color:var(--muted);display:grid;place-items:center;cursor:pointer}.pw-eye:hover{color:var(--text);background:var(--surface-2)}.scroll-top{position:fixed;right:24px;bottom:24px;z-index:40;width:52px;height:52px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--text);display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 24px #1118272e;animation:scroll-top-in .2s ease-out}.scroll-top:hover{background:var(--brand);border-color:var(--brand);color:var(--brand-ink, #fff)}@keyframes scroll-top-in{0%{opacity:0;transform:translateY(10px)}}@media(max-width:720px){.scroll-top{right:16px;bottom:16px;width:46px;height:46px}}.hh-pick{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.hh-tile{display:flex;align-items:center;gap:12px;padding:14px;border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--surface);color:var(--text);text-align:left;font:inherit;cursor:pointer}.hh-tile:hover:not(:disabled){border-color:var(--brand)}.hh-tile .m{font-size:13px}.hh-chosen{display:flex;align-items:center;gap:12px;padding:8px 10px;border:1px solid var(--line);border-radius:14px}.hh-chosen img{width:56px;height:56px;object-fit:cover;border-radius:10px;flex:none}.hh-note{margin:0;font-size:12.5px;line-height:1.5}.hh-rows{display:flex;flex-direction:column;gap:10px}.hh-row{display:flex;flex-direction:column;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-lg)}.hh-row.off{opacity:.6}.hh-title{font-weight:600;flex:1;min-width:0}.hh-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.hh-fields .hh-wide{grid-column:span 3}.hh-src{font-size:12.5px}@media(max-width:560px){.hh-fields{grid-template-columns:1fr 1fr}.hh-fields .hh-wide{grid-column:span 2}}.hh-say{position:relative}.hh-say textarea{width:100%;padding-right:56px}.hh-mic{position:absolute;right:8px;bottom:8px;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--brand-text);display:grid;place-items:center;cursor:pointer}.hh-mic.on{background:var(--brand);color:#fff;border-color:var(--brand);animation:hh-pulse 1.4s ease-in-out infinite}@keyframes hh-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--brand) 40%,transparent)}50%{box-shadow:0 0 0 8px transparent}}@media(prefers-reduced-motion:reduce){.hh-mic.on{animation:none}}.hh-step{flex:none;width:26px;height:26px;margin-top:8px;border-radius:50%;background:var(--brand-soft);color:var(--brand-text);display:grid;place-items:center;font-size:12px;font-weight:700}.ac-bar{position:fixed;right:20px;bottom:20px;z-index:60;display:inline-flex;align-items:center;gap:10px;padding:6px 16px 6px 6px;border-radius:var(--radius-pill);border:1px solid var(--line);background:var(--surface);color:var(--text);font:inherit;font-weight:600;box-shadow:0 10px 30px #11182724;cursor:pointer}.ac-dot{width:38px;height:38px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center}.ac-panel{position:fixed;right:20px;bottom:80px;z-index:60;width:min(440px,calc(100vw - 32px));height:min(580px,calc(100vh - 120px));display:flex;flex-direction:column;border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--surface);box-shadow:0 20px 50px #11182733;overflow:hidden}.ac-head{display:flex;align-items:center;gap:10px;padding:12px 12px 12px 16px;border-bottom:1px solid var(--line)}.ac-head .m{font-size:12.5px}.ac-body{flex:1;overflow-y:auto;padding:14px 16px;display:flex;flex-direction:column;gap:12px}.ac-hello p{margin:0 0 10px;line-height:1.5}.ac-try{display:flex;flex-wrap:wrap;gap:6px}.ac-try .chip,.ac-refs .chip{font-size:12.5px;padding:6px 10px;border-radius:var(--radius-pill);cursor:pointer;color:var(--text);text-decoration:none}.ac-msg{display:flex;flex-direction:column;gap:6px}.ac-msg.user{align-items:flex-end}.ac-bubble{max-width:88%;padding:10px 12px;border-radius:16px;line-height:1.45;white-space:pre-wrap;font-size:14.5px}.ac-msg.user .ac-bubble{background:var(--brand);color:#fff;border-bottom-right-radius:6px}.ac-msg.assistant .ac-bubble{background:var(--surface-2);border-bottom-left-radius:6px}.ac-refs{display:flex;flex-wrap:wrap;gap:6px}.ac-sources{display:flex;flex-direction:column;gap:6px;max-width:100%}.ac-source{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:14px}.ac-source a{color:var(--text);text-decoration:none}.ac-source b{font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ac-source .m{font-size:12px}.ac-ask{display:flex;align-items:flex-end;gap:8px;padding:10px 12px;border-top:1px solid var(--line)}.ac-ask textarea{flex:1;min-width:0;resize:none}.ac-clear{align-self:flex-start;margin:0 12px 10px}.ac-note{margin:6px 0 0;font-size:12.5px;line-height:1.5}.ac-prefs{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.chip-x{display:inline-flex;align-items:center;gap:6px;padding:5px 6px 5px 10px;border-radius:var(--radius-pill);background:var(--brand-soft);color:var(--brand-text);font-size:12.5px;font-weight:600}.chip-x button{border:0;background:transparent;color:inherit;display:grid;place-items:center;padding:2px;cursor:pointer}@media(max-width:700px){.ac-bar{right:12px;bottom:calc(76px + env(safe-area-inset-bottom))}.ac-bar .ac-name{display:none}.ac-bar{padding:4px}.ac-panel{right:12px;left:12px;width:auto;bottom:calc(130px + env(safe-area-inset-bottom));height:min(560px,calc(100vh - 200px))}}.recipe-head{display:flex;align-items:center;gap:8px;font-family:var(--font-head);font-size:17px;margin:0}.recipe-head .m{font-family:var(--font-body, inherit);font-size:13px;font-weight:500}.recipe-dot{width:10px;height:10px;border-radius:50%}.recipe-dot.ing{background:var(--green-text)}.recipe-dot.step{background:var(--brand)}.recipe-ing .task-card{background:var(--green-soft);border-color:transparent}.recipe-step{display:flex;align-items:flex-start;gap:10px}.recipe-step .task-card{background:var(--brand-soft);border-color:transparent}.recipe-step .task-name{font-size:15.5px;line-height:1.45}.recipe-num{flex:none;width:30px;height:30px;margin-top:10px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center;font-weight:700;font-size:13px}.recipe-credit{margin:0;font-size:13px}.recipe-reset{align-self:flex-start}.recipe .repeat-label{display:none}.say-btn{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:var(--radius-pill);border:1px solid var(--line);background:var(--surface);color:var(--text);font:600 13px var(--font-body, inherit);cursor:pointer;flex:none}.say-btn.compact{width:32px;padding:0;justify-content:center;color:var(--muted)}.say-btn:hover,.say-btn.on{border-color:var(--brand);color:var(--brand)}.say-btn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.say-btn.push{margin-left:auto}.recipe-head:has(.say-btn){width:100%}.say-row{display:flex;align-items:center;gap:8px}@media(hover:hover)and (pointer:fine){.say-row .say-hover{opacity:0;transition:opacity .15s}.say-row:hover .say-hover,.say-row .say-hover:focus-visible,.say-row .say-hover.on{opacity:1}}@media(hover:none),(pointer:coarse){.say-btn.compact{width:44px;height:44px}}.ac-say{align-self:flex-start;height:28px;font-size:12.5px;padding:0 10px}
