:root{--bg: #ffffff;--soft: #f7f7f5;--hover: #efefed;--text: #37352f;--muted: #8b8a85;--line: #ebebea;--accent: #2f80ed;--good: #1d7a3a;--good-soft: #e5f3e8;--warn: #b26a00;--warn-soft: #fdf0dc;--bad: #d44c47;--bad-soft: #fbe9e8;--radius: 8px;--tabbar-h: 62px;color-scheme:light;font-family:ui-sans-serif,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.45;color:var(--text);background:var(--bg)}@media (prefers-color-scheme: dark){:root{--bg: #191919;--soft: #202020;--hover: #2a2a2a;--text: #e6e6e4;--muted: #9b9a97;--line: #2f2f2f;--accent: #529cca;--good: #5cbf7a;--good-soft: #1f2e24;--warn: #e0a33b;--warn-soft: #34291a;--bad: #ec6b66;--bad-soft: #3a2220;color-scheme:dark}}*{box-sizing:border-box}body{margin:0;background:var(--bg);-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3,p{margin:0}.loading,.empty{padding:40px 16px;text-align:center;color:var(--muted)}.muted{color:var(--muted)}.small{font-size:.85rem}.pad{padding:4px 6px}.pre{white-space:pre-wrap}.main{padding-bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px) + 24px)}.page{max-width:720px;margin:0 auto;padding:calc(10px + env(safe-area-inset-top,0px)) 16px 16px;display:flex;flex-direction:column;gap:14px}.topbar{display:flex;align-items:center;gap:4px;min-height:36px;margin-left:-8px}.crumb{flex:1;color:var(--muted);font-size:.9rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.page-title{font-size:1.75rem;font-weight:700;line-height:1.2}.title-input{font-size:1.6rem;font-weight:700;line-height:1.25}.hero{display:flex;flex-direction:column;gap:8px;padding-top:8px}.hero h1{font-size:1.9rem;font-weight:700}.stats{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:4px}.stat-top{display:flex;justify-content:space-between;font-size:.85rem;color:var(--muted);margin-bottom:4px}.stat-top b{color:var(--text)}.bar{height:6px;background:var(--hover);border-radius:99px;overflow:hidden}.bar-fill{height:100%;background:var(--good);border-radius:99px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border-radius:var(--radius);border:1px solid var(--line);background:var(--bg);cursor:pointer;font-size:.95rem;white-space:nowrap}.btn:hover{background:var(--hover)}.btn.small{padding:5px 10px;font-size:.85rem}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:disabled{opacity:.5}.btn.ghost{border-style:dashed;color:var(--muted)}.btn.block{width:100%;padding:12px}.btn.danger-ghost{border:none;background:none;color:var(--bad);align-self:flex-start;padding-left:6px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;border:none;background:none;border-radius:6px;cursor:pointer;font-size:1.1rem;color:var(--muted)}.icon-btn:hover{background:var(--hover)}.link-btn{border:none;background:none;color:var(--muted);cursor:pointer;padding:6px;font-size:.88rem;text-align:left;text-decoration:underline}.row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.quick{display:flex;align-items:center;gap:4px;border:1px solid var(--line);border-radius:10px;padding:4px 4px 4px 12px;background:var(--soft)}.quick input{flex:1;border:none;background:none;outline:none;padding:8px 0;min-width:0}.search{width:100%;padding:9px 12px;border-radius:10px;border:none;background:var(--soft);outline:none}.autotext{width:100%;border:none;background:none;outline:none;resize:none;padding:4px 6px;border-radius:6px;overflow:hidden}.autotext:hover{background:var(--soft)}.autotext:focus{background:var(--soft)}.body-input{min-height:80px}.big-input{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px 12px;resize:vertical;outline:none;background:var(--bg)}.field{display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:var(--muted);min-width:0}.field.grow{flex:1}.field input,.field select,.field textarea{padding:9px 10px;border-radius:var(--radius);border:1px solid var(--line);background:var(--bg);color:var(--text);font-size:1rem;width:100%}select{max-width:100%}.block{display:flex;flex-direction:column}.block-title{font-size:.95rem;font-weight:600;padding:6px;border-bottom:1px solid var(--line);margin-bottom:2px;display:flex;gap:6px;align-items:center}.count{color:var(--muted);font-weight:400;font-size:.85rem}.page-link,.row-item,.dad-row{display:flex;align-items:center;gap:10px;padding:8px 6px;border-radius:6px;min-height:44px}.page-link:hover,.row-item:hover,.dad-row:hover{background:var(--hover)}.page-icon{font-size:1.15rem;width:26px;text-align:center;flex:none}.page-name{flex:1;font-weight:500}.tag{font-size:.75rem;color:var(--muted);background:var(--soft);border-radius:4px;padding:2px 6px;white-space:nowrap}.tag.good{color:var(--good);background:var(--good-soft)}.inbox-link{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;background:var(--warn-soft);color:var(--warn);font-weight:500}.inbox-link .count{margin-left:auto;color:inherit;font-weight:700}.row-main{flex:1;min-width:0;display:flex;flex-direction:column}.row-main.plain{border:none;background:none;text-align:left;padding:0;cursor:pointer}.row-title{overflow-wrap:anywhere}.row-sub{font-size:.82rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.row-icon{width:18px;text-align:center;flex:none;font-size:.95rem}.is-done .row-title{text-decoration:line-through;color:var(--muted)}.check{width:20px;height:20px;accent-color:var(--accent);flex:none;margin:0}.dot{width:12px;height:12px;border-radius:50%;flex:none;margin:0 3px;border:2px solid var(--muted)}.dot-xem{border-color:var(--warn);background:var(--warn-soft)}.dot-chot{border-color:var(--good);background:var(--good)}.pill{font-size:.8rem;padding:2px 8px;border-radius:4px;background:var(--soft);color:var(--muted)}.pill-xem{background:var(--warn-soft);color:var(--warn)}.pill-chot{background:var(--good-soft);color:var(--good);font-weight:600}.due{font-size:.78rem;color:var(--muted);white-space:nowrap}.due.soon{color:var(--warn);font-weight:600}.due.late{color:var(--bad);font-weight:600}.add-row{display:flex;align-items:center;gap:8px;border:none;background:none;padding:8px 6px;color:var(--muted);cursor:pointer;border-radius:6px;text-align:left}.add-row:hover{background:var(--hover)}.plus{width:26px;text-align:center}.add-input input{width:100%;padding:9px 8px;border:none;border-radius:6px;background:var(--soft);outline:none}.props{display:flex;flex-direction:column}.prop{display:flex;align-items:center;gap:8px;min-height:38px}.prop-k{width:108px;flex:none;color:var(--muted);font-size:.9rem;padding-left:6px}.prop select,.prop input[type=date]{border:none;background:none;padding:6px;border-radius:6px;min-width:0;flex:1}.prop select:hover,.prop input[type=date]:hover{background:var(--soft)}.prop .autotext{flex:1}.photos{display:flex;gap:8px;overflow-x:auto;padding:6px 6px 4px 0}.photo-wrap{position:relative;flex:none}.photo-x{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:50%;border:none;background:#000000a6;color:#fff;font-size:.7rem;cursor:pointer}.thumb{border-radius:6px;overflow:hidden;background:var(--soft);flex:none;cursor:pointer}.thumb img{width:100%;height:100%;object-fit:cover;display:block}.thumb-fill{width:100%;height:100%}.thumb-fill img{object-fit:contain}.empty-thumb{width:64px;height:64px;display:flex;align-items:center;justify-content:center;color:var(--good);background:var(--good-soft)}.viewer{position:fixed;top:0;right:0;bottom:0;left:0;background:#000;z-index:60;display:flex;align-items:center;justify-content:center}.viewer .thumb{background:none;border-radius:0}.viewer-nav{position:absolute;bottom:calc(20px + env(safe-area-inset-bottom,0px));display:flex;gap:16px;align-items:center;color:#fff}.options{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;padding:8px 0}.option{border:1px solid var(--line);border-radius:10px;overflow:hidden;display:flex;flex-direction:column}.option.on{border-color:var(--good)}.option-photo{aspect-ratio:1;background:var(--soft);display:flex;align-items:center;justify-content:center;position:relative;cursor:pointer}.option-photo .thumb-fill img{object-fit:cover}.badge{position:absolute;right:6px;bottom:6px;background:#0009;color:#fff;font-size:.75rem;border-radius:4px;padding:1px 6px}.option-body{padding:6px;display:flex;flex-direction:column;gap:6px}.option-body .autotext{font-size:.9rem;padding:2px 4px}.decided{border:1px solid var(--good);background:var(--good-soft);border-radius:12px;padding:10px;gap:8px}.decided .autotext:hover,.decided .autotext:focus{background:var(--bg)}.decided-head{display:flex;align-items:center;gap:8px}.decided-head .link-btn{margin-left:auto}.chosen-text{font-size:.95rem;padding:0 6px}.worker{display:flex;flex-direction:column;gap:2px;background:var(--warn-soft);border-radius:8px;padding:8px 6px}.worker .prop-k{width:auto;color:var(--warn);font-weight:600}.worker-line{color:var(--warn)}.note-box{background:var(--soft);border-radius:8px;padding:10px 12px}.seg{display:flex;background:var(--soft);border-radius:10px;padding:3px;gap:2px}.seg button{flex:1;border:none;background:none;padding:8px 6px;border-radius:8px;cursor:pointer;color:var(--muted);font-size:.92rem}.seg button.on{background:var(--bg);color:var(--text);font-weight:600;box-shadow:0 1px 3px #0000001f}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:20;display:grid;grid-template-columns:repeat(5,1fr);align-items:center;height:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:var(--bg);border-top:1px solid var(--line)}.tabbar a{display:flex;flex-direction:column;align-items:center;font-size:.72rem;color:var(--muted);gap:2px}.tabbar a.active{color:var(--text);font-weight:600}.tabbar .ti{font-size:1.25rem;line-height:1.1;filter:grayscale(1);opacity:.7}.tabbar a.active .ti{filter:none;opacity:1}.fab{justify-self:center;width:52px;height:52px;border-radius:16px;border:none;background:var(--text);color:var(--bg);font-size:1.6rem;line-height:1;cursor:pointer;box-shadow:0 4px 14px #0000002e}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f0f0f66;z-index:50;display:flex;align-items:flex-end;justify-content:center}.sheet{background:var(--bg);width:100%;max-width:720px;max-height:92vh;border-radius:16px 16px 0 0;display:flex;flex-direction:column;padding-bottom:env(safe-area-inset-bottom,0px)}.sheet-head{display:flex;align-items:center;gap:8px;padding:12px 12px 4px 16px}.sheet-head h3{flex:1;font-size:1.1rem}.sheet-body{padding:8px 16px 20px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}@media (min-width: 760px){.sheet-backdrop{align-items:center}.sheet{border-radius:16px}}.dad{font-size:1.05rem}.dad-floor{display:flex;flex-direction:column;gap:8px}.floor-title{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:8px 4px 0}.dad-area{border:1px solid var(--line);border-radius:12px;overflow:hidden}.dad-area summary{list-style:none;display:flex;align-items:center;gap:10px;padding:12px;cursor:pointer;font-weight:600}.dad-area summary::-webkit-details-marker{display:none}.dad-area[open] summary{border-bottom:1px solid var(--line)}.dad-row{width:100%;border:none;background:none;text-align:left;cursor:pointer;border-radius:0;padding:10px 12px;align-items:flex-start}.dad-row+.dad-row{border-top:1px solid var(--line)}.new{font-size:.68rem;background:var(--warn-soft);color:var(--warn);border-radius:4px;padding:1px 5px;vertical-align:middle;font-weight:700}.pending{padding:10px 12px;background:var(--warn-soft);color:var(--warn);font-size:.9rem;border-top:1px solid var(--line)}.big-photos{display:grid;gap:8px}.big-photos>div{border-radius:10px;overflow:hidden;background:var(--soft);height:60vh}.spec-table{width:100%;border-collapse:collapse}.spec-table th{text-align:left;font-weight:400;color:var(--muted);width:38%;padding:8px 0;border-bottom:1px solid var(--line);vertical-align:top}.spec-table td{padding:8px 0;border-bottom:1px solid var(--line)}@media print{.tabbar,.no-print,.topbar{display:none!important}.main{padding:0}.dad-area{break-inside:avoid}}.option-photo.no-photo{aspect-ratio:auto;height:56px;font-size:.85rem;cursor:default}:root{--sb-bg: #f7f7f5;--sb-text: #5f5e5b;--hover-a: rgba(55, 53, 47, .08);--shadow-pop: rgba(15, 15, 15, .05) 0 0 0 1px, rgba(15, 15, 15, .1) 0 3px 6px, rgba(15, 15, 15, .2) 0 9px 24px;--shadow-card: rgba(15, 15, 15, .1) 0 0 0 1px, rgba(15, 15, 15, .1) 0 2px 4px;--ease: cubic-bezier(.2, 0, 0, 1)}@media (prefers-color-scheme: dark){:root{--sb-bg: #202020;--sb-text: #9b9b9b;--hover-a: rgba(255, 255, 255, .055);--shadow-pop: rgba(255, 255, 255, .094) 0 0 0 1px, rgba(0, 0, 0, .3) 0 5px 10px, rgba(0, 0, 0, .4) 0 15px 40px;--shadow-card: rgba(255, 255, 255, .094) 0 0 0 1px, rgba(0, 0, 0, .2) 0 2px 4px}}kbd{font:500 .7rem/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted);border:1px solid var(--line);border-bottom-width:2px;border-radius:4px;padding:2px 5px;margin:0 2px;background:var(--bg)}.crumb{display:flex;align-items:center;gap:2px}.crumb a,.crumb>span{padding:2px 6px;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crumb a:hover{background:var(--hover-a);color:var(--text)}.crumb-sep{color:var(--muted);opacity:.5;padding:0!important}.crumb-cur{color:var(--text)}.cover{height:110px;position:relative;flex:none}.cover-inner{position:absolute;left:0;right:0;bottom:-34px;max-width:720px;margin:0 auto;padding:0 12px}.cover-icon{font-size:64px;line-height:1;border:none;background:none;padding:4px;border-radius:8px;cursor:pointer;transition:background 80ms ease-in;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif}.cover-icon:not(:disabled):hover{background:var(--hover-a)}.cover-icon:disabled{cursor:default;color:inherit}.page.has-cover{padding-top:44px}.cover-home{background:linear-gradient(120deg,#f6d365,#fda085,#a1c4fd)}.cover-blue{background:linear-gradient(120deg,#e0eafc,#cfdef3)}.cover-green{background:linear-gradient(120deg,#d4fc79,#96e6a1)}.cover-sand{background:linear-gradient(120deg,#fdfcfb,#e2d1c3)}.cover-rose{background:linear-gradient(120deg,#fbc2eb,#fde2e4)}.cover-lilac{background:linear-gradient(120deg,#e0c3fc,#c2d8fc)}.cover-sky{background:linear-gradient(120deg,#a1c4fd,#c2e9fb)}.cover-stone{background:linear-gradient(120deg,#e6e9f0,#d7d2cc)}@media (prefers-color-scheme: dark){.cover:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#00000073}}.area-page{display:flex;flex-direction:column}.page-top{position:sticky;top:0;z-index:10;background:var(--bg);padding:env(safe-area-inset-top,0px) 16px 0}.page-top .topbar{margin-left:-8px}@keyframes pop-in{0%{opacity:0;transform:scale(.98) translateY(4px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{transform:translateY(24px);opacity:.6}to{transform:none;opacity:1}}@keyframes slide-left{0%{transform:translate(32px);opacity:0}to{transform:none;opacity:1}}.sheet-backdrop,.modal-backdrop{animation:fade-in .14s ease-out}.sheet{animation:slide-up .2s var(--ease)}.row-item,.page-link,.add-row,.btn,.icon-btn,.sb-item,.card,.db-table tr,.qf-item{transition:background 20ms ease-in,box-shadow .12s ease-out}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:#0f0f0f73;display:flex;justify-content:center;align-items:flex-start;padding:12vh 16px 16px}.qf{width:100%;max-width:640px;max-height:72vh;background:var(--bg);border-radius:12px;box-shadow:var(--shadow-pop);display:flex;flex-direction:column;overflow:hidden;animation:pop-in .16s var(--ease)}.qf-input{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line);color:var(--muted)}.qf-input input{flex:1;border:none;outline:none;background:none;font-size:1.05rem;color:var(--text)}.qf-list{overflow-y:auto;padding:6px}.qf-section{font-size:.75rem;font-weight:600;color:var(--muted);padding:8px 10px 4px}.qf-item{display:flex;align-items:center;gap:10px;width:100%;border:none;background:none;text-align:left;padding:8px 10px;border-radius:6px;cursor:pointer}.qf-item.on{background:var(--hover-a)}.qf-icon{width:22px;text-align:center;flex:none}.qf-title{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qf-sub{margin-left:auto;font-size:.8rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-left:12px}.qf-empty{padding:24px;text-align:center;color:var(--muted)}.qf-foot{display:flex;gap:16px;padding:8px 14px;border-top:1px solid var(--line);font-size:.75rem;color:var(--muted)}.sidebar{width:248px;height:100vh;background:var(--sb-bg);color:var(--sb-text);display:flex;flex-direction:column;font-size:14px;border-right:1px solid var(--line);-webkit-user-select:none;user-select:none}.sb-head{display:flex;align-items:center;gap:8px;padding:10px 10px 6px 14px;color:var(--text)}.sb-ws-icon{font-size:1.1rem;width:22px;height:22px;display:flex;align-items:center;justify-content:center}.sb-ws-name{flex:1;font-weight:600}.sb-collapse{opacity:0}.sidebar:hover .sb-collapse{opacity:1}.sb-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:none;border-radius:4px;color:var(--sb-text);cursor:pointer;flex:none;transition:opacity .12s,background 20ms ease-in}.sb-icon-btn:hover{background:var(--hover-a)}.sb-group{padding:4px 6px;display:flex;flex-direction:column;gap:1px}.sb-item{display:flex;align-items:center;gap:8px;min-height:30px;padding:0 8px;border-radius:6px;border:none;background:none;color:var(--sb-text);width:100%;text-align:left;cursor:pointer;font-size:14px}.sb-item svg{flex:none}.sb-item:hover{background:var(--hover-a)}.sb-item.active{background:var(--hover-a);color:var(--text);font-weight:600}.sb-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-count{font-size:.75rem;color:var(--muted)}.sb-scroll{flex:1;overflow-y:auto;padding:4px 6px 12px}.sb-section{font-size:.75rem;font-weight:600;color:var(--muted);padding:14px 8px 4px}.sb-floor{font-weight:500}.sb-chev{display:inline-flex;width:16px;justify-content:center;transition:transform .16s var(--ease);color:var(--muted)}.sb-chev.open{transform:rotate(90deg)}.sb-children{display:grid;grid-template-rows:0fr;transition:grid-template-rows .2s var(--ease)}.sb-children.open{grid-template-rows:1fr}.sb-children>div{overflow:hidden}.sb-page{padding-left:22px}.sb-emoji{width:18px;text-align:center;flex:none}.sb-hover{opacity:0}.sb-page:hover .sb-hover{opacity:1}.sb-new{margin:0 6px 8px;border:none;background:none;display:flex;align-items:center;gap:8px;padding:8px;border-radius:6px;color:var(--sb-text);cursor:pointer;font-size:14px}.sb-new:hover{background:var(--hover-a)}.sb-reopen{position:absolute;top:9px;left:10px;z-index:20;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:none;border-radius:4px;cursor:pointer;color:var(--muted)}.sb-reopen:hover{background:var(--hover-a)}@media (min-width: 900px){html,body{height:100%}:root{font-size:15px}.app.is-wide{display:flex;height:100vh;overflow:hidden}.is-wide .main{flex:1;min-width:0;overflow-y:auto;padding-bottom:80px;position:relative}.is-wide .page{max-width:900px;width:100%;padding:12px clamp(24px,6vw,96px) 40px;gap:18px}.is-wide .page.has-cover{padding-top:60px}.is-wide .page-top{padding:0 12px}.is-wide .page-top .topbar{margin:0;min-height:45px}.is-wide .cover{height:min(28vh,220px)}.is-wide .cover-inner{max-width:900px;padding:0 calc(clamp(24px,6vw,96px) - 6px);bottom:-42px}.is-wide .cover-icon{font-size:78px}.is-wide .page-title,.is-wide .hero h1{font-size:2.5rem;font-weight:700;letter-spacing:-.01em}.is-wide .title-input{font-size:2.4rem}.is-wide .page>.topbar{position:sticky;top:0;background:var(--bg);z-index:5;margin-top:-12px;min-height:45px}.is-wide .row-item,.is-wide .page-link{min-height:34px;padding:4px 6px}.is-wide .row-item:hover,.is-wide .page-link:hover,.is-wide .add-row:hover{background:var(--hover-a)}.is-wide .sheet-backdrop{align-items:flex-start;padding-top:10vh}.is-wide .sheet{max-width:600px;border-radius:12px;box-shadow:var(--shadow-pop);animation:pop-in .16s var(--ease)}.is-wide .hero .stats{max-width:520px}.is-wide .search{display:none}.sidebar-wrap{width:248px;flex:none;transition:width .22s var(--ease);overflow:hidden}.sb-collapsed .sidebar-wrap{width:0}.sb-collapsed .page-top,.sb-collapsed .page>.topbar{padding-left:44px}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;padding-top:10px}.card{display:flex;flex-direction:column;border-radius:8px;overflow:hidden;box-shadow:var(--shadow-card);background:var(--bg)}.card:hover{background:var(--soft)}.card-cover{height:60px;position:relative}.card-icon{position:absolute;left:12px;bottom:-14px;font-size:30px;line-height:1}.card-body{padding:20px 12px 12px;display:flex;flex-direction:column;gap:6px}.card-name{font-weight:600}.card-meta{display:flex;gap:4px;font-size:.8rem;color:var(--muted)}.db-scroll{overflow-x:auto}.db-table{width:100%;border-collapse:collapse;font-size:14px}.db-table th{text-align:left;font-weight:400;color:var(--muted);padding:6px 8px;border-bottom:1px solid var(--line);white-space:nowrap;font-size:.85rem}.db-table td{padding:6px 8px;border-bottom:1px solid var(--line);vertical-align:middle}.db-table th+th,.db-table td+td{border-left:1px solid var(--line)}.db-table tbody tr:hover{background:var(--hover-a)}.db-table tr.on{background:#2383e21a}.col-title{position:relative;min-width:220px}.db-title{font-weight:500}.db-open{position:absolute;right:6px;top:50%;transform:translateY(-50%);opacity:0;font-size:.7rem;font-weight:600;color:var(--muted);background:var(--bg);box-shadow:var(--shadow-card);border-radius:4px;padding:2px 6px;transition:opacity 80ms}.db-table tr:hover .db-open{opacity:1}.db-table .pill{display:inline-flex;align-items:center;white-space:nowrap}.db-table .pill .dot{width:8px;height:8px;border-width:1.5px;margin:0 5px 0 0}.col-status,.col-due,.col-photo{width:1%}.db-photos{display:flex;gap:3px}.peek{position:fixed;top:0;right:0;bottom:0;width:min(760px,52vw);z-index:40;background:var(--bg);box-shadow:var(--shadow-pop);overflow-y:auto;animation:slide-left .22s var(--ease)}.peek-bar{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg)}.peek-bar .sb-icon-btn{width:28px;height:28px;font-size:1.1rem}.peek-open{font-size:.85rem;color:var(--muted);padding:3px 8px;border-radius:4px}.peek-open:hover{background:var(--hover-a);color:var(--text)}.peek-page{padding:8px 48px 60px;display:flex;flex-direction:column;gap:16px}.peek-crumb{font-size:.85rem;color:var(--muted);padding-left:6px}.peek .title-input{font-size:2rem}}.qf-icon{display:inline-flex;justify-content:center}.qf-box{width:14px;height:14px;border:1.5px solid var(--muted);border-radius:3px;display:inline-block}.qf-box.on{background:var(--accent);border-color:var(--accent)}.sb-scroll,.main,.qf-list,.peek{scrollbar-width:thin;scrollbar-color:rgba(128,128,128,.35) transparent}.area-page>.page{width:100%}svg.lucide{width:1.1em;height:1.1em;stroke-width:1.75;flex:none;vertical-align:-.17em}.btn svg.lucide,.icon-btn svg.lucide{width:1.05rem;height:1.05rem}.block-title svg.lucide{color:var(--muted)}.title-icon{color:var(--muted);width:.9em!important;height:.9em!important;vertical-align:-.08em!important;margin-right:4px}.area-name{display:inline-flex;align-items:center;gap:5px;min-width:0}.area-name svg.lucide{color:var(--muted)}.page-icon{display:inline-flex;justify-content:center;color:var(--muted)}.page-icon svg.lucide{width:1.15rem;height:1.15rem}.row-icon{color:var(--muted)}.plus{color:var(--muted);width:1.1rem!important;height:1.1rem!important;margin:0 4px}.inbox-link svg.lucide,.tip-link svg.lucide{flex:none}.tabbar svg.ti{width:1.4rem;height:1.4rem;stroke-width:1.6}.tabbar a.active svg.ti{stroke-width:2.1}.fab svg.lucide{width:1.6rem;height:1.6rem;stroke-width:2.2}.cover-icon{width:84px;height:84px;display:inline-flex;align-items:center;justify-content:center;border-radius:18px;background:var(--bg);box-shadow:var(--shadow-card);padding:0}.cover-icon svg.lucide{width:44px;height:44px;stroke-width:1.5}.cover-icon:not(:disabled):hover{background:var(--soft)}.card-icon{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:var(--bg);box-shadow:var(--shadow-card);font-size:1rem}.card-icon svg.lucide{width:22px;height:22px;stroke-width:1.6}.tone-blue{color:#2f6fb3}.tone-green{color:#2f8a4a}.tone-sand{color:#9a6a3a}.tone-rose{color:#b8486e}.tone-lilac{color:#7a52b3}.tone-sky{color:#2a86b0}.tone-stone{color:#6b6a66}.tone-home{color:#d9622b}@media (prefers-color-scheme: dark){.tone-blue{color:#79aef0}.tone-green{color:#6fcf8b}.tone-sand{color:#d8a875}.tone-rose{color:#ec8fb0}.tone-lilac{color:#b896ec}.tone-sky{color:#73c2e6}.tone-stone{color:#b1b0ab}.tone-home{color:#f29a6b}}@media (min-width: 900px){.is-wide .cover-icon{width:96px;height:96px;font-size:inherit}.is-wide .cover-icon svg.lucide{width:50px;height:50px}.is-wide .cover-inner{bottom:-40px}}.page.has-cover{padding-top:52px}.icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:6px}.icon-cell{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px;border-radius:8px;border:1px solid transparent;background:none;cursor:pointer;font-size:.75rem;color:var(--muted)}.icon-cell svg.lucide{width:24px;height:24px;color:var(--text)}.icon-cell:hover{background:var(--hover-a)}.icon-cell.on{border-color:var(--accent);color:var(--text)}.viewer-close{position:absolute;top:calc(12px + env(safe-area-inset-top,0px));right:12px}.viewer-close,.viewer-btn{width:40px;height:40px;border-radius:50%;border:none;background:#ffffff24;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.viewer-close:hover,.viewer-btn:hover{background:#ffffff40}.photo-x svg.lucide{width:12px;height:12px;stroke-width:2.5}.photo-x{display:inline-flex;align-items:center;justify-content:center}.tone-dot{width:8px;height:8px;border-radius:50%;background:var(--muted);display:inline-block}.tone-dot.late{background:var(--bad)}.tone-dot.soon{background:var(--warn)}.seg button{display:inline-flex;align-items:center;justify-content:center;gap:6px}.money{border:none;background:none;padding:3px 6px;border-radius:4px;cursor:text;text-align:right;min-width:64px;font-variant-numeric:tabular-nums;color:var(--text)}.money:hover{background:var(--hover-a)}.money.empty{color:var(--muted);opacity:.6}.money.bad{outline:1px solid var(--bad)}.prop .money{text-align:left;flex:1}.prop .money.empty{opacity:1}.money-input{width:100%;min-width:80px;padding:3px 6px;border:1px solid var(--accent);border-radius:4px;outline:none;background:var(--bg);text-align:right;font-variant-numeric:tabular-nums}.prop .money-input{text-align:left;flex:1}.over,.over .money{color:var(--bad)!important;font-weight:600}.good{color:var(--good)}.bar-fill.over{background:var(--bad)}.row-money{font-size:.82rem;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.row-money.over{color:var(--bad)}.money-strip{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;padding:10px 12px;border-radius:10px;background:var(--soft);font-size:.9rem;color:var(--muted)}.money-strip b{color:var(--text);font-variant-numeric:tabular-nums}.money-strip:hover{background:var(--hover)}.money-strip-bar{flex:1;min-width:100px}.money-card{display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;border:1px solid var(--line)}.money-card:hover{background:var(--soft)}.money-card-icon{width:36px;height:36px;border-radius:10px;background:var(--good-soft);color:var(--good);display:inline-flex;align-items:center;justify-content:center;flex:none}.money-card-main{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}.money-card-top{display:flex;justify-content:space-between;gap:8px;font-size:.9rem;color:var(--muted)}.money-card-top b{color:var(--text);font-variant-numeric:tabular-nums}.tip-link{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;background:var(--soft);font-size:.92rem}.tip-link span{flex:1}.tip-link:hover{background:var(--hover)}.tip-link>svg:first-child{color:var(--warn)}.kpis{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}@media (min-width: 900px){.kpis{grid-template-columns:repeat(4,1fr)}}.kpi{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid var(--line);border-radius:10px;min-width:0}.kpi-k{font-size:.8rem;color:var(--muted)}.kpi-v{font-size:1.35rem;font-weight:700;font-variant-numeric:tabular-nums;text-align:left;padding:0;min-width:0}button.kpi-v{margin-left:-6px;padding:0 6px}.kpi .money-input.kpi-v{text-align:left;font-size:1.1rem}.kpi-sub{font-size:.78rem;color:var(--muted)}.alerts{display:flex;flex-direction:column;gap:6px}.alert{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:8px;background:var(--bad-soft);color:var(--bad);font-size:.9rem;border:none;text-align:left}.alert svg.lucide{margin-top:2px}.alert-btn{cursor:pointer;background:var(--warn-soft);color:var(--warn)}.alert-btn:hover{filter:brightness(.97)}.filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:4px 0 8px}.filters select{padding:6px 8px;border-radius:6px;border:1px solid var(--line);background:var(--bg)}.check-label{display:inline-flex;align-items:center;gap:6px;font-size:.9rem;color:var(--muted);cursor:pointer}.cell-select{border:none;background:none;padding:3px 4px;border-radius:4px;color:var(--muted);max-width:170px}.cell-select:hover{background:var(--hover-a)}.nowrap{white-space:nowrap}.db-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.db-table{width:100%;border-collapse:collapse;font-size:14px}.db-table th{text-align:left;font-weight:400;color:var(--muted);padding:6px 8px;border-bottom:1px solid var(--line);white-space:nowrap;font-size:.82rem}.db-table td{padding:5px 8px;border-bottom:1px solid var(--line);vertical-align:middle}.db-table th+th,.db-table td+td{border-left:1px solid var(--line)}.db-table .col-num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.db-table th.col-num{text-align:right}.db-table tfoot td{font-weight:600;border-top:1px solid var(--text);border-bottom:none}.db-table tr.clickable{cursor:pointer}.db-table tbody tr:hover{background:var(--hover-a)}.col-bar{min-width:110px}.money-table .col-title{min-width:200px}.tag.bad{color:var(--bad);background:var(--bad-soft);margin-left:6px}.db-open svg.lucide{width:11px;height:11px}.db-open{display:inline-flex;align-items:center;gap:3px}.guide-group{display:flex;flex-direction:column;gap:6px}.guide-title{font-size:1.2rem;font-weight:700;margin-top:8px}.guide-why{color:var(--muted);font-size:.92rem;margin-bottom:4px}.guide-tip{border:1px solid var(--line);border-radius:10px}.guide-tip summary{list-style:none;cursor:pointer;padding:10px 12px;display:flex;gap:10px;align-items:flex-start;font-weight:500}.guide-tip summary::-webkit-details-marker{display:none}.guide-tip summary:before{content:"";width:7px;height:7px;margin-top:7px;flex:none;border-right:1.75px solid var(--muted);border-bottom:1.75px solid var(--muted);transform:rotate(-45deg);transition:transform .16s var(--ease)}.guide-tip[open] summary:before{transform:rotate(45deg)}.guide-tip summary:hover{background:var(--hover-a);border-radius:10px}.guide-tip p{padding:0 12px 8px 29px;color:var(--text);font-size:.93rem}.guide-tip .btn{margin:0 12px 12px 29px}.guide-tip .btn:disabled{color:var(--good);border-color:var(--good-soft);background:var(--good-soft)}.worker .prop-k,.worker b,.worker-line{display:inline-flex;align-items:center;gap:5px}.pending svg.lucide{vertical-align:-.2em}.empty-thumb svg.lucide{width:24px;height:24px}.qf-icon svg.lucide{color:var(--muted)}.sb-ws-icon svg.lucide{width:18px;height:18px}.sb-emoji{color:var(--muted)}.money-block .props{margin-top:2px}@media (min-width: 900px){.kpis.kpis-5{grid-template-columns:repeat(5,1fr)}}.kpis.kpis-5 .kpi:first-child{grid-column:span 1}@media (max-width: 899px){.kpis.kpis-5 .kpi:last-child{grid-column:span 2}}.warn,.kpi-v.warn{color:var(--warn)}.alert-warn{background:var(--warn-soft);color:var(--warn)}.alert-btn-bad{cursor:pointer;width:100%}.group-title{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px;font-size:1.05rem;font-weight:700;padding:10px 6px 6px}.budget-group{gap:2px}.budget-table .col-title{min-width:220px}.budget-row{cursor:pointer}.budget-row.is-open{background:var(--soft)}.budget-row td{padding-top:8px;padding-bottom:8px}.chev{display:inline-flex;width:18px;color:var(--muted);transition:transform .16s var(--ease, ease);vertical-align:-.15em}.chev.open{transform:rotate(90deg)}.budget-detail>td{background:var(--soft);padding:4px 12px 12px 30px!important}.budget-detail:hover{background:none!important}.items{display:flex;flex-direction:column}.item-head,.item-row{display:grid;grid-template-columns:minmax(160px,1fr) 100px 100px 90px 170px;gap:8px;align-items:center}.item-head{font-size:.75rem;color:var(--muted);padding:6px 0 4px;border-bottom:1px solid var(--line)}.item-row{padding:3px 0;border-bottom:1px solid var(--line);font-size:.92rem}.item-row .num,.item-head .num{text-align:right;justify-self:end}.item-title{display:inline-flex;align-items:center;gap:6px;min-width:0;overflow:hidden;text-overflow:ellipsis}.item-title:hover{text-decoration:underline}.items-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.items-foot>:first-child{flex:1}.budget-actions{display:inline-flex;gap:2px}.budget-cards{display:flex;flex-direction:column;gap:8px}.budget-card{border:1px solid var(--line);border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:8px}.budget-card.is-open{background:var(--soft)}.budget-card-head{display:flex;align-items:center;gap:6px;border:none;background:none;padding:0;text-align:left;cursor:pointer;font-size:.95rem}.budget-card-name{flex:1}.budget-card-nums{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;font-size:.85rem;color:var(--muted)}.budget-card-nums b{color:var(--text)}.budget-card-nums .money{min-width:0;padding:0 4px}@media (max-width: 899px){.item-head{display:none}.item-row{grid-template-columns:1fr auto auto;grid-template-areas:"title title title" "cost paid left" "hm hm hm";padding:8px 0;row-gap:2px}.item-row>:nth-child(1){grid-area:title;font-weight:500}.item-row>:nth-child(2){grid-area:cost;justify-self:start}.item-row>:nth-child(3){grid-area:paid}.item-row>:nth-child(4){grid-area:left}.item-row>:nth-child(5){grid-area:hm}.item-row>:nth-child(2):before{content:"Giá ";color:var(--muted);font-size:.8rem}.item-row>:nth-child(3):before{content:"Trả ";color:var(--muted);font-size:.8rem}}.grand{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;padding:14px;border-radius:12px;background:var(--soft);margin-top:6px}.grand div{display:flex;flex-direction:column;gap:2px}.grand span{font-size:.8rem;color:var(--muted)}.grand b{font-size:1.15rem;font-variant-numeric:tabular-nums}.pay-sum{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.pay-sum div{display:flex;flex-direction:column;padding:10px;border-radius:8px;background:var(--soft)}.pay-sum span{font-size:.78rem;color:var(--muted)}.pay-sum b{font-size:1.1rem;font-variant-numeric:tabular-nums}.pay-list{display:flex;flex-direction:column}.pay-row{display:grid;grid-template-columns:52px 70px 1fr auto 36px;align-items:center;gap:8px;padding:4px 0;border-bottom:1px solid var(--line);font-size:.92rem}.pay-no{color:var(--muted);font-size:.8rem}.pay-note{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pay-amt{font-variant-numeric:tabular-nums}.pay-form{display:flex;flex-wrap:wrap;gap:8px}.pay-form .field{min-width:120px}.prop .money+.muted{white-space:nowrap}.kpi .money.empty.kpi-v{font-size:1rem;font-weight:500;color:var(--accent);opacity:1}.autotext.title-edit{padding:2px 0;margin-left:-1px;font-weight:700;line-height:1.2}.autotext.title-edit:hover,.autotext.title-edit:focus{background:none}.page-props{display:flex;align-items:center;gap:6px;font-size:.9rem}.inline-select{border:none;background:none;padding:3px 6px;border-radius:6px;color:var(--text);cursor:pointer}.inline-select:hover{background:var(--hover-a)}.hint{font-size:.78rem;color:var(--muted);padding:2px 6px 4px}@media (pointer: coarse){.hint{display:none}}.title-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.hm-name{width:220px;border-bottom:1px solid var(--line)!important;border-radius:0!important}.budget-actions{align-items:center;gap:6px}.pop-anchor{position:relative;display:inline-block}.pop{position:absolute;top:calc(100% + 6px);left:0;z-index:80;background:var(--bg);border-radius:8px;box-shadow:var(--shadow-pop);padding:10px;width:320px;max-width:calc(100vw - 32px);animation:pop-in .14s var(--ease);display:flex;flex-direction:column;gap:8px;cursor:default}.pop-title{font-size:.75rem;font-weight:600;color:var(--muted)}.icon-pop{width:380px}.icon-pop .icon-grid{grid-template-columns:repeat(auto-fill,minmax(78px,1fr));max-height:300px;overflow-y:auto}.cover-actions .pop{left:auto;right:0}.cover{overflow:visible}.cover-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;-webkit-user-select:none;user-select:none}.cover.is-moving{cursor:ns-resize}.cover.is-moving .cover-img{outline:2px solid var(--accent);outline-offset:-2px}.cover-actions{position:absolute;right:16px;bottom:12px;display:flex;gap:6px;align-items:center;z-index:5;opacity:0;transition:opacity .12s}.cover:hover .cover-actions,.cover.is-moving .cover-actions,.cover-actions:focus-within{opacity:1}@media (pointer: coarse){.cover-actions{opacity:1}}.cover-btn{border:none;background:#ffffffd9;color:#37352f;border-radius:6px;padding:5px 10px;font-size:.8rem;cursor:pointer;display:inline-flex;align-items:center;gap:4px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.cover-btn:hover{background:#fff}.cover-hint{color:#fff;font-size:.8rem;background:#00000073;padding:4px 8px;border-radius:6px}.cover-none{padding:calc(56px + env(safe-area-inset-top,0px)) 16px 0}.cover-none-inner{max-width:720px;margin:0 auto;display:flex;align-items:flex-end;gap:10px}.cover-none+.page.has-cover{padding-top:10px!important}.ghost-btn{border:none;background:none;color:var(--muted);padding:4px 8px;border-radius:6px;cursor:pointer;font-size:.85rem;display:inline-flex;align-items:center;gap:6px;opacity:0;transition:opacity .12s}.cover-none:hover .ghost-btn,.ghost-btn:focus{opacity:1}@media (pointer: coarse){.ghost-btn{opacity:1}}.ghost-btn:hover{background:var(--hover-a)}.swatches{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.swatch{height:34px;border-radius:6px;border:none;cursor:pointer;box-shadow:inset 0 0 0 1px #0000000f}.swatch:hover{outline:2px solid var(--accent);outline-offset:1px}.cover-sunset{background:linear-gradient(120deg,#ff9a8b,#ff6a88 55%,#ff99ac)}.cover-peach{background:linear-gradient(120deg,#ffecd2,#fcb69f)}.cover-ocean{background:linear-gradient(120deg,#2e3192,#1bffff)}.cover-mint{background:linear-gradient(120deg,#d4fc79,#96e6a1 40%,#84fab0)}.cover-forest{background:linear-gradient(120deg,#134e5e,#71b280)}.cover-night{background:linear-gradient(120deg,#0f2027,#203a43 50%,#2c5364)}.tone-sunset,.tone-peach{color:#d9622b}.tone-ocean,.tone-night{color:#2a5a8a}.tone-mint,.tone-forest{color:#2f8a4a}@media (min-width: 900px){.is-wide.full-width .page,.is-wide.full-width .cover-inner,.is-wide.full-width .cover-none-inner{max-width:none}.is-wide .cover-none{padding:64px clamp(24px,6vw,96px) 0}.is-wide .cover-none-inner{max-width:900px;padding:0}.is-wide.full-width .cover-none-inner{max-width:none}}.drop-overlay{position:fixed;top:8px;right:8px;bottom:8px;left:8px;z-index:95;border:3px dashed var(--accent);border-radius:14px;background:#2383e214;display:flex;align-items:center;justify-content:center;pointer-events:none;animation:fade-in .12s ease-out}.drop-overlay div{background:var(--bg);padding:12px 18px;border-radius:10px;box-shadow:var(--shadow-pop);font-weight:600}.sb-foot{border-top:1px solid var(--line);padding:4px 0 6px}.sb-foot .sb-new{margin:2px 6px;width:calc(100% - 12px)}.sb-switch{display:flex;align-items:center;gap:8px;margin:0 6px;padding:6px 8px;border-radius:6px;font-size:13px;color:var(--sb-text);cursor:pointer}.sb-switch:hover{background:var(--hover-a)}.sb-switch span:first-of-type{flex:1}.sb-switch input{display:none}.switch{width:28px;height:16px;border-radius:99px;background:#80808059;position:relative;transition:background .12s;flex:none}.switch:after{content:"";position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:#fff;transition:transform .14s var(--ease)}.sb-switch input:checked+.switch{background:var(--accent)}.sb-switch input:checked+.switch:after{transform:translate(12px)}.sb-floor{cursor:pointer}.sb-floor:hover .sb-hover{opacity:1}.task-tree{display:flex;flex-direction:column}.task-line{display:flex;align-items:center;gap:8px;min-height:34px;padding:1px 6px;border-radius:6px;transition:opacity .3s}.task-line:hover{background:var(--hover-a)}.task-title{flex:1;border:none;outline:none;background:none;padding:5px 0;min-width:0;color:var(--text)}.task-title::placeholder{color:var(--muted);opacity:.6}.task-open{opacity:0;color:var(--muted);display:inline-flex;padding:4px;border-radius:4px}.task-open:hover{background:var(--hover-a)}.task-line:hover .task-open,.task-line:focus-within .task-open{opacity:1}@media (pointer: coarse){.task-open{opacity:.6}}.is-checking .task-title,.is-checking .row-title,.task-line.is-done .task-title{text-decoration:line-through;color:var(--muted)}.is-checking{opacity:.55}.editor{display:flex;flex-direction:column;padding:2px 0}.blk{position:relative;display:flex;align-items:flex-start;gap:4px}.blk-text{flex:1;border:none;outline:none;background:none;resize:none;padding:3px 2px;line-height:1.55;overflow:hidden;font:inherit;color:var(--text);min-width:0}.editor .blk-text:not(:focus)::placeholder{color:transparent}.editor .blk:only-child .blk-text::placeholder,.editor .blk-text:focus::placeholder{color:var(--muted);opacity:.7}.blk-mark{width:24px;flex:none;text-align:center;line-height:1.55;padding-top:3px;-webkit-user-select:none;user-select:none}.blk-num{text-align:right;padding-right:4px;font-variant-numeric:tabular-nums}.blk-check{margin:7px 4px 0 3px}.blk.is-checked .blk-text{text-decoration:line-through;color:var(--muted)}.blk-h1 .blk-text{font-size:1.45rem;font-weight:700;margin-top:10px}.blk-h2 .blk-text{font-size:1.18rem;font-weight:600;margin-top:6px}.blk-quote .blk-text{border-left:3px solid var(--text);padding-left:12px}.slash-menu{position:absolute;top:100%;left:24px;z-index:40;background:var(--bg);box-shadow:var(--shadow-pop);border-radius:8px;padding:6px;width:290px;animation:pop-in .12s var(--ease)}.slash-title{font-size:.72rem;font-weight:600;color:var(--muted);padding:4px 8px}.slash-item{display:flex;justify-content:space-between;gap:8px;width:100%;border:none;background:none;padding:6px 8px;border-radius:4px;text-align:left;cursor:pointer}.slash-item.on{background:var(--hover-a)}:root{--tl-weekend: rgba(55, 53, 47, .045)}@media (prefers-color-scheme: dark){:root{--tl-weekend: rgba(255, 255, 255, .04)}}.tl-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.seg.seg-sm{display:inline-flex}.seg.seg-sm button{flex:none;padding:5px 10px;font-size:.85rem}.tl-scroll{overflow:auto;border:1px solid var(--line);border-radius:10px;max-height:72vh}.tl{position:relative}.tl-head{display:grid;position:sticky;top:0;z-index:6;background:var(--bg);border-bottom:1px solid var(--line)}.tl-corner{position:sticky;left:0;z-index:7;background:var(--bg);padding:8px 10px;font-size:.8rem;color:var(--muted);border-right:1px solid var(--line);display:flex;align-items:flex-end}.tl-ruler{position:relative;height:46px}.tl-month{position:absolute;top:5px;font-size:.75rem;font-weight:600;white-space:nowrap;padding-left:4px;border-left:1px solid var(--line)}.tl-day{position:absolute;bottom:5px;text-align:center;font-size:.7rem;color:var(--muted);line-height:18px}.tl-day.we{opacity:.55}.tl-day.now{color:#fff;background:var(--bad);border-radius:4px;opacity:1}.tl-body{position:relative}.tl-lines{position:absolute;top:0;bottom:0;pointer-events:none;z-index:2}.tl-today,.tl-deadline{position:absolute;top:0;bottom:0;width:0}.tl-today{border-left:2px solid var(--bad)}.tl-deadline{border-left:2px dashed var(--warn)}.tl-today span,.tl-deadline span{position:absolute;top:2px;left:4px;font-size:.68rem;white-space:nowrap;padding:1px 5px;border-radius:4px}.tl-today span{background:var(--bad);color:#fff}.tl-deadline span{background:var(--warn-soft);color:var(--warn)}.tl-row{display:grid;height:34px}.tl-label{position:sticky;left:0;z-index:3;background:var(--bg);border-right:1px solid var(--line);padding:0 10px;display:flex;align-items:center;gap:6px;overflow:hidden;white-space:nowrap;font-size:.86rem;border-bottom:1px solid var(--line)}.tl-name{overflow:hidden;text-overflow:ellipsis}.tl-name.done{text-decoration:line-through;color:var(--muted)}.tl-group-row .tl-label{background:var(--soft)}.tl-group-row .tl-track{background-color:var(--soft)!important}.tl-track{position:relative;border-bottom:1px solid var(--line)}.tl-bar{position:absolute;top:5px;height:23px;border-radius:6px;background:#2383e229;border:1px solid rgba(35,131,226,.5);font-size:.78rem;display:flex;align-items:center;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;overflow:hidden;z-index:1;transition:box-shadow .12s}.tl-bar:hover{box-shadow:var(--shadow-card)}.tl-bar.late{background:var(--bad-soft);border-color:var(--bad)}.tl-bar.done{background:var(--good-soft);border-color:var(--good);opacity:.7}.tl-bar.dragging{cursor:grabbing;box-shadow:var(--shadow-pop);z-index:4}.tl-bar-text{padding:0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.tl-handle{width:8px;align-self:stretch;cursor:ew-resize;flex:none}.tl-handle:hover{background:#2383e24d}.tl-diamond{position:absolute;top:10px;width:14px;height:14px;transform:rotate(45deg);background:var(--muted);border-radius:2px;cursor:grab;touch-action:none;z-index:1}.tl-diamond.st-xem{background:var(--warn)}.tl-diamond.late{background:var(--bad)}.tl-outside{position:absolute;top:8px;font-size:.76rem;color:var(--muted);white-space:nowrap;pointer-events:none}.btn.primary{background:#2383e2;border-color:#2383e2;color:#fff;font-weight:500}.btn.primary:hover:not(:disabled){background:#0077d4;border-color:#0077d4}.btn.primary:disabled{background:var(--soft);border-color:var(--line);color:var(--muted);opacity:1;cursor:default}.sheet-foot{display:flex;align-items:center;justify-content:flex-end;gap:8px;border-top:1px solid var(--line);margin-top:2px;padding-top:12px}.sheet-foot .hide-touch{margin-right:auto}@media (pointer: coarse){.hide-touch{display:none}.sheet-foot .btn{flex:1;padding:11px}}.big-input{border-radius:8px}.big-input:focus{border-color:#2383e2;box-shadow:0 0 0 3px #2383e226}.option{position:relative}.option.on{border-color:#2383e2;box-shadow:0 0 0 1px #2383e2}.option-check{position:absolute;top:6px;left:6px;z-index:2;background:#ffffffe6;border-radius:6px;padding:4px;display:inline-flex;box-shadow:0 1px 3px #00000026;cursor:pointer}.sel-bar{position:sticky;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px) + 10px);z-index:15;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;border-radius:12px;background:var(--bg);box-shadow:var(--shadow-pop);animation:pop-in .14s var(--ease)}.sel-bar>span{flex:1}@media (min-width: 900px){.sel-bar{bottom:16px}}.chosen-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.chosen-card{position:relative;background:var(--bg);border-radius:10px;overflow:hidden;box-shadow:var(--shadow-card);display:flex;flex-direction:column}.chosen-photo{aspect-ratio:4 / 3;background:var(--soft);cursor:zoom-in;position:relative;display:flex;align-items:center;justify-content:center}.chosen-photo .thumb-fill img{object-fit:cover}.chosen-caption{font-size:.88rem}.chosen-x{position:absolute;top:6px;right:6px;width:26px;height:26px;border-radius:50%;border:none;background:#0000008c;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .12s}.chosen-card:hover .chosen-x{opacity:1}@media (pointer: coarse){.chosen-x{opacity:1}}.chosen-x svg.lucide{width:14px;height:14px}.thumb{position:relative}.thumb-anno{position:absolute;left:4px;bottom:4px;width:18px;height:18px;border-radius:5px;background:#e03131;color:#fff;display:inline-flex;align-items:center;justify-content:center}.thumb-anno svg.lucide{width:11px;height:11px;stroke-width:2.4}.anno-wrap{position:relative;display:inline-block;line-height:0;max-width:100%;-webkit-user-select:none;user-select:none}.anno-wrap img{display:block;max-width:100%}.anno-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;overflow:visible}.anno-wrap.editing .anno-shape{pointer-events:stroke;cursor:pointer}.anno-shape.sel{filter:drop-shadow(0 0 3px rgba(255,255,255,.9))}.anno-note{position:absolute;line-height:1.35;z-index:2}.anno-dot{position:absolute;left:-6px;top:-6px;width:12px;height:12px;border-radius:50%;background:var(--c);box-shadow:0 0 0 2px #fff}.anno-bubble{position:absolute;left:12px;top:0;transform:translateY(-50%);background:var(--c);color:#fff;font-size:13px;font-weight:600;padding:5px 9px;border-radius:8px;white-space:pre-wrap;width:max-content;max-width:240px;box-shadow:0 2px 8px #0000004d}.anno-note.flip .anno-bubble{left:auto;right:12px}.anno-note[style*="#ffffff"] .anno-bubble,.anno-note[style*="#f59f00"] .anno-bubble{color:#111}.anno-wrap.editing .anno-note{cursor:move}.anno-note.sel .anno-bubble{outline:2px solid #fff;outline-offset:1px}.viewer-img{display:flex;align-items:center;justify-content:center;max-width:100vw;max-height:100vh}.viewer-img .anno-wrap img{max-width:100vw;max-height:calc(100vh - 110px);object-fit:contain}.viewer-top{position:absolute;top:calc(12px + env(safe-area-inset-top,0px));right:12px;display:flex;gap:8px;align-items:center}.viewer-top .viewer-close{position:static}.viewer-pill{display:inline-flex;align-items:center;gap:6px;border:none;background:#ffffffeb;color:#37352f;border-radius:99px;padding:8px 14px;font-weight:500;cursor:pointer}.viewer-pill:hover{background:#fff}.anno-editor{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;background:#191919;display:flex;flex-direction:column;color:#fff}.anno-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:calc(8px + env(safe-area-inset-top,0px)) 12px 8px;background:#232323}.anno-tools,.anno-colors,.anno-actions{display:flex;gap:4px;align-items:center}.anno-actions{margin-left:auto}.anno-tool{display:inline-flex;align-items:center;gap:6px;border:none;background:none;color:#ddd;padding:7px 10px;border-radius:8px;cursor:pointer;font-size:.85rem}.anno-tool:hover{background:#ffffff14}.anno-tool.on{background:#ffffff29;color:#fff}.anno-tool:disabled{opacity:.35;cursor:default}.anno-color{width:22px;height:22px;border-radius:50%;border:2px solid rgba(255,255,255,.25);cursor:pointer;padding:0}.anno-color.on{border-color:#fff;transform:scale(1.15)}.anno-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.2);background:none;color:#fff;padding:7px 12px;border-radius:8px;cursor:pointer}.anno-btn.primary{background:#2383e2;border-color:#2383e2}.anno-stage{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:12px;overflow:hidden}.anno-stage .anno-wrap img{max-width:calc(100vw - 24px);max-height:calc(100vh - 150px);object-fit:contain}.anno-wrap.editing{touch-action:none;cursor:crosshair}.anno-wrap.editing.tool-note{cursor:copy}.anno-input{position:absolute;z-index:5;transform:translate(14px,-50%);width:220px;min-height:60px;border-radius:8px;border:2px solid #2383e2;padding:6px 8px;font:600 13px/1.35 system-ui,sans-serif;color:#111;background:#fff;resize:none;outline:none;line-height:1.35}.anno-help{padding:8px 12px calc(10px + env(safe-area-inset-bottom,0px));font-size:.8rem;color:#aaa;text-align:center}@media (max-width: 899px){.anno-tool span{display:none}.anno-actions{margin-left:0;width:100%;justify-content:flex-end}}.doc-tabs{display:flex;gap:6px;flex-wrap:wrap}.doc-tab{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--bg);border-radius:8px;padding:6px 10px;cursor:pointer}.doc-tab.on{border-color:#2383e2;color:#2383e2;background:#2383e20f}.doc-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}.doc-name{font-size:1.2rem;font-weight:700;width:auto!important;flex:1;min-width:200px}.doc-actions{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap}.doc-preview{border:1px solid var(--line);border-radius:10px;overflow:hidden;margin:8px 0;background:var(--soft)}.doc-preview iframe{width:100%;height:70vh;border:0;display:block}.doc-preview img{max-width:100%;display:block;margin:0 auto}.search.inline{width:auto;flex:1;min-width:180px;display:block!important}.doc-table td{font-size:.86rem;vertical-align:top}.doc-table tr.unlinked td.col-link select{color:var(--warn)}.doc-heading td{background:var(--soft);font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.03em}.doc-heading .tag{margin-left:8px;text-transform:none;letter-spacing:0}.col-area select,.col-link select{border:1px solid transparent;background:none;border-radius:6px;padding:3px 4px;max-width:200px;color:var(--text)}.col-area select:hover,.col-link select:hover{border-color:var(--line);background:var(--bg)}.col-area{min-width:140px}.col-link{min-width:210px}.link-cell{display:flex;align-items:center;gap:2px}.doc-ref{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:8px;background:var(--soft);margin-top:6px}.doc-ref:hover{background:var(--hover)}.doc-ref-cells{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:.88rem}.doc-area{border:1px solid var(--line);border-radius:10px;padding:6px 8px;margin-top:6px}.doc-area-head{display:flex;justify-content:space-between;gap:8px;font-weight:600;padding:4px}.doc-area-row{display:flex;justify-content:space-between;gap:8px;padding:4px;font-size:.9rem;border-top:1px solid var(--line)}.doc-area-row.unlinked{color:var(--muted)}label.btn.disabled{opacity:.6;pointer-events:none}.baseline.is-wide{display:flex;min-height:100vh;align-items:flex-start}.bl-side{width:270px;flex:none;position:sticky;top:0;height:100vh;overflow-y:auto;background:var(--soft);border-right:1px solid var(--line);padding:12px 8px}.bl-side-head{display:flex;flex-direction:column;padding:6px 10px 10px}.bl-nav{display:flex;flex-direction:column}.bl-nav-floor{font-size:.72rem;font-weight:600;color:var(--muted);padding:14px 10px 4px;text-transform:uppercase;letter-spacing:.04em}.bl-nav-item{display:flex;align-items:center;gap:8px;width:100%;border:none;background:none;text-align:left;padding:7px 10px;border-radius:6px;cursor:pointer;color:var(--sb-text, #5f5e5b);font-size:.93rem}.bl-nav-item:hover{background:var(--hover-a)}.bl-nav-item.on{background:var(--hover-a);color:var(--text);font-weight:600}.bl-nav-icon{color:var(--muted)}.bl-nav-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bl-nav-count{font-size:.75rem;color:var(--muted);font-weight:400}.bl-nav-count.all{color:var(--good)}.bl-new-dot{width:7px;height:7px;border-radius:50%;background:#e8590c;flex:none}.bl-content{flex:1;min-width:0}.bl-page{max-width:980px;margin:0 auto;padding:24px clamp(16px,4vw,56px) 80px;display:flex;flex-direction:column;gap:4px}.bl-title{font-size:2rem;font-weight:700;line-height:1.2;margin:2px 0 4px}.bl-section{margin-top:22px}.bl-section h2{font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:10px}.bl-recent{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}.bl-recent-item{display:flex;gap:10px;align-items:center;text-align:left;border:1px solid var(--line);border-radius:10px;background:var(--bg);padding:8px;cursor:pointer}.bl-recent-item:hover{background:var(--soft)}.bl-recent-photo{width:56px;height:56px;border-radius:8px;overflow:hidden;flex:none;background:var(--good-soft);color:var(--good);display:flex;align-items:center;justify-content:center}.bl-recent-photo .anno-wrap img{width:56px;height:56px;object-fit:cover}.bl-recent-photo .anno-svg,.bl-recent-photo .anno-note{display:none}.bl-recent-text{display:flex;flex-direction:column;min-width:0}.bl-rooms{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.bl-room{display:flex;flex-direction:column;gap:6px;text-align:left;border:1px solid var(--line);border-radius:10px;background:var(--bg);padding:12px;cursor:pointer}.bl-room:hover{background:var(--soft)}.bl-room-icon{color:var(--muted);width:22px!important;height:22px!important}.bl-room-name{font-weight:600}.bl-room-bar{height:5px;background:var(--hover);border-radius:9px;overflow:hidden}.bl-room-bar span{display:block;height:100%;background:var(--good)}.bl-badge{background:var(--warn-soft);color:var(--warn);font-size:.66rem;font-weight:700;border-radius:4px;padding:1px 6px;margin-left:6px;vertical-align:middle}.bl-room-head{display:flex;align-items:center;gap:14px}.bl-room-head-icon{width:56px!important;height:56px!important;padding:13px;border-radius:14px;background:var(--soft);color:var(--muted);stroke-width:1.5!important}.bl-pending{display:flex;gap:10px;align-items:flex-start;background:var(--warn-soft);color:var(--warn);border-radius:10px;padding:10px 12px;margin:12px 0 4px;font-size:.93rem}.bl-pending svg.lucide{margin-top:3px}.bl-card{border:1px solid var(--line);border-radius:14px;padding:16px;margin-top:14px}.bl-card-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px}.bl-card-head h2{font-size:1.2rem;margin:0}.bl-specline{color:var(--muted);margin-top:2px}.bl-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-top:12px}.bl-photos.one{grid-template-columns:1fr}.bl-photo{margin:0;border-radius:10px;overflow:hidden;background:var(--soft);cursor:zoom-in;display:flex;flex-direction:column;align-items:center}.bl-photo .anno-wrap img{max-height:240px;width:auto;max-width:100%}.bl-photos.one .bl-photo .anno-wrap img{max-height:70vh}.bl-photo figcaption{font-size:.85rem;padding:6px 10px;color:var(--muted);align-self:stretch}.bl-specs{width:100%;border-collapse:collapse;margin-top:12px}.bl-specs th{text-align:left;font-weight:400;color:var(--muted);width:34%;padding:8px 0;border-bottom:1px solid var(--line);vertical-align:top}.bl-specs td{padding:8px 0;border-bottom:1px solid var(--line)}.bl-worker{background:var(--warn-soft);border-radius:10px;padding:10px 12px;margin-top:12px}.bl-worker b{color:var(--warn);display:inline-flex;align-items:center;gap:6px}.bl-worker p{margin-top:4px;white-space:pre-wrap}.bl-docrows{margin-top:10px;font-size:.85rem;color:var(--muted);display:flex;flex-direction:column;gap:2px}.bl-empty{padding:20px 0}.bl-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;max-width:980px;margin:0 auto;padding:16px clamp(16px,4vw,56px) 0}.baseline.is-narrow .bl-top{position:sticky;top:0;z-index:12;background:var(--bg);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top,0px)}.bl-nav.chips{flex-direction:row;gap:6px;overflow-x:auto;padding:10px 12px;scrollbar-width:none}.bl-nav.chips::-webkit-scrollbar{display:none}.bl-nav.chips .bl-nav-group{display:contents}.bl-nav.chips .bl-nav-floor{display:none}.bl-nav.chips .bl-nav-item{width:auto;flex:none;border:1px solid var(--line);border-radius:99px;padding:6px 12px;white-space:nowrap;background:var(--bg)}.bl-nav.chips .bl-nav-item.on{background:var(--text);color:var(--bg);border-color:var(--text)}.bl-nav.chips .bl-nav-item.on .bl-nav-icon,.bl-nav.chips .bl-nav-item.on .bl-nav-count{color:var(--bg)}.bl-nav.chips .bl-nav-name{overflow:visible}.baseline.is-narrow .bl-page{padding:16px 14px 90px}.baseline.is-narrow .bl-title{font-size:1.55rem}.baseline.is-narrow .bl-photos{grid-template-columns:1fr 1fr}.baseline.is-narrow .bl-photos.one{grid-template-columns:1fr}.baseline.is-narrow .bl-photo .anno-wrap img{max-height:150px}.baseline.is-narrow .bl-card{padding:12px}.dad-shell{min-height:100vh;background:var(--bg)}.dad-shell-bar{display:flex;justify-content:flex-end;max-width:980px;margin:0 auto;padding:8px clamp(12px,4vw,56px) 0}.ghost-btn.visible{opacity:1}.switch-row{cursor:pointer}.prop-k.wide{width:auto;flex:1}@media print{.bl-side,.bl-top,.bl-actions,.dad-shell-bar{display:none!important}}.bl-photo .anno-bubble,.chosen-photo .anno-bubble{font-size:10px;padding:2px 6px;max-width:120px}.bl-photo .anno-dot,.chosen-photo .anno-dot{width:8px;height:8px;left:-4px;top:-4px}.bl-photos.one .bl-photo .anno-bubble{font-size:13px;padding:5px 9px;max-width:240px}.role-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:var(--soft)}.role-box{width:100%;max-width:680px;display:flex;flex-direction:column;gap:12px}.role-box h1{font-size:1.9rem}.role-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 599px){.role-cards{grid-template-columns:1fr}}.role-card{display:flex;flex-direction:column;gap:6px;text-align:left;padding:18px;border-radius:14px;border:1px solid var(--line);background:var(--bg);cursor:pointer;transition:box-shadow .12s,border-color .12s}.role-card:hover{box-shadow:var(--shadow-card)}.role-card.on{border-color:#2383e2;box-shadow:0 0 0 1px #2383e2}.role-card b{font-size:1.05rem}.role-icon{width:40px;height:40px;border-radius:10px;background:var(--soft);display:inline-flex;align-items:center;justify-content:center;color:var(--muted)}.role-pin{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:14px;border-radius:12px;background:var(--bg);animation:pop-in .14s var(--ease)}.role-pin .field{flex:1;min-width:220px}.pin-input{padding:8px 10px;border-radius:8px;border:1px solid var(--line);background:var(--bg);width:190px;letter-spacing:.15em}.pin-input.bad{border-color:var(--bad)}.pin-pop{right:0;left:auto;width:260px}.dad-shell-bar .pop-anchor{position:relative}.bl-owner-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.bl-nav-floor{color:var(--text);font-weight:800;font-size:.78rem;letter-spacing:.06em;padding:16px 10px 6px;margin-top:6px;border-top:1px solid var(--line);display:flex;align-items:center;gap:6px}.bl-nav-floor:before{content:"";width:4px;height:14px;border-radius:2px;background:#2383e2}.bl-nav-group:first-of-type .bl-nav-floor{border-top:none}.bl-nav-item{color:var(--text);font-weight:500;font-size:.95rem;position:relative}.bl-nav-item .bl-nav-icon{color:var(--text);opacity:.75}.bl-nav-item.on{background:#2383e21f;color:#1b6ec2;font-weight:700}.bl-nav-item.on:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:2px;background:#2383e2}.bl-nav-item.on .bl-nav-icon{color:#1b6ec2;opacity:1}.bl-side-head b{font-size:1.05rem}.bl-floor-title{font-size:1.05rem!important;font-weight:700;color:var(--text)!important;text-transform:none!important;letter-spacing:0!important;display:flex;align-items:center;gap:8px;padding-bottom:8px;border-bottom:1px solid var(--line)}.bl-floor-title:before{content:"";width:4px;height:16px;border-radius:2px;background:#2383e299}.bl-room-name{font-size:1.02rem;font-weight:700}.bl-room-head .bl-title{font-weight:800}.bl-card-head h2{font-weight:700}.bl-card{border-left:4px solid var(--good)}.bl-nav.chips .bl-nav-floor{display:inline-flex;flex:none;border:none;margin:0 0 0 6px;padding:0 4px;font-size:.7rem;color:var(--muted);white-space:nowrap}.bl-nav.chips .bl-nav-floor:before{height:12px}.bl-nav.chips .bl-nav-item{font-weight:600}.bl-nav.chips .bl-nav-item.on:before{display:none}.bl-nav.chips .bl-nav-item.on{background:var(--text);color:var(--bg)}.ai-fab{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:30;display:inline-flex;align-items:center;gap:8px;border:none;border-radius:99px;padding:10px 16px;cursor:pointer;color:var(--ai-text);font-weight:600;background:linear-gradient(120deg,var(--ai-1),var(--ai-2));box-shadow:0 4px 14px #3f7a5c2e,inset 0 0 0 1px #3f7a5c1f;transition:transform .12s,box-shadow .12s}.ai-fab:hover{transform:translateY(-1px);box-shadow:0 6px 18px #3f7a5c3d,inset 0 0 0 1px #3f7a5c29}:root{--ai-1: #dcefe4;--ai-2: #b7dcc8;--ai-text: #2f5e47;--ai-ink: #3f7a5c;--ai-soft: rgba(111, 170, 137, .14)}@media (prefers-color-scheme: dark){:root{--ai-ink: #8fcaa9}}@media (max-width: 899px){.ai-fab{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px) + 12px);right:12px;padding:10px 12px}.ai-fab span{display:none}}.ai-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:85;background:#0f0f0f40;animation:fade-in .12s ease-out}.ai-panel{position:absolute;top:0;right:0;bottom:0;width:min(560px,100vw);background:var(--bg);box-shadow:var(--shadow-pop);display:flex;flex-direction:column;animation:slide-left .2s var(--ease)}.ai-head{display:flex;align-items:center;gap:8px;padding:calc(10px + env(safe-area-inset-top,0px)) 12px 10px 16px;border-bottom:1px solid var(--line)}.ai-head-icon{color:var(--ai-ink)}.ai-head .spacer{flex:1}.ai-scope{display:flex;align-items:center;gap:8px;padding:8px 16px;border-bottom:1px solid var(--line)}.ai-scope select{flex:1;padding:6px 8px;border-radius:6px;border:1px solid var(--line);background:var(--bg)}.ai-panel>.alert{margin:8px 16px 0}.ai-list{flex:1;overflow-y:auto;padding:14px 16px;display:flex;flex-direction:column;gap:12px}.ai-empty{color:var(--muted);font-size:.92rem;padding:8px 0}.ai-msg{border-radius:12px;padding:10px 12px;font-size:.93rem;line-height:1.55}.ai-msg.user{align-self:flex-end;max-width:85%;background:#2383e21a;white-space:pre-wrap}.ai-msg.ai{background:var(--soft)}.ai-msg.thinking{color:var(--muted);display:flex;align-items:center;gap:10px}.dots{display:inline-flex;gap:3px}.dots i{width:6px;height:6px;border-radius:50%;background:var(--ai-ink);animation:blink 1s infinite ease-in-out}.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}@keyframes blink{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.ai-msg-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:10px;padding-top:8px;border-top:1px solid var(--line)}.ai-msg-actions .good{display:inline-flex;align-items:center;gap:4px}.ai-presets{display:flex;gap:6px;overflow-x:auto;padding:8px 16px 0;scrollbar-width:none}.ai-presets::-webkit-scrollbar{display:none}.ai-chip{flex:none;border:1px solid var(--line);background:var(--bg);border-radius:99px;padding:5px 11px;font-size:.82rem;cursor:pointer;white-space:nowrap}.ai-chip:hover:not(:disabled){border-color:var(--ai-2);color:var(--ai-ink);background:var(--ai-soft)}.ai-chip:disabled{opacity:.5;cursor:default}.ai-input{display:flex;gap:8px;align-items:flex-end;padding:10px 16px calc(12px + env(safe-area-inset-bottom,0px))}.ai-input textarea{flex:1;resize:none;border:1px solid var(--line);border-radius:10px;padding:9px 11px;outline:none;background:var(--bg);color:var(--text);font:inherit}.ai-input textarea:focus{border-color:#2383e2;box-shadow:0 0 0 3px #2383e226}.ai-send{height:42px;width:46px;padding:0}.md h3{font-size:1.02rem;margin:10px 0 4px}.md h4{font-size:.95rem;margin:8px 0 2px}.md p{margin:4px 0}.md-li{display:flex;gap:6px;margin:2px 0}.md-dot{color:var(--muted)}.md-num{color:var(--muted);min-width:18px;text-align:right;font-variant-numeric:tabular-nums}.md-box{width:14px;height:14px;border:1.5px solid var(--muted);border-radius:3px;flex:none;margin-top:4px;font-size:10px;line-height:11px;text-align:center}.md code{background:var(--hover);border-radius:4px;padding:0 4px;font-size:.88em}.md-table{font-size:.85rem;margin:6px 0}.md-table th{font-weight:600;color:var(--text)}.dad-shell .ai-fab{display:none}@media print{.ai-fab{display:none}}.menu-pop{position:fixed;z-index:300;width:268px;max-height:calc(100vh - 16px);overflow-y:auto;background:var(--bg);border-radius:8px;padding:5px;box-shadow:var(--shadow-pop, 0 8px 28px rgba(15, 15, 15, .18), 0 0 0 1px rgba(15, 15, 15, .06));display:flex;flex-direction:column;gap:1px;animation:pop-in .12s var(--ease, ease-out);font-size:.875rem;color:var(--text)}.menu-title{font-size:.72rem;font-weight:600;color:var(--muted);padding:6px 8px 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-head{display:flex;align-items:center;gap:4px;padding:2px 4px 4px;font-weight:600;font-size:.82rem}.menu-head span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-back{border:none;background:none;width:24px;height:24px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);cursor:pointer;flex:none}.menu-back:hover{background:var(--hover-a, rgba(55, 53, 47, .08))}.menu-back svg{width:16px;height:16px}.menu-item{display:flex;align-items:center;gap:8px;width:100%;border:none;background:none;text-align:left;color:inherit;padding:6px 8px;border-radius:5px;cursor:pointer;font:inherit;line-height:1.3}.menu-item:hover{background:var(--hover-a, rgba(55, 53, 47, .08))}.menu-item.danger{color:var(--bad)}.menu-item.danger:hover{background:var(--bad-soft)}.menu-ic{width:18px;display:inline-flex;justify-content:center;flex:none;color:var(--muted)}.menu-item.danger .menu-ic{color:var(--bad)}.menu-ic svg{width:16px;height:16px}.menu-label{flex:1;min-width:0}.menu-hint{font-size:.72rem;color:var(--muted)}.menu-arrow{width:14px;height:14px;color:var(--muted)}.menu-sep{height:1px;background:var(--line);margin:4px 2px}.menu-text{margin:2px 8px 6px;font-size:.82rem;color:var(--muted);line-height:1.45}.menu-text b{color:var(--text)}.menu-chips{display:flex;flex-wrap:wrap;gap:5px;padding:0 8px 4px}.menu-chip{border:1px solid var(--line);background:var(--bg);border-radius:999px;padding:4px 10px;font-size:.8rem;cursor:pointer;color:var(--text)}.menu-chip:hover{border-color:var(--accent);color:var(--accent)}.menu-icons{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;padding:2px 4px 4px}.menu-icon{border:none;background:none;aspect-ratio:1;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text)}.menu-icon:hover{background:var(--hover-a, rgba(55, 53, 47, .08))}.menu-icon.on{background:var(--soft);box-shadow:inset 0 0 0 1px var(--accent);color:var(--accent)}.menu-icon svg{width:18px;height:18px}.inline-name{flex:1;min-width:0;font:inherit;color:var(--text);background:var(--bg);border:none;outline:none;border-radius:4px;padding:1px 4px;margin:-1px 0;box-shadow:0 0 0 2px #2383e273}.sb-icon-btn.is-open{opacity:1!important;background:var(--hover-a, rgba(55, 53, 47, .08))}.sb-section{display:flex;align-items:center;justify-content:space-between}.sb-sec-btn{opacity:0;width:22px;height:22px}.sb-section:hover .sb-sec-btn{opacity:1}.sb-sec-btn svg{width:14px;height:14px}.sb-add-floor{color:var(--muted);margin-top:2px}.sb-page.is-dragging{opacity:.4}.sb-item.drop-before{box-shadow:inset 0 2px 0 var(--accent)}.sb-item.drop-after{box-shadow:inset 0 -2px 0 var(--accent)}.sb-fgroup.drop-into>.sb-floor{background:#2383e21f}.floor-head{display:flex;align-items:center;gap:4px}.floor-head .block-title{margin:0}.floor-head input.block-title{flex:0 1 260px;font-size:1rem;font-weight:600}.floor-more{opacity:0;transition:opacity .12s}.floor-head:hover .floor-more,.floor-more.is-open{opacity:1}@media (pointer: coarse){.floor-more,.sb-sec-btn{opacity:1}}.add-floor{margin:4px 0 24px}.ai-ops{margin:10px 0 4px;border:1px solid var(--line);border-radius:10px;background:var(--bg);overflow:hidden}.ai-ops.done{border-color:#44836159}.ai-ops-head{display:flex;align-items:center;gap:6px;padding:8px 10px;background:var(--soft);font-size:.85rem}.ai-ops-head svg{width:15px;height:15px;color:var(--ai-ink)}.ai-ops-list{display:flex;flex-direction:column;max-height:320px;overflow-y:auto;padding:4px}.ai-op{display:flex;align-items:flex-start;gap:8px;padding:6px;border-radius:6px;font-size:.85rem;line-height:1.4;cursor:pointer}.ai-op:hover{background:var(--hover-a, rgba(55, 53, 47, .06))}.ai-op input{margin-top:3px;flex:none;accent-color:var(--accent)}.ai-op.danger>span{color:var(--bad)}.ai-op.off>span{color:var(--muted);text-decoration:line-through}.ai-op.bad{cursor:default}.ai-op.bad>span{color:var(--muted)}.ai-op-err{display:flex;align-items:center;gap:4px;color:var(--warn);font-size:.78rem;margin:2px 0 0}.ai-op-err svg{width:13px;height:13px;flex:none}.ai-ops-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:8px 10px;border-top:1px solid var(--line)}.ai-ops-foot .good{display:inline-flex;align-items:center;gap:4px}.ai-ops-foot svg{width:14px;height:14px}.hero-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.ai-week{color:var(--ai-ink);border-color:var(--ai-2);background:var(--ai-soft)}.ai-week:hover{background:var(--ai-1)}.ai-week svg{width:14px;height:14px}.pace{display:flex;align-items:center;gap:8px;margin:2px 0 0;padding:8px 12px;border-radius:8px;background:var(--soft);font-size:.88rem;color:var(--muted)}.pace b{color:var(--text)}.pace svg{width:16px;height:16px;flex:none}.pace.warn{background:var(--warn-soft);color:var(--warn)}.pace.bad{background:var(--bad-soft);color:var(--bad)}.ins-card{border:1px solid var(--line);border-radius:12px;padding:10px 6px 8px;background:var(--bg);display:flex;flex-direction:column;min-width:0}.ins-card.tone-bad{border-color:#d44c4747}.ins-head{display:flex;align-items:center;gap:8px;padding:0 8px 6px}.ins-head h2{font-size:.95rem;font-weight:650;margin:0}.ins-head .spacer{flex:1}.ins-ic{display:inline-flex;color:var(--muted)}.ins-ic svg{width:17px;height:17px}.ins-card.tone-bad .ins-ic{color:var(--bad)}.ins-count{font-size:.72rem;font-weight:600;background:var(--soft);color:var(--muted);border-radius:99px;padding:1px 7px}.ins-card.tone-bad .ins-count{background:var(--bad-soft);color:var(--bad)}.ins-link{font-size:.8rem;color:var(--muted);padding:2px 6px;border-radius:5px}.ins-link:hover{background:var(--hover-a, rgba(55, 53, 47, .08));color:var(--text)}.ins-label{font-size:.72rem;font-weight:600;color:var(--muted);padding:6px 8px 2px;text-transform:uppercase;letter-spacing:.03em}.ins-row{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:6px;color:inherit;min-width:0}.ins-row:hover{background:var(--hover-a, rgba(55, 53, 47, .06))}.ins-row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.ins-row-title{font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ins-row-sub{display:flex;flex-wrap:wrap;align-items:center;gap:2px 8px;font-size:.76rem;color:var(--muted);min-width:0}.ins-area{display:inline-flex;align-items:center;gap:3px}.ins-area svg{width:12px;height:12px}.ins-why{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.ins-guess{opacity:.75}.ins-row .chip{flex:none;font-size:.72rem;padding:2px 7px;border-radius:99px;background:var(--soft);color:var(--muted);white-space:nowrap}.ins-row .chip.warn{background:var(--warn-soft);color:var(--warn)}.ins-row .chip.bad{background:var(--bad-soft);color:var(--bad)}.ins-more{border:none;background:none;color:var(--muted);font-size:.8rem;padding:6px 8px;text-align:left;cursor:pointer;border-radius:6px}.ins-more:hover{background:var(--hover-a, rgba(55, 53, 47, .06));color:var(--text)}.ins-empty{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:2px 8px 4px;font-size:.85rem;color:var(--muted);line-height:1.5}.ins-empty svg{width:15px;height:15px;color:var(--good)}.ins-empty a{text-decoration:underline}.ins-money{display:flex;flex-direction:column;gap:6px;padding:2px 8px 6px;color:inherit}.ins-money-top{display:flex;justify-content:space-between;gap:8px;font-size:.85rem}.ins-money-top b{font-variant-numeric:tabular-nums}.ins-money .over,.ins-money-grid .over{color:var(--bad)}.ins-money-grid{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:.78rem;color:var(--muted)}.ins-money-grid b{color:var(--text);font-variant-numeric:tabular-nums}.ins-hot{display:flex;align-items:center;gap:8px;margin:2px 4px;padding:6px 8px;border-radius:8px;background:var(--warn-soft);color:var(--warn);font-size:.82rem}.ins-hot span:nth-child(2){flex:1}.ins-hot svg{width:14px;height:14px;flex:none}.watch{display:block;margin:2px 4px;border-radius:8px;color:inherit}.watch-head{display:flex;align-items:center;gap:8px;width:100%;border:none;background:none;padding:7px 8px;text-align:left;font:inherit;font-size:.85rem;color:inherit;cursor:pointer;border-radius:8px}.watch-head:hover:not(:disabled){background:var(--hover-a, rgba(55, 53, 47, .06))}.watch-head:disabled{cursor:default}.watch-text{flex:1;color:var(--muted);line-height:1.4}.watch-text b{color:var(--text);font-weight:600}.watch-ic{display:inline-flex;flex:none}.watch-ic svg{width:15px;height:15px}.watch.tone-bad .watch-ic,.watch.tone-bad .watch-text b{color:var(--bad)}.watch.tone-warn .watch-ic{color:var(--warn)}.watch.tone-info .watch-ic{color:var(--accent)}.watch-chev{width:15px;height:15px;color:var(--muted);transition:transform .15s;flex:none}.watch-chev.open{transform:rotate(90deg)}.watch-list{padding:0 0 4px 14px}.home-rooms{gap:6px}.rooms-toggle{display:inline-flex;align-items:center;gap:6px;border:none;background:none;padding:4px 6px 4px 2px;margin-left:-2px;border-radius:6px;cursor:pointer;font:inherit;font-size:1rem;font-weight:650;color:var(--text);align-self:flex-start}.rooms-toggle:hover{background:var(--hover-a, rgba(55, 53, 47, .06))}.rooms-chev{width:16px;height:16px;color:var(--muted);transition:transform .15s}.rooms-chev.open{transform:rotate(90deg)}.rooms-floor{margin-top:8px}.rooms-floor .floor-head h3.block-title{font-size:.85rem;font-weight:600;color:var(--muted)}.room-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px;margin-top:4px}.room-tile{display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid var(--line);border-radius:10px;color:inherit;min-width:0}.room-tile:hover{background:var(--soft)}.room-ic{width:32px;height:32px;border-radius:8px;background:var(--soft);display:inline-flex;align-items:center;justify-content:center;flex:none}.room-ic svg{width:17px;height:17px}.room-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.room-name{font-size:.88rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:6px}.room-dot{width:7px;height:7px;border-radius:50%;background:var(--bad);flex:none}.room-meta{font-size:.74rem;color:var(--muted)}@media (max-width: 899px){.room-grid{grid-template-columns:1fr 1fr}}.before-task{max-width:100%}.dgroup{margin:1px 0}.dgroup-head{display:flex;align-items:center;gap:4px;padding:2px 8px 2px 2px;border-radius:6px}.dgroup-head:hover{background:var(--hover-a, rgba(55, 53, 47, .06))}.dgroup-toggle{border:none;background:none;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border-radius:5px;flex:none;padding:0}.dgroup-toggle:hover{background:var(--hover-a, rgba(55, 53, 47, .08))}.dgroup-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;padding:4px 0;color:inherit}.dgroup-main .ins-row-title{font-weight:600}.dgroup-head .chip{flex:none;font-size:.72rem;padding:2px 7px;border-radius:99px;background:var(--soft);color:var(--muted);white-space:nowrap}.dgroup-head .chip.warn{background:var(--warn-soft);color:var(--warn)}.dgroup-head .chip.bad{background:var(--bad-soft);color:var(--bad)}.dgroup-list{padding-left:22px}.home{gap:20px!important}.home-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px 16px;flex-wrap:wrap;padding-top:8px}.home-title h1{font-size:2rem;font-weight:700;letter-spacing:-.01em;margin:0;line-height:1.15}.is-wide .home-title h1{font-size:2.4rem}.home-title p{margin:4px 0 0}.home-actions{display:flex;gap:8px;flex-wrap:wrap}.home-actions .btn svg{width:15px;height:15px}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.kpi{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--bg);color:inherit;min-width:0;transition:background .12s,border-color .12s}.kpi:hover{background:var(--soft)}.kpi-label{display:flex;align-items:center;gap:6px;font-size:.78rem;color:var(--muted);font-weight:500}.kpi-label svg{width:14px;height:14px}.kpi-value{font-size:1.5rem;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi-value small{font-size:.85rem;font-weight:500;color:var(--muted)}.kpi-sub{font-size:.76rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi .bar{height:4px}.kpi.tone-warn .kpi-sub,.kpi.tone-warn .kpi-label{color:var(--warn)}.kpi.tone-bad .kpi-sub,.kpi.tone-bad .kpi-label{color:var(--bad)}.kpi.tone-bad{border-color:#d44c474d}@media (max-width: 699px){.kpis{grid-template-columns:1fr 1fr;gap:10px}.kpi{padding:10px 12px}.kpi-value{font-size:1.3rem}}.qn-trigger{display:flex;align-items:center;gap:10px;padding:6px 6px 6px 14px;border:1px solid var(--line);border-radius:12px;background:var(--soft);cursor:text;color:var(--muted);transition:border-color .12s,background .12s}.qn-trigger:hover{border-color:#2383e266;background:var(--bg)}.qn-trigger-ic{width:17px;height:17px;flex:none}.qn-trigger-text{flex:1;min-width:0;padding:6px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qn-trigger kbd{font-size:.7rem}.home-search{margin-top:-8px}.ins-cols{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:16px;align-items:start}.ins-col{display:flex;flex-direction:column;gap:16px;min-width:0}@media (max-width: 699px){.ins-cols{grid-template-columns:1fr}}.ins-card{padding:0 0 6px;overflow:hidden}.ins-head{padding:11px 14px 10px;border-bottom:1px solid var(--line);margin-bottom:4px}.ins-card>.ins-row,.ins-card>.dgroup,.ins-card>.ins-label,.ins-card>.watch,.ins-card>.ins-more,.ins-card>.ins-hot,.ins-card>.mini-stats{margin-left:6px;margin-right:6px}.ins-card>.ins-empty{margin:8px 14px}.mini-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:4px 0 6px}.mini-stat{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:8px;background:var(--soft);color:inherit;min-width:0}.mini-stat:hover{background:var(--hover)}.mini-stat span{font-size:.74rem;color:var(--muted)}.mini-stat b{font-size:.98rem;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-stat b.over{color:var(--bad)}.mini-stat b.good{color:var(--good)}.home-rooms{margin-top:4px}.home .tip-link{background:none;border:1px dashed var(--line);color:var(--muted);font-size:.86rem}.qn-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#0f0f0f52;display:flex;align-items:flex-start;justify-content:center;padding:max(6vh,24px) 16px 16px;animation:fade-in .12s ease-out}.qn{width:min(760px,100%);max-height:min(84vh,900px);background:var(--bg);border-radius:14px;box-shadow:var(--shadow-pop);display:flex;flex-direction:column;overflow:hidden;animation:pop-in .16s var(--ease)}.qn-head{display:flex;align-items:center;gap:8px;padding:10px 12px 10px 18px;border-bottom:1px solid var(--line);font-size:.85rem}.qn-head .spacer,.qn-foot .spacer,.edit-bar .spacer{flex:1}.qn-where{display:inline-flex;align-items:center;gap:6px;min-width:0}.qn-where select{border:none;background:var(--soft);border-radius:6px;padding:4px 8px;max-width:46vw;color:var(--text);font:inherit}.qn-state{font-size:.75rem;color:var(--muted)}.qn-body{flex:1;overflow-y:auto;padding:22px clamp(18px,6vw,56px) 18px;display:flex;flex-direction:column;gap:6px;min-height:260px}.qn-title{width:100%;border:none;outline:none;resize:none;background:none;color:var(--text);padding:0;margin-bottom:6px;font:inherit;font-size:1.9rem;font-weight:700;line-height:1.25;overflow:hidden}.qn-title::placeholder{color:#37352f40}.qn-body .editor{min-height:120px}.qn-photos{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.qn-photo{position:relative}.qn-photo .thumb{border-radius:8px;cursor:zoom-in}.qn-photo-x{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;border:none;background:#0000008c;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .12s}.qn-photo-x svg{width:13px;height:13px}.qn-photo:hover .qn-photo-x{opacity:1}@media (pointer: coarse){.qn-photo-x{opacity:1}}.qn-photo-busy{width:96px;height:96px;border-radius:8px;background:var(--soft);display:flex;align-items:center;justify-content:center;font-size:.75rem;color:var(--muted)}.qn-foot{display:flex;align-items:center;gap:8px;padding:10px 14px;border-top:1px solid var(--line);flex-wrap:wrap}.qn-pick{display:inline-flex;gap:6px}.qn-pick svg,.qn-discard svg{width:15px;height:15px}.qn-hint{font-size:.75rem;color:var(--muted)}.qn-discard{color:var(--muted)}.qn-done{display:flex;flex-direction:column;align-items:center;gap:10px;padding:48px 20px}.qn-done-ic{width:44px;height:44px;border-radius:50%;background:var(--good-soft);color:var(--good);display:inline-flex;align-items:center;justify-content:center}.qn-done-actions{display:flex;gap:8px;margin-top:6px}@media (max-width: 699px){.qn-backdrop{padding:0}.qn{width:100%;max-height:none;height:100%;border-radius:0;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}.qn-title{font-size:1.6rem}}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:#0f0f0f4d;animation:fade-in .14s ease-out}.drawer{position:absolute;top:0;bottom:0;left:0;width:min(300px,86vw);box-shadow:var(--shadow-pop);animation:slide-right .2s var(--ease)}.drawer .sidebar{width:100%;height:100%;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}@keyframes slide-right{0%{transform:translate(-24px);opacity:.4}to{transform:none;opacity:1}}.tabbar .tab-menu{display:flex;flex-direction:column;align-items:center;font-size:.72rem;color:var(--muted);gap:2px;border:none;background:none;font-family:inherit;cursor:pointer;padding:0}.tabbar .tab-menu.active{color:var(--text);font-weight:600}@media (pointer: coarse){html{-webkit-tap-highlight-color:transparent}body{touch-action:manipulation}.sb-hover,.sb-collapse,.sb-sec-btn,.floor-more{opacity:.7!important}.db-table .db-open{opacity:.8!important}kbd,.hide-touch{display:none!important}input,textarea,select{font-size:max(16px,1em)}.sb-item{min-height:38px}.sb-icon-btn{width:32px;height:32px}.menu-item{padding:10px}.ins-row,.watch-head{min-height:44px}}.edit-bar{position:fixed;left:0;right:0;z-index:120;display:flex;align-items:center;gap:2px;padding:6px 8px;background:var(--bg);border-top:1px solid var(--line);box-shadow:0 -4px 14px #0f0f0f0f;padding-bottom:calc(6px + env(safe-area-inset-bottom,0px))}.edit-bar button{border:none;background:none;min-width:42px;height:38px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:4px;color:var(--text);font:inherit;font-size:.85rem;cursor:pointer}.edit-bar button:active{background:var(--hover-a, rgba(55, 53, 47, .08))}.edit-bar button:disabled{opacity:.3}.edit-bar svg{width:19px;height:19px}.edit-bar .edit-done{color:var(--accent);font-weight:600;padding:0 10px}.edit-sep{width:1px;height:22px;background:var(--line);margin:0 4px}.kpi-bar-gap{height:4px}.ins-empty{display:block!important}.ins-empty svg{vertical-align:-3px;margin-right:6px}.drawer .sb-switch{display:none}@media (pointer: coarse){.sb-page .sb-hover:last-child{display:none}}body:has(.edit-bar) .ai-fab{display:none}.ed-bar{display:flex;align-items:center;gap:2px;padding:6px 12px;border-bottom:1px solid var(--line);background:var(--bg);overflow-x:auto;scrollbar-width:none;flex:none}.ed-bar::-webkit-scrollbar{display:none}.ed-btn{flex:none;border:none;background:none;width:32px;height:30px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);cursor:pointer}.ed-btn:hover{background:var(--hover-a, rgba(55, 53, 47, .08));color:var(--text)}.ed-btn.on{background:#2383e21f;color:#2383e2}.ed-btn svg{width:17px;height:17px}.ed-sep{flex:none;width:1px;height:18px;background:var(--line);margin:0 6px}.ed-help{margin-left:auto;padding-left:10px;font-size:.74rem;color:var(--muted);white-space:nowrap}@media (pointer: coarse){.ed-btn{width:40px;height:38px}.ed-btn svg{width:19px;height:19px}}.qn-body .editor .blk{padding-top:1px;padding-bottom:1px}.qn-body .blk-text{line-height:1.6}.editor{flex-direction:row!important;flex-wrap:wrap;align-items:flex-start;position:relative}.editor>.blk{flex:0 0 100%;box-sizing:border-box;min-width:0}.editor .blk:first-of-type:last-of-type .blk-text::placeholder{color:var(--muted);opacity:.7}.blk-handle{position:absolute;left:-24px;top:3px;width:20px;height:24px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);opacity:0;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;transition:opacity .1s}.blk-handle svg{width:15px;height:15px}.blk-handle:hover{background:var(--hover-a, rgba(55, 53, 47, .08))}.editor .blk:hover>.blk-handle,.editor .blk:focus-within>.blk-handle{opacity:.8}.editor.is-dragging,.editor.is-dragging *{cursor:grabbing!important;-webkit-user-select:none;user-select:none}.editor.is-dragging .blk-handle{opacity:0!important}.blk.is-moving{opacity:.35}@media (pointer: coarse){.blk-handle{left:-30px;width:28px;height:30px}.editor .blk:focus-within>.blk-handle,.editor .blk-image>.blk-handle{opacity:.6}}.blk.drop-top:before,.blk.drop-bottom:after{content:"";position:absolute;left:0;right:0;height:3px;border-radius:2px;background:#2383e2b3;pointer-events:none;z-index:3}.blk.drop-top:before{top:-2px}.blk.drop-bottom:after{bottom:-2px}.blk.drop-left:before,.blk.drop-right:after{content:"";position:absolute;top:4px;bottom:4px;width:3px;border-radius:2px;background:#2383e2b3;pointer-events:none;z-index:3}.blk.drop-left:before{left:-2px}.blk.drop-right:after{right:-2px}.editor>.blk-image{flex:0 0 auto;padding:4px;display:block}.blk-fig{margin:0;display:flex;flex-direction:column;gap:2px}.blk-img{position:relative;border-radius:6px;overflow:hidden;cursor:zoom-in;background:var(--soft);line-height:0}.blk-img .anno-wrap{width:100%}.blk-img img{width:100%;height:auto;display:block}.blk-rs{position:absolute;top:50%;width:8px;height:46px;max-height:40%;transform:translateY(-50%);border-radius:6px;background:#0f0f0f8c;box-shadow:0 0 0 1.5px #ffffffd9;cursor:ew-resize;opacity:0;transition:opacity .12s;touch-action:none;z-index:2}.blk-rs.l{left:6px}.blk-rs.r{right:6px}.blk-img-tools{position:absolute;top:6px;right:6px;display:flex;gap:4px;opacity:0;transition:opacity .12s;z-index:2;line-height:1}.blk-img-tools button{border:none;width:28px;height:28px;border-radius:6px;background:#0f0f0f99;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.blk-img-tools button:hover{background:#0f0f0fcc}.blk-img-tools svg{width:15px;height:15px}.blk-w{font-size:.9rem;font-weight:700}.blk-image:hover .blk-rs,.blk-image:hover .blk-img-tools{opacity:1}@media (pointer: coarse){.blk-rs{opacity:.7;width:12px}.blk-img-tools{opacity:1}}.blk-caption{border:none;outline:none;background:none;font:inherit;font-size:.8rem;color:var(--muted);padding:3px 2px;width:100%;line-height:1.4}.blk-caption:placeholder-shown{opacity:0}.blk-image:hover .blk-caption:placeholder-shown,.blk-caption:focus{opacity:1}.blk-busy{display:flex;align-items:center;gap:6px;font-size:.82rem;color:var(--muted);padding:8px 4px}.blk-busy svg{width:16px;height:16px}.rich{position:relative}.rich>.ed-bar{position:absolute;right:0;top:-40px;z-index:6;box-shadow:var(--shadow-pop);border:none;border-radius:8px;padding:3px 6px;width:fit-content;max-width:100%;opacity:0;pointer-events:none;transition:opacity .12s}.rich:hover>.ed-bar,.rich:focus-within>.ed-bar{opacity:1;pointer-events:auto}.rich>.ed-bar .ed-help{display:none}@media (pointer: coarse){.rich>.ed-bar{display:none}}.blk-gutter{position:absolute;left:-46px;top:3px;display:flex;align-items:center;gap:0;opacity:0;transition:opacity .1s;z-index:4}.blk-gutter .blk-handle{position:static;opacity:1}.blk-add{width:22px;height:24px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);cursor:pointer}.blk-add:hover{background:var(--hover-a, rgba(55, 53, 47, .08));color:var(--text)}.blk-add svg{width:16px;height:16px}.editor .blk:hover>.blk-gutter,.editor .blk:focus-within>.blk-gutter{opacity:.85}.editor.is-dragging .blk-gutter{opacity:0!important}.editor>.blk-image>.blk-gutter{left:-42px;top:8px}@media (pointer: coarse){.blk-gutter{left:-60px}.blk-add{width:30px;height:30px}.editor .blk:focus-within>.blk-gutter,.editor>.blk-image>.blk-gutter,.editor>.blk-page>.blk-gutter{opacity:.6}}@media (max-width: 899px){.rich .editor,.qn-body .editor{margin-left:44px}}@media (max-width: 899px) and (pointer: coarse){.rich .editor,.qn-body .editor{margin-left:58px}}.editor>.blk.is-narrow{flex:0 0 auto;padding-right:10px;align-self:stretch}.editor>.blk.is-narrow:before{content:"";position:absolute;top:0;right:6px;bottom:0;left:0;border-radius:6px;pointer-events:none}.editor>.blk.is-narrow:hover:before{box-shadow:inset 0 0 0 1px var(--line)}.blk-rs.txt{right:2px;top:50%;height:34px;opacity:0}.blk.is-narrow:hover .blk-rs.txt{opacity:.7}@media (pointer: coarse){.blk-rs.txt{opacity:.5}}.editor-tail{flex:0 0 100%;height:36px;cursor:text}.qn-body .editor-tail{height:80px}.editor>.blk-page{padding:1px 0}.page-ref-row{display:flex;align-items:center;gap:4px;width:100%}.page-ref{display:inline-flex;align-items:center;gap:8px;padding:4px 6px;border-radius:6px;color:var(--text);min-width:0;max-width:100%;text-decoration:none}.page-ref:hover{background:var(--hover-a, rgba(55, 53, 47, .08))}.page-ref-ic{display:inline-flex;color:var(--muted);flex:none}.page-ref-ic svg{width:18px;height:18px}.page-ref-title{font-weight:500;text-decoration:underline;text-decoration-color:#37352f40;text-underline-offset:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-ref-title.gone{color:var(--muted);text-decoration:line-through}.page-ref-arrow{width:13px;height:13px;color:var(--muted);flex:none}.page-ref-kind{font-size:.72rem;color:var(--muted);background:var(--soft);border-radius:4px;padding:1px 6px;flex:none}.page-ref-x{border:none;background:none;width:24px;height:24px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);cursor:pointer;opacity:0}.page-ref-x svg{width:14px;height:14px}.blk-page:hover .page-ref-x{opacity:1}.page-ref-x:hover{background:var(--hover-a, rgba(55, 53, 47, .08));color:var(--bad)}@media (pointer: coarse){.page-ref-x{opacity:.6}}.page-picker{position:absolute;top:100%;left:0;z-index:45;width:min(420px,92vw);background:var(--bg);box-shadow:var(--shadow-pop);border-radius:8px;padding:6px;animation:pop-in .12s var(--ease)}.page-picker input{width:100%;border:none;outline:none;background:var(--soft);border-radius:6px;padding:7px 10px;font:inherit;color:var(--text);margin-bottom:4px}.page-picker-list{max-height:300px;overflow-y:auto;display:flex;flex-direction:column}.page-picker .slash-item{display:flex;justify-content:space-between;gap:10px;text-align:left}.page-picker .slash-item span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-picker .slash-item span:last-child{flex:none}.backlink{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:6px;color:inherit}.backlink:hover{background:var(--hover-a, rgba(55, 53, 47, .08))}.backlink svg{width:15px;height:15px;color:var(--muted)}.blk-menu{position:absolute;top:28px;left:-46px;z-index:50;width:268px;background:var(--bg);border-radius:8px;box-shadow:var(--shadow-pop);padding:5px;display:flex;flex-direction:column;gap:1px;animation:pop-in .12s var(--ease);font-size:.875rem;line-height:1.3}.blk-image>.blk-menu{top:34px;left:-42px}.blk-menu-item{display:flex;align-items:center;gap:9px;width:100%;border:none;background:none;padding:6px 8px;border-radius:5px;text-align:left;font:inherit;color:var(--text);cursor:pointer}.blk-menu-item:hover{background:var(--hover-a, rgba(55, 53, 47, .08))}.blk-menu-item svg{width:16px;height:16px;color:var(--muted);flex:none}.blk-menu-item span{flex:1;min-width:0}.blk-menu-item.on{color:#2383e2;font-weight:600}.blk-menu-item.danger,.blk-menu-item.danger svg{color:var(--bad)}.blk-menu-item.danger:hover{background:var(--bad-soft)}.blk-menu-item .blk-menu-arrow{width:14px;height:14px}.blk-menu-sep{height:1px;background:var(--line);margin:4px 2px}.blk-menu-head{display:flex;align-items:center;gap:4px;font-size:.78rem;font-weight:600;color:var(--muted);padding:2px 4px 4px}.blk-menu-back{border:none;background:none;width:24px;height:24px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--muted)}.blk-menu-back:hover{background:var(--hover-a, rgba(55, 53, 47, .08))}.blk-menu-back svg{width:15px;height:15px}.blk-handle.on{background:var(--hover-a, rgba(55, 53, 47, .08));color:var(--text)}.editor .blk:has(>.blk-menu)>.blk-gutter,.editor .blk:has(>.page-picker)>.blk-gutter{opacity:1}.blk:has(>.blk-menu),.blk:has(>.page-picker){z-index:30}.blk-image>.page-picker{top:34px}@media (pointer: coarse){.blk-menu-item{padding:10px}.blk-menu{left:-58px}}.blk-notice{flex:0 0 100%;display:flex;align-items:center;gap:8px;margin-top:6px;padding:8px 12px;border-radius:8px;background:var(--good-soft);color:var(--good);font-size:.85rem;animation:pop-in .14s var(--ease)}.blk-notice svg{width:16px;height:16px;flex:none}.auth-page{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:linear-gradient(160deg,#fdf6ec,#f7f7f5 45%,#eef3fb);box-sizing:border-box}.auth-card{width:100%;max-width:400px;background:var(--bg);border-radius:16px;padding:28px 26px 24px;box-shadow:0 1px 2px #0f0f0f0f,0 12px 40px #0f0f0f14;display:flex;flex-direction:column;gap:12px}.auth-card.wide{max-width:560px}.auth-card h2{margin:4px 0 0;font-size:1.35rem;font-weight:700}.auth-card p{margin:0;line-height:1.5}.auth-brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1.05rem}.auth-brand svg{width:34px;height:34px;flex:none}.auth-form{display:flex;flex-direction:column;gap:12px;margin-top:4px}.auth-form label{display:flex;flex-direction:column;gap:5px;font-size:.85rem;color:var(--muted)}.auth-form input{font:inherit;font-size:1rem;color:var(--text);padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--bg);outline:none}.auth-form input:focus{border-color:#2383e2;box-shadow:0 0 0 3px #2383e226}.btn.big{padding:11px 14px;font-size:.98rem;justify-content:center}.auth-links{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.auth-links button{border:none;background:none;color:#2383e2;font:inherit;font-size:.85rem;cursor:pointer;padding:2px 0}.auth-links button:hover{text-decoration:underline}.auth-info{display:flex;gap:8px;align-items:flex-start;background:var(--good-soft);color:var(--good);padding:9px 11px;border-radius:9px;font-size:.86rem}.auth-info svg{width:16px;height:16px;flex:none;margin-top:2px}.auth-row{display:flex;gap:8px;flex-wrap:wrap}.auth-row svg,.auth-card .btn svg{width:16px;height:16px}.auth-loading{display:flex;align-items:center;gap:10px;color:var(--muted);padding:10px 0}.auth-choices{display:flex;flex-direction:column;gap:10px}.auth-choice{text-align:left;border:1px solid var(--line);background:var(--bg);border-radius:12px;padding:12px 14px;cursor:pointer;font:inherit;color:var(--text);display:flex;flex-direction:column;gap:4px}.auth-choice:hover{border-color:#2383e2;background:#2383e20a}.auth-choice span{font-size:.85rem;color:var(--muted);line-height:1.45}.auth-choice.warn:hover{border-color:var(--warn);background:var(--warn-soft)}.sync-badge{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:.8rem;flex:none}.sync-badge svg{width:15px;height:15px}.sync-badge.s-idle svg{color:var(--good)}.sync-badge.s-offline svg{color:var(--warn)}.sync-badge.s-error svg{color:var(--bad)}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.sb-head .sync-badge{margin-right:2px}.account .block-title{display:flex;align-items:center;gap:8px}.account .block-title svg{width:18px;height:18px;color:var(--muted)}.acct-me{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;background:var(--soft);border-radius:10px;flex-wrap:wrap}.acct-list{display:flex;flex-direction:column;margin-top:6px}.acct-row{display:flex;align-items:center;gap:10px;padding:7px 4px;border-bottom:1px solid var(--line)}.acct-row.pending{opacity:.75}.acct-email{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.acct-row select,.acct-invite select{border:1px solid var(--line);border-radius:7px;padding:5px 6px;background:var(--bg);color:var(--text);font:inherit;font-size:.85rem}.acct-invite{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.acct-invite input{flex:1 1 220px;border:1px solid var(--line);border-radius:8px;padding:8px 10px;font:inherit;background:var(--bg);color:var(--text)}.acct-out{margin-top:12px}.acct-out .btn svg{width:15px;height:15px}.acct-confirm{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.86rem;color:var(--muted)}.btn.danger{background:var(--bad);border-color:var(--bad);color:#fff}.bl-viewer{display:flex;align-items:center;gap:10px}.bl-viewer svg{width:15px;height:15px}.mb{--mb-bar: 54px}.mb .bl-page{padding:14px 14px 110px}.mb-bar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:8px;min-height:var(--mb-bar);padding:env(safe-area-inset-top,0px) 10px 0;background:#fffffff5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.mb-back{display:inline-flex;align-items:center;gap:2px;border:none;background:var(--soft);color:var(--text);font:inherit;font-weight:600;padding:9px 14px 9px 8px;border-radius:99px;cursor:pointer;flex:none}.mb-back svg{width:20px;height:20px}.mb-bar-title{flex:1;min-width:0;text-align:right;font-weight:700;font-size:1.05rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:4px}.mb-bar-title.linkish{border:none;background:none;font:inherit;font-weight:700;font-size:1.05rem;color:var(--text);cursor:pointer}.mb-caret{color:var(--muted);font-size:.8rem}.mb-new{display:flex;align-items:center;gap:10px;width:100%;margin:14px 0 4px;padding:14px;border-radius:14px;border:1px solid rgba(232,89,12,.25);background:#fff4ec;color:var(--text);font:inherit;text-align:left;cursor:pointer}.mb-new b{font-size:1.05rem}.mb-new .muted{margin-left:auto}.mb-chev{width:20px;height:20px;color:var(--muted);flex:none}.mb-floors{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.mb-floor{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-height:108px;padding:16px 14px;border-radius:16px;border:1px solid var(--line);background:var(--bg);box-shadow:0 1px 2px #0f0f0f0a;font:inherit;color:var(--text);text-align:left;cursor:pointer}.mb-floor:active{background:var(--soft)}.mb-floor-name{display:flex;align-items:center;gap:8px;font-size:1.25rem;font-weight:800}.mb-floor .bl-room-bar{width:100%;margin-top:auto}.mb-foot{margin-top:36px;padding-top:14px;border-top:1px solid var(--line)}.mb-foot .dad-shell-bar{position:static;padding:0;justify-content:flex-start}.mb-foot .bl-owner-actions{flex-wrap:wrap}.mb-floor-page{padding-top:0!important}.mb-room{scroll-margin-top:calc(var(--mb-bar) + env(safe-area-inset-top,0px));padding-bottom:8px}.mb-room-head{position:sticky;top:calc(var(--mb-bar) + env(safe-area-inset-top,0px));z-index:10;display:flex;align-items:center;gap:10px;width:calc(100% + 28px);margin:0 -14px 12px;padding:12px 14px;border:none;border-bottom:1px solid var(--line);background:#f7f7f5f7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font:inherit;color:var(--text);text-align:left;cursor:pointer}.mb-room-icon{width:24px;height:24px;flex:none}.mb-room-name{font-size:1.2rem;font-weight:800;flex:1;min-width:0}.mb-room-count{flex:none}.mb-room-body{display:flex;flex-direction:column;gap:14px}.mb-floor-nav{display:flex;gap:10px;margin-top:28px}.mb-floor-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:54px;border-radius:14px;border:1px solid var(--line);background:var(--bg);font:inherit;font-weight:700;font-size:1rem;color:var(--text);cursor:pointer}.mb-floor-btn.primary{background:#2383e2;border-color:#2383e2;color:#fff}.mb-floor-btn svg{width:20px;height:20px}.mb-picker{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:var(--bg);display:flex;flex-direction:column;animation:fade-in .12s ease-out;padding-top:env(safe-area-inset-top,0px)}.mb-picker-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--line);font-size:1.15rem}.mb-picker-x{border:none;background:var(--soft);width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text)}.mb-picker-x svg{width:22px;height:22px}.mb-picker-list{flex:1;overflow-y:auto;padding:6px 8px calc(20px + env(safe-area-inset-bottom,0px))}.mb-picker-item{display:flex;align-items:center;gap:12px;width:100%;min-height:58px;padding:10px 12px;border:none;border-bottom:1px solid var(--line);background:none;font:inherit;font-size:1.1rem;font-weight:600;color:var(--text);text-align:left;cursor:pointer}.mb-picker-item svg{width:22px;height:22px;flex:none;color:var(--muted)}.mb-picker-item span:nth-of-type(1){flex:1}.mb-picker-item.home{color:#2383e2;border-bottom:none;margin-top:8px}.mb-picker-item.home svg{color:#2383e2}.mb-recent{width:100%;margin-bottom:10px}.drawer .sidebar{overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.drawer .sb-head{position:sticky;top:0;z-index:2;background:var(--sb-bg);padding-top:calc(10px + env(safe-area-inset-top,0px))}.drawer .sidebar{padding-top:0}.drawer .sb-scroll{flex:none;overflow:visible}.drawer .sb-foot{margin-top:auto}.drawer .sb-in-tabbar{display:none}
