.sstat{width:100%;max-width:var(--composer-max-w)}.sstat__summary{outline:none}.sstat__summary:focus-visible{outline:var(--ring-w) solid var(--ring);outline-offset:var(--ring-offset)}.sstat__summary{display:inline-flex;align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-3);border-radius:var(--r-pill);border:1px solid var(--border);background:var(--surface-2);color:var(--muted);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.sstat__summary:hover{border-color:var(--border-strong);color:var(--ink-soft);background:var(--surface-3)}.sstat__summary-glyph{display:grid;place-items:center;flex:none;width:18px;height:18px;color:var(--accent)}.sstat__summary-glyph svg{width:14px;height:14px}.sstat__summary-text{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:inherit}.sstat__summary-chev{flex:none;width:13px;height:13px;color:var(--faint)}.sstat__card{display:flex;flex-direction:column;gap:var(--s-4);padding:var(--s-4) var(--s-5);border-radius:var(--r-lg);border:1px solid var(--border);background:var(--surface-2)}.sstat__head{display:flex;align-items:center;gap:var(--s-3)}.sstat__glyph{position:relative;display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:var(--accent-soft);color:var(--accent)}.sstat__glyph svg{width:14px;height:14px}.sstat__glyph:after{content:"";position:absolute;inset:-1px;border-radius:inherit;border:1.5px solid var(--accent);opacity:.55;animation:sstat-ping 2s var(--ease-out) infinite}.sstat__headline{display:inline-flex;align-items:center;flex:1 1 auto;min-width:0;font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--ink)}.sstat__toggle{outline:none}.sstat__toggle:focus-visible{outline:var(--ring-w) solid var(--ring);outline-offset:var(--ring-offset)}.sstat__toggle{display:grid;place-items:center;flex:none;width:26px;height:26px;border-radius:var(--r-sm);color:var(--muted);transition:background-color var(--dur-micro) var(--ease-standard),color var(--dur-micro) var(--ease-standard)}.sstat__toggle svg{width:14px;height:14px;transition:transform var(--dur-base) var(--ease-spring)}.sstat__toggle svg.is-open{transform:rotate(180deg)}.sstat__toggle:hover{background:var(--surface-3);color:var(--ink)}.sstat__steps{display:flex;flex-direction:column}.sstat__step{position:relative;display:flex;align-items:flex-start;gap:var(--s-3);padding-bottom:var(--s-3)}.sstat__step:last-child{padding-bottom:0}.sstat__marker{position:relative;display:grid;place-items:center;flex:none;width:18px;height:18px;margin-top:1px;border-radius:50%;background:var(--surface-3);color:var(--muted);z-index:1}.sstat__step:not(:last-child) .sstat__marker:after{content:"";position:absolute;top:100%;left:50%;width:1px;height:calc(var(--s-3) + 2px);background:var(--border);transform:translate(-50%)}.sstat__marker-ic{display:grid;place-items:center;width:11px;height:11px}.sstat__marker-ic svg{width:100%;height:100%}.sstat__body{display:flex;flex-direction:column;gap:var(--s-2);min-width:0;padding-top:1px}.sstat__label{font-size:var(--fs-sm);color:var(--ink-soft);line-height:var(--lh-snug)}.sstat__chips{display:flex;flex-wrap:wrap;gap:var(--s-1)}.sstat__step.is-done .sstat__marker{color:var(--success)}.sstat__step.is-done .sstat__label{color:var(--muted)}.sstat__step.is-done .sstat__chips{opacity:.7}.sstat__step.is-active .sstat__marker{background:var(--accent-soft);color:var(--accent)}.sstat__step.is-active .sstat__label.is-shimmer{background-image:linear-gradient(90deg,var(--muted) 0,var(--muted) 38%,var(--ink) 50%,var(--muted) 62%,var(--muted) 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:sstat-shimmer 1.9s ease-in-out infinite}@keyframes sstat-ping{0%{transform:scale(1);opacity:.55}70%{transform:scale(1.7);opacity:0}to{transform:scale(1.7);opacity:0}}@keyframes sstat-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.sstat__glyph:after{animation:none;opacity:0}.sstat__step.is-active .sstat__label.is-shimmer{animation:none;background-image:none;-webkit-text-fill-color:currentColor;color:var(--ink-soft)}}.block{position:relative;width:100%}.block:hover .block__expand,.block__expand.is-active,.block__expand:focus-visible{opacity:1;transform:scale(1)}.block__expand{position:absolute;top:var(--s-3);inset-inline-end:var(--s-3);z-index:2;display:grid;place-items:center;width:30px;height:30px;border-radius:var(--r-sm);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--border);color:var(--ink-soft);opacity:0;transform:scale(.8);transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-base) var(--ease-spring),background-color var(--dur-micro) var(--ease-standard),color var(--dur-micro) var(--ease-standard)}.block__expand svg{width:16px;height:16px}.block__expand:hover{color:var(--ink);transform:scale(1.1)}.block__expand:active{transform:scale(.92)}.block__expand.is-active{color:var(--ink);background:var(--accent-soft);border-color:var(--accent)}@media(max-width:880px){.block__expand{opacity:1;transform:scale(1);width:40px;height:40px}}.prop-skel{overflow:hidden;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border)}.prop-skel__media{aspect-ratio:16/10;height:auto!important;border-radius:0}.prop-skel__body{padding:var(--s-4);display:flex;flex-direction:column;gap:var(--s-3)}.prop-skel__specs{display:flex;gap:var(--s-3);padding-top:var(--s-3)}.trend-skel{padding:var(--s-4);border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border)}.trend-skel__head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--s-4)}.trend-skel__head-l{display:flex;flex-direction:column;gap:var(--s-2)}.zc-skel{padding:var(--s-6);border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border)}.zc-skel__list{display:flex;flex-direction:column;gap:var(--s-4);margin-top:var(--s-5)}.zc-skel__row{display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:var(--s-3)}.roi-skel{padding:var(--s-6);border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border)}.roi-skel__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-3);margin:var(--s-4) 0 var(--s-5)}.roi-skel__rows{display:flex;flex-direction:column;gap:var(--s-3)}.map-skel{border-radius:var(--r-lg);overflow:hidden;background:var(--surface);border:1px solid var(--border)}.map-skel__canvas{aspect-ratio:16/9;height:auto!important;border-radius:0}.map-skel__foot{display:flex;align-items:center;justify-content:space-between;padding:var(--s-3) var(--s-4)}.gallery-skel{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:90px;gap:var(--s-2)}.gallery-skel .skeleton{height:100%!important}.gallery-skel__lead{grid-column:span 2;grid-row:span 2}.img-skel{aspect-ratio:16/9;height:auto!important}.pdf-skel{display:flex;align-items:center;gap:var(--s-4);padding:var(--s-6);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface)}.pdf-skel__body{flex:1 1 auto;display:flex;flex-direction:column;gap:var(--s-2)}.tbl-skel{border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;background:var(--surface)}.tbl-skel__rows{display:flex;flex-direction:column;gap:var(--s-3);padding:var(--s-3) var(--s-4)}.block-skel{width:100%}.bubble{display:flex;gap:var(--s-3);animation:bubble-in var(--dur-expand) var(--ease-out) both}.bubble:not(.bubble--user){flex-direction:column;gap:var(--s-2)}.bubble:not(.bubble--user) .bubble__col{max-width:100%;width:100%}.bubble--user{justify-content:flex-end;animation-name:bubble-in-user}.bubble__plan{margin:0;color:var(--muted);font-size:var(--text-sm,.9375rem);line-height:1.5}.bubble__col{min-width:0;max-width:80%;display:flex;flex-direction:column;gap:var(--s-2)}.bubble__col--wide{max-width:100%;width:100%;flex:1 1 auto}.bubble--user .bubble__col{align-items:flex-end}.bubble__blocks{gap:var(--s-3);margin-top:var(--s-2)}.bubble__blocks,.bubble__visuals{display:flex;flex-direction:column}.bubble__visuals{align-items:flex-start;gap:var(--s-2);margin-top:var(--s-3)}.bubble__visuals-toggle{display:inline-flex;align-items:center;gap:5px;padding:3px 4px;border:none;background:transparent;color:var(--muted);font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.02em;cursor:pointer;transition:color var(--dur-fast) var(--ease-out)}.bubble__visuals-toggle:hover{color:var(--ink-soft)}.bubble__visuals-caret{flex:none;width:13px;height:13px;transition:transform var(--dur-base) var(--ease-spring)}.bubble__visuals-toggle.is-open .bubble__visuals-caret{transform:rotate(90deg)}.bubble__badges{display:flex;flex-wrap:wrap;gap:var(--s-2)}.bubble__badge{--badge-line:color-mix(in srgb,var(--ink) 10%,transparent);display:inline-flex;align-items:center;gap:var(--s-2);padding:5px var(--s-2) 5px var(--s-3);border-radius:var(--r-pill);border:1px solid var(--badge-line);background:transparent;color:var(--ink-soft);font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:color var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out),background-color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out),transform var(--dur-base) var(--ease-spring)}.bubble__badge:hover{color:var(--ink);border-color:color-mix(in srgb,var(--ink) 20%,transparent);transform:translateY(-1px)}.bubble__badge:hover .bubble__badge-icon{color:var(--ink)}.bubble__badge:hover .bubble__badge-go{opacity:1}.bubble__badge:active{transform:translateY(0)}.bubble__badge.is-active{color:var(--ink);border-color:transparent;background:var(--surface-raised);box-shadow:var(--shadow-overlay)}.bubble__badge.is-active .bubble__badge-icon{color:var(--ink)}.bubble__badge-icon{flex:none;font-size:14px;width:14px;height:14px;color:var(--muted);transition:color var(--dur-base) var(--ease-out)}.bubble__badge-icon svg{width:100%;height:100%}.bubble__badge-label{min-inline-size:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bubble__badge-go{flex:none;font-size:12px;width:15px;height:15px;opacity:.5;transition:opacity var(--dur-base) var(--ease-out)}.bubble__badge-go svg{width:100%;height:100%}.bubble__badge-check{opacity:1;color:var(--ink)}.bubble__refs{display:flex;flex-wrap:wrap;gap:var(--s-1);justify-content:flex-end;margin-bottom:var(--s-1)}.bubble__ref{display:inline-flex;align-items:center;gap:4px;max-width:220px;padding:3px var(--s-2);border-radius:var(--r-pill);border:1px solid color-mix(in srgb,var(--ink) 15%,transparent);background:transparent;color:var(--ink-soft);font-size:var(--fs-xs);font-weight:var(--fw-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bubble__ref-ico{flex:none;width:12px;height:12px;color:var(--accent)}.bubble__user{padding:var(--s-3) var(--s-4);border-radius:var(--r-lg);border-end-end-radius:var(--r-xs);background:#f7f7f8;color:#171717;font-size:var(--fs-base);line-height:var(--lh-normal);white-space:pre-wrap}[data-theme=dark] .bubble__user{background:#202020;color:#fff}.bubble__uactions{display:flex;align-items:center;gap:var(--s-1);margin-top:2px;margin-inline-end:calc(var(--s-2)*-1);opacity:0;transform:translateY(4px);transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.bubble__uactions .icon-btn:active{background:var(--accent-soft);color:var(--accent)}.bubble__uactions .icon-btn:active svg path{stroke-width:2.3}.bubble__time-ago{margin-inline-start:var(--s-1);padding-inline-end:var(--s-1);font-size:var(--fs-xs);color:var(--faint);font-variant-numeric:tabular-nums;white-space:nowrap}.bubble__edit{display:flex;flex-direction:column;gap:var(--s-2);align-items:stretch;width:min(560px,100%);padding:var(--s-3) var(--s-4);border-radius:var(--r-lg);border-end-end-radius:var(--r-xs);background:#f7f7f8;border:1px solid var(--accent)}[data-theme=dark] .bubble__edit{background:#202020}.bubble__edit-area{width:100%;resize:none;border:none;background:none;outline:none;color:#171717;font-family:var(--font-sans);font-size:var(--fs-base);line-height:var(--lh-normal);max-height:240px;overflow-y:auto}[data-theme=dark] .bubble__edit-area{color:#fff}.bubble__edit-actions{display:flex;justify-content:flex-end;gap:var(--s-2)}.bubble__edit-btn{height:30px;padding:0 var(--s-3);border-radius:var(--r-pill);border:1px solid var(--border-strong);background:transparent;color:var(--ink-soft);font-size:var(--fs-xs);font-weight:var(--fw-semibold);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.bubble__edit-btn:hover{border-color:var(--ink-soft);color:var(--ink)}.bubble__edit-btn:active{transform:scale(.96)}.bubble__edit-btn.is-primary{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.bubble__edit-btn.is-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--on-accent)}.bubble__status{padding:var(--s-2) 0}.bubble__body{position:relative;font-size:var(--fs-md)}.bubble__prose{color:var(--ink);line-height:var(--lh-relaxed);display:inline}.bubble__prose p{margin:0 0 var(--s-3);display:block}.bubble__prose p:last-child{margin-bottom:0}.bubble__prose h3,.bubble__prose h4,.bubble__prose h5{margin:var(--s-5) 0 var(--s-2);font-weight:var(--fw-semibold);color:var(--ink);line-height:var(--lh-snug)}.bubble__prose h3{font-size:var(--fs-lg)}.bubble__prose h4{font-size:var(--fs-md)}.bubble__prose h5{font-size:var(--fs-sm);color:var(--muted)}.bubble__prose hr{display:block;border:none;border-top:1px solid var(--border);margin:var(--s-4) 0}.bubble__prose blockquote{display:block;margin:var(--s-3) 0;padding-block:2px;padding-inline:var(--s-4) 0;border-inline-start:3px solid var(--border-strong);color:var(--muted)}.bubble__prose ol,.bubble__prose ul{margin:0 0 var(--s-3);padding-inline-start:var(--s-5);display:block}.bubble__prose li{margin-bottom:var(--s-1);list-style:disc}.bubble__prose ol li{list-style:decimal}.bubble__prose strong{font-weight:var(--fw-semibold);color:var(--ink)}.bubble__prose code{font-family:var(--font-mono);font-size:.88em;padding:1px 5px;border-radius:var(--r-xs);background:var(--surface-3)}.bubble__prose a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;font-weight:var(--fw-medium)}.bubble__prose a:hover{text-decoration-thickness:2px}.bubble__prose .area-link{--pin-mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7m0 9.5a2.5 2.5 0 1 1 0-5 2.5 2.5 0 0 1 0 5'/%3E%3C/svg%3E");cursor:pointer;text-decoration-style:dotted;text-underline-offset:3px;white-space:nowrap;unicode-bidi:isolate}.bubble__prose .area-link:before{content:"";display:inline-block;width:.82em;height:.82em;margin-inline-end:1px;vertical-align:-1px;background:currentColor;-webkit-mask:var(--pin-mask) center/contain no-repeat;mask:var(--pin-mask) center/contain no-repeat}.bubble__prose .area-link:hover{text-decoration-style:solid;text-decoration-thickness:2px}.bubble__prose .area-link.is-unmapped{color:var(--muted);cursor:default;text-decoration:none}.bubble__prose .md-img{display:block;width:100%;max-height:360px;-o-object-fit:cover;object-fit:cover;border-radius:var(--r-md);border:1px solid var(--border);margin:var(--s-3) 0}.bubble__prose .md-table-wrap{overflow-x:auto;margin:var(--s-3) 0;border:1px solid var(--border);border-radius:var(--r-lg)}.bubble__prose .md-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.bubble__prose .md-table td,.bubble__prose .md-table th{padding:var(--s-2) var(--s-4);text-align:start;white-space:nowrap;border-bottom:1px solid var(--border)}.bubble__prose .md-table th{font-weight:var(--fw-semibold);background:var(--surface-2)}.bubble__prose .md-table tr:last-child td{border-bottom:none}.bubble__inline-block{margin:var(--s-4) 0}.bubble__caret{display:inline-block;width:7px;height:1.05em;margin-inline-start:2px;vertical-align:text-bottom;border-radius:1px;background:var(--accent);animation:bubble-caret 1s step-end infinite}.bubble__source{align-self:flex-start;margin-top:var(--s-3)}.bubble__error{display:flex;align-items:center;gap:var(--s-3);flex-wrap:wrap;color:var(--danger);font-size:var(--fs-sm)}.bubble__speed{display:inline-flex;align-items:center;height:32px;padding:0 var(--s-2);border-radius:var(--r-sm);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--muted);font-variant-numeric:tabular-nums;transition:background-color var(--dur-micro) var(--ease-standard),color var(--dur-micro) var(--ease-standard),transform var(--dur-base) var(--ease-spring)}.bubble__speed:hover{background:var(--surface-3);color:var(--ink)}.bubble__speed:active{transform:scale(.9);background:var(--accent-soft);color:var(--accent);font-weight:var(--fw-bold)}.bubble__actions{display:flex;align-items:center;gap:var(--s-1);margin-inline-start:calc(var(--s-2)*-1);opacity:0;transform:translateY(4px);transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.bubble__actions .icon-btn:active{background:var(--accent-soft);color:var(--accent)}.bubble__actions .icon-btn:active svg path{stroke-width:2.3}.bubble__actions .icon-btn.is-active svg path{stroke-width:2.1}.bubble:hover .bubble__actions,.bubble:hover .bubble__uactions{opacity:1;transform:translateY(0)}.bubble-badges-enter-active,.bubble-badges-leave-active{transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-base) var(--ease-spring)}.bubble-badges-enter-from,.bubble-badges-leave-to{opacity:0;transform:translateY(-6px)}@keyframes bubble-in{0%{opacity:0;transform:translateY(10px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes bubble-in-user{0%{opacity:0;transform:translateY(6px) translate(8px)}to{opacity:1;transform:translateY(0) translate(0)}}@keyframes bubble-caret{0%,to{opacity:1}50%{opacity:0}}@media(prefers-reduced-motion:reduce){.bubble__caret{animation:none}.bubble-badges-enter-active,.bubble-badges-leave-active,.bubble__visuals-caret{transition:none}}@media(max-width:880px){.bubble{gap:var(--s-2)}.bubble__body .md-table-wrap{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.bubble__body .md-table td,.bubble__body .md-table th{padding:var(--s-2) var(--s-3)}}@media(hover:none){.bubble__actions,.bubble__uactions{opacity:1;transform:none}.bubble__actions .icon-btn,.bubble__speed{min-width:var(--tap-min);min-height:var(--tap-min)}.bubble__badge{padding:var(--s-2) var(--s-3)}.bubble__col{max-width:100%}.bubble--user .bubble__col{max-width:88%}}
