.fc-theme-toggle{position:relative}.fc-theme-toggle-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:none;border-radius:var(--radius-pill);background:transparent;color:var(--color-text-main);cursor:pointer;transition:background .15s ease,color .15s ease}.fc-theme-toggle-btn:hover{background:var(--color-hover);color:var(--color-brand-start)}.fc-theme-toggle-btn.active{background:var(--color-active-soft);color:var(--color-brand-start)}.fc-theme-toggle-scrim{position:fixed;inset:0;z-index:var(--popover-z-scrim, 4000)}.fc-theme-toggle-menu{position:fixed;top:var(--popover-top, 56px);right:var(--popover-right, 16px);left:auto;z-index:var(--popover-z-menu, 4001);width:148px;padding:6px;border:1px solid var(--color-border-card);border-radius:var(--popover-radius, var(--radius-md));background:var(--color-surface-strong);box-shadow:var(--popover-shadow, var(--shadow-lg));backdrop-filter:var(--popover-blur, blur(18px) saturate(140%));-webkit-backdrop-filter:var(--popover-blur, blur(18px) saturate(140%));transform-origin:top right;animation:fc-theme-menu-in var(--popover-anim-duration, .18s) var(--popover-anim-ease, cubic-bezier(.16, 1, .3, 1))}@keyframes fc-theme-menu-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.fc-theme-toggle-item{display:flex;align-items:center;gap:9px;width:100%;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:var(--color-text-main);font-size:13px;font-family:var(--font-family-body);text-align:left;cursor:pointer;transition:background-color .15s ease}.fc-theme-toggle-item:hover{background:rgba(var(--color-brand-rgb),.1)}.fc-theme-toggle-item-icon{display:inline-flex;align-items:center;color:var(--color-text-muted)}.fc-theme-toggle-item-label{flex:1}.fc-theme-toggle-check{color:var(--color-brand-start)}.pjx{position:fixed;inset:0;display:flex;flex-direction:column;overflow:hidden;background:var(--color-bg-base);color:var(--color-text-main);font-family:var(--font-family-body);--pjx-gutter: clamp(1.25rem, 4vw, 3rem);--pjx-max: 1280px;--pjx-ease: cubic-bezier(.16, 1, .3, 1);--pjx-mono: ui-monospace, SFMono-Regular, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace}.pjx-backdrop{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}.pjx-backdrop-glow,.pjx-backdrop-grid,.pjx-backdrop-grain{position:absolute;inset:-10%}.pjx-backdrop-glow{background:radial-gradient(38% 42% at 12% 8%,rgba(var(--color-brand-rgb),.16) 0%,transparent 72%),radial-gradient(44% 46% at 88% 88%,rgba(var(--color-brand-end-rgb),.13) 0%,transparent 74%);animation:pjxDrift 26s ease-in-out infinite alternate}.pjx-backdrop-grid{inset:0;background-image:linear-gradient(to right,rgba(var(--color-brand-rgb),.09) 1px,transparent 1px),linear-gradient(to bottom,rgba(var(--color-brand-rgb),.09) 1px,transparent 1px);background-size:72px 72px;background-position:-1px -1px;mask-image:radial-gradient(115% 85% at 6% -12%,#000 0%,transparent 62%);-webkit-mask-image:radial-gradient(115% 85% at 6% -12%,#000 0%,transparent 62%)}.pjx-backdrop-grain{inset:0;opacity:.035;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120'><filter id='g'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='120' height='120' filter='url(%23g)'/></svg>")}.pjx-masthead{position:relative;z-index:2;flex:none;padding:calc(2.4rem + var(--fc-notify-banner-h, 0px)) var(--pjx-gutter) 0;animation:pjxRise .7s var(--pjx-ease) backwards}.pjx-masthead-inner{max-width:var(--pjx-max);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:1.5rem}.pjx-masthead-head{margin-top:.28rem;display:flex;align-items:baseline;flex-wrap:wrap;gap:.1rem .85rem}.pjx-masthead-head>.pjx-title,.pjx-masthead-head>.pjx-metaline{margin:0}.pjx-eyebrow{display:inline-flex;align-items:center;gap:.6rem;margin:0;font-family:var(--pjx-mono);font-size:.7rem;font-weight:600;letter-spacing:.18em;color:var(--color-brand-start)}.pjx-eyebrow:before{content:"";width:20px;height:2px;border-radius:var(--radius-pill);background:var(--color-brand-gradient)}.pjx-title{margin:.34rem 0 0;font-family:var(--font-family-title);font-size:clamp(1.55rem,2.5vw,2.05rem);font-weight:700;letter-spacing:-.015em;line-height:1.1}.pjx-title-count{margin-left:.42rem;font-family:var(--pjx-mono);font-size:.3em;font-weight:600;letter-spacing:.04em;vertical-align:super;color:var(--color-brand-start);font-variant-numeric:tabular-nums}.pjx-metaline{margin:.7rem 0 0;font-size:.9rem;color:var(--color-text-muted)}.pjx-rule{max-width:var(--pjx-max);margin:.95rem auto 0;height:1px;background:linear-gradient(90deg,rgba(var(--color-brand-rgb),.45) 0%,var(--color-border-card) 26%,var(--color-border-card) 100%)}.pjx-cta{position:relative;display:inline-flex;align-items:center;gap:.5rem;height:44px;padding:0 1.2rem;border:none;border-radius:var(--radius-pill);background:var(--color-brand-gradient);color:#fff;font-family:var(--font-family-body);font-size:.95rem;font-weight:600;letter-spacing:.02em;cursor:pointer;overflow:hidden;box-shadow:0 6px 18px rgba(var(--color-brand-rgb),.3);transition:transform .32s var(--pjx-ease),box-shadow .32s var(--pjx-ease)}.pjx-cta:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 34%,rgba(255,255,255,.34) 50%,transparent 66%);transform:translate(-120%);transition:transform .7s var(--pjx-ease)}.pjx-cta:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(var(--color-brand-rgb),.4)}.pjx-cta:hover:after{transform:translate(120%)}.pjx-cta:active{transform:translateY(0)}.pjx-cta:focus-visible{outline:2px solid var(--color-brand-start);outline-offset:3px}.pjx-main{position:relative;z-index:1;flex:1;min-height:0;overflow-y:auto;scrollbar-gutter:stable;padding:1.05rem var(--pjx-gutter) 3.5rem}.pjx-inner{max-width:var(--pjx-max);margin:0 auto}.pjx-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.pjx-ghost-btn{display:inline-flex;align-items:center;gap:.4rem;height:40px;padding:0 .9rem;border:1px solid var(--color-border-card);border-radius:var(--radius-pill);background:transparent;color:var(--color-text-muted);font-family:var(--font-family-body);font-size:.86rem;font-weight:500;cursor:pointer;transition:color .24s,border-color .24s,background .24s}.pjx-ghost-btn:hover{color:var(--color-text-main);border-color:var(--color-border-hover);background:var(--color-hover)}.pjx-ghost-btn.danger:hover{color:var(--color-danger);border-color:rgba(var(--color-danger-rgb),.4);background:rgba(var(--color-danger-rgb),.08)}.pjx-section{margin-top:0;padding-bottom:.7rem;border-bottom:1px solid var(--color-border-card);display:flex;align-items:flex-end;justify-content:space-between;gap:1rem 1.25rem;flex-wrap:wrap}.pjx-section-label{margin:0;display:inline-flex;align-items:baseline;gap:.5rem;font-family:var(--pjx-mono);font-size:.74rem;font-weight:600;letter-spacing:.16em;color:var(--color-text-muted)}.pjx-section-count{padding:.1rem .4rem;border-radius:var(--radius-sm);background:rgba(var(--color-brand-rgb),.1);color:var(--color-brand-start);font-size:.72rem;letter-spacing:.04em;font-variant-numeric:tabular-nums}.pjx-tools{display:flex;align-items:center;gap:.55rem}.pjx-search{position:relative;display:flex;align-items:center}.pjx-search-icon{position:absolute;left:.3rem;color:var(--color-text-muted);pointer-events:none;transition:color .24s}.pjx-search input{width:168px;height:36px;padding:0 1.8rem 0 1.85rem;border:none;border-bottom:1px solid var(--color-border-card);border-radius:0;background:transparent;color:var(--color-text-main);font-family:var(--font-family-body);font-size:.88rem;outline:none;transition:width .35s var(--pjx-ease),border-color .24s}.pjx-search input::-webkit-search-cancel-button{display:none}.pjx-search input::-moz-placeholder{color:var(--color-text-muted)}.pjx-search input::placeholder{color:var(--color-text-muted)}.pjx-search input:hover{border-bottom-color:var(--color-border-hover)}.pjx-search input:focus{width:216px;border-bottom-color:var(--color-brand-start)}.pjx-search:focus-within .pjx-search-icon{color:var(--color-brand-start)}.pjx-search-kbd{position:absolute;right:.3rem;min-width:18px;padding:.1rem .3rem;border:1px solid var(--color-border-card);border-radius:5px;background:var(--color-surface);color:var(--color-text-muted);font-family:var(--pjx-mono);font-size:.66rem;line-height:1.3;text-align:center;pointer-events:none}.pjx-search-clear{position:absolute;right:.15rem;width:22px;height:22px;display:grid;place-items:center;border:none;border-radius:var(--radius-pill);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:color .2s,background .2s}.pjx-search-clear:hover{color:var(--color-text-main);background:var(--color-hover)}.pjx-select{position:relative;display:inline-flex;align-items:center;color:var(--color-text-muted)}.pjx-select select{-moz-appearance:none;appearance:none;-webkit-appearance:none;height:36px;padding:0 1.9rem 0 .85rem;border:1px solid var(--color-border-card);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-main);font-family:var(--font-family-body);font-size:.84rem;font-weight:500;cursor:pointer;outline:none;transition:border-color .24s,background .24s}.pjx-select select:hover{border-color:var(--color-border-hover)}.pjx-select select:focus-visible{border-color:var(--color-brand-start);box-shadow:0 0 0 3px rgba(var(--color-brand-rgb),.14)}.pjx-select svg{position:absolute;right:.65rem;pointer-events:none}.pjx-view{display:inline-flex;gap:2px;padding:3px;border:1px solid var(--color-border-card);border-radius:var(--radius-pill);background:var(--color-surface)}.pjx-view button{width:30px;height:28px;display:grid;place-items:center;border:none;border-radius:var(--radius-pill);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:color .22s,background .22s}.pjx-view button:hover{color:var(--color-text-main)}.pjx-view button[aria-pressed=true]{background:var(--color-active-soft);color:var(--color-brand-start)}.pjx-grid{list-style:none;margin:1.35rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(208px,1fr));gap:1.15rem 1rem}.pjx-tile{position:relative;aspect-ratio:4 / 3;border:1px solid var(--color-border-card);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm);overflow:hidden;animation:pjxTileIn .5s var(--pjx-ease) backwards;animation-delay:calc(var(--pjx-i, 0) * 38ms);transition:transform .42s var(--pjx-ease),box-shadow .42s var(--pjx-ease),border-color .3s}.pjx-tile:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:var(--color-border-hover)}.pjx-tile--featured{grid-column:span 2;grid-row:span 2;aspect-ratio:auto;border-radius:var(--radius-xl);box-shadow:var(--shadow-md)}.pjx-tile--featured .pjx-tile-foot{gap:.3rem;padding:2.6rem 1.15rem 1rem}.pjx-tile--featured.pjx-tile--blank .pjx-tile-foot{padding-top:1rem}.pjx-tile--featured .pjx-tile-name{font-size:clamp(1.1rem,1.6vw,1.35rem);letter-spacing:-.01em}.pjx-tile--featured .pjx-tile-index{top:.75rem;left:.85rem}.pjx-tile-desc{margin:0;max-width:46ch;font-size:.85rem;line-height:1.5;color:var(--color-text-muted);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.pjx-tile--cover .pjx-tile-desc{color:#ffffffc7}.pjx-tile-badge{position:absolute;top:.75rem;left:3.1rem;z-index:2;padding:.2rem .55rem;border-radius:var(--radius-pill);background:var(--color-brand-gradient);color:#fff;font-family:var(--pjx-mono);font-size:.62rem;font-weight:600;letter-spacing:.1em;pointer-events:none;box-shadow:0 3px 10px rgba(var(--color-brand-rgb),.32)}.pjx-tile:after{content:"";position:absolute;inset:0 0 auto;height:2px;z-index:3;background:var(--color-brand-gradient);transform:scaleX(0);transform-origin:left center;transition:transform .45s var(--pjx-ease)}.pjx-tile:hover:after,.pjx-tile:focus-within:after{transform:scaleX(1)}.pjx-tile--featured:after{transform:scaleX(1)}.pjx-tile-open{position:absolute;inset:0;z-index:2;padding:0;border:none;background:transparent;cursor:pointer;font:inherit;color:inherit}.pjx-tile-open:focus-visible{outline:2px solid var(--color-brand-start);outline-offset:-3px;border-radius:var(--radius-lg)}.pjx-tile-cover{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:transform .6s var(--pjx-ease),filter .4s}.pjx-tile:hover .pjx-tile-cover{transform:scale(1.06);filter:saturate(1.06)}.pjx-tile-blank{position:absolute;inset:0;background:linear-gradient(140deg,rgba(var(--color-brand-rgb),.1),rgba(var(--color-brand-end-rgb),.06));color:var(--color-brand-start);display:grid;place-items:center}.pjx-tile-blank .pjx-mark{width:78%;height:78%;transition:transform .6s var(--pjx-ease)}.pjx-tile:hover .pjx-tile-blank .pjx-mark{transform:scale(1.05)}.pjx-tile-index{position:absolute;top:.55rem;left:.6rem;z-index:2;padding:.14rem .4rem;border-radius:6px;font-family:var(--pjx-mono);font-size:.64rem;font-weight:600;letter-spacing:.08em;pointer-events:none;font-variant-numeric:tabular-nums}.pjx-tile--cover .pjx-tile-index{background:#0c0a0c6b;color:#ffffffdb;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.pjx-tile--blank .pjx-tile-index{background:rgba(var(--color-brand-rgb),.12);color:var(--color-brand-start)}.pjx-tile-foot{position:absolute;inset:auto 0 0;z-index:1;display:flex;flex-direction:column;gap:.2rem;padding:1.7rem .8rem .7rem;pointer-events:none}.pjx-tile--cover .pjx-tile-foot{background:linear-gradient(to top,rgba(10,8,12,.86) 0%,rgba(10,8,12,.44) 52%,transparent 100%);color:#fff}.pjx-tile--blank .pjx-tile-foot{padding-top:.7rem;background:var(--color-surface-strong);border-top:1px solid var(--color-border-card);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.pjx-tile-name{margin:0;font-family:var(--font-family-title);font-size:.93rem;font-weight:600;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pjx-tile-time{display:flex;align-items:center;gap:.32rem;font-family:var(--pjx-mono);font-size:.7rem;letter-spacing:.02em;font-variant-numeric:tabular-nums;color:var(--color-text-muted)}.pjx-tile--cover .pjx-tile-time{color:#ffffffbd}.pjx-tile-hint{display:flex;align-items:center;gap:.34rem;height:0;overflow:hidden;opacity:0;font-family:var(--pjx-mono);font-size:.68rem;font-weight:600;letter-spacing:.12em;color:var(--color-brand-start);transition:height .34s var(--pjx-ease),opacity .28s ease,margin-top .34s var(--pjx-ease)}.pjx-tile--cover .pjx-tile-hint{color:#fff}.pjx-tile:hover .pjx-tile-hint,.pjx-tile:focus-within .pjx-tile-hint{height:1.05rem;margin-top:.22rem;opacity:1}.pjx-tile-menu{position:absolute;top:.45rem;right:.45rem;z-index:4;width:28px;height:28px;display:grid;place-items:center;border:none;border-radius:var(--radius-sm);cursor:pointer;opacity:0;transform:translateY(-3px);transition:opacity .26s,transform .26s var(--pjx-ease),background .22s,color .22s}.pjx-tile--cover .pjx-tile-menu{background:#0c0a0c75;color:#fff;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.pjx-tile--blank .pjx-tile-menu{background:var(--color-surface-strong);color:var(--color-brand-start);box-shadow:var(--shadow-sm)}.pjx-tile:hover .pjx-tile-menu,.pjx-tile:focus-within .pjx-tile-menu,.pjx-tile-menu[aria-expanded=true]{opacity:1;transform:none}.pjx-tile-menu:focus-visible{outline:2px solid var(--color-brand-start);outline-offset:2px}@media(hover:none){.pjx-tile-menu{opacity:1;transform:none}}.pjx-cell{display:grid}.pjx-create{position:relative;aspect-ratio:4 / 3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;border:1px dashed rgba(var(--color-brand-rgb),.34);border-radius:var(--radius-lg);background:rgba(var(--color-brand-rgb),.04);color:var(--color-brand-start);font-family:var(--font-family-body);cursor:pointer;overflow:hidden;animation:pjxTileIn .5s var(--pjx-ease) backwards;animation-delay:calc(var(--pjx-i, 0) * 38ms);transition:transform .42s var(--pjx-ease),box-shadow .42s var(--pjx-ease),border-color .3s}.pjx-create:before{content:"";position:absolute;inset:-20%;background:repeating-linear-gradient(45deg,rgba(var(--color-brand-rgb),.07) 0 6px,transparent 6px 15px);transition:transform .7s var(--pjx-ease),opacity .4s;opacity:.75}.pjx-create:after{content:"";position:absolute;inset:0;z-index:2;border-radius:inherit;padding:1.5px;background:var(--color-brand-gradient);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;opacity:0;pointer-events:none;transition:opacity .4s var(--pjx-ease)}.pjx-create:hover{transform:translateY(-5px);border-color:transparent;box-shadow:var(--shadow-lg)}.pjx-create:hover:before{transform:translate(15px);opacity:1}.pjx-create:hover:after{opacity:1}.pjx-create:focus-visible{outline:2px solid var(--color-brand-start);outline-offset:2px}.pjx-create-icon{position:relative;z-index:1;isolation:isolate;width:52px;height:52px;display:grid;place-items:center;border-radius:var(--radius-pill);background:var(--color-surface-strong);box-shadow:var(--shadow-sm);transition:transform .45s var(--pjx-ease),color .3s,box-shadow .3s}.pjx-create-icon:before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:var(--color-brand-gradient);opacity:0;transition:opacity .35s var(--pjx-ease)}.pjx-create:hover .pjx-create-icon{transform:rotate(90deg) scale(1.08);color:#fff;box-shadow:var(--shadow-glow)}.pjx-create:hover .pjx-create-icon:before{opacity:1}.pjx-create-label{position:relative;z-index:1;font-size:.92rem;font-weight:600;letter-spacing:.04em}.pjx-ledger{--pjx-cols: 2.9rem minmax(0, 1fr) 7.5rem 7.5rem 2.5rem;margin:1.35rem 0 0;border:1px solid var(--color-border-card);border-radius:var(--radius-lg);background:var(--color-surface);overflow:hidden;animation:pjxRise .5s var(--pjx-ease) backwards}.pjx-ledger-head,.pjx-row{display:grid;grid-template-columns:var(--pjx-cols);align-items:center;gap:1rem;padding:0 1rem}.pjx-ledger-head{height:38px;background:var(--color-hover);border-bottom:1px solid var(--color-border-card);font-family:var(--pjx-mono);font-size:.66rem;font-weight:600;letter-spacing:.16em;color:var(--color-text-muted)}.pjx-row{position:relative;height:64px;transition:background .24s}.pjx-row+.pjx-row{border-top:1px solid var(--color-border-card)}.pjx-row:hover{background:rgba(var(--color-brand-rgb),.055)}.pjx-row-open{position:absolute;inset:0;z-index:1;padding:0;border:none;background:transparent;cursor:pointer}.pjx-row-open:focus-visible{outline:2px solid var(--color-brand-start);outline-offset:-3px}.pjx-row-index{font-family:var(--pjx-mono);font-size:.72rem;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.pjx-row-main{display:flex;align-items:center;gap:.8rem;min-width:0}.pjx-row-thumb{position:relative;flex:none;width:46px;height:34px;border-radius:var(--radius-sm);overflow:hidden;background:linear-gradient(140deg,rgba(var(--color-brand-rgb),.14),rgba(var(--color-brand-end-rgb),.08));color:var(--color-brand-start);display:grid;place-items:center}.pjx-row-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.pjx-row-text{min-width:0}.pjx-row-name{margin:0;font-family:var(--font-family-title);font-size:.94rem;font-weight:600;color:var(--color-text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .22s}.pjx-row:hover .pjx-row-name{color:var(--color-brand-start)}.pjx-row-desc{margin:.1rem 0 0;font-size:.78rem;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pjx-cell-time{font-family:var(--pjx-mono);font-size:.76rem;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.pjx-row-menu{position:relative;z-index:2;width:28px;height:28px;display:grid;place-items:center;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:background .22s,color .22s}.pjx-row-menu:hover,.pjx-row-menu[aria-expanded=true]{background:rgba(var(--color-brand-rgb),.12);color:var(--color-brand-start)}.pjx-row-menu:focus-visible{outline:2px solid var(--color-brand-start);outline-offset:2px}.pjx-ledger-add{width:100%;height:52px;display:flex;align-items:center;justify-content:center;gap:.5rem;border:none;border-bottom:1px dashed rgba(var(--color-brand-rgb),.28);background:rgba(var(--color-brand-rgb),.04);color:var(--color-brand-start);font-family:var(--font-family-body);font-size:.88rem;font-weight:600;cursor:pointer;transition:background .24s}.pjx-ledger-add:hover{background:rgba(var(--color-brand-rgb),.1)}.pjx-skeleton{position:relative;aspect-ratio:4 / 3;border:1px solid var(--color-border-card);border-radius:var(--radius-lg);background:var(--color-surface);overflow:hidden}.pjx-skeleton:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 22%,rgba(var(--color-brand-rgb),.12) 50%,transparent 78%);transform:translate(-100%);animation:pjxShimmer 1.5s ease-in-out infinite}.pjx-panel{position:relative;margin:2.5rem auto 0;max-width:560px;padding:2.5rem 2rem;border:1px dashed var(--color-border-hover);border-radius:var(--radius-xl);background:var(--color-surface);text-align:center;overflow:hidden;animation:pjxRise .6s var(--pjx-ease) backwards}.pjx-panel-mark{position:absolute;inset:-8% -4% auto;height:130%;color:var(--color-brand-start);opacity:.16;pointer-events:none}.pjx-panel-title{position:relative;margin:0 0 .6rem;font-family:var(--font-family-title);font-size:1.4rem;font-weight:600}.pjx-panel-text{position:relative;margin:0 auto 1.6rem;max-width:34ch;font-size:.92rem;line-height:1.6;color:var(--color-text-muted)}.pjx-panel .pjx-cta,.pjx-panel .pjx-ghost-btn{position:relative}.pjx-nomatch{margin:2.5rem 0 0;display:flex;flex-direction:column;align-items:center;gap:.9rem;color:var(--color-text-muted);font-size:.92rem;text-align:center}.pjx-nomatch strong{color:var(--color-text-main)}.pjx-menu-scrim{position:fixed;inset:0;z-index:3600}.pjx-menu{position:fixed;z-index:3601;min-width:172px;padding:.35rem;border:1px solid var(--color-border-card);border-radius:var(--radius-md);background:var(--color-surface-strong);box-shadow:var(--shadow-lg);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);animation:pjxMenuIn .18s var(--pjx-ease)}.pjx-menu button{width:100%;display:flex;align-items:center;gap:.7rem;padding:.6rem .8rem;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-main);font-family:var(--font-family-body);font-size:.88rem;font-weight:500;text-align:left;cursor:pointer;transition:background .16s,color .16s,transform .16s var(--pjx-ease)}.pjx-menu button:hover,.pjx-menu button:focus-visible{background:rgba(var(--color-brand-rgb),.1);color:var(--color-brand-start);outline:none;transform:translate(2px)}.pjx-menu button.danger{color:var(--color-danger)}.pjx-menu button.danger:hover,.pjx-menu button.danger:focus-visible{background:rgba(var(--color-danger-rgb),.1);color:var(--color-danger)}.pjx-menu-sep{height:1px;margin:.3rem .35rem;background:var(--color-border-card)}.pjx-dialog-scrim{position:fixed;inset:0;z-index:4200;display:grid;place-items:center;padding:1.5rem;background:#0c0a0e6b;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:pjxFade .2s ease}.pjx-dialog{position:relative;width:min(440px,100%);padding:1.75rem 1.75rem 1.5rem;border:1px solid var(--color-border-card);border-radius:var(--radius-xl);background:var(--color-surface-strong);box-shadow:var(--shadow-lg);overflow:hidden;animation:pjxDialogIn .3s var(--pjx-ease)}.pjx-dialog:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--color-brand-gradient)}.pjx-dialog--danger:before{background:linear-gradient(135deg,var(--color-danger),var(--color-brand-start))}.pjx-dialog-eyebrow{margin:0;font-family:var(--pjx-mono);font-size:.68rem;font-weight:600;letter-spacing:.2em;color:var(--color-brand-start)}.pjx-dialog--danger .pjx-dialog-eyebrow{color:var(--color-danger)}.pjx-dialog-title{margin:.5rem 0 0;font-family:var(--font-family-title);font-size:1.4rem;font-weight:600;letter-spacing:-.01em}.pjx-dialog-text{margin:.9rem 0 0;font-size:.9rem;line-height:1.65;color:var(--color-text-muted)}.pjx-dialog-text strong{color:var(--color-text-main);font-weight:600}.pjx-field{margin-top:1.35rem;display:flex;flex-direction:column;gap:.45rem}.pjx-field label{font-family:var(--pjx-mono);font-size:.68rem;font-weight:600;letter-spacing:.14em;color:var(--color-text-muted)}.pjx-field input{height:48px;padding:0 1rem;border:1.5px solid var(--color-border-card);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-main);font-family:var(--font-family-body);font-size:1rem;outline:none;transition:border-color .24s,box-shadow .24s,background .24s}.pjx-field input:hover:not(:focus){border-color:var(--color-border-hover)}.pjx-field input:focus{border-color:var(--color-brand-start);background:var(--color-surface-strong);box-shadow:0 0 0 4px rgba(var(--color-brand-rgb),.12)}.pjx-field input:disabled{opacity:.6;cursor:not-allowed}.pjx-dialog-error{margin:.9rem 0 0;padding:.65rem .8rem;border:1px solid rgba(var(--color-danger-rgb),.28);border-radius:var(--radius-sm);background:rgba(var(--color-danger-rgb),.09);color:var(--color-danger);font-size:.82rem;line-height:1.5}.pjx-dialog-actions{margin-top:1.5rem;display:flex;justify-content:flex-end;gap:.6rem}.pjx-btn{height:42px;padding:0 1.3rem;border:1px solid transparent;border-radius:var(--radius-pill);font-family:var(--font-family-body);font-size:.92rem;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:transform .26s var(--pjx-ease),box-shadow .26s,background .24s,border-color .24s}.pjx-btn:focus-visible{outline:2px solid var(--color-brand-start);outline-offset:2px}.pjx-btn.secondary{border-color:var(--color-border-card);background:transparent;color:var(--color-text-main)}.pjx-btn.secondary:hover:not(:disabled){background:var(--color-hover);border-color:var(--color-border-hover)}.pjx-btn.primary{background:var(--color-brand-gradient);color:#fff;box-shadow:0 4px 14px rgba(var(--color-brand-rgb),.28)}.pjx-btn.primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 24px rgba(var(--color-brand-rgb),.36)}.pjx-btn.danger{background:var(--color-danger);color:#fff;box-shadow:0 4px 14px rgba(var(--color-danger-rgb),.3)}.pjx-btn.danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 24px rgba(var(--color-danger-rgb),.38)}.pjx-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.pjx-dialog-close{position:absolute;top:.9rem;right:.9rem;width:30px;height:30px;display:grid;place-items:center;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:background .22s,color .22s}.pjx-dialog-close:hover:not(:disabled){background:var(--color-hover);color:var(--color-text-main)}.pjx-dialog-close:disabled{opacity:.5;cursor:not-allowed}.pjx-mark{width:100%;height:100%;display:block}.pjx-mark-grid{stroke:currentColor;stroke-width:.6;fill:none;opacity:.18}.pjx-mark-edge{stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;opacity:.36}.pjx-mark-node{fill:currentColor;opacity:.2}.pjx-mark-node--accent{opacity:.46}@keyframes pjxDrift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(-2.5%,2%,0) scale(1.06)}}@keyframes pjxRise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes pjxTileIn{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pjxShimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes pjxMenuIn{0%{opacity:0;transform:scale(.95) translateY(-6px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes pjxDialogIn{0%{opacity:0;transform:scale(.96) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes pjxFade{0%{opacity:0}to{opacity:1}}:root[data-theme=dark] .pjx-backdrop-grain{opacity:.055}:root[data-theme=dark] .pjx-backdrop-grid{background-image:linear-gradient(to right,rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.05) 1px,transparent 1px)}:root[data-theme=dark] .pjx-tile--cover .pjx-tile-foot{background:linear-gradient(to top,rgba(4,3,6,.9) 0%,rgba(4,3,6,.5) 52%,transparent 100%)}:root[data-theme=dark] .pjx-dialog-scrim{background:#0000009e}:root[data-theme=dark] .pjx-create{background:rgba(var(--color-brand-rgb),.07)}@media(max-width:900px){.pjx-ledger{--pjx-cols: 2.9rem minmax(0, 1fr) 7rem 2.5rem}.pjx-cell--created{display:none}}@media(max-width:720px){.pjx-masthead-inner{grid-template-columns:minmax(0,1fr);align-items:start;gap:1.1rem}.pjx-section{align-items:flex-start}.pjx-tools{width:100%;justify-content:space-between}.pjx-search{flex:1;min-width:0}.pjx-search input,.pjx-search input:focus{width:100%}.pjx-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.9rem .75rem}}@media(max-width:560px){.pjx-tile--featured{grid-column:span 2;grid-row:span 1;aspect-ratio:4 / 3}.pjx-tile--featured .pjx-tile-desc{display:none}}@media(max-width:620px){.pjx-ledger{--pjx-cols: minmax(0, 1fr) 6.5rem 2.5rem}.pjx-row-index,.pjx-ledger-head .pjx-row-index{display:none}.pjx-cta{width:100%;justify-content:center}}@media(max-height:760px){.pjx-masthead{padding-top:calc(1.65rem + var(--fc-notify-banner-h, 0px))}.pjx-title{font-size:1.45rem}.pjx-rule{margin-top:.75rem}.pjx-main{padding-top:.85rem}.pjx-tile--featured{grid-row:span 1}.pjx-tile--featured .pjx-tile-desc{display:none}}@media(prefers-reduced-motion:reduce){.pjx-backdrop-glow,.pjx-masthead,.pjx-tile,.pjx-create,.pjx-ledger,.pjx-panel,.pjx-menu,.pjx-dialog,.pjx-dialog-scrim,.pjx-skeleton:after{animation:none;opacity:1;transform:none}.pjx-tile:hover,.pjx-create:hover,.pjx-cta:hover,.pjx-btn.primary:hover:not(:disabled),.pjx-btn.danger:hover:not(:disabled){transform:none}.pjx-tile:hover .pjx-tile-cover,.pjx-tile:hover .pjx-tile-blank .pjx-mark{transform:none}.pjx-cta:after{display:none}}.ws-project-name-inline{display:inline-flex;align-items:center;gap:5px;height:var(--canvas-header-h, 32px);font-size:12.5px;font-weight:500;font-family:inherit;color:var(--color-text-main, #1c1d22);margin-right:auto;max-width:260px;padding:0 10px;border:1px solid var(--color-border-card);border-radius:var(--radius-sm, 8px);background:var(--color-surface);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer;pointer-events:auto;transition:all .2s ease}.ws-project-name-inline:hover{border-color:var(--color-border-hover);background:var(--color-surface-strong);color:var(--color-brand-start)}.ws-project-name-inline.open{border-color:var(--color-border-hover);background:var(--color-active-soft);color:var(--color-brand-start)}.ws-project-name-text{max-width:208px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-project-name-caret{flex:none;opacity:.6;transition:transform .2s ease}.ws-project-name-inline:hover .ws-project-name-caret,.ws-project-name-inline.open .ws-project-name-caret{opacity:1}.ws-project-name-inline.open .ws-project-name-caret{transform:rotate(180deg)}.ws-workspace-switcher{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;gap:2px;max-width:calc(100vw - 220px);padding:3px;background:#1c1b170d;border-radius:8px;pointer-events:auto;z-index:2001}.ws-switcher-tab{padding:4px 14px;font-size:12px;font-weight:500;border:none;border-radius:6px;cursor:pointer;color:var(--color-text-muted);background:transparent;transition:all .2s cubic-bezier(.16,1,.3,1)}.ws-switcher-tab:hover{color:var(--color-text-main)}.ws-switcher-tab.active{color:var(--color-text-main);background:var(--color-surface-strong);box-shadow:var(--shadow-sm)}.warmsun-modal-card:has(.asset-library-modal-content){display:flex;flex-direction:column}.warmsun-modal-card:has(.asset-library-modal-content) .modal-header{flex-shrink:0}.asset-library-modal-content{position:relative;display:flex;flex-direction:column;flex:1;width:100%;min-height:0;overflow:hidden}.asset-library-content{display:flex;flex-direction:column;flex:1;overflow-y:auto;padding:0}.asset-library-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:16px 24px 0;flex-shrink:0}.asset-filter-tabs{display:flex;gap:4px;padding:4px;background:#1c1b170a;border-radius:10px}.asset-filter-tab{padding:6px 16px;font-size:13px;font-weight:500;border:none;border-radius:7px;cursor:pointer;color:var(--color-text-muted, rgba(28, 29, 34, .52));background:transparent;transition:all .2s cubic-bezier(.16,1,.3,1)}.asset-filter-tab:hover{color:var(--color-text-main, #1c1d22);background:var(--color-hover)}.asset-filter-tab.active{color:var(--color-text-main, #1c1d22);background:var(--color-surface-strong);box-shadow:var(--shadow-sm)}.asset-library-add-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;color:#fff;background:var(--color-brand-gradient, linear-gradient(135deg, #ff5c7a, #ff5c7a));border:none;border-radius:10px;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 8px #ff5c7a33}.asset-library-add-btn:hover{transform:translateY(-1px);box-shadow:0 4px 16px #ff5c7a59}.asset-library-content::-webkit-scrollbar{width:6px}.asset-library-content::-webkit-scrollbar-track{background:transparent}.asset-library-content::-webkit-scrollbar-thumb{background:#1c1b171f;border-radius:3px}.asset-library-content::-webkit-scrollbar-thumb:hover{background:#1c1b1733}.asset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;padding:0 24px 24px}.asset-card{position:relative;background:var(--color-surface-strong, rgba(255, 255, 255, .96));border:1px solid var(--color-border-card, rgba(28, 27, 23, .06));border-radius:16px;overflow:hidden;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);animation:assetCardIn .4s cubic-bezier(.16,1,.3,1) backwards}.asset-card.inactive{opacity:.5}.asset-card.inactive:hover{opacity:.7}@keyframes assetCardIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.asset-card:hover{border-color:var(--color-border-hover, rgba(255, 92, 122, .18));box-shadow:var(--shadow-md, 0 8px 20px rgba(28, 27, 23, .06));transform:translateY(-2px)}.asset-card-thumbnail{position:relative;width:100%;aspect-ratio:1;background:var(--color-bg-base, #f6f6f3);display:flex;align-items:center;justify-content:center;overflow:hidden}.asset-card-group-badge{position:absolute;top:8px;left:8px;display:inline-flex;align-items:center;gap:3px;padding:3px 7px;font-size:11px;font-weight:600;line-height:1;color:#fff;background:#14151ab8;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:999px;font-variant-numeric:tabular-nums;pointer-events:none}.asset-card-thumbnail img,.asset-card-thumbnail video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.asset-card-thumbnail svg{color:var(--color-text-muted, rgba(28, 29, 34, .52));opacity:.4}.asset-card-info{padding:10px 12px}.asset-card-name{font-size:13px;font-weight:500;color:var(--color-text-main, #1c1d22);margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.asset-card-meta{font-size:11px;color:var(--color-text-muted, rgba(28, 29, 34, .52));display:flex;align-items:center;gap:4px}.asset-card-category{font-weight:500;color:var(--color-brand-start, #ff5c7a)}.asset-card-separator{opacity:.4}.asset-card-actions{position:absolute;top:8px;right:8px;display:flex;gap:4px;opacity:0;transition:opacity .15s ease;z-index:2}.asset-card:hover .asset-card-actions{opacity:1}.asset-card-action-btn{width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center;background:var(--color-surface-strong, rgba(255, 255, 255, .96));border:1px solid var(--color-border-card, rgba(28, 27, 23, .06));border-radius:8px;cursor:pointer;color:var(--color-text-muted, rgba(28, 29, 34, .52));transition:all .15s ease;box-shadow:var(--shadow-sm, 0 2px 8px rgba(28, 27, 23, .04))}.asset-card-action-btn:hover{color:var(--color-brand-start, #ff5c7a);border-color:var(--color-border-hover, rgba(255, 92, 122, .18))}.asset-card-action-btn.danger:hover{color:var(--color-danger, #f43f5e);border-color:#f43f5e33}.add-asset-card{background:transparent;border:1.5px dashed var(--color-border-card, rgba(28, 27, 23, .06));border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:1;cursor:pointer;color:var(--color-text-muted, rgba(28, 29, 34, .52));transition:all .2s cubic-bezier(.16,1,.3,1)}.add-asset-card:hover{border-color:var(--color-border-hover, rgba(255, 92, 122, .18));color:var(--color-brand-start, #ff5c7a);background:#ff5c7a08}.asset-library-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;flex:1;min-height:0}.asset-library-empty-icon{width:80px;height:80px;display:flex;align-items:center;justify-content:center;margin-bottom:20px;color:var(--color-text-muted, rgba(28, 29, 34, .52));opacity:.3}.asset-library-empty-title{font-size:16px;font-weight:600;color:var(--color-text-main, #1c1d22);margin:0 0 8px}.asset-library-empty-text{font-size:14px;color:var(--color-text-muted, rgba(28, 29, 34, .52));margin:0 0 24px;max-width:320px;line-height:1.5}.add-asset-dialog-backdrop{position:fixed;inset:0;background:#1c1b1766;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:modalFadeIn .2s ease}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.add-asset-dialog{background:var(--color-surface-strong, rgba(255, 255, 255, .96));backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-radius:16px;border:1px solid var(--color-border-card, rgba(28, 27, 23, .06));padding:24px;width:90%;max-width:420px;box-shadow:var(--shadow-lg, 0 16px 36px rgba(28, 27, 23, .08));animation:modalSlideUp .3s cubic-bezier(.16,1,.3,1)}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.add-asset-dialog-title{font-size:16px;font-weight:600;color:var(--color-text-main, #1c1d22);margin:0 0 16px}.add-asset-preview{width:100%;aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:var(--color-bg-base, #f6f6f3);margin-bottom:16px}.add-asset-preview img,.add-asset-preview video{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.add-asset-category-group{display:flex;gap:4px;padding:3px;background:#1c1b170a;border-radius:10px}.add-asset-category-btn{flex:1;padding:7px 0;font-size:13px;font-weight:500;border:none;border-radius:7px;cursor:pointer;color:var(--color-text-muted, rgba(28, 29, 34, .52));background:transparent;transition:all .2s cubic-bezier(.16,1,.3,1)}.add-asset-category-btn:hover{color:var(--color-text-main, #1c1d22)}.add-asset-category-btn.active{color:var(--color-text-main, #1c1d22);background:var(--color-surface-strong);box-shadow:var(--shadow-sm)}.add-asset-form{display:flex;flex-direction:column;gap:16px}.add-asset-form-group{display:flex;flex-direction:column;gap:6px}.add-asset-form-label{font-size:13px;font-weight:500;color:var(--color-text-main, #1c1d22)}.add-asset-form-input,.add-asset-form-select{padding:8px 12px;font-size:14px;border:1px solid var(--color-border-card, rgba(28, 27, 23, .06));border-radius:8px;background:#fffc;color:var(--color-text-main, #1c1d22);transition:all .2s ease}.add-asset-form-input:focus,.add-asset-form-select:focus{outline:none;border-color:var(--color-brand-start, #ff5c7a);box-shadow:0 0 0 3px #ff5c7a14}.add-asset-dialog-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.add-asset-dialog-btn{padding:8px 18px;font-size:13px;font-weight:500;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.add-asset-dialog-btn.secondary{background:transparent;color:var(--color-text-muted, rgba(28, 29, 34, .52))}.add-asset-dialog-btn.secondary:hover{color:var(--color-text-main, #1c1d22);background:#00000008}.add-asset-dialog-btn.primary{background:var(--color-brand-gradient, linear-gradient(135deg, #ff5c7a, #ff5c7a));color:#fff}.add-asset-dialog-btn.primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #ff5c7a40}.add-asset-dialog-btn.primary:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.asset-preview-overlay{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10000;cursor:pointer;animation:modalFadeIn .2s ease}.asset-preview-content{position:relative;max-width:85vw;max-height:85vh;cursor:default}.asset-preview-image{max-width:85vw;max-height:85vh;-o-object-fit:contain;object-fit:contain;border-radius:8px;box-shadow:0 20px 60px #0006}.asset-preview-info{position:absolute;bottom:-36px;left:50%;transform:translate(-50%);padding:6px 16px;background:#0009;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:8px;white-space:nowrap}.asset-preview-name{font-size:13px;color:#ffffffe6}.asset-preview-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border:none;border-radius:50%;background:#fffffff2;color:#1c1d22;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10001;transition:all .2s ease;box-shadow:0 4px 16px #00000040}.asset-preview-close:hover{background:#fff;transform:scale(1.1);box-shadow:0 6px 24px #00000059}.asset-group-preview-overlay{position:absolute;inset:0;background:#000000f0;display:flex;align-items:center;justify-content:center;z-index:10000;cursor:pointer;animation:modalFadeIn .2s ease;padding:24px;box-sizing:border-box}.asset-group-preview-content{position:relative;display:flex;flex-direction:column;width:100%;height:100%;max-width:1600px;cursor:default;gap:16px}.asset-group-preview-main{position:relative;display:flex;align-items:center;justify-content:center;flex:1;min-height:0;overflow:hidden}.asset-group-preview-image{max-width:100%;max-height:100%;width:auto;height:auto;-o-object-fit:contain;object-fit:contain;border-radius:2px;box-shadow:0 16px 64px #000000b3}.asset-group-preview-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border:none;border-radius:50%;background:#ffffffeb;color:#1c1d22;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;box-shadow:0 4px 16px #00000040;z-index:10}.asset-group-preview-nav:hover:not(:disabled){background:#fff;transform:translateY(-50%) scale(1.08);box-shadow:0 6px 20px #00000059}.asset-group-preview-nav:disabled{opacity:.25;cursor:not-allowed}.asset-group-preview-nav.prev{left:20px}.asset-group-preview-nav.next{right:20px}.asset-group-preview-footer{display:flex;flex-direction:column;gap:12px;flex-shrink:0;padding:16px 18px;background:#14151af5;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:10px;border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 32px #00000080}.asset-group-preview-thumbnails{display:flex;gap:10px;overflow-x:auto;padding:4px 2px}.asset-group-preview-thumbnails::-webkit-scrollbar{height:5px}.asset-group-preview-thumbnails::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.asset-group-preview-thumbnails::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:3px}.asset-group-preview-thumbnails::-webkit-scrollbar-thumb:hover{background:#ffffff47}.asset-group-preview-thumbnail{flex-shrink:0;width:68px;height:68px;border-radius:7px;overflow:hidden;cursor:pointer;border:2.5px solid rgba(255,255,255,.15);transition:all .2s ease;position:relative;background:#0006}.asset-group-preview-thumbnail img,.asset-group-preview-thumbnail video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.asset-group-preview-thumbnail:hover{border-color:#ffffff73;transform:scale(1.04)}.asset-group-preview-thumbnail.active{border-color:#ff5c7a;box-shadow:0 0 0 3px #ff5c7a40;transform:scale(1.05)}.asset-group-preview-thumbnail.enabled:after{content:"";position:absolute;top:5px;right:5px;width:10px;height:10px;background:#10b981;border-radius:50%;border:2.5px solid rgba(20,21,26,.95);box-shadow:0 2px 6px #0006}.asset-group-preview-footer-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.asset-group-preview-info{display:flex;align-items:center;gap:14px;flex:1;min-width:0}.asset-preview-name{font-size:14px;font-weight:500;color:#ffffffeb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.asset-preview-count{font-size:13px;color:#ffffff7a;font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0}.asset-group-preview-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.asset-active-badge{padding:7px 14px;font-size:13px;font-weight:500;color:#10b981;background:#10b98124;border:1px solid rgba(16,185,129,.28);border-radius:7px;white-space:nowrap}.asset-activate-btn{padding:7px 18px;font-size:13px;font-weight:500;color:#fff;background:var(--color-brand-gradient);border:none;border-radius:7px;cursor:pointer;transition:all .2s ease;white-space:nowrap;box-shadow:0 2px 10px rgba(var(--color-brand-rgb),.28)}.asset-activate-btn:hover{transform:translateY(-1px);box-shadow:0 4px 16px #ff5c7a6b}.asset-group-preview-actions .asset-card-action-btn{width:34px;height:34px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#ffffffb8;display:flex;align-items:center;justify-content:center;border-radius:7px;cursor:pointer;transition:all .2s ease}.asset-group-preview-actions .asset-card-action-btn:hover{background:#ffffff24;color:#fff;border-color:#ffffff47;transform:translateY(-1px)}.asset-group-preview-actions .asset-card-action-btn.danger:hover{background:#f43f5e29;color:#f43f5e;border-color:#f43f5e61}.ws-gen-match-asset-btn{flex-shrink:0;width:30px;height:30px;border:1px solid var(--color-border-card, rgba(28, 27, 23, .06));border-radius:8px;background:#ffffffe6;color:var(--color-brand-start, #ff5c7a);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);margin-right:4px}.ws-gen-match-asset-btn:hover{background:var(--color-brand-start, #ff5c7a);color:#fff;border-color:var(--color-brand-start, #ff5c7a);transform:scale(1.08);box-shadow:0 2px 8px #ff5c7a4d}.tl-container{font-size:12px;--tl-space-1: 2px;--tl-space-2: 4px;--tl-space-3: 8px;--tl-space-4: 12px;--tl-space-5: 16px;--tl-space-6: 20px;--tl-space-7: 28px;--tl-space-8: 32px;--tl-space-9: 64px;--tl-space-10: 72px;--tl-radius-0: 2px;--tl-radius-1: 4px;--tl-radius-2: 6px;--tl-radius-3: 9px;--tl-radius-4: 11px;--tl-layer-canvas-hidden: -999999;--tl-layer-canvas-background: 100;--tl-layer-canvas-grid: 150;--tl-layer-watermark: 200;--tl-layer-canvas-in-front: 250;--tl-layer-canvas-shapes: 300;--tl-layer-canvas-overlays: 500;--tl-layer-canvas-blocker: 10000;--tl-layer-overlays-collaborator-scribble: 10;--tl-layer-overlays-collaborator-brush: 20;--tl-layer-overlays-collaborator-shape-indicator: 30;--tl-layer-overlays-user-scribble: 40;--tl-layer-overlays-user-brush: 50;--tl-layer-overlays-user-snapline: 90;--tl-layer-overlays-selection-fg: 100;--tl-layer-overlays-user-handles: 105;--tl-layer-overlays-user-indicator-hint: 110;--tl-layer-overlays-collaborator-cursor-hint: 120;--tl-layer-overlays-collaborator-cursor: 130;--tl-layer-text-container: 1;--tl-layer-text-content: 3;--tl-layer-text-editor: 4;--tl-layer-error-overlay: 1;--tl-layer-error-canvas: 2;--tl-layer-error-canvas-after: 3;--tl-layer-error-content: 4;--tl-zoom: 1;--tl-tab-size: 2;--tl-cursor-none: none;--tl-cursor-default: url("data:image/svg+xml,<svg height='32' width='32' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg' style='color: black;'><defs><filter id='shadow' y='-40%' x='-40%' width='180px' height='180%' color-interpolation-filters='sRGB'><feDropShadow dx='1' dy='1' stdDeviation='1.2' flood-opacity='.5'/></filter></defs><g fill='none' transform='rotate(0 16 16)' filter='url(%23shadow)'><path d='m12 24.4219v-16.015l11.591 11.619h-6.781l-.411.124z' fill='white'/><path d='m21.0845 25.0962-3.605 1.535-4.682-11.089 3.686-1.553z' fill='white'/><path d='m19.751 24.4155-1.844.774-3.1-7.374 1.841-.775z' fill='black'/><path d='m13 10.814v11.188l2.969-2.866.428-.139h4.768z' fill='black'/></g></svg>") 12 8, default;--tl-cursor-pointer: url("data:image/svg+xml,<svg height='32' width='32' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg' style='color: black;'><defs><filter id='shadow' y='-40%' x='-40%' width='180px' height='180%' color-interpolation-filters='sRGB'><feDropShadow dx='1' dy='1' stdDeviation='1.2' flood-opacity='.5'/></filter></defs><g fill='none' transform='rotate(0 16 16)' filter='url(%23shadow)'><path d='m13.3315 21.3799c-.284-.359-.629-1.093-1.243-1.984-.348-.504-1.211-1.453-1.468-1.935-.223-.426-.199-.617-.146-.97.094-.628.738-1.117 1.425-1.051.519.049.959.392 1.355.716.239.195.533.574.71.788.163.196.203.277.377.509.23.307.302.459.214.121-.071-.496-.187-1.343-.355-2.092-.128-.568-.159-.657-.281-1.093-.129-.464-.195-.789-.316-1.281-.084-.348-.235-1.059-.276-1.459-.057-.547-.087-1.439.264-1.849.275-.321.906-.418 1.297-.22.512.259.803 1.003.936 1.3.239.534.387 1.151.516 1.961.164 1.031.466 2.462.476 2.763.024-.369-.068-1.146-.004-1.5.058-.321.328-.694.666-.795.286-.085.621-.116.916-.055.313.064.643.288.766.499.362.624.369 1.899.384 1.831.086-.376.071-1.229.284-1.584.14-.234.497-.445.687-.479.294-.052.655-.068.964-.008.249.049.586.345.677.487.218.344.342 1.317.379 1.658.015.141.074-.392.293-.736.406-.639 1.843-.763 1.898.639.025.654.02.624.02 1.064 0 .517-.012.828-.04 1.202-.031.4-.117 1.304-.242 1.742-.086.301-.371.978-.652 1.384 0 0-1.074 1.25-1.191 1.813-.118.562-.079.566-.102.965-.023.398.121.922.121.922s-.802.104-1.234.035c-.391-.063-.875-.841-1-1.079-.172-.328-.539-.265-.682-.023-.225.383-.709 1.07-1.051 1.113-.668.084-2.054.031-3.139.02 0 0 .185-1.011-.227-1.358-.305-.259-.83-.784-1.144-1.06z' fill='white'/><g stroke='black' stroke-linecap='round' stroke-width='.75'><path d='m13.3315 21.3799c-.284-.359-.629-1.093-1.243-1.984-.348-.504-1.211-1.453-1.468-1.935-.223-.426-.199-.617-.146-.97.094-.628.738-1.117 1.425-1.051.519.049.959.392 1.355.716.239.195.533.574.71.788.163.196.203.277.377.509.23.307.302.459.214.121-.071-.496-.187-1.343-.355-2.092-.128-.568-.159-.657-.281-1.093-.129-.464-.195-.789-.316-1.281-.084-.348-.235-1.059-.276-1.459-.057-.547-.087-1.439.264-1.849.275-.321.906-.418 1.297-.22.512.259.803 1.003.936 1.3.239.534.387 1.151.516 1.961.164 1.031.466 2.462.476 2.763.024-.369-.068-1.146-.004-1.5.058-.321.328-.694.666-.795.286-.085.621-.116.916-.055.313.064.643.288.766.499.362.624.369 1.899.384 1.831.086-.376.071-1.229.284-1.584.14-.234.497-.445.687-.479.294-.052.655-.068.964-.008.249.049.586.345.677.487.218.344.342 1.317.379 1.658.015.141.074-.392.293-.736.406-.639 1.843-.763 1.898.639.025.654.02.624.02 1.064 0 .517-.012.828-.04 1.202-.031.4-.117 1.304-.242 1.742-.086.301-.371.978-.652 1.384 0 0-1.074 1.25-1.191 1.813-.118.562-.079.566-.102.965-.023.398.121.922.121.922s-.802.104-1.234.035c-.391-.063-.875-.841-1-1.079-.172-.328-.539-.265-.682-.023-.225.383-.709 1.07-1.051 1.113-.668.084-2.054.031-3.139.02 0 0 .185-1.011-.227-1.358-.305-.259-.83-.784-1.144-1.06z' stroke-linejoin='round'/><path d='m21.5664 21.7344v-3.459'/><path d='m19.5508 21.7461-.016-3.473'/><path d='m17.5547 18.3047.021 3.426'/></g></g></svg>") 14 10, pointer;--tl-cursor-cross: url("data:image/svg+xml,<svg height='32' width='32' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg' style='color: black;'><defs><filter id='shadow' y='-40%' x='-40%' width='180px' height='180%' color-interpolation-filters='sRGB'><feDropShadow dx='1' dy='1' stdDeviation='1.2' flood-opacity='.5'/></filter></defs><g fill='none' transform='rotate(0 16 16)' filter='url(%23shadow)'><path d='m25 16h-6.01v-6h-2.98v6h-6.01v3h6.01v6h2.98v-6h6.01z' fill='white'/><path d='m23.9902 17.0103h-6v-6.01h-.98v6.01h-6v.98h6v6.01h.98v-6.01h6z' fill='%23231f1f'/></g></svg>") 16 16, crosshair;--tl-cursor-move: url("data:image/svg+xml,<svg height='32' width='32' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg' style='color: black;'><defs><filter id='shadow' y='-40%' x='-40%' width='180px' height='180%' color-interpolation-filters='sRGB'><feDropShadow dx='1' dy='1' stdDeviation='1.2' flood-opacity='.5'/></filter></defs><g fill='none' transform='rotate(0 16 16)' filter='url(%23shadow)'><path d='m19 14h1v1h-1zm1 6h-1v-1h1zm-5-5h-1v-1h1zm0 5h-1v-1h1zm2-10.987-7.985 7.988 5.222 5.221 2.763 2.763 7.984-7.985z' fill='white'/><g fill='black'><path d='m23.5664 16.9971-2.557-2.809v1.829h-4.009-4.001v-1.829l-2.571 2.809 2.572 2.808-.001-1.808h4.001 4.009l-.001 1.808z'/><path d='m17.9873 17h.013v-4.001l1.807.001-2.807-2.571-2.809 2.57h1.809v4.001h.008v4.002l-1.828-.001 2.807 2.577 2.805-2.576h-1.805z'/></g></g></svg>") 16 16, move;--tl-cursor-grab: url("data:image/svg+xml,<svg height='32' width='32' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg' style='color: black;'><defs><filter id='shadow' y='-40%' x='-40%' width='180px' height='180%' color-interpolation-filters='sRGB'><feDropShadow dx='1' dy='1' stdDeviation='1.2' flood-opacity='.5'/></filter></defs><g fill='none' transform='rotate(0 16 16)' filter='url(%23shadow)'><path d='m13.5557 17.5742c-.098-.375-.196-.847-.406-1.552-.167-.557-.342-.859-.47-1.233-.155-.455-.303-.721-.496-1.181-.139-.329-.364-1.048-.457-1.44-.119-.509.033-.924.244-1.206.253-.339.962-.49 1.357-.351.371.13.744.512.916.788.288.46.357.632.717 1.542.393.992.564 1.918.611 2.231l.085.452c-.001-.04-.043-1.122-.044-1.162-.035-1.029-.06-1.823-.038-2.939.002-.126.064-.587.084-.715.078-.5.305-.8.673-.979.412-.201.926-.215 1.401-.017.423.173.626.55.687 1.022.014.109.094.987.093 1.107-.013 1.025.006 1.641.015 2.174.004.231.003 1.625.017 1.469.061-.656.094-3.189.344-3.942.144-.433.405-.746.794-.929.431-.203 1.113-.07 1.404.243.285.305.446.692.482 1.153.032.405-.019.897-.02 1.245 0 .867-.021 1.324-.037 2.121-.001.038-.015.298.023.182.094-.28.188-.542.266-.745.049-.125.241-.614.359-.859.114-.234.211-.369.415-.688.2-.313.415-.448.668-.561.54-.235 1.109.112 1.301.591.086.215.009.713-.028 1.105-.061.647-.254 1.306-.352 1.648-.128.447-.274 1.235-.34 1.601-.072.394-.234 1.382-.359 1.82-.086.301-.371.978-.652 1.384 0 0-1.074 1.25-1.192 1.812-.117.563-.078.567-.101.965-.024.399.121.923.121.923s-.802.104-1.234.034c-.391-.062-.875-.841-1-1.078-.172-.328-.539-.265-.682-.023-.225.383-.709 1.07-1.051 1.113-.668.084-2.054.03-3.139.02 0 0 .185-1.011-.227-1.358-.305-.26-.83-.784-1.144-1.06l-.832-.921c-.284-.36-.629-1.093-1.243-1.985-.348-.504-1.027-1.085-1.284-1.579-.223-.425-.331-.954-.19-1.325.225-.594.675-.897 1.362-.832.519.05.848.206 1.238.537.225.19.573.534.75.748.163.195.203.276.377.509.23.307.302.459.214.121' fill='white'/><g stroke='black' stroke-linecap='round' stroke-width='.75'><path d='m13.5557 17.5742c-.098-.375-.196-.847-.406-1.552-.167-.557-.342-.859-.47-1.233-.155-.455-.303-.721-.496-1.181-.139-.329-.364-1.048-.457-1.44-.119-.509.033-.924.244-1.206.253-.339.962-.49 1.357-.351.371.13.744.512.916.788.288.46.357.632.717 1.542.393.992.564 1.918.611 2.231l.085.452c-.001-.04-.043-1.122-.044-1.162-.035-1.029-.06-1.823-.038-2.939.002-.126.064-.587.084-.715.078-.5.305-.8.673-.979.412-.201.926-.215 1.401-.017.423.173.626.55.687 1.022.014.109.094.987.093 1.107-.013 1.025.006 1.641.015 2.174.004.231.003 1.625.017 1.469.061-.656.094-3.189.344-3.942.144-.433.405-.746.794-.929.431-.203 1.113-.07 1.404.243.285.305.446.692.482 1.153.032.405-.019.897-.02 1.245 0 .867-.021 1.324-.037 2.121-.001.038-.015.298.023.182.094-.28.188-.542.266-.745.049-.125.241-.614.359-.859.114-.234.211-.369.415-.688.2-.313.415-.448.668-.561.54-.235 1.109.112 1.301.591.086.215.009.713-.028 1.105-.061.647-.254 1.306-.352 1.648-.128.447-.274 1.235-.34 1.601-.072.394-.234 1.382-.359 1.82-.086.301-.371.978-.652 1.384 0 0-1.074 1.25-1.192 1.812-.117.563-.078.567-.101.965-.024.399.121.923.121.923s-.802.104-1.234.034c-.391-.062-.875-.841-1-1.078-.172-.328-.539-.265-.682-.023-.225.383-.709 1.07-1.051 1.113-.668.084-2.054.03-3.139.02 0 0 .185-1.011-.227-1.358-.305-.26-.83-.784-1.144-1.06l-.832-.921c-.284-.36-.629-1.093-1.243-1.985-.348-.504-1.027-1.085-1.284-1.579-.223-.425-.331-.954-.19-1.325.225-.594.675-.897 1.362-.832.519.05.848.206 1.238.537.225.19.573.534.75.748.163.195.203.276.377.509.23.307.302.459.214.121' stroke-linejoin='round'/><path d='m20.5664 21.7344v-3.459'/><path d='m18.5508 21.7461-.016-3.473'/><path d='m16.5547 18.3047.021 3.426'/></g></g></svg>") 16 16, grab;--tl-cursor-grabbing: url("data:image/svg+xml,<svg height='32' width='32' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg' style='color: black;'><defs><filter id='shadow' y='-40%' x='-40%' width='180px' height='180%' color-interpolation-filters='sRGB'><feDropShadow dx='1' dy='1' stdDeviation='1.2' flood-opacity='.5'/></filter></defs><g fill='none' transform='rotate(0 16 16)' filter='url(%23shadow)'><path d='m13.5732 12.0361c.48-.178 1.427-.069 1.677.473.213.462.396 1.241.406 1.075.024-.369-.024-1.167.137-1.584.117-.304.347-.59.686-.691.285-.086.62-.116.916-.055.313.064.642.287.765.499.362.623.368 1.899.385 1.831.064-.272.07-1.229.283-1.584.141-.235.497-.445.687-.479.294-.052.656-.068.964-.008.249.049.586.344.677.487.219.344.342 1.316.379 1.658.016.141.074-.393.293-.736.406-.639 1.844-.763 1.898.639.026.654.02.624.02 1.064 0 .516-.012.828-.04 1.202-.03.399-.116 1.304-.241 1.742-.086.301-.371.978-.653 1.384 0 0-1.074 1.25-1.191 1.812-.117.563-.078.567-.102.965-.023.399.121.923.121.923s-.801.104-1.234.034c-.391-.062-.875-.84-1-1.078-.172-.328-.539-.265-.682-.023-.224.383-.709 1.07-1.05 1.113-.669.084-2.055.03-3.14.02 0 0 .185-1.011-.227-1.358-.305-.26-.83-.784-1.144-1.06l-.832-.921c-.283-.36-1.002-.929-1.243-1.985-.213-.936-.192-1.395.037-1.77.232-.381.67-.589.854-.625.208-.042.692-.039.875.062.223.123.313.159.488.391.23.307.312.456.213.121-.076-.262-.322-.595-.434-.97-.109-.361-.401-.943-.38-1.526.008-.221.103-.771.832-1.042' fill='white'/><g stroke='black' stroke-width='.75'><path d='m13.5732 12.0361c.48-.178 1.427-.069 1.677.473.213.462.396 1.241.406 1.075.024-.369-.024-1.167.137-1.584.117-.304.347-.59.686-.691.285-.086.62-.116.916-.055.313.064.642.287.765.499.362.623.368 1.899.385 1.831.064-.272.07-1.229.283-1.584.141-.235.497-.445.687-.479.294-.052.656-.068.964-.008.249.049.586.344.677.487.219.344.342 1.316.379 1.658.016.141.074-.393.293-.736.406-.639 1.844-.763 1.898.639.026.654.02.624.02 1.064 0 .516-.012.828-.04 1.202-.03.399-.116 1.304-.241 1.742-.086.301-.371.978-.653 1.384 0 0-1.074 1.25-1.191 1.812-.117.563-.078.567-.102.965-.023.399.121.923.121.923s-.801.104-1.234.034c-.391-.062-.875-.84-1-1.078-.172-.328-.539-.265-.682-.023-.224.383-.709 1.07-1.05 1.113-.669.084-2.055.03-3.14.02 0 0 .185-1.011-.227-1.358-.305-.26-.83-.784-1.144-1.06l-.832-.921c-.283-.36-1.002-.929-1.243-1.985-.213-.936-.192-1.395.037-1.77.232-.381.67-.589.854-.625.208-.042.692-.039.875.062.223.123.313.159.488.391.23.307.312.456.213.121-.076-.262-.322-.595-.434-.97-.109-.361-.401-.943-.38-1.526.008-.221.103-.771.832-1.042z' stroke-linejoin='round'/><path d='m20.5664 19.7344v-3.459' stroke-linecap='round'/><path d='m18.5508 19.7461-.016-3.473' stroke-linecap='round'/><path d='m16.5547 16.3047.021 3.426' stroke-linecap='round'/></g></g></svg>") 16 16, grabbing;--tl-cursor-text: url("data:image/svg+xml,<svg height='32' width='32' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg' style='color: black;'><defs><filter id='shadow' y='-40%' x='-40%' width='180px' height='180%' color-interpolation-filters='sRGB'><feDropShadow dx='1' dy='1' stdDeviation='1.2' flood-opacity='.5'/></filter></defs><g fill='none' transform='rotate(0 16 16)' filter='url(%23shadow)'><path fill='white' d='M7.94 0a5.25 5.25 0 0 0-3.47 1.17A5.27 5.27 0 0 0 1 0H0v3h1c1.41 0 1.85.7 2 1v3.94H2v3h1v3c-.13.3-.57 1-2 1H0v3h1a5.27 5.27 0 0 0 3.47-1.17c.98.8 2.21 1.21 3.47 1.17h1v-3h-1c-1.41 0-1.85-.7-2-1v-3H7v-3H6V4c.13-.3.57-1 2-1h1V0H7.94z'/><path fill='black' d='M7.94 2V1a4 4 0 0 0-3.47 1.64A4 4 0 0 0 1 1v1c1.3-.17 2.56.6 3 1.84v5.1H3v1h1v4.16c-.45 1.24-1.7 2-3 1.84v1a4.05 4.05 0 0 0 3.47-1.63 4.05 4.05 0 0 0 3.47 1.63v-1A2.82 2.82 0 0 1 5 14.1V9.93h1v-1H5V3.85A2.81 2.81 0 0 1 7.94 2z'/></g></svg>") 4 10, text;--tl-cursor-zoom-in: url("data:image/svg+xml,<svg height='32' width='32' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg' style='color: black;'><defs><filter id='shadow' y='-40%' x='-40%' width='180px' height='180%' color-interpolation-filters='sRGB'><feDropShadow dx='1' dy='1' stdDeviation='1.2' flood-opacity='.5'/></filter></defs><g fill='none' transform='rotate(0 16 16)' filter='url(%23shadow)'><path d='m20.5 15c0 3.038-2.462 5.5-5.5 5.5s-5.5-2.462-5.5-5.5 2.462-5.5 5.5-5.5 5.5 2.462 5.5 5.5' fill='white'/><path d='m20.5 15c0 3.038-2.462 5.5-5.5 5.5s-5.5-2.462-5.5-5.5 2.462-5.5 5.5-5.5 5.5 2.462 5.5 5.5z' stroke='black'/><g fill='black'><path d='m18 14h-2v-2h-2v2h-2v1.98h2v2.02h2v-2.02h2z'/><path d='m23.5859 25 1.414-1.414-5.449-5.449-1.414 1.414z'/></g></g></svg>") 16 16, zoom-in;--tl-cursor-zoom-out: url("data:image/svg+xml,<svg height='32' width='32' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg' style='color: black;'><defs><filter id='shadow' y='-40%' x='-40%' width='180px' height='180%' color-interpolation-filters='sRGB'><feDropShadow dx='1' dy='1' stdDeviation='1.2' flood-opacity='.5'/></filter></defs><g fill='none' transform='rotate(0 16 16)' filter='url(%23shadow)'><path d='m20.5 15c0 3.038-2.462 5.5-5.5 5.5s-5.5-2.462-5.5-5.5 2.462-5.5 5.5-5.5 5.5 2.462 5.5 5.5' fill='white'/><path d='m20.5 15c0 3.038-2.462 5.5-5.5 5.5s-5.5-2.462-5.5-5.5 2.462-5.5 5.5-5.5 5.5 2.462 5.5 5.5z' stroke='black'/><g fill='black'><path d='m18 16h-5.98v-1.98h5.98z'/><path d='m23.5859 25 1.414-1.414-5.449-5.449-1.414 1.414z'/></g></g></svg>") 16 16, zoom-out;--tl-cursor: var(--tl-cursor-default);--tl-cursor-resize-edge: ew-resize;--tl-cursor-resize-corner: nesw-resize;--tl-cursor-ew-resize: ew-resize;--tl-cursor-ns-resize: ns-resize;--tl-cursor-nesw-resize: nesw-resize;--tl-cursor-nwse-resize: nwse-resize;--tl-cursor-rotate: pointer;--tl-cursor-nwse-rotate: pointer;--tl-cursor-nesw-rotate: pointer;--tl-cursor-senw-rotate: pointer;--tl-cursor-swne-rotate: pointer;--tl-scale: calc(1 / var(--tl-zoom));--tl-font-draw: "tldraw_draw", sans-serif;--tl-font-sans: "tldraw_sans", sans-serif;--tl-font-serif: "tldraw_serif", serif;--tl-font-mono: "tldraw_mono", monospace;--tl-text-outline-a: calc(min(.5, 1 / var(--tl-zoom))*2px) ;--tl-text-outline-b: calc(min(.5, 1 / var(--tl-zoom))*-2px) ;--tl-text-outline-reference: 0 var(--tl-text-outline-b) 0 var(--tl-color-background), 0 var(--tl-text-outline-a) 0 var(--tl-color-background), var(--tl-text-outline-b) var(--tl-text-outline-b) 0 var(--tl-color-background), var(--tl-text-outline-a) var(--tl-text-outline-b) 0 var(--tl-color-background), var(--tl-text-outline-a) var(--tl-text-outline-a) 0 var(--tl-color-background), var(--tl-text-outline-b) var(--tl-text-outline-a) 0 var(--tl-color-background);--tl-text-outline: var(--tl-text-outline-reference);position:relative;inset:0;height:100%;width:100%;overflow:clip;color:var(--tl-color-text)}.tl-theme__light{--tl-color-selection-fill: hsl(210, 100%, 56%, 24%);--tl-color-selection-stroke: hsl(214, 84%, 56%);--tl-color-background: hsl(210, 20%, 98%);--tl-color-grid: hsl(0, 0%, 43%);--tl-color-low: hsl(204, 16%, 94%);--tl-color-low-border: hsl(204, 16%, 92%);--tl-color-muted-none: hsl(0, 0%, 0%, 0%);--tl-color-muted-0: hsl(0, 0%, 0%, 2%);--tl-color-muted-1: hsl(0, 0%, 0%, 10%);--tl-color-muted-2: hsl(0, 0%, 0%, 4.3%);--tl-color-hint: hsl(0, 0%, 0%, 5.5%);--tl-color-overlay: hsl(0, 0%, 0%, 20%);--tl-color-divider: hsl(0, 0%, 91%);--tl-color-panel: hsl(0, 0%, 99%);--tl-color-panel-contrast: hsl(0, 0%, 100%);--tl-color-panel-overlay: hsl(0, 0%, 100%, 82%);--tl-color-panel-transparent: hsla(0, 0%, 99%, 0%);--tl-color-selected: hsl(214, 84%, 56%);--tl-color-selected-contrast: hsl(0, 0%, 100%);--tl-color-focus: hsl(219, 65%, 50%);--tl-color-tooltip: hsla(200, 14%, 4%, 1);--tl-color-text: hsl(0, 0%, 0%);--tl-color-text-0: hsl(0, 0%, 11%);--tl-color-text-1: hsl(0, 0%, 18%);--tl-color-text-3: hsl(204, 4%, 45%);--tl-color-text-disabled: hsl(204, 4%, 55%);--tl-color-text-shadow: hsl(0, 0%, 100%);--tl-color-text-highlight: hsl(52, 100%, 50%);--tl-color-text-highlight-p3: color(display-p3 .972 .8205 .05);--tl-color-primary: hsl(214, 84%, 56%);--tl-color-success: hsl(123, 46%, 34%);--tl-color-info: hsl(201, 98%, 41%);--tl-color-warning: hsl(27, 98%, 47%);--tl-color-danger: hsl(0, 90%, 43%);--tl-shadow-1: 0px 1px 2px hsl(0, 0%, 0%, 25%), 0px 1px 3px hsl(0, 0%, 0%, 9%);--tl-shadow-2: 0px 0px 2px hsl(0, 0%, 0%, 16%), 0px 2px 3px hsl(0, 0%, 0%, 24%), 0px 2px 6px hsl(0, 0%, 0%, .1), inset 0px 0px 0px 1px var(--tl-color-panel-contrast);--tl-shadow-3: 0px 1px 2px hsl(0, 0%, 0%, 28%), 0px 2px 6px hsl(0, 0%, 0%, 14%), inset 0px 0px 0px 1px var(--tl-color-panel-contrast);--tl-shadow-4: 0px 0px 3px hsl(0, 0%, 0%, 19%), 0px 5px 4px hsl(0, 0%, 0%, 16%), 0px 2px 16px hsl(0, 0%, 0%, 6%), inset 0px 0px 0px 1px var(--tl-color-panel-contrast)}.tl-theme__dark{--tl-color-selection-fill: hsl(209, 100%, 57%, 20%);--tl-color-selection-stroke: hsl(214, 84%, 56%);--tl-color-background: hsl(240, 5%, 6.5%);--tl-color-grid: hsl(0, 0%, 40%);--tl-color-low: hsl(260, 4.5%, 10.5%);--tl-color-low-border: hsl(207, 10%, 10%);--tl-color-muted-none: hsl(0, 0%, 100%, 0%);--tl-color-muted-0: hsl(0, 0%, 100%, 2%);--tl-color-muted-1: hsl(0, 0%, 100%, 10%);--tl-color-muted-2: hsl(0, 0%, 100%, 5%);--tl-color-hint: hsl(0, 0%, 100%, 7%);--tl-color-overlay: hsl(0, 0%, 0%, 50%);--tl-color-divider: hsl(240, 9%, 22%);--tl-color-panel: hsl(235, 6.8%, 13.5%);--tl-color-panel-contrast: hsl(245, 12%, 23%);--tl-color-panel-overlay: hsl(210, 10%, 24%, 82%);--tl-color-panel-transparent: hsla(235, 6.8%, 13.5%, 0%);--tl-color-selected: hsl(217, 89%, 61%);--tl-color-selected-contrast: hsl(0, 0%, 100%);--tl-color-focus: hsl(217, 76%, 80%);--tl-color-tooltip: hsla(0, 0%, 100%, 1);--tl-color-text: hsl(210, 17%, 98%);--tl-color-text-0: hsl(0, 9%, 94%);--tl-color-text-1: hsl(0, 0%, 85%);--tl-color-text-3: hsl(204, 4%, 75%);--tl-color-text-disabled: hsl(204, 4%, 50%);--tl-color-text-shadow: hsl(210, 13%, 18%);--tl-color-text-highlight: hsl(52, 100%, 41%);--tl-color-text-highlight-p3: color(display-p3 .8078 .6225 .0312);--tl-color-primary: hsl(214, 84%, 56%);--tl-color-success: hsl(123, 38%, 57%);--tl-color-info: hsl(199, 92%, 56%);--tl-color-warning: hsl(36, 100%, 57%);--tl-color-danger: hsl(0, 82%, 66%);--tl-shadow-1: 0px 1px 2px hsl(0, 0%, 0%, 16.1%), 0px 1px 3px hsl(0, 0%, 0%, 22%), inset 0px 0px 0px 1px var(--tl-color-panel-contrast);--tl-shadow-2: 0px 1px 3px hsl(0, 0%, 0%, 66.6%), 0px 2px 6px hsl(0, 0%, 0%, 33%), inset 0px 0px 0px 1px var(--tl-color-panel-contrast);--tl-shadow-3: 0px 1px 3px hsl(0, 0%, 0%, 50%), 0px 2px 12px hsl(0, 0%, 0%, 50%), inset 0px 0px 0px 1px var(--tl-color-panel-contrast)}.tl-counter-scaled{transform:scale(var(--tl-scale));transform-origin:top left;width:calc(100% * var(--tl-zoom));height:calc(100% * var(--tl-zoom))}.tl-container,.tl-container *{-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;scrollbar-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;user-select:none;box-sizing:border-box;outline:none}.tl-container a{-webkit-touch-callout:initial}.tl-container__focused{outline:1px solid var(--tl-color-low)}input,*[contenteditable],*[contenteditable] *{-webkit-user-select:text;-moz-user-select:text;user-select:text}.tl-canvas{position:absolute;inset:0;height:100%;width:100%;color:var(--tl-color-text);cursor:var(--tl-cursor);overflow:clip;content-visibility:auto;touch-action:none;contain:strict}.tl-canvas__in-front{position:absolute;inset:0;pointer-events:none;z-index:var(--tl-layer-canvas-in-front)}.tl-shapes{position:relative;z-index:var(--tl-layer-canvas-shapes)}.tl-svg-context{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.tl-background__wrapper{z-index:var(--tl-layer-canvas-background);position:absolute;inset:0;height:100%;width:100%}.tl-background{background-color:var(--tl-color-background);width:100%;height:100%}.tl-grid{position:absolute;inset:0;width:100%;height:100%;touch-action:none;pointer-events:none;z-index:var(--tl-layer-canvas-grid);contain:strict}.tl-grid-dot{fill:var(--tl-color-grid)}.tl-html-layer{position:absolute;top:0;left:0;width:1px;height:1px;contain:layout style size}.tl-selection__bg{position:absolute;top:0;left:0;transform-origin:top left;background-color:transparent;pointer-events:all}.tl-transparent{fill:transparent;stroke:transparent}.tl-hidden{opacity:0;pointer-events:none}.tl-nametag{top:16px;left:13px;width:-moz-fit-content;width:fit-content;height:-moz-fit-content;height:fit-content;max-width:120px;padding:3px 6px;white-space:nowrap;position:absolute;overflow:hidden;text-overflow:ellipsis;font-size:12px;border-radius:var(--tl-radius-2);color:var(--tl-color-selected-contrast)}.tl-nametag-title{top:-2px;left:13px;width:-moz-fit-content;width:fit-content;height:-moz-fit-content;height:fit-content;padding:0 6px;max-width:120px;white-space:nowrap;position:absolute;overflow:hidden;text-overflow:ellipsis;font-size:12px;text-shadow:var(--tl-text-outline);color:var(--tl-color-selected-contrast)}.tl-nametag-chat{top:16px;left:13px;width:-moz-fit-content;width:fit-content;height:-moz-fit-content;height:fit-content;color:var(--tl-color-selected-contrast);white-space:nowrap;position:absolute;padding:3px 6px;font-size:12px;opacity:1;border-radius:var(--tl-radius-2)}.tl-cursor-chat{position:absolute;color:var(--tl-color-selected-contrast);white-space:nowrap;padding:3px 6px;font-size:12px;pointer-events:none;z-index:var(--tl-layer-cursor);margin-top:16px;margin-left:13px;opacity:1;border:none;-webkit-user-select:text;-moz-user-select:text;user-select:text;border-radius:var(--tl-radius-2)}.tl-cursor-chat .tl-cursor-chat__bubble{padding-right:12px}.tl-cursor-chat::-moz-selection{background:var(--tl-color-selected);color:var(--tl-color-selected-contrast);text-shadow:none}.tl-cursor-chat::selection{background:var(--tl-color-selected);color:var(--tl-color-selected-contrast);text-shadow:none}.tl-cursor-chat::-moz-placeholder{color:var(--tl-color-selected-contrast);opacity:.7}.tl-cursor-chat::placeholder{color:var(--tl-color-selected-contrast);opacity:.7}.tl-text-shape-label{position:relative;font-weight:400;min-width:1px;padding:0;margin:0;border:none;width:-moz-fit-content;width:fit-content;height:-moz-fit-content;height:fit-content;font-variant:normal;font-style:normal;pointer-events:all;white-space:pre-wrap;overflow-wrap:break-word}.tl-plain-text-wrapper[data-isediting=true] .tl-text-content{opacity:0}.tl-rich-text-wrapper[data-isediting=true] .tl-text-content{display:none}.tl-text{margin:0;padding:0;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;background:none;-o-border-image:none;border-image:none;border:0px;caret-color:var(--tl-color-text);color:inherit;-moz-column-count:initial!important;column-count:initial!important;display:inline-block;font-family:inherit;font-feature-settings:normal;font-kerning:auto;font-optical-sizing:auto;font-size:inherit;font-stretch:100%;font-style:inherit;font-variant:inherit;font-variation-settings:normal;font-weight:inherit;letter-spacing:inherit;line-height:inherit;outline:none;overflow-wrap:break-word;text-align:inherit;text-indent:0px;text-rendering:auto;text-shadow:inherit;text-transform:none;white-space:pre-wrap;line-break:normal;word-spacing:0px;word-wrap:break-word;writing-mode:horizontal-tb!important}.tl-text-measure{z-index:var(--tl-layer-canvas-hidden);opacity:0;visibility:hidden;position:absolute;top:0;left:0;width:-moz-max-content;width:max-content;box-sizing:border-box;pointer-events:none;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;resize:none;border:none;-moz-user-select:none;user-select:none;contain:layout style paint;unicode-bidi:plaintext;-webkit-user-select:none}.tl-text-input,.tl-text-content{position:absolute;inset:0;height:100%;width:100%;min-width:1px;min-height:1px;outline:none}.tl-text-content__wrapper{position:relative;width:-moz-fit-content;width:fit-content;height:-moz-fit-content;height:fit-content;display:flex;align-items:center;justify-content:center;pointer-events:none;min-height:auto}.tl-text-content{overflow:visible;pointer-events:none}.tl-text-input{resize:none;-moz-user-select:all;user-select:all;-webkit-user-select:text;cursor:var(--tl-cursor-text)}.tl-text-input:not(.tl-rich-text){overflow:hidden}.tl-text-input::-moz-selection{background:var(--tl-color-selected);color:var(--tl-color-selected-contrast);text-shadow:none}.tl-text-input::selection{background:var(--tl-color-selected);color:var(--tl-color-selected-contrast);text-shadow:none}.tl-text-label{display:flex;justify-content:center;align-items:center;color:var(--tl-color-text);line-height:inherit;position:absolute;inset:0;height:100%;width:100%}.tl-text-label[data-hastext=false][data-isediting=false]>.tl-text-label__inner{width:40px;height:40px}.tl-text-label[data-hastext=true][data-isediting=false] .tl-text-content{pointer-events:all}.tl-text-label__inner>.tl-text-input.tl-rich-text{display:none;position:static}.tl-text-wrapper[data-isediting=false] .tl-text-input{opacity:0;cursor:var(--tl-cursor-default)}.tl-rich-text[data-is-ready-for-editing=true],.tl-text-wrapper[data-is-ready-for-editing=true] .tl-text-input{cursor:var(--tl-cursor-text)}.tl-text-label[data-textwrap=true]>.tl-text-label__inner{max-width:100%}.tl-text-label[data-isediting=true]{background-color:transparent;min-height:auto}.tl-text-wrapper .tl-text-content{pointer-events:all;z-index:var(--tl-layer-text-content)}.tl-text-label__inner>.tl-text-content{position:relative;top:0;left:0;padding:inherit;height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;border-radius:var(--tl-radius-1);max-width:100%}.tl-text-label__inner>.tl-text-input{position:absolute;inset:0;height:100%;width:100%;padding:inherit}.tl-text-wrapper[data-isselected=true] .tl-text-input{z-index:var(--tl-layer-text-editor);pointer-events:all}.tl-canvas:is([data-iseditinganything=true],[data-isselectinganything=true]) .tl-shape:not([data-shape-type=arrow],[data-shape-type=draw],[data-shape-type=line],[data-shape-type=highlight],[data-shape-is-filled=false]){pointer-events:all}.tl-rich-text .ProseMirror{word-wrap:break-word;overflow-wrap:break-word;white-space:pre-wrap;font-variant-ligatures:inherit;font-feature-settings:inherit}.tl-rich-text{-moz-tab-size:var(--tl-tab-size, 2);-o-tab-size:var(--tl-tab-size, 2);tab-size:var(--tl-tab-size, 2)}.tl-rich-text p{margin:0;min-height:1lh}.tl-rich-text ul,.tl-rich-text ol{text-align:left;margin:0;padding-left:1.625ch;list-style:revert}.tl-rich-text ol:has(>li:nth-child(10)){padding-left:2.625ch}.tl-rich-text ol:has(>li:nth-child(100)){padding-left:3.625ch}.tl-rich-text h1,.tl-rich-text h2,.tl-rich-text h3,.tl-rich-text h4,.tl-rich-text h5,.tl-rich-text h6{margin-top:5px;margin-bottom:10px}.tl-rich-text a{color:var(--tl-color-primary);text-decoration:underline}.tl-rich-text[data-is-select-tool-active=false] a{cursor:inherit}.tl-rich-text code{font-family:var(--tl-font-mono)}.tl-rich-text mark{background-color:#fddd00;color:currentColor;border-radius:2px}.tl-theme__light .tl-rich-text mark{text-shadow:none}.tl-theme__dark .tl-rich-text mark{background-color:var(--tl-color-text-highlight);color:currentColor;text-shadow:none}@supports (color: color(display-p3 1 1 1)){@media(color-gamut:p3){.tl-container:not(.tl-theme__force-sRGB) .tl-rich-text mark{background-color:var(--tl-color-text-highlight-p3)}}}.tl-text-wrapper[data-isediting=true] .tl-rich-text{display:block}.tl-text__outline{text-shadow:var(--tl-text-outline)}.tl-text__no-outline{text-shadow:none}.tl-loading{background-color:var(--tl-color-background);color:var(--tl-color-text-1);height:100%;width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--tl-space-2);font-size:14px;font-weight:500;opacity:0;animation:tl-fade-in .2s ease-in-out forwards;animation-delay:.2s;position:absolute;inset:0;z-index:var(--tl-layer-canvas-blocker)}@keyframes tl-fade-in{0%{opacity:0}to{opacity:1}}.tl-spinner{animation:tl-spin 1s linear infinite}@keyframes tl-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tl-hyperlink-button{background:none;margin:0;position:absolute;top:0;right:0;height:44px;width:44px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:400;color:var(--tl-color-text-1);padding:13px;cursor:var(--tl-cursor-pointer);border:none;outline:none;pointer-events:all;z-index:1}.tl-hyperlink-button:after{content:"";z-index:-1;position:absolute;right:6px;bottom:6px;display:block;width:calc(100% - 12px);height:calc(100% - 12px);border-radius:var(--tl-radius-1);background-color:var(--tl-color-background);pointer-events:none}.tl-hyperlink-button:focus-visible{color:var(--tl-color-selected)}.tl-hyperlink__icon{width:15px;height:15px;background-color:currentColor;pointer-events:none}.tl-hyperlink-button__hidden{display:none}.tl-shape-indicator{transform-origin:top left;fill:none;stroke-width:calc(1.5px * var(--tl-scale));contain:size layout}.tl-canvas-overlays{position:absolute;inset:0;pointer-events:none;z-index:var(--tl-layer-canvas-overlays)}.tl-shape{position:absolute;pointer-events:none;overflow:visible;transform-origin:top left;contain:size layout}.tl-svg-container{position:absolute;inset:0;height:100%;width:100%;pointer-events:none;stroke-linecap:round;stroke-linejoin:round;transform-origin:top left;overflow:visible}.tl-html-container{position:absolute;inset:0;height:100%;width:100%;pointer-events:none;stroke-linecap:round;stroke-linejoin:round;transform-origin:top left;color:var(--tl-color-text-1)}.tl-content-slot{position:absolute;inset:0;height:100%;width:100%;pointer-events:none;transform-origin:top left}.tl-group{stroke:var(--tl-color-text);stroke-width:calc(1px * var(--tl-scale));opacity:.5}.tl-shape[data-shape-type=arrow] .tl-text-label{position:absolute;top:-1px;left:-1px;width:2px;height:2px;padding:0;display:flex;justify-content:center;align-items:center;text-align:center;color:var(--tl-color-text)}.tl-shape[data-shape-type=arrow] .tl-text-label__inner{border-radius:var(--tl-radius-1);box-sizing:content-box;height:-moz-max-content;height:max-content;width:-moz-max-content;width:max-content}.tl-shape[data-shape-type=arrow] .tl-text{height:-moz-max-content;height:max-content}.tl-bookmark__container{width:100%;height:100%;position:relative;border:1px solid var(--tl-color-panel-contrast);background-color:var(--tl-color-panel);border-radius:var(--tl-radius-2);display:flex;flex-direction:column;overflow:hidden}.tl-bookmark__container--safariExport{border:1px solid var(--tl-color-divider)}.tl-bookmark__image_container{flex:1 1 100%;overflow:hidden;border-top-left-radius:var(--tl-radius-1);border-top-right-radius:var(--tl-radius-1);width:100%;height:100%;display:flex;justify-content:flex-end;align-items:flex-start;box-shadow:inset 0 0 0 1px var(--tl-color-divider)}.tl-bookmark__image_container>.tl-hyperlink-button:after{background-color:var(--tl-color-panel)}.tl-bookmark__placeholder{width:100%;height:100%;background-color:var(--tl-color-muted-2);border-bottom:1px solid var(--tl-color-muted-2)}.tl-bookmark__image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;border-bottom:1px solid var(--tl-color-muted-2)}.tl-bookmark__copy_container{background-color:var(--tl-color-muted-0);padding:var(--tl-space-4);pointer-events:all;display:flex;flex-direction:column;justify-content:space-between;flex:1}.tl-bookmark__copy_container:has(.tl-bookmark__link:only-child){justify-content:center}.tl-bookmark__heading,.tl-bookmark__description,.tl-bookmark__link{margin:0;width:100%;font-family:inherit}.tl-bookmark__heading{font-size:16px;line-height:1.6;font-weight:700;padding-bottom:var(--tl-space-2);overflow:hidden;max-height:51.2px;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;text-overflow:ellipsis;display:-webkit-box}.tl-bookmark__description{font-size:12px;line-height:1.5;overflow:hidden;max-height:54px;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;text-overflow:ellipsis;display:-webkit-box;color:var(--tl-color-text-1);margin:var(--tl-space-2) 0px}.tl-bookmark__heading+.tl-bookmark__link,.tl-bookmark__description+.tl-bookmark__link{margin-top:var(--tl-space-3)}.tl-bookmark__link{font-size:12px;pointer-events:all;display:flex;color:var(--tl-color-text-1);align-items:center;cursor:var(--tl-cursor-pointer);width:-moz-fit-content;width:fit-content;max-width:100%;text-decoration:none}.tl-bookmark__link>span{flex-shrink:0px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tl-bookmark__link>.tl-hyperlink__icon{margin-right:8px;flex-shrink:0}.tl-bookmark__link>.tl-bookmark__favicon{margin-right:8px;width:16px;height:16px;flex-shrink:0}.tl-image,.tl-video{-o-object-fit:cover;object-fit:cover;background-size:cover;width:100%;height:100%}.tl-video-container,.tl-image-container,.tl-embed-container{width:100%;height:100%;pointer-events:all;display:flex;justify-content:center;align-items:center}.tl-image-container{position:relative}.tl-image{position:absolute;inset:0}.tl-video.tl-video-is-fullscreen{-o-object-fit:contain;object-fit:contain;background-size:contain}.tl-note__container{position:relative;width:100%;height:100%;pointer-events:all;opacity:1;z-index:var(--tl-layer-text-container);border-radius:1px}.tl-note__container>.tl-text-label{color:currentColor}.tl-note__attribution{position:absolute;bottom:calc(4px * var(--note-attribution-scale, 1));right:calc(8px * var(--note-attribution-scale, 1));font-family:var(--tl-font-sans);pointer-events:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60%;z-index:1}.tl-frame__body{stroke-width:calc(1px * var(--tl-scale))}.tl-frame__creating{stroke:var(--tl-color-selected);fill:none}.tl-frame-heading{--tl-frame-padding-x: 6px;--tl-frame-height: 24px;--tl-frame-minimum-width: 32px;--tl-frame-offset-width: 16px;display:flex;align-items:center;position:absolute;transform-origin:0% 100%;overflow:hidden;max-width:100%;min-width:var(--tl-frame-minimum-width);height:auto;font-size:12px;padding-bottom:4px;pointer-events:all}.tl-frame-heading-hit-area{pointer-events:all;transform-origin:0% 100%;display:flex;height:var(--tl-frame-height);width:100%;align-items:center;border-radius:var(--tl-radius-1)}.tl-frame-label{pointer-events:all;overflow:hidden;text-overflow:ellipsis;padding:0px var(--tl-frame-padding-x);border-radius:var(--tl-radius-1);position:relative;font-size:inherit;white-space:pre}.tl-frame-label__editing{color:transparent;white-space:pre;width:auto;min-width:var(--tl-frame-minimum-width);height:100%;overflow:visible;background-color:var(--tl-color-panel);border-color:var(--tl-color-selected);box-shadow:inset 0 0 0 1.5px var(--tl-color-selected)}.tl-frame-name-input{position:absolute;border:none;background:none;outline:none;padding:0px var(--tl-frame-padding-x);inset:0;height:100%;font-size:inherit;font-family:inherit;font-weight:inherit;width:100%;color:var(--tl-color-text-1);border-radius:var(--tl-radius-1);-moz-user-select:all;user-select:all;-webkit-user-select:text;white-space:pre;cursor:var(--tl-cursor-text)}.tl-embed{border:none;border-radius:var(--tl-radius-2)}.tl-shape-error-boundary{width:100%;height:100%;background-color:var(--tl-color-muted-1);border-width:calc(1px * var(--tl-scale));border-color:var(--tl-color-muted-1);border-style:solid;border-radius:calc(var(--tl-radius-1) * var(--tl-scale));display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:left;position:relative;pointer-events:all;overflow:hidden;padding:var(--tl-space-2)}.tl-shape-error-boundary:before{transform:scale(var(--tl-scale));content:"Error";font-size:12px;font-family:inherit;color:var(--tl-color-text-0)}.tl-error-boundary{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:var(--tl-space-4);background-color:var(--tl-color-background);color:var(--tl-color-text-1);position:absolute}.tl-error-boundary__overlay{position:absolute;inset:0;height:100%;width:100%;z-index:var(--tl-layer-error-overlay);background-color:var(--tl-color-overlay)}.tl-error-boundary__content *{-moz-user-select:all;user-select:all;-webkit-user-select:text;pointer-events:all}.tl-error-boundary__canvas{pointer-events:none;position:absolute;inset:0;height:100%;width:100%;z-index:var(--tl-layer-error-canvas)}.tl-error-boundary__canvas:after{content:" ";display:block;position:absolute;inset:0;height:100%;width:100%;z-index:var(--tl-layer-error-canvas-after);pointer-events:all}.tl-error-boundary__content{width:-moz-fit-content;width:fit-content;height:-moz-fit-content;height:fit-content;max-width:100%;width:400px;max-height:100%;background-color:var(--tl-color-panel);padding:16px;border-radius:16px;box-shadow:var(--tl-shadow-2);font-size:14px;font-weight:400;display:flex;flex-direction:column;overflow:auto;z-index:var(--tl-layer-error-content);gap:12px}.tl-error-boundary__content__expanded{width:600px}.tl-error-boundary__content h2{font-size:16px;margin:0;font-weight:500}.tl-error-boundary__content h4{border:1px solid var(--tl-color-low-border);margin:-6px 0 0;padding:var(--tl-space-5);border-radius:var(--tl-radius-2);font-weight:400}.tl-error-boundary__content p{line-height:1.5;margin:0}.tl-error-boundary__content pre{background-color:var(--tl-color-muted-2);margin-top:0;padding:var(--tl-space-5);border-radius:var(--tl-radius-2);overflow:auto;font-size:12px;max-height:320px}.tl-error-boundary__content button{background:none;border:none;font-family:inherit;font-size:14px;font-weight:500;padding:var(--tl-space-4);border-radius:var(--tl-radius-3);cursor:var(--tl-cursor-pointer);color:inherit;background-color:transparent}.tl-error-boundary__content a{color:var(--tl-color-selected);font-weight:500;text-decoration:none}.tl-error-boundary__content__error{position:relative;margin:-6px 0 0}.tl-error-boundary__content__error button{position:absolute;top:var(--tl-space-2);right:var(--tl-space-2);font-size:12px;padding:var(--tl-space-2) var(--tl-space-3);background-color:var(--tl-color-panel);border-radius:var(--tl-radius-1)}.tl-error-boundary__content__actions{display:flex;justify-content:space-between;gap:var(--tl-space-4);margin:0 0 0 -4px}.tl-error-boundary__content__actions__group{display:flex;gap:var(--tl-space-4)}.tl-error-boundary__content .tl-error-boundary__reset{color:var(--tl-color-danger)}.tl-error-boundary__content .tl-error-boundary__refresh{background-color:var(--tl-color-primary);color:var(--tl-color-selected-contrast)}.tl-container__focused:not(.tl-container__no-focus-ring) .tlui-button.tl-error-boundary__refresh:focus-visible{border-radius:8px;outline-offset:0}.tl-hit-test-blocker{position:absolute;z-index:var(--tl-layer-canvas-blocker);inset:0;width:100%;height:100%;pointer-events:all}.tl-hit-test-blocker__hidden{display:none}@media(hover:hover){.tl-handle__create:hover{opacity:1}.tl-handle__bg:hover{cursor:var(--tl-cursor-grab);fill:var(--tl-color-selection-fill)}.tl-bookmark__link:hover,.tl-hyperlink-button:hover{color:var(--tl-color-selected)}.tl-error-boundary__content button:hover{background-color:var(--tl-color-low)}.tl-error-boundary__content a:hover{color:var(--tl-color-text-1)}.tl-error-boundary__content .tl-error-boundary__refresh:hover{background-color:var(--tl-color-primary);opacity:.9}.tl-canvas[data-iseditinganything=true] .tl-text-wrapper:hover .tl-text-input{z-index:var(--tl-layer-text-editor);pointer-events:all}}.tl-container{--tl-layer-above: 1;--tl-layer-focused-input: 10;--tl-layer-menu-click-capture: 250;--tl-layer-panels: 300;--tl-layer-menus: 400;--tl-layer-toasts: 650;--tl-layer-cursor: 700;--tl-layer-header-footer: 999}.tlui-button{position:relative;height:40px;min-width:40px;padding:0 12px;display:flex;align-items:center;justify-content:center;background-color:transparent;border:transparent;color:currentColor;cursor:pointer;pointer-events:all;font-weight:inherit;font-family:inherit;line-height:inherit;text-rendering:optimizeLegibility;font-size:12px;gap:0px;color:var(--tl-color-text-1);z-index:0}.tlui-button:disabled,.tlui-button[data-disabled]{color:var(--tl-color-text-disabled);text-shadow:none;cursor:default}.tlui-button:disabled .tlui-kbd,.tlui-button[data-disabled] .tlui-kbd{color:var(--tl-color-text-disabled)}.tlui-button>*{position:relative;z-index:var(--tl-layer-above)}.tlui-button__label{font-size:12px;flex-grow:2;text-align:start;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tl-container__focused:not(.tl-container__no-focus-ring) .tlui-button:focus-visible{border-radius:10px;outline:2px solid var(--tl-color-focus);outline-offset:-5px}.tl-container__focused:not(.tl-container__no-focus-ring) .tlui-button__tool:focus-visible{border-radius:12px}.tlui-slider__container:has(.tlui-slider__thumb:focus-visible){border-radius:10px;outline:2px solid var(--tl-color-focus);outline-offset:-5px}.tlui-button:after{display:block;content:"";position:absolute;inset:4px;border-radius:var(--tl-radius-2);background:var(--tl-color-muted-2);opacity:0}.tlui-button__menu[data-highlighted]:after{opacity:1}.tlui-button[data-isactive=true]:after,.tlui-button[data-isactive=true]:not(:disabled,[data-disabled],:focus-visible):active:after{background:var(--tl-color-hint);opacity:1}.tlui-button[aria-expanded=true][data-direction=left]{background:linear-gradient(270deg,rgba(144,144,144,0) 0%,var(--tl-color-muted-2) 100%);opacity:1}@media(hover:hover){.tlui-button[aria-expanded=true][data-direction=left]:not(:hover):after{background:linear-gradient(270deg,rgba(144,144,144,0) 0%,var(--tl-color-muted-2) 100%);opacity:1}.tlui-button:not(:disabled,[data-disabled]):hover{z-index:1}.tlui-button:not(:disabled,[data-disabled]):hover:after{opacity:1}}.tlui-button__icon+.tlui-button__label{margin-inline-start:var(--tl-space-2)}.tlui-button__low{border-radius:var(--tl-radius-3);background-color:var(--tl-color-low)}.tlui-button__low:after{background-color:var(--tl-color-muted-2);opacity:0}@media(hover:hover){.tlui-button__low:hover:after{opacity:1}}.tlui-button__primary{color:var(--tl-color-primary)}.tlui-button__danger{color:var(--tl-color-danger);text-shadow:none}@media(hover:hover){.tlui-button__primary:not(:disabled,[data-disabled],:focus-visible):hover{color:var(--tl-color-primary)}.tlui-button__danger:not(:disabled,[data-disabled],:focus-visible):hover{color:var(--tl-color-danger);text-shadow:none}}.tlui-button__menu{height:40px;min-height:40px;width:100%;gap:8px;margin-top:-4px}.tlui-button__menu:after{inset:4px;border-radius:var(--tl-radius-2)}.tlui-button__menu>.tlui-icon+.tlui-button__label{margin-inline-start:0px}.tlui-button__menu:nth-child(1){margin-top:0}.tlui-button__menu:nth-last-child(1){margin-bottom:0}.tlui-button__checkbox{padding-left:8px}.tlui-button__checkbox__indicator{width:15px;height:15px}.tlui-main-toolbar__lock-button{position:absolute;pointer-events:all;height:40px;width:40px;border-radius:var(--tl-radius-2)}.tlui-main-toolbar--horizontal .tlui-main-toolbar__lock-button{top:4px;right:0;min-width:0px}.tlui-main-toolbar--vertical .tlui-main-toolbar__lock-button{bottom:0;min-height:0px}.tlui-main-toolbar__lock-button:after{inset:4px}.tlui-button__tool{position:relative;height:48px;width:48px}.tlui-button__tool:after{inset:4px;border-radius:8px}.tlui-button__tool[aria-pressed=true]{color:var(--tl-color-selected-contrast)}.tlui-button__tool[aria-pressed=true]:not(:disabled,[data-disabled],:focus-visible):active{color:var(--tl-color-selected-contrast)}.tlui-button__tool[aria-pressed=true]:not(:disabled,[data-disabled]):after{background:var(--tl-color-selected);opacity:1}.tlui-layout__mobile .tlui-main-toolbar--horizontal .tlui-button__tool{height:48px;width:43px}.tlui-layout__mobile .tlui-main-toolbar--horizontal .tlui-button__tool>.tlui-icon{height:16px;width:16px}.tlui-row{display:flex;flex-direction:row;padding:0 2px}.tlui-row>*{margin-left:-2px;margin-right:-2px}.tlui-column{display:flex;flex-direction:column;padding:2px 0}.tlui-column>*{margin-top:-2px;margin-bottom:-2px}.tlui-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-flow:row;overflow:hidden;padding:2px}.tlui-grid>*{margin:-2px}.tlui-zoom-menu__button{width:60px;min-width:60px;text-align:center}.tlui-zoom-menu__button[data-state=open]:after{background:linear-gradient(0deg,rgba(144,144,144,0) 0%,var(--tl-color-muted-2) 100%);opacity:1}.tlui-layout{position:relative;display:grid;grid-template-columns:1fr;grid-template-rows:minmax(0px,1fr) auto;grid-auto-rows:auto;height:100%;max-height:100%;overflow:clip;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;contain:strict;z-index:var(--tl-layer-panels);transform:translateZ(0);--tl-sab: env(safe-area-inset-bottom);font-weight:500;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-smooth:antialiased;text-rendering:optimizeLegibility}.tlui-layout__top{grid-column:1;grid-row:1;display:flex;min-width:0px;justify-content:space-between}.tlui-layout__top__left{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;width:100%;height:100%;flex:0 1 0}.tlui-layout__top__right{display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;height:100%;flex:0 0 auto;min-width:0px}.tlui-scrollable,.tlui-scrollable *{pointer-events:all;touch-action:auto;overscroll-behavior:none}.tlui-helper-buttons{position:relative;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;width:-moz-min-content;width:min-content;gap:var(--tl-space-3);margin:var(--tl-space-2) var(--tl-space-3);white-space:nowrap;pointer-events:none;z-index:var(--tl-layer-panels)}.tlui-icon{flex-shrink:0;width:18px;height:18px;background-color:currentColor}.tlui-icon__placeholder{flex-shrink:0;width:18px;height:18px;background-color:transparent}.tlui-icon__small{width:15px;height:15px}.tlui-icon__tiny{width:12px;height:12px}.tlui-slider__container{width:100%;padding:0px var(--tl-space-4)}.tlui-slider{position:relative;display:flex;align-items:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none;width:100%}.tlui-slider__track{position:relative;flex-grow:1;height:44px;cursor:pointer}.tlui-slider__track:after{display:block;position:absolute;top:calc(50% - 2px);content:"";height:3px;width:100%;background-color:var(--tl-color-muted-1);border-radius:14px}.tlui-slider__range{position:absolute;top:calc(50% - 2px);left:0;height:3px;background-color:var(--tl-color-selected);border-radius:14px}.tlui-slider__thumb{all:unset;cursor:grab;display:block;width:18px;height:18px;position:relative;top:-1px;background-color:var(--tl-color-panel);border-radius:999px;box-shadow:inset 0 0 0 2px var(--tl-color-text-1)}.tlui-slider__thumb:active{cursor:grabbing;box-shadow:inset 0 0 0 2px var(--tl-color-text-1),var(--tl-shadow-1)}.tlui-input{background:none;margin:0;position:relative;z-index:var(--tl-layer-above);height:40px;max-height:40px;display:flex;align-items:center;justify-content:center;font-family:inherit;font-size:12px;font-weight:inherit;color:var(--tl-color-text-1);padding:var(--tl-space-4);padding-left:0;border:none;outline:none;text-overflow:ellipsis;width:100%;-webkit-user-select:all;-moz-user-select:all;user-select:all;text-rendering:optimizeLegibility;-webkit-user-select:auto!important}.tlui-input::-moz-placeholder{color:var(--tl-color-text-3)}.tlui-input::placeholder{color:var(--tl-color-text-3)}.tlui-input__wrapper{width:100%;height:44px;display:flex;align-items:center;gap:var(--tl-space-4);color:var(--tl-color-text)}.tlui-input__wrapper>.tlui-icon{flex-shrink:0}@supports (-webkit-touch-callout: none){.tlui-input{font-size:16px}}.tlui-select__trigger{justify-content:space-between;gap:var(--tl-space-3)}.tlui-select__trigger[data-state=open]:after{opacity:1}.tlui-select__value{display:flex;align-items:center;gap:var(--tl-space-2)}.tlui-select__chevron{flex-shrink:0;color:var(--tl-color-text-2)}.tlui-select__content{min-width:var(--radix-select-trigger-width);max-height:var(--radix-select-content-available-height)}.tlui-select__viewport{padding:4px 0}.tlui-select__item{justify-content:flex-start}.tlui-select__item-indicator{visibility:hidden}.tlui-select__item[data-state=checked] .tlui-select__item-indicator{visibility:visible}.tlui-kbd{font-family:inherit;font-size:11px;line-height:11px;display:grid;justify-items:center;grid-auto-flow:column;grid-template-columns:auto;grid-auto-columns:minmax(1em,auto);align-self:bottom;color:currentColor;margin-inline-start:var(--tl-space-4)}.tlui-kbd>span{width:100%;text-align:center;display:inline;margin:0;padding:2px;border-radius:2px}.tlui-kbd>span:last-child{padding-inline-end:0}.tlui-kbd:not(:last-child){margin-inline-end:var(--tl-space-2)}.tlui-focus-button{z-index:var(--tl-layer-panels);pointer-events:all}.tlui-menu:empty{display:none}.tlui-menu{z-index:var(--tl-layer-menus);height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;border-radius:var(--tl-radius-3);pointer-events:all;touch-action:auto;overflow-y:auto;overscroll-behavior:none;background-color:var(--tl-color-panel);box-shadow:var(--tl-shadow-3)}@media(max-height:600px){.tlui-menu{max-height:70vh}}.tlui-menu::-webkit-scrollbar{display:none}.tlui-menu__group{width:100%}.tlui-menu__group:empty{display:none}.tlui-menu__group{border-bottom:1px solid var(--tl-color-divider)}.tlui-menu__group:nth-last-of-type(1){border-bottom:none}.tlui-menu__submenu__trigger{--gradient-angle: 90deg}.tlui-menu__submenu__trigger[data-direction=left]{--gradient-angle: 270deg}.tlui-menu__submenu__trigger[data-state=open]:after{opacity:1;background:linear-gradient(var(--gradient-angle),rgba(144,144,144,0) 0%,var(--tl-color-muted-2) 100%)}@media(hover:hover){.tlui-menu__submenu__trigger:is(:hover,[data-state=open]):after{opacity:1;background:linear-gradient(var(--gradient-angle),rgba(144,144,144,0) 0%,var(--tl-color-muted-2) 100%)}}.tlui-menu[data-size=large]>.tlui-menu__group{min-width:initial}.tlui-menu[data-size=medium]>.tlui-menu__group{min-width:144px}.tlui-menu[data-size=small]>.tlui-menu__group{min-width:96px}.tlui-menu[data-size=tiny]>.tlui-menu__group{min-width:0px}.tlui-menu-click-capture{position:fixed;inset:0;z-index:var(--tl-layer-menu-click-capture)}.tlui-popover{position:relative;display:flex;align-content:stretch}.tlui-popover__content{position:relative;max-height:calc(var(--radix-popover-content-available-height) - 8px);margin:0;border:none;border-radius:var(--tl-radius-3);background-color:var(--tl-color-panel);box-shadow:var(--tl-shadow-3);z-index:var(--tl-layer-menus);overflow:hidden;overflow-y:auto;touch-action:auto;overscroll-behavior:none;scrollbar-width:none;-ms-overflow-style:none}.tlui-menu-zone{position:relative;z-index:var(--tl-layer-panels);width:-moz-fit-content;width:fit-content;border-right:2px solid var(--tl-color-background);border-bottom:2px solid var(--tl-color-background);border-bottom-right-radius:var(--tl-radius-4);background-color:var(--tl-color-low)}.tlui-menu-zone *[data-state=open]:after{background:linear-gradient(180deg,rgba(144,144,144,0) 0%,var(--tl-color-muted-2) 100%);opacity:1}@media(hover:hover){.tlui-menu-zone *[data-state=open]:not(:hover):after{background:linear-gradient(180deg,rgba(144,144,144,0) 0%,var(--tl-color-muted-2) 100%);opacity:1}}.tlui-page-menu__wrapper{display:flex;flex-direction:column;width:220px}.tlui-page-menu__trigger{width:auto}.tlui-page-menu__trigger[data-state=open]:after{background:linear-gradient(180deg,rgba(144,144,144,0) 0%,var(--tl-color-muted-2) 100%);opacity:1}.tlui-page-menu__list{flex:0 0 auto;overflow-x:hidden;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.tlui-page-menu__list::-webkit-scrollbar{display:none}.tlui-page-menu__list__content{position:relative;overflow:hidden}.tlui-page-menu__resize-handle{flex:0 0 auto;position:relative;height:1px;cursor:ns-resize;touch-action:none;background:var(--tl-color-divider);transition:background-color ease-in-out .15s 80ms;z-index:999}.tlui-page-menu__resize-handle:after{content:"";position:absolute;inset:-4px 0;background:none;z-index:2000;pointer-events:all}.tlui-page-menu__resize-handle:before{content:"";position:absolute;top:0;left:0;right:0;height:1.5px;background:transparent;pointer-events:none;z-index:2001}.tlui-page-menu__resize-handle[data-resizing=true]:before{background:var(--tl-color-selected);transition:none}.tlui-page-menu__create-button{flex:0 0 auto;margin:0}.tlui-page-menu__item__button{flex:1 1 auto;min-width:0px}.tlui-page-menu__item__button:after,.tlui-page-menu__item__drag-handle:after{content:none}.tlui-page-menu__item__button>.tlui-button__label{padding-inline-end:28px}.tlui-page-menu__item{position:absolute;top:0;inset-inline-start:0px;width:100%;height:40px;display:flex;flex-direction:row;align-items:center;overflow:hidden;transition:transform .08s ease-out}.tlui-page-menu__item:before{content:"";position:absolute;inset:4px;border-radius:var(--tl-radius-2);background:var(--tl-color-muted-2);opacity:0;pointer-events:none}.tlui-page-menu__item>*{position:relative;z-index:var(--tl-layer-above)}.tlui-page-menu__item[data-iscurrent=true]:not([data-editing=true]):before{background:var(--tl-color-hint);opacity:1}.tlui-page-menu__item__title{flex:1;height:40px;position:relative}.tlui-page-menu__item__title:before{content:"";position:absolute;inset:4px;border-radius:var(--tl-radius-2);border:1px solid var(--tl-color-primary);pointer-events:none}.tlui-page-menu__item__title>.tlui-input__wrapper{height:100%}.tlui-page-menu__item[data-dragging=true],.tlui-page-menu__item[data-dragging=true] .tlui-page-menu__item__button,.tlui-page-menu__item[data-dragging=true] .tlui-page-menu__item__drag-handle{cursor:grabbing;transition:none}.tlui-page-menu__item[data-dragging=true]{background:var(--tl-color-panel);opacity:1}.tlui-page-menu__item__drag-handle{flex:0 0 32px;min-width:32px;padding:0;color:var(--tl-color-text-3);cursor:grab;touch-action:none}.tlui-page-menu__item__drag-handle>.tlui-icon{position:relative;inset-inline-start:1px}.tlui-page-menu__item__drag-handle+.tlui-page-menu__item__button{padding-inline-start:0px}.tlui-page-menu__item__input{margin-inline-start:12px}.tlui-page-menu__item__submenu{position:absolute;inset-inline-end:0px;top:0;height:100%;z-index:10}.tlui-page-menu__item__submenu>.tlui-button{opacity:0;color:var(--tl-color-text-3)}.tlui-page-menu__item__submenu>.tlui-button:after{content:none}.tlui-page-menu__item:has(.tlui-button:focus-visible)>.tlui-page-menu__item__submenu>.tlui-button,.tlui-page-menu__item__submenu>.tlui-button[data-state=open],.tlui-page-menu__item__submenu>.tlui-button:focus-visible{opacity:1}.tlui-page-menu__list__content[data-dragging=true] .tlui-page-menu__item>.tlui-page-menu__item__submenu>.tlui-button{opacity:0}.tl-container[data-coarse=true] .tlui-page-menu__item__submenu>.tlui-button{opacity:1}.tl-container[data-coarse=true] .tlui-page-menu__item__button>.tlui-button__label{padding-inline-end:28px}@media(hover:hover){.tlui-page-menu__resize-handle:hover:before{background:var(--tl-color-selected);height:2px;transition:background-color .15s 80ms}.tlui-page-menu__item:not([data-editing=true]):hover:before{opacity:1}.tlui-page-menu__item:hover>.tlui-page-menu__item__submenu>.tlui-button{opacity:1}.tlui-page-menu__item__button>.tlui-button__label{padding-inline-end:0px}.tlui-page-menu__item:hover>.tlui-page-menu__item__button>.tlui-button__label{padding-inline-end:28px}.tlui-page-menu__item__submenu>.tlui-button:hover{color:var(--tl-color-text)}}.tl-skip-to-main-content{position:fixed;top:48px;left:-9999px;padding:8px 16px;z-index:var(--tl-layer-toasts)}.tl-skip-to-main-content:focus{left:8px}.tl-skip-to-main-content:focus+.tlui-layout__top .tlui-helper-buttons{display:none}.tlui-offline-indicator{display:flex;color:var(--tl-color-background);background-color:var(--tl-color-text);border:none;width:32px;height:32px;align-items:center;justify-content:center;border-radius:99px;cursor:default;opacity:0;animation:tl-fade-in;animation-duration:.12s;animation-delay:2s;animation-fill-mode:forwards}.tlui-style-panel__wrapper{box-shadow:var(--tl-shadow-2);border-radius:var(--tl-radius-3);pointer-events:all;background-color:var(--tl-color-panel);height:-moz-fit-content;height:fit-content;max-height:100%;margin:4px 8px 8px;touch-action:auto;overscroll-behavior:none;overflow-y:auto;overflow-x:hidden;color:var(--tl-color-text)}.tlui-style-panel__wrapper:only-child{margin-top:8px}.tlui-style-panel{position:relative;z-index:var(--tl-layer-panels);pointer-events:all;width:148px;max-width:148px}.tlui-style-panel[data-enhanced-a11y-mode=true] .tlui-button[data-isactive=true]{border-radius:10px;outline:2px solid var(--tl-color-text);outline-offset:-5px}.tlui-style-panel::-webkit-scrollbar{display:none}.tlui-style-panel .tlui-button.select{width:100%}.tlui-style-panel__section{display:flex;position:relative;flex-direction:column}.tlui-style-panel__section:not(:nth-last-child(-n+1 of.tlui-style-panel__section:not(:empty))){border-bottom:1px solid var(--tl-color-divider)}.tlui-style-panel__section:has(.tlui-slider__container:last-child):not(:nth-last-child(-n+1 of.tlui-style-panel__section:not(:empty))){margin-bottom:7px}.tlui-style-panel__section:empty{display:none}.tlui-style-panel__section .tlui-toolbar:has(.tlui-toolbar){flex-wrap:wrap}.tlui-style-panel__section .tlui-toolbar:has(.tlui-toolbar) .tlui-style-panel__subheading{margin-left:-2px}.tlui-style-panel__section__common:not(:only-child){margin-bottom:7px;border-bottom:1px solid var(--tl-color-divider)}.tlui-toolbar-toggle-group-item,.tlui-style-panel__dropdown-picker>.tlui-button__icon{width:40px;padding:0}.tlui-style-panel__dropdown-picker:only-child{flex:1}.tlui-style-panel__double-select-picker{display:flex;grid-template-columns:1fr auto;align-items:center;padding-left:var(--tl-space-4);color:var(--tl-color-text-1);font-size:12px}.tlui-style-panel__double-select-picker-label{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;flex-grow:2;max-width:100%}.tlui-style-panel .tlui-button[data-state=open]:after{opacity:1;background:linear-gradient(270deg,rgba(144,144,144,0) 0%,var(--tl-color-muted-2) 100%)}@media(hover:hover){.tlui-style-panel .tlui-button[aria-expanded=true]{background:none}.tlui-style-panel .tlui-button[data-state=open]:not(:hover):after{opacity:1;background:linear-gradient(270deg,rgba(144,144,144,0) 0%,var(--tl-color-muted-2) 100%)}}.tlui-style-panel__section .tlui-style-panel__subheading,.tlui-style-panel__section__common .tlui-style-panel__subheading,.tlui-style-panel__subheading+.tlui-slider__container{margin:0;padding:var(--tl-space-2) var(--tl-space-3) 0px var(--tl-space-4);font-size:12px;font-weight:inherit;line-height:inherit}.tlui-style-panel .tlui-style-panel__subheading:nth-of-type(1){padding-top:var(--tl-space-3)}.tlui-style-panel__subheading+.tlui-slider__container{padding-top:0}.tlui-layout__bottom{grid-row:2;width:100%}.tlui-layout__bottom__main{width:100%;display:flex;align-items:flex-end;justify-content:center}.tlui-navigation-panel{display:flex;width:-moz-min-content;width:min-content;flex-direction:column;z-index:var(--tl-layer-panels);pointer-events:all;position:absolute;left:0}.tl-container[dir=rtl] .tlui-navigation-panel{left:auto;right:0}.tlui-navigation-panel:before{content:"";display:block;position:absolute;z-index:-1;inset:-2px -2px 0 0;border-radius:0;border-top:2px solid var(--tl-color-background);border-right:2px solid var(--tl-color-background);border-top-right-radius:var(--tl-radius-4);background-color:var(--tl-color-low)}.tl-container[dir=rtl] .tlui-navigation-panel:before{inset:-2px 0 0 -2px;border-right:0;border-left:2px solid var(--tl-color-background);border-top-right-radius:0;border-top-left-radius:var(--tl-radius-4)}.tlui-navigation-panel[data-a11y=true]:before{display:none}.tlui-minimap{width:100%;height:96px;min-height:96px;overflow:hidden;padding:var(--tl-space-3);padding-top:0}.tlui-minimap__canvas{position:relative;width:100%;height:100%}.tlui-main-toolbar{grid-column:1 / span 3;grid-row:1;display:flex;align-items:center;justify-content:center;flex-grow:2}.tlui-main-toolbar--horizontal{padding-bottom:calc(var(--tl-space-3) + var(--tl-sab));max-width:100%}.tlui-main-toolbar--vertical{position:absolute;left:0;top:90px;bottom:140px;padding-left:calc(var(--tl-space-3) + var(--tl-sab))}[data-breakpoints-below*="6"] .tlui-main-toolbar--vertical{bottom:90px}.tlui-main-toolbar__inner{position:relative;width:-moz-fit-content;width:fit-content;display:flex;gap:var(--tl-space-3);align-items:flex-start}.tlui-main-toolbar--vertical .tlui-main-toolbar__inner{flex-direction:column}.tlui-main-toolbar--horizontal .tlui-main-toolbar__left{width:-moz-fit-content;width:fit-content}.tlui-main-toolbar--vertical .tlui-main-toolbar__left{display:flex;height:-moz-fit-content;height:fit-content}.tlui-main-toolbar__extras{position:relative;z-index:var(--tl-layer-above);pointer-events:none;align-self:stretch}.tlui-main-toolbar__extras:empty{display:none}.tlui-main-toolbar--horizontal .tlui-main-toolbar__extras{height:48px;top:6px}.tlui-main-toolbar--vertical .tlui-main-toolbar__extras{width:48px;order:1}.tlui-main-toolbar__extras__controls{position:relative;z-index:var(--tl-layer-above);background-color:var(--tl-color-low);border:2px solid var(--tl-color-background);pointer-events:all}.tlui-main-toolbar--horizontal .tlui-main-toolbar__extras__controls{border-top-left-radius:var(--tl-radius-4);border-top-right-radius:var(--tl-radius-4);margin-left:8px;margin-right:0;width:-moz-fit-content;width:fit-content}.tlui-main-toolbar--vertical .tlui-main-toolbar__extras__controls{border-top-right-radius:var(--tl-radius-4);border-bottom-right-radius:var(--tl-radius-4);margin-top:8px;margin-left:-2px;margin-bottom:0;width:-moz-fit-content;width:fit-content}.tlui-main-toolbar__tools{border-radius:var(--tl-radius-4);z-index:var(--tl-layer-panels);pointer-events:all;position:relative;background:var(--tl-color-panel);box-shadow:var(--tl-shadow-2);contain:layout style paint}.tlui-main-toolbar--horizontal .tlui-main-toolbar__mobile-style-panel{align-self:flex-end}.tlui-main-toolbar--vertical .tlui-main-toolbar__mobile-style-panel{align-self:flex-start}.tlui-main-toolbar--horizontal .tlui-main-toolbar__overflow{width:40px;margin-left:2px}.tlui-main-toolbar--vertical .tlui-main-toolbar__overflow{height:40px;margin-top:2px}.tlui-layout__mobile .tlui-main-toolbar--horizontal .tlui-main-toolbar__overflow{width:32px;padding:0}.tlui-main-toolbar--horizontal *[data-state=open]:after{background:linear-gradient(0deg,rgba(144,144,144,0) 0%,var(--tl-color-muted-2) 100%);opacity:1}.tlui-main-toolbar--vertical *[data-state=open]:after{background:linear-gradient(90deg,rgba(144,144,144,0) 0%,var(--tl-color-muted-2) 100%);opacity:1}.tlui-main-toolbar__overflow-content{touch-action:none}.tlui-main-toolbar__tools [data-toolbar-visible=false],.tlui-main-toolbar__overflow-content [data-toolbar-visible=false]{display:none}.tlui-main-toolbar__group:empty{display:none}.tlui-row.tlui-main-toolbar__group:not(:nth-last-child(-n+1 of[data-toolbar-visible=true])){border-right:1px solid var(--tl-color-divider);margin-right:2px}.tlui-column.tlui-main-toolbar__group:not(:nth-last-child(-n+1 of[data-toolbar-visible=true])){border-bottom:1px solid var(--tl-color-divider);margin-bottom:2px}.tlui-grid.tlui-main-toolbar__group{grid-column:1 / span 4}.tlui-grid.tlui-main-toolbar__group:not(:nth-last-child(-n+1 of[data-toolbar-visible=true])){border-bottom:1px solid var(--tl-color-divider);margin-bottom:2px}@media(hover:hover){.tlui-main-toolbar--horizontal *[data-state=open]:not(:hover):after{background:linear-gradient(0deg,rgba(144,144,144,0) 0%,var(--tl-color-muted-2) 100%);opacity:1}.tlui-main-toolbar--vertical *[data-state=open]:not(:hover):after{background:linear-gradient(90deg,rgba(144,144,144,0) 0%,var(--tl-color-muted-2) 100%);opacity:1}}.tlui-tooltip{font-size:12px;padding:2px 8px;border-radius:4px;background-color:var(--tl-color-tooltip);box-shadow:none;color:var(--tl-color-text-shadow);max-width:400px;width:-moz-fit-content;width:fit-content;text-align:center;will-change:transform,opacity;z-index:2}.tlui-tooltip__arrow{fill:var(--tl-color-tooltip);will-change:opacity}[data-radix-popper-content-wrapper]:has(.tlui-tooltip){z-index:var(--tl-layer-toasts)!important;pointer-events:none}.tlui-debug-panel{background-color:var(--tl-color-low);width:100%;display:grid;align-items:center;grid-template-columns:1fr auto auto auto;justify-content:space-between;padding-inline-start:var(--tl-space-4);border-top:1px solid var(--tl-color-background);font-size:12px;color:var(--tl-color-text-1);z-index:var(--tl-layer-panels);pointer-events:all}.tlui-debug-panel__current-state{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.tlui-debug-panel__fps{margin-right:8px}.tlui-debug-panel__fps__slow{font-weight:700;color:var(--tl-color-danger)}.tlui-a11y-audit{border-collapse:collapse}.tlui-a11y-audit th,.tlui-a11y-audit td{padding:8px;border:1px solid var(--tl-color-low-border)}.tlui-toast__viewport{position:absolute;inset:0;margin:0;display:flex;align-items:flex-end;justify-content:flex-end;flex-direction:column;gap:var(--tl-space-3);pointer-events:none;padding:0px var(--tl-space-3) 64px 0px;z-index:var(--tl-layer-toasts)}.tl-container[dir=rtl] .tlui-toast__viewport{padding:0px 0px 64px var(--tl-space-3)}.tlui-toast__viewport>*{pointer-events:all}.tlui-toast__icon{padding-top:11px;padding-inline-start:var(--tl-space-4);color:var(--tl-color-text-1)}.tlui-toast__container{min-width:200px;display:flex;flex-direction:row;background-color:var(--tl-color-panel);box-shadow:var(--tl-shadow-2);border-radius:var(--tl-radius-3);font-size:12px}.tlui-toast__container[data-severity=success] .tlui-icon{color:var(--tl-color-success)}.tlui-toast__container[data-severity=info] .tlui-icon{color:var(--tl-color-info)}.tlui-toast__container[data-severity=warning] .tlui-icon{color:var(--tl-color-warning)}.tlui-toast__container[data-severity=error] .tlui-icon{color:var(--tl-color-danger)}.tlui-toast__main{flex-grow:2;max-width:280px}.tlui-toast__content{padding:var(--tl-space-4);display:flex;line-height:1.4;flex-direction:column;gap:var(--tl-space-3)}.tlui-toast__main[data-actions=true] .tlui-toast__content{padding-bottom:var(--tl-space-2)}.tlui-toast__title{font-weight:700;color:var(--tl-color-text-1);line-height:16px}.tlui-toast__description{color:var(--tl-color-text-1);padding:var(--tl-space-3);margin:0;padding:0}.tlui-toast__icon+.tlui-toast__main>.tlui-toast__actions{padding-left:0}.tlui-toast__actions{display:flex;flex-direction:row;justify-content:flex-start;margin-left:0}.tlui-toast__close{align-self:flex-end;flex-shrink:0}@media(prefers-reduced-motion:no-preference){.tlui-toast__container[data-state=open]{animation:tlui-slide-in .2s cubic-bezier(.785,.135,.15,.86)}.tlui-toast__container[data-state=closed]{animation:tlui-fade-out .1s ease-in}.tlui-toast__container[data-swipe=move]{transform:translate(var(--radix-toast-swipe-move-x))}.tlui-toast__container[data-swipe=cancel]{transform:translate(0);transition:transform .2s ease-out}.tlui-toast__container[data-swipe=end]{animation:tlui-slide-out .1s ease-out}.tl-container[dir=rtl] .tlui-toast__container[data-state=open]{animation:tlui-slide-in-rtl .2s cubic-bezier(.785,.135,.15,.86)}.tl-container[dir=rtl] .tlui-toast__container[data-state=closed]{animation:tlui-fade-out .1s ease-in}.tl-container[dir=rtl] .tlui-toast__container[data-swipe=end]{animation:tlui-slide-out-rtl .1s ease-out}}.tlui-dialog__overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:var(--tl-layer-canvas-overlays);background-color:var(--tl-color-overlay);animation:tl-fade-in .12s ease-out}.tlui-dialog__positioner{position:absolute;top:0;left:0;width:100%;height:100%;z-index:var(--tl-layer-canvas-overlays);pointer-events:all;display:grid;place-items:center;overflow-y:auto;padding:0px var(--tl-space-3)}.tlui-dialog__content{display:flex;flex-direction:column;position:relative;cursor:default;background-color:var(--tl-color-panel);box-shadow:var(--tl-shadow-3);border-radius:var(--tl-radius-3);font-size:12px;overflow:hidden;min-width:300px;max-width:100%;max-height:80%}.tlui-dialog__header{position:relative;display:flex;align-items:center;flex:0;z-index:var(--tl-layer-header-footer);padding-inline-start:var(--tl-space-4);color:var(--tl-color-text);height:40px}.tlui-dialog__header__title{flex:1;font-weight:inherit;font-size:12px;margin:0;color:var(--tl-color-text-1)}.tlui-dialog__header__close{justify-self:flex-end}.tlui-dialog__body{padding:var(--tl-space-4) var(--tl-space-4);flex:0 1;overflow-y:auto;overflow-x:hidden;color:var(--tl-color-text-1);-moz-user-select:all;user-select:all;-webkit-user-select:text}.tlui-dialog__body a{color:var(--tl-color-selected)}.tlui-dialog__body ul,.tlui-dialog__body ol{padding-left:16px;display:flex;flex-direction:column;gap:var(--tl-space-2)}.tlui-dialog__footer{position:relative;min-height:12px;z-index:var(--tl-layer-header-footer)}.tlui-dialog__footer__actions{display:flex;align-items:center;justify-content:flex-end}.tlui-dialog__footer__actions>.tlui-button:nth-last-child(n+2){margin-right:-4px}.tlui-edit-link-dialog{display:flex;flex-direction:column;gap:var(--tl-space-4);color:var(--tl-color-text)}.tlui-edit-link-dialog__input{background-color:var(--tl-color-muted-2);flex-grow:2;border-radius:var(--tl-radius-2);padding:0px var(--tl-space-4)}.tlui-embed__spacer{flex-grow:2;min-height:0px;margin-left:calc(-1 * var(--tl-space-4));margin-top:calc(-1 * var(--tl-space-4));pointer-events:none}.tlui-embed-dialog__list{display:flex;flex-direction:column;padding:0px var(--tl-space-3) var(--tl-space-4) var(--tl-space-3)}.tlui-embed-dialog__item__image{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background-size:contain;background-repeat:no-repeat;background-position:center center;background-color:var(--tl-color-selected-contrast);border-radius:var(--tl-radius-1)}.tlui-embed-dialog__enter{display:flex;flex-direction:column;gap:var(--tl-space-4);color:var(--tl-color-text-1)}.tlui-embed-dialog__input{background-color:var(--tl-color-muted-2);flex-grow:2;border-radius:var(--tl-radius-2);padding:0px var(--tl-space-4)}.tlui-embed-dialog__warning{color:var(--tl-color-danger);text-shadow:none}.tlui-embed-dialog__instruction__link{display:flex;gap:var(--tl-space-1);margin-top:var(--tl-space-4)}.tlui-embed-dialog__enter a{color:var(--tl-color-text-1)}.tlui-shortcuts-dialog__header{border-bottom:1px solid var(--tl-color-divider)}.tlui-shortcuts-dialog__body{position:relative;-moz-columns:3;columns:3;-moz-column-gap:var(--tl-space-9);column-gap:var(--tl-space-9);pointer-events:all;touch-action:auto;overflow-x:auto;scrollbar-width:none}.tlui-shortcuts-dialog__body::-webkit-scrollbar{display:none}.tlui-shortcuts-dialog__body__tablet{-moz-columns:2;columns:2}.tlui-shortcuts-dialog__body__mobile{-moz-columns:1;columns:1}.tlui-shortcuts-dialog__group{-moz-column-break-inside:avoid;break-inside:avoid-column;padding-bottom:var(--tl-space-6)}.tlui-shortcuts-dialog__group__title{font-size:inherit;font-weight:inherit;margin:0;color:var(--tl-color-text-3);height:32px;display:flex;align-items:center}.tlui-shortcuts-dialog__group__content{display:flex;flex-direction:column;color:var(--tl-color-text-1)}.tlui-shortcuts-dialog__key-pair{display:flex;gap:var(--tl-space-4);align-items:center;justify-content:space-between;height:32px}.tlui-shortcuts-dialog__key-pair__key{flex:1;font-size:12px}.tlui-language-menu{max-height:500px}.tlui-language-menu:after{content:"";display:block;position:absolute;bottom:0;left:0;right:0;height:24px;background:linear-gradient(to bottom,var(--tl-color-panel-transparent) 0%,var(--tl-color-panel) 90%,var(--tl-color-panel) 100%);border-bottom-left-radius:var(--tl-radius-3);border-bottom-right-radius:var(--tl-radius-3);pointer-events:none}.tlui-actions-menu{max-height:calc(100vh - 150px)}.tlui-help-menu{pointer-events:all;position:absolute;bottom:var(--tl-space-2);right:var(--tl-space-2);z-index:var(--tl-layer-panels);border:2px solid var(--tl-color-background);border-radius:100%}.tlui-share-zone{padding:2px 4px 0 0;display:flex;flex-direction:row;justify-content:flex-end;z-index:var(--tl-layer-panels);align-items:center}.tlui-people-menu__avatars-button{display:flex;align-items:center;justify-content:flex-end;background:none;border:none;cursor:pointer;pointer-events:all;border-radius:var(--tl-radius-1);padding-right:1px;height:100%}.tlui-people-menu__avatars{display:flex;flex-direction:row}.tlui-people-menu__avatar{height:24px;width:24px;border:2px solid var(--tl-color-background);background-color:var(--tl-color-low);border-radius:100%;display:flex;align-items:center;justify-content:center;position:relative;font-size:10px;font-weight:700;text-align:center;color:var(--tl-color-selected-contrast);z-index:2}.tlui-people-menu__avatar:nth-of-type(n+2){margin-inline-start:-12px}.tlui-people-menu__avatars-button[data-state=open]{opacity:1}@media(hover:hover){.tlui-people-menu__avatars-button:hover .tlui-people-menu__avatar{border-color:var(--tl-color-low)}}.tlui-people-menu__more{min-width:0px;font-size:11px;font-weight:600;color:var(--tl-color-text-1);font-family:inherit;padding:0 4px}.tlui-people-menu__more:after{border-radius:var(--tl-radius-2);inset:0}.tlui-people-menu__wrapper{position:relative;display:flex;flex-direction:column;width:220px;height:-moz-fit-content;height:fit-content;max-height:50vh}.tlui-people-menu__section{position:relative;flex-direction:column;max-height:100%;overflow-x:hidden;overflow-y:auto;touch-action:auto}.tlui-people-menu__section:first-child,.tlui-people-menu__section:last-child{flex-shrink:0}.tlui-people-menu__section:not(:last-child){border-bottom:1px solid var(--tl-color-divider)}.tlui-people-menu__user{display:flex;justify-content:flex-start;align-items:center}.tlui-people-menu__user__color{flex-shrink:0}.tlui-people-menu__user__name{text-align:start;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--tl-color-text-1);max-width:100%;flex-grow:1;flex-shrink:100}.tlui-people-menu__user__label{text-align:start;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--tl-color-text-3);flex-grow:100;flex-shrink:0;margin-inline-start:4px}.tlui-people-menu__user__input{flex-grow:2;height:100%;padding:0;margin:0}.tlui-people-menu__user>.tlui-input__wrapper{width:auto;display:flex;align-items:auto;flex-grow:2;gap:8px;height:100%;padding:0}.tlui-people-menu__item{position:relative}.tlui-people-menu__item:last-of-type .tlui-button__menu{margin-bottom:0}.tlui-people-menu__item__button{padding:0 11px;overflow:hidden}.tlui-people-menu__item>.tlui-button__menu{width:auto;display:flex;align-items:auto;justify-content:flex-start;flex-grow:2;gap:11px}.tlui-people-menu__name{text-align:start;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tlui-people-menu__item__follow{position:absolute;top:0;inset-inline-end:0px;max-width:40px;flex-shrink:0}.tlui-people-menu__item[data-follow=true],.tlui-people-menu__item:has(.tlui-button:focus-visible){padding-inline-end:36px}.tlui-people-menu__item[data-follow=true] .tlui-people-menu__item__follow,.tlui-people-menu__item:has(.tlui-button:focus-visible) .tlui-people-menu__item__follow{opacity:1}@media(hover:hover){.tlui-people-menu__item__follow{opacity:0}.tlui-people-menu__item:hover{padding-right:36px}.tlui-people-menu__item:hover .tlui-people-menu__item__follow{opacity:1}}.tlui-following-indicator{display:block;position:absolute;inset:0;border-width:2px;border-style:solid;pointer-events:none}.tlui-contextual-toolbar{position:absolute}.tlui-contextual-toolbar,.tlui-contextual-toolbar *{pointer-events:all}.tlui-contextual-toolbar [data-isactive=true]:after{background-color:var(--tl-color-muted-2);opacity:1}.tlui-contextual-toolbar{opacity:0;transition:opacity .08s ease-in-out}.tlui-contextual-toolbar,.tlui-contextual-toolbar *{pointer-events:none}.tlui-contextual-toolbar[data-visible=true]{opacity:1;z-index:var(--tl-layer-menus)}.tlui-contextual-toolbar[data-interactive=true],.tlui-contextual-toolbar[data-interactive=true] *{pointer-events:all}.tlui-rich-text__toolbar-link-input{margin-left:12px;width:148px}.tlui-media__toolbar-alt-text-input{margin-left:12px;min-width:200px}.tlui-contextual-toolbar .tlui-input__wrapper{height:40px}.tlui-image__toolbar .tlui-slider__container{width:125px}.tlui-image__toolbar .tlui-slider{height:100%}.tlui-image__toolbar .tlui-slider__track{height:32px}.tlui-image__toolbar .tlui-slider__thumb{width:14px;height:14px}@keyframes tlui-fade-out{0%{opacity:1}to{opacity:0}}@keyframes tlui-slide-in{0%{transform:translate(calc(100% + var(--tl-space-3)))}to{transform:translate(0)}}@keyframes tlui-slide-out{0%{transform:translate(var(--radix-toast-swipe-end-x))}to{transform:translate(calc(100% + var(--tl-space-3)))}}@keyframes tlui-slide-in-rtl{0%{transform:translate(calc(-100% - var(--tl-space-3)))}to{transform:translate(0)}}@keyframes tlui-slide-out-rtl{0%{transform:translate(var(--radix-toast-swipe-end-x))}to{transform:translate(calc(-100% - var(--tl-space-3)))}}.node-context-menu-overlay{position:fixed;inset:0;z-index:9999}.node-context-menu{background:var(--color-surface-strong);border:1px solid var(--color-border-card);border-radius:8px;box-shadow:var(--shadow-lg, 0 4px 12px rgba(0, 0, 0, .15));padding:6px;min-width:160px;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.node-context-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:transparent;border:none;border-radius:4px;cursor:pointer;font-size:13px;color:var(--color-text-main);transition:background-color .15s}.node-context-menu-item:hover{background:var(--color-hover)}.node-context-menu-item svg{flex-shrink:0;opacity:.7}.node-context-menu-header{display:flex;align-items:center;gap:8px;padding:6px 12px 4px;font-size:12px;font-weight:600;color:var(--color-text-main);opacity:.5}.node-context-input{width:calc(100% - 12px);padding:6px 8px;margin:4px 6px;border:1px solid var(--color-border-card);border-radius:4px;font-size:12px;background:var(--color-surface-strong);color:var(--color-text-main);box-sizing:border-box}.node-context-input:focus{outline:none;border-color:rgba(var(--color-brand-rgb),.6)}.login-page{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:2rem;background:radial-gradient(circle at 15% 20%,rgba(var(--color-brand-rgb),.14) 0%,transparent 52%),radial-gradient(circle at 85% 80%,rgba(var(--color-brand-end-rgb),.12) 0%,transparent 55%),var(--color-bg-base);font-family:var(--font-family-body);overflow:hidden}.login-page:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 15% 25%,rgba(var(--color-brand-rgb),.12) 0%,transparent 50%),radial-gradient(circle at 85% 75%,rgba(var(--color-brand-end-rgb),.1) 0%,transparent 55%);pointer-events:none;animation:loginBgShift 24s ease-in-out infinite alternate}@keyframes loginBgShift{0%{transform:translate(0) scale(1)}to{transform:translate(-2%,2%) scale(1.06)}}.login-card{position:relative;z-index:1;width:100%;max-width:420px;padding:2.75rem 2.35rem 2.5rem;background:var(--color-surface-strong);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--color-border-card);border-radius:24px;box-shadow:var(--shadow-lg);animation:loginCardFadeIn .7s cubic-bezier(.16,1,.3,1)}@keyframes loginCardFadeIn{0%{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.login-brand{text-align:center;margin-bottom:2rem}.login-title{font-family:var(--font-family-title);font-size:2.15rem;font-weight:700;letter-spacing:.08em;margin:0 0 .55rem;background:var(--color-brand-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-subtitle{font-size:.95rem;color:var(--color-text-muted);margin:0}.login-form{display:flex;flex-direction:column;gap:1.15rem}.login-field{display:flex;flex-direction:column;gap:.45rem}.login-label{font-size:.82rem;font-weight:600;color:var(--color-text-main);opacity:.78;letter-spacing:.02em}.login-input-wrap{position:relative;display:flex;align-items:center}.login-input-icon{position:absolute;left:.95rem;color:var(--color-text-muted);pointer-events:none;transition:color .2s ease;z-index:1}.login-input{width:100%;height:3.05rem;padding:0 1rem 0 2.85rem;border:1.5px solid rgba(28,27,23,.14);border-radius:14px;background:#f3f1ee;font-family:inherit;font-size:.98rem;font-weight:500;color:var(--color-text-main);line-height:1.3;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;box-sizing:border-box;box-shadow:inset 0 1px 2px #1c1b170a}.login-input:hover{border-color:#1c1b1738;background:#f7f5f2}.login-input:focus{outline:none;border-color:var(--color-brand-start);background:#fff;box-shadow:0 0 0 4px rgba(var(--color-brand-rgb),.14),inset 0 1px 2px #1c1b1708}.login-input-wrap:focus-within .login-input-icon{color:var(--color-brand-start)}.login-input::-moz-placeholder{color:var(--color-text-muted);opacity:.72;font-weight:400}.login-input::placeholder{color:var(--color-text-muted);opacity:.72;font-weight:400}.login-remember{display:flex;align-items:center;gap:.55rem;margin-top:.1rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:-moz-fit-content;width:fit-content}.login-remember-input{width:1rem;height:1rem;margin:0;accent-color:var(--color-brand-start);cursor:pointer;flex-shrink:0}.login-remember-text{font-size:.88rem;color:var(--color-text-muted)}.login-error{padding:.7rem .9rem;border-radius:10px;background:#f43f5e14;border:1px solid rgba(244,63,94,.2);color:var(--color-danger);font-size:.85rem}.login-submit{margin-top:.35rem;height:3.1rem;padding:0 1rem;border:none;border-radius:14px;background:var(--color-brand-gradient);color:#fff;font-family:inherit;font-size:1.05rem;font-weight:600;letter-spacing:.08em;cursor:pointer;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s;box-shadow:var(--shadow-glow)}.login-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 36px rgba(var(--color-brand-rgb),.42)}.login-submit:disabled{opacity:.65;cursor:not-allowed}.login-note{margin:1.6rem 0 0;text-align:center;font-size:.8rem;color:var(--color-text-muted);opacity:.75;line-height:1.5}:root[data-theme=dark] .login-input{background:#ffffff0f;border-color:#ffffff29;box-shadow:inset 0 1px 2px #00000038;color:var(--color-text-main)}:root[data-theme=dark] .login-input:hover{background:#ffffff14;border-color:#ffffff3d}:root[data-theme=dark] .login-input:focus{background:#ffffff1a;border-color:var(--color-brand-start);box-shadow:0 0 0 4px rgba(var(--color-brand-rgb),.2),inset 0 1px 2px #0000002e}@media(prefers-reduced-motion:reduce){.login-page:before,.login-card{animation:none}}.mu-panel{display:flex;flex-direction:column;gap:18px}.mu-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.mu-title{margin:0;font-family:var(--font-family-title);font-size:1.05rem;font-weight:600;color:var(--color-text-main)}.mu-intro{margin:5px 0 0;color:var(--color-text-muted);font-size:.76rem;line-height:1.45}.mu-balance{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid rgba(var(--color-brand-rgb),.22);border-radius:var(--radius-md);background:linear-gradient(120deg,rgba(var(--color-brand-rgb),.1),transparent 64%),var(--color-surface-strong);box-shadow:var(--shadow-sm)}.mu-balance.is-low{border-color:#b8741a47;background:linear-gradient(120deg,rgba(184,116,26,.1),transparent 64%),var(--color-surface-strong)}.mu-balance.is-empty{border-color:rgba(var(--color-danger-rgb),.28);background:linear-gradient(120deg,rgba(var(--color-danger-rgb),.1),transparent 64%),var(--color-surface-strong)}.mu-balance-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;color:var(--color-brand-start);background:rgba(var(--color-brand-rgb),.12);flex:0 0 auto}.mu-balance.is-low .mu-balance-icon{color:#b8741a;background:#b8741a1f}.mu-balance.is-empty .mu-balance-icon{color:var(--color-danger);background:rgba(var(--color-danger-rgb),.12)}.mu-balance-copy{display:flex;flex-direction:column;gap:2px;min-width:110px}.mu-balance-copy span{color:var(--color-text-muted);font-size:.72rem}.mu-balance-copy strong{color:var(--color-text-main);font-family:var(--font-family-title);font-size:1.45rem;line-height:1;font-variant-numeric:tabular-nums}.mu-balance-note{display:inline-flex;align-items:center;gap:6px;margin-left:auto;color:var(--color-text-muted);font-size:.72rem;line-height:1.4;text-align:right}.mu-balance.is-empty .mu-balance-note{color:var(--color-danger)}@media(max-width:560px){.mu-balance{align-items:flex-start;flex-wrap:wrap}.mu-balance-note{width:100%;margin-left:48px;text-align:left}}.mu-seg{display:inline-flex;border:1px solid var(--color-border-card);border-radius:var(--radius-sm);overflow:hidden;background:var(--color-surface)}.mu-seg-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:6px 13px;font:inherit;font-size:.82rem;color:var(--color-text-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.mu-seg-btn+.mu-seg-btn{border-left:1px solid var(--color-border-card)}.mu-seg-btn:hover{background:var(--color-hover);color:var(--color-text-main)}.mu-seg-btn.is-active{background:var(--color-active-soft);color:var(--color-brand-start);font-weight:600}.mu-seg-btn:focus-visible{outline:2px solid var(--color-brand-start);outline-offset:-2px}.mu-body{display:flex;flex-direction:column;gap:16px;transition:opacity .2s ease}.mu-body.is-reloading{opacity:.55}.mu-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media(max-width:720px){.mu-kpis{grid-template-columns:repeat(2,1fr)}}.mu-kpi{display:flex;flex-direction:column;gap:6px;padding:14px 16px;background:var(--color-surface-strong);border:1px solid var(--color-border-card);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.mu-kpi-label{font-size:.7rem;font-weight:600;letter-spacing:.12em;color:var(--color-text-muted)}.mu-kpi-value{font-family:var(--font-family-title);font-size:1.7rem;font-weight:600;line-height:1;font-variant-numeric:tabular-nums;color:var(--color-text-main)}.mu-card{background:var(--color-surface-strong);border:1px solid var(--color-border-card);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:16px 18px 18px}.mu-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--color-border-card)}.mu-card-title{margin:0;font-size:.72rem;font-weight:600;letter-spacing:.12em;color:var(--color-text-muted)}.mu-card-sub{display:inline-flex;align-items:center;gap:12px;font-size:.7rem;color:var(--color-text-muted)}.mu-legend{display:inline-flex;align-items:center;gap:5px;font-style:normal}.mu-legend i{width:9px;height:9px;border-radius:2px;display:inline-block}.mu-legend i.is-ok{background:var(--color-brand-start)}.mu-legend i.is-fail{background:var(--color-danger);margin-left:7px}.mu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.mu-bars{display:block;width:100%;height:190px}.mu-bars-grid{stroke:var(--color-border-card);stroke-width:1}.mu-bars-axis{fill:var(--color-text-muted);font-size:9px}.mu-bar{fill:var(--color-brand-start)}.mu-bar.is-zero{fill:var(--color-border-hover)}.mu-bar-fail{fill:var(--color-danger)}.mu-bars g:hover .mu-bar{fill:var(--color-brand-end)}.mu-barlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.mu-barlist-row{min-width:0}.mu-barlist-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.mu-barlist-label{font-size:.85rem;color:var(--color-text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mu-barlist-value{font-family:var(--font-family-title);font-size:1rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-text-main);flex-shrink:0}.mu-barlist-track{height:6px;margin:6px 0 5px;border-radius:var(--radius-pill);background:var(--color-hover);overflow:hidden}.mu-barlist-fill{height:100%;background:var(--color-brand-gradient);border-radius:var(--radius-pill)}.mu-barlist-meta{display:flex;gap:12px;font-size:.7rem;color:var(--color-text-muted)}.mu-barlist-fail{color:var(--color-danger)}.mu-empty,.mu-error{padding:22px 0;text-align:center;font-size:.84rem;color:var(--color-text-muted)}.mu-error{color:var(--color-danger)}.fc-account-dialog-backdrop{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:10000;background:#1c1b1766;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:fcAccountDialogFadeIn .2s ease}@keyframes fcAccountDialogFadeIn{0%{opacity:0}to{opacity:1}}.fc-account-dialog{width:90%;max-width:420px;padding:22px 24px 24px;border:1px solid var(--color-border-card);border-radius:var(--radius-md);background:var(--color-surface-strong);box-shadow:var(--shadow-lg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);animation:fcAccountDialogIn .3s cubic-bezier(.16,1,.3,1)}@keyframes fcAccountDialogIn{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.fc-account-dialog-head{display:flex;align-items:center;justify-content:space-between}.fc-account-dialog-title{margin:0;font-size:16px;font-weight:600;color:var(--color-text-main)}.fc-account-dialog-close{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.fc-account-dialog-close:hover{background:var(--color-hover);color:var(--color-text-main)}.fc-account-dialog-identity{margin-top:12px;padding-bottom:14px;border-bottom:1px solid var(--color-border-card)}.fc-account-dialog-name{font-size:15px;font-weight:600;color:var(--color-text-main)}.fc-account-dialog-email{margin-top:2px;font-size:12px;color:var(--color-text-muted)}.fc-account-tabs{display:flex;gap:4px;margin:14px 0 16px;padding:3px;border-radius:var(--radius-sm);background:var(--color-hover)}.fc-account-tab{flex:1;padding:7px 10px;border:none;border-radius:7px;background:transparent;color:var(--color-text-muted);font-size:13px;cursor:pointer;transition:background .15s ease,color .15s ease}.fc-account-tab:hover:not(.is-active){color:var(--color-text-main)}.fc-account-tab.is-active{background:var(--color-surface-strong);color:var(--color-brand-start);font-weight:600;box-shadow:var(--shadow-sm, 0 1px 3px rgba(28, 27, 23, .06))}.fc-account-dialog-form{display:flex;flex-direction:column;gap:14px}.fc-account-dialog-field{display:flex;flex-direction:column;gap:6px}.fc-account-dialog-label{font-size:12px;color:var(--color-text-muted)}.fc-account-dialog-input{width:100%;height:36px;padding:0 12px;border:1px solid var(--color-border-card);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-main);font-size:14px;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.fc-account-dialog-input:focus{border-color:var(--color-brand-start);box-shadow:0 0 0 3px rgba(var(--color-brand-rgb),.12)}.fc-account-dialog-input:disabled{opacity:.6;cursor:not-allowed}.fc-account-dialog-hint,.fc-account-dialog-ok{font-size:12px;line-height:1.5;color:var(--color-text-muted)}.fc-account-dialog-error{font-size:12px;line-height:1.5;color:var(--color-danger)}.fc-account-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:2px}.fc-account-dialog-btn{padding:8px 18px;border:1px solid var(--color-border-card);border-radius:var(--radius-sm);background:transparent;color:var(--color-text-main);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.fc-account-dialog-btn:hover:not(:disabled){background:rgba(var(--color-brand-rgb),.08);border-color:var(--color-border-hover);color:var(--color-brand-start)}.fc-account-dialog-btn.is-primary{border-color:transparent;background:var(--color-brand-gradient);color:#fff}.fc-account-dialog-btn.is-primary:hover:not(:disabled){border-color:transparent;background:var(--color-brand-gradient);color:#fff;box-shadow:var(--shadow-md)}.fc-account-dialog-btn:disabled{opacity:.45;cursor:not-allowed}.fc-account{position:relative}.fc-account-btn{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;border:none;border-radius:var(--radius-pill);background:transparent;color:var(--color-text-main);font-size:13px;cursor:pointer;transition:background .15s ease,color .15s ease}.fc-account-btn:hover{background:var(--color-hover)}.fc-account-btn.active{background:var(--color-active-soft);color:var(--color-brand-start)}.fc-account-credits{display:inline-flex;align-items:center;gap:4px;font-weight:600;color:var(--color-brand-start)}.fc-account-scrim{position:fixed;inset:0;z-index:var(--popover-z-scrim, 4000)}.fc-account-menu{position:fixed;top:var(--popover-top, 56px);right:var(--popover-right, 16px);left:auto;z-index:var(--popover-z-menu, 4001);width:min(280px,calc(100vw - 32px));padding:14px;border:1px solid var(--color-border-card);border-radius:var(--popover-radius, var(--radius-md));background:var(--color-surface-strong);box-shadow:var(--popover-shadow, var(--shadow-lg));backdrop-filter:var(--popover-blur, blur(18px) saturate(140%));-webkit-backdrop-filter:var(--popover-blur, blur(18px) saturate(140%));animation:fcAccountIn var(--popover-anim-duration, .18s) var(--popover-anim-ease, cubic-bezier(.16, 1, .3, 1));transform-origin:top right}@keyframes fcAccountIn{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.fc-account-header{padding-bottom:12px;border-bottom:1px solid var(--color-border-card)}.fc-account-name{font-size:15px;font-weight:600;color:var(--color-text-main)}.fc-account-email{font-size:12px;color:var(--color-text-muted);margin-top:2px}.fc-account-balance{display:flex;align-items:center;gap:8px;padding:12px 0}.fc-account-balance-label{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--color-text-muted)}.fc-account-balance-value{margin-left:auto;font-size:18px;font-weight:700;color:var(--color-brand-start)}.fc-account-refresh{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:pointer}.fc-account-refresh:hover{background:var(--color-hover)}.fc-spin{animation:fcSpin .8s linear infinite}@keyframes fcSpin{to{transform:rotate(360deg)}}.fc-account-section-title{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin:4px 0 8px}.fc-account-directives{max-height:180px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.fc-account-directive{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;border-radius:var(--radius-sm);background:var(--color-hover);font-size:13px}.fc-account-directive-name{color:var(--color-text-main)}.fc-account-directive-cost{font-size:12px;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.fc-account-hint{padding:10px;font-size:12px;color:var(--color-text-muted);text-align:center}.fc-account-action{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:12px;padding:9px;border:1px solid var(--color-border-card);border-radius:var(--radius-sm);background:transparent;color:var(--color-text-main);font-size:13px;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.fc-account-action:hover:not(:disabled){background:rgba(var(--color-brand-rgb),.08);border-color:var(--color-border-hover);color:var(--color-brand-start)}.fc-account-action.is-primary{border-color:transparent;background:var(--color-brand-gradient);color:#fff}.fc-account-action.is-primary:hover:not(:disabled){background:var(--color-brand-gradient);border-color:transparent;color:#fff;box-shadow:var(--shadow-md)}.fc-account-action:disabled{opacity:.55;cursor:not-allowed}.fc-account-logout{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:12px;padding:9px;border:1px solid var(--color-border-card);border-radius:var(--radius-sm);background:transparent;color:var(--color-text-main);font-size:13px;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.fc-account-logout:hover{background:rgba(var(--color-brand-rgb),.08);border-color:var(--color-border-hover);color:var(--color-brand-start)}.fc-return-console{position:fixed;top:calc(14px + var(--fc-notify-banner-h, 0px));right:100px;z-index:1000;height:34px;padding:0 14px;border:1px solid transparent;border-radius:var(--radius-pill);background:var(--color-brand-gradient);color:#fff;font-size:13px;font-weight:500;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-md);transition:transform .15s ease,box-shadow .15s ease}.fc-return-console:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg)}.fc-notify{position:relative}.fc-notify-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:none;border-radius:var(--radius-pill);background:transparent;color:var(--color-text-main);cursor:pointer;transition:background .15s ease,color .15s ease}.fc-notify-btn:hover{background:var(--color-hover)}.fc-notify-btn.active{background:var(--color-active-soft);color:var(--color-brand-start)}.fc-notify-badge{position:absolute;top:1px;right:0;min-width:15px;height:15px;padding:0 4px;border-radius:var(--radius-pill);background:var(--color-brand-gradient);color:#fff;font-size:10px;font-weight:700;line-height:15px;text-align:center;box-shadow:var(--shadow-sm)}.fc-notify-scrim{position:fixed;inset:0;z-index:var(--popover-z-scrim, 4000)}.fc-notify-menu{position:fixed;top:var(--popover-top, 56px);right:var(--popover-right, 16px);left:auto;z-index:var(--popover-z-menu, 4001);display:flex;flex-direction:column;width:min(360px,calc(100vw - 32px));max-height:min(70vh,560px);border:1px solid var(--color-border-card);border-radius:var(--popover-radius, var(--radius-md));background:var(--color-surface-strong);box-shadow:var(--popover-shadow, var(--shadow-lg));-webkit-backdrop-filter:var(--popover-blur, blur(18px) saturate(140%));backdrop-filter:var(--popover-blur, blur(18px) saturate(140%));overflow:hidden}.fc-notify-menu-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;border-bottom:1px solid var(--color-border-card)}.fc-notify-menu-title{font-size:13px;font-weight:600;color:var(--color-text-main)}.fc-notify-readall{border:none;background:transparent;padding:4px 8px;border-radius:var(--radius-sm);color:var(--color-brand-start);font-size:12px;cursor:pointer}.fc-notify-readall:hover{background:var(--color-active-soft)}.fc-notify-readall:disabled{color:var(--color-text-muted);cursor:default;background:transparent}.fc-notify-list{flex:1;overflow-y:auto;padding:6px}.fc-notify-empty{padding:28px 14px;text-align:center;color:var(--color-text-muted);font-size:12px}.fc-notify-item{position:relative;padding:10px 12px 10px 22px;border-radius:var(--radius-sm);cursor:default}.fc-notify-item:hover{background:var(--color-hover)}.fc-notify-item.unread:before{content:"";position:absolute;top:15px;left:9px;width:6px;height:6px;border-radius:50%;background:var(--color-brand-start)}.fc-notify-item-title{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--color-text-main)}.fc-notify-item.read .fc-notify-item-title{font-weight:500;color:var(--color-text-muted)}.fc-notify-item-body{margin-top:4px;font-size:12px;line-height:1.6;color:var(--color-text-muted);white-space:pre-wrap;word-break:break-word}.fc-notify-item-foot{display:flex;align-items:center;gap:10px;margin-top:6px}.fc-notify-time{font-size:11px;color:var(--color-text-muted)}.fc-notify-link{font-size:11px;color:var(--color-primary-blue);text-decoration:none}.fc-notify-link:hover{text-decoration:underline}.fc-notify-mark{margin-left:auto;border:none;background:transparent;padding:2px 6px;border-radius:var(--radius-sm);color:var(--color-brand-start);font-size:11px;cursor:pointer}.fc-notify-mark:hover{background:var(--color-active-soft)}.fc-notify-level{flex-shrink:0;padding:1px 6px;border-radius:var(--radius-pill);font-size:10px;font-weight:600}.fc-notify-level.warning{background:rgba(var(--color-brand-end-rgb),.16);color:var(--color-brand-end)}.fc-notify-level.critical{background:rgba(var(--color-danger-rgb),.14);color:var(--color-danger)}.fc-notify-banner{position:fixed;top:0;left:0;right:0;z-index:3900;display:flex;align-items:flex-start;gap:10px;padding:10px 16px;border-bottom:1px solid var(--color-border-card);background:var(--color-surface-strong);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);animation:fc-notify-drop .22s ease}.fc-notify-banner.critical{box-shadow:inset 3px 0 0 var(--color-danger),var(--shadow-md)}.fc-notify-banner.warning{box-shadow:inset 3px 0 0 var(--color-brand-end),var(--shadow-md)}.fc-notify-banner-icon{flex-shrink:0;margin-top:1px;color:var(--color-danger)}.fc-notify-banner.warning .fc-notify-banner-icon{color:var(--color-brand-end)}.fc-notify-banner-main{flex:1;min-width:0}.fc-notify-banner-title{font-size:13px;font-weight:600;color:var(--color-text-main)}.fc-notify-banner-body{margin-top:2px;font-size:12px;line-height:1.5;color:var(--color-text-muted);white-space:pre-wrap;word-break:break-word}.fc-notify-banner-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.fc-notify-banner-link{padding:4px 10px;border-radius:var(--radius-pill);background:var(--color-brand-gradient);color:#fff;font-size:12px;text-decoration:none}.fc-notify-banner-ack{padding:4px 10px;border:1px solid var(--color-border-card);border-radius:var(--radius-pill);background:transparent;color:var(--color-text-main);font-size:12px;cursor:pointer}.fc-notify-banner-ack:hover{background:var(--color-hover)}.fc-notify-toasts{position:fixed;right:16px;bottom:16px;z-index:3950;display:flex;flex-direction:column;gap:8px;pointer-events:none}.fc-notify-toast{pointer-events:auto;display:flex;align-items:flex-start;gap:8px;width:min(320px,calc(100vw - 32px));padding:10px 12px;border:1px solid var(--color-border-card);border-radius:var(--radius-md);background:var(--color-surface-strong);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);animation:fc-notify-slide .22s ease}.fc-notify-toast.warning{box-shadow:inset 3px 0 0 var(--color-brand-end),var(--shadow-lg)}.fc-notify-toast-main{flex:1;min-width:0}.fc-notify-toast-title{font-size:12px;font-weight:600;color:var(--color-text-main)}.fc-notify-toast-body{margin-top:3px;font-size:11px;line-height:1.5;color:var(--color-text-muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.fc-notify-toast-close{flex-shrink:0;border:none;background:transparent;padding:2px;border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;line-height:1}.fc-notify-toast-close:hover{background:var(--color-hover);color:var(--color-text-main)}@keyframes fc-notify-slide{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes fc-notify-drop{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.fc-notify-toast,.fc-notify-banner{animation:none}}:root{color-scheme:light;--color-bg-base: #f7f5f2;--color-surface: rgba(255, 255, 255, .72);--color-surface-strong: rgba(255, 255, 255, .96);--color-border-card: rgba(28, 27, 23, .06);--color-border-hover: rgba(var(--color-brand-rgb), .2);--color-text-main: #1d1b22;--color-text-muted: rgba(29, 27, 34, .52);--color-brand-start: #ff5c7a;--color-brand-end: #ffa24d;--color-brand-gradient: linear-gradient(135deg, var(--color-brand-start), var(--color-brand-end));--color-brand-rgb: 255, 92, 122;--color-brand-end-rgb: 255, 162, 77;--color-primary-blue: #4f7cff;--color-success: #10b981;--color-danger: #f43f5e;--font-family-title: "Outfit", "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--font-family-body: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--shadow-sm: 0 2px 8px rgba(28, 27, 23, .04);--shadow-md: 0 8px 20px rgba(28, 27, 23, .06);--shadow-lg: 0 16px 36px rgba(28, 27, 23, .08), 0 4px 12px rgba(28, 27, 23, .02);--shadow-glow: 0 0 20px rgba(var(--color-brand-rgb), .25);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 22px;--radius-pill: 999px;--color-hover: rgba(28, 27, 23, .05);--color-active-soft: rgba(var(--color-brand-rgb), .12);--color-danger-rgb: 244, 63, 94;--color-success-rgb: 16, 185, 129;--color-media-image-rgb: 79, 124, 255;--color-media-video-rgb: 168, 85, 247;--color-media-audio-rgb: 16, 185, 129;--image-editor-overlay: rgba(28, 27, 23, .42);--image-editor-panel: var(--color-surface-strong);--image-editor-panel-soft: color-mix(in srgb, var(--color-bg-base) 92%, var(--color-text-main));--image-editor-body: var(--color-bg-base);--image-editor-stage: var(--color-bg-base);--image-editor-stage-grid: rgba(28, 27, 23, .055);--image-editor-line: var(--color-border-card);--image-editor-line-strong: color-mix(in srgb, var(--color-text-main) 16%, transparent);--image-editor-shadow: var(--shadow-lg);--popover-top: calc(56px + var(--fc-notify-banner-h, 0px));--popover-right: 16px;--popover-z-scrim: 4000;--popover-z-menu: 4001;--popover-radius: var(--radius-md);--popover-shadow: var(--shadow-lg);--popover-blur: blur(18px) saturate(140%);--popover-anim-duration: .18s;--popover-anim-ease: cubic-bezier(.16, 1, .3, 1);--canvas-chrome-gutter: 16px;--canvas-header-top: 12px;--canvas-header-h: 32px;--canvas-header-gap: 8px;--canvas-overlay-top: calc( var(--canvas-header-top) + var(--canvas-header-h) + var(--canvas-header-gap) + var(--fc-notify-banner-h, 0px) );--canvas-overlay-bottom: var(--canvas-chrome-gutter);--canvas-overlay-h: calc(100% - var(--canvas-overlay-top) - var(--canvas-overlay-bottom));--canvas-dock-bottom: 20px;font-family:var(--font-family-body)}:root[data-theme=dark]{color-scheme:dark;--color-bg-base: #121015;--color-surface: rgba(48, 44, 54, .78);--color-surface-strong: rgba(40, 37, 46, .96);--color-border-card: rgba(255, 255, 255, .11);--color-border-hover: rgba(var(--color-brand-rgb), .38);--color-text-main: #f4f1f6;--color-text-muted: rgba(244, 241, 246, .58);--color-brand-start: #ff7a93;--color-brand-end: #ffb86b;--color-brand-rgb: 255, 122, 147;--color-brand-end-rgb: 255, 184, 107;--color-primary-blue: #7aa0ff;--color-success: #34d399;--color-danger: #fb7185;--shadow-sm: 0 2px 10px rgba(0, 0, 0, .38);--shadow-md: 0 10px 28px rgba(0, 0, 0, .48);--shadow-lg: 0 18px 42px rgba(0, 0, 0, .58), 0 4px 14px rgba(0, 0, 0, .36);--shadow-glow: 0 0 22px rgba(var(--color-brand-rgb), .34);--color-hover: rgba(255, 255, 255, .08);--color-active-soft: rgba(var(--color-brand-rgb), .18);--color-danger-rgb: 251, 113, 133;--color-success-rgb: 52, 211, 153;--image-editor-overlay: rgba(0, 0, 0, .72);--image-editor-panel: var(--color-surface-strong);--image-editor-panel-soft: color-mix(in srgb, var(--color-bg-base) 88%, var(--color-text-main));--image-editor-body: var(--color-bg-base);--image-editor-stage: var(--color-bg-base);--image-editor-stage-grid: rgba(255, 255, 255, .055);--image-editor-line: var(--color-border-card);--image-editor-line-strong: color-mix(in srgb, var(--color-text-main) 18%, transparent);--image-editor-shadow: var(--shadow-lg)}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}body{overflow:hidden;background:var(--color-bg-base);color:var(--color-text-main);-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#1c1b171f;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#1c1b173d}:root[data-theme=dark] ::-webkit-scrollbar-thumb{background:#ffffff24}:root[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#ffffff42}button,input,select,textarea{font:inherit}button{cursor:pointer;outline:none}.app-shell{position:relative;width:100vw;height:100vh;background:var(--color-bg-base)}.canvas-stage{position:absolute;inset:0;overflow:hidden;background:radial-gradient(circle at 1px 1px,rgba(28,27,23,.05) 1.5px,transparent 0) 0 0 / 24px 24px,var(--color-bg-base)}:root[data-theme=dark] .canvas-stage{background:radial-gradient(circle at 1px 1px,rgba(255,255,255,.1) 1.5px,transparent 0) 0 0 / 24px 24px,radial-gradient(ellipse 80% 60% at 50% 40%,rgba(var(--color-brand-rgb),.04),transparent 70%),var(--color-bg-base)}.ws-gen-add-btn{border:1px solid var(--color-border-card);border-radius:10px;background:var(--color-hover);color:var(--color-text-main);height:32px;width:32px;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;outline:none;padding:0;flex-shrink:0}.ws-gen-add-btn:hover{background:color-mix(in srgb,var(--color-text-main) 10%,transparent);border-color:var(--color-border-hover)}.ws-gen-add-btn:active{transform:scale(.95)}.ws-gen-add-btn.active{border-color:rgba(var(--color-brand-rgb),.28);background:var(--color-active-soft)}.lo-drawer-close,.ws-tldraw-left-tools button,.ws-tldraw-zoom-controls button{border:0;background:transparent;color:inherit}.lo-floating-drawer{position:absolute;top:var(--canvas-overlay-top);left:var(--canvas-chrome-gutter);z-index:1200;width:320px;height:var(--canvas-overlay-h);transform:translate(calc(-320px - var(--canvas-chrome-gutter) - 16px));transition:transform .4s cubic-bezier(.16,1,.3,1),opacity .3s ease;display:flex;flex-direction:column;background:var(--color-surface-strong);border:1px solid var(--color-border-card);border-radius:20px;box-shadow:var(--shadow-lg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);opacity:0}.lo-floating-drawer.open{transform:translate(0);opacity:1}.lo-drawer-overlay{position:absolute;inset:0;z-index:1100;background:#1c1b1714;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.lo-drawer-header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 16px 12px}.lo-drawer-header:after{content:"";position:absolute;left:16px;right:16px;bottom:0;height:1px;background:var(--color-border-card)}.lo-drawer-header h3{margin:0;font-family:var(--font-family-title);font-size:14px;font-weight:700;letter-spacing:.2px;color:var(--color-text-main)}.lo-drawer-close{width:26px;height:26px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;flex:none;color:var(--color-text-muted);background:var(--color-hover);cursor:pointer;transition:all .2s ease}.lo-drawer-close:hover{background:var(--color-active-soft);color:var(--color-brand-start)}.lo-drawer-content{flex:1;overflow:auto;padding:12px 16px 16px}.lo-drawer-content>.panel-section:last-child{margin-bottom:0}.lo-drawer-content>.panel-section>.list-row:last-child,.lo-drawer-content>.panel-section>.project-row:last-child{margin-bottom:0}.panel-section{margin-bottom:28px}.panel-section h4{margin-bottom:16px;color:var(--color-text-main);font-family:var(--font-family-title);font-size:14.5px;font-weight:700;letter-spacing:.2px;opacity:.95;position:relative;padding-left:12px}.panel-section h4:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:16px;background:linear-gradient(180deg,var(--color-brand-start) 0%,var(--color-brand-end) 100%);border-radius:2px}.list-row{position:relative;overflow:hidden;width:100%;min-height:40px;display:flex;align-items:center;gap:10px;padding:8px 14px;margin-bottom:8px;border:1px solid transparent;border-radius:10px;background:color-mix(in srgb,var(--color-hover) 60%,transparent);color:var(--color-text-main);text-align:left;font-size:13px;font-weight:500;transition:all .2s cubic-bezier(.16,1,.3,1)}.list-row:before{content:"";position:absolute;left:0;top:15%;height:70%;width:3px;background:var(--color-brand-start);border-radius:0 4px 4px 0;opacity:0;transform:scaleY(.4);transition:all .25s cubic-bezier(.16,1,.3,1)}.list-row:hover{background:var(--color-hover);border-color:var(--color-border-card);color:var(--color-brand-start)}.list-row:hover:before{opacity:1;transform:scaleY(1)}.list-row.active{border-color:rgba(var(--color-brand-rgb),.25);background:var(--color-active-soft);color:var(--color-brand-start);font-weight:600}.list-row.active:before{opacity:1;transform:scaleY(1.1);width:4px}.panel-body{display:flex;flex-direction:column;gap:14px;padding:20px}.panel-body label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:var(--color-text-muted)}.panel-body input{width:100%;padding:10px 12px;border:1px solid var(--color-border-card);border-radius:8px;background:var(--color-surface-strong);color:var(--color-text-main);transition:border-color .2s,box-shadow .2s;outline:none}.panel-body input:focus{border-color:var(--color-brand-start);box-shadow:0 0 0 3px rgba(var(--color-brand-rgb),.12)}.primary-action{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 16px;border:0;border-radius:999px;background:var(--color-brand-gradient);color:#fff;font-weight:600;font-size:13px;box-shadow:0 4px 12px rgba(var(--color-brand-rgb),.2);transition:all .2s}.primary-action:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(var(--color-brand-rgb),.3)}.primary-action:active{transform:translateY(0)}.warmsun-modal-overlay{position:fixed;inset:0;z-index:1400;display:flex;align-items:center;justify-content:center;background:#1c1b171f;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);pointer-events:auto}@keyframes modal-scale-up{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.warmsun-modal-card{width:min(75vw,calc(100vw - 32px));height:75vh;max-width:none;max-height:none;overflow:hidden;border:1px solid var(--color-border-card);border-radius:20px;background:var(--color-surface-strong);box-shadow:var(--shadow-lg);animation:modal-scale-up .3s cubic-bezier(.16,1,.3,1) forwards;filter:none;-webkit-backdrop-filter:none;backdrop-filter:none}.settings-search{position:relative}.settings-search svg{position:absolute;left:12px;top:50%;color:var(--color-text-muted);transform:translateY(-50%);pointer-events:none}.settings-search input{padding-left:34px}.settings-model-list{display:flex;flex-direction:column;gap:10px;max-height:320px;overflow:auto;padding-right:4px}.settings-model-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;padding:12px;border:1px solid var(--color-border-card);border-radius:8px;background:var(--color-surface)}.settings-model-row.enabled{border-color:rgba(var(--color-brand-rgb),.28);background:rgba(var(--color-brand-rgb),.06)}.settings-model-row.stale{opacity:.68}.settings-model-enabled{flex-direction:row!important;align-items:center;align-self:start;gap:8px!important;min-height:28px;color:var(--color-text-main)!important}.settings-model-enabled input{width:auto;padding:0;margin:0;box-shadow:none}.settings-model-main{min-width:0}.settings-model-title{display:flex;align-items:center;gap:8px;min-width:0;font-size:13px;font-weight:700;color:var(--color-text-main)}.settings-model-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-model-title em{flex:0 0 auto;font-size:11px;font-style:normal;color:var(--color-danger)}.settings-model-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px;font-size:11px;color:var(--color-text-muted)}.settings-model-meta span{overflow-wrap:anywhere}.settings-model-capabilities{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.settings-model-capability-badge{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border:1px solid rgba(var(--color-brand-rgb),.18);border-radius:999px;background:rgba(var(--color-brand-rgb),.08);color:var(--color-brand-start);font-size:11px;font-weight:600}.settings-empty{padding:18px 12px;border:1px dashed var(--color-border-card);border-radius:8px;color:var(--color-text-muted);text-align:center;font-size:12px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border-card)}.modal-header h3{margin:0;font-family:var(--font-family-title);font-size:16px;font-weight:700}.modal-close-btn{width:28px;height:28px;border:0;border-radius:50%;background:#1c1b170a;display:inline-flex;align-items:center;justify-content:center;font-size:18px;color:var(--color-text-muted);transition:all .2s}.modal-close-btn:hover{background:#1c1b1714;color:var(--color-danger)}.reference-delete-overlay{position:fixed;inset:0;z-index:2000;background:#12111661;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);animation:reference-delete-fade .2s ease-out}.reference-delete-dialog{position:fixed;z-index:2001;top:50%;left:50%;width:min(420px,calc(100vw - 32px));overflow:hidden;transform:translate(-50%,-50%);border:1px solid color-mix(in srgb,var(--color-text-main) 10%,transparent);border-radius:22px;background:var(--color-surface-strong);box-shadow:0 24px 70px #13101942,0 4px 18px #1310191a;animation:reference-delete-pop .28s cubic-bezier(.16,1,.3,1)}.reference-delete-content{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;padding:24px 24px 18px}.reference-delete-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid rgba(var(--color-danger-rgb),.2);border-radius:13px;background:rgba(var(--color-danger-rgb),.1);color:var(--color-danger)}.reference-delete-copy{min-width:0;padding-top:1px}.reference-delete-copy h3{margin:0;color:var(--color-text-main);font-family:var(--font-family-title);font-size:17px;font-weight:750;letter-spacing:-.01em}.reference-delete-copy p{margin:6px 0 0;color:var(--color-text-muted);font-size:13px;line-height:1.55}.reference-delete-preview{grid-column:1 / -1;display:flex;align-items:center;gap:11px;min-width:0;margin-top:3px;padding:9px 10px;border:1px solid color-mix(in srgb,var(--color-text-main) 8%,transparent);border-radius:13px;background:color-mix(in srgb,var(--color-text-main) 3.5%,transparent)}.reference-delete-preview img{width:42px;height:42px;flex:0 0 auto;border-radius:9px;-o-object-fit:cover;object-fit:cover;background:color-mix(in srgb,var(--color-text-main) 7%,transparent)}.reference-delete-preview span{min-width:0;overflow:hidden;color:var(--color-text-main);font-size:12px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.reference-delete-actions{display:flex;justify-content:flex-end;gap:9px;padding:15px 24px 20px;border-top:1px solid color-mix(in srgb,var(--color-text-main) 8%,transparent)}.reference-delete-cancel,.reference-delete-confirm{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;border-radius:11px;padding:0 15px;font-family:inherit;font-size:12px;font-weight:650;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease}.reference-delete-cancel{border:1px solid color-mix(in srgb,var(--color-text-main) 12%,transparent);background:color-mix(in srgb,var(--color-text-main) 3%,transparent);color:var(--color-text-muted)}.reference-delete-cancel:hover{border-color:color-mix(in srgb,var(--color-text-main) 20%,transparent);background:color-mix(in srgb,var(--color-text-main) 7%,transparent);color:var(--color-text-main)}.reference-delete-confirm{border:1px solid color-mix(in srgb,var(--color-danger) 70%,#000 0%);background:var(--color-danger);color:#fff;box-shadow:0 5px 14px rgba(var(--color-danger-rgb),.22)}.reference-delete-confirm:hover{transform:translateY(-1px);filter:saturate(1.08) brightness(1.04);box-shadow:0 8px 20px rgba(var(--color-danger-rgb),.3)}.reference-delete-cancel:focus-visible,.reference-delete-confirm:focus-visible{outline:3px solid rgba(var(--color-brand-rgb),.28);outline-offset:2px}@keyframes reference-delete-fade{0%{opacity:0}to{opacity:1}}@keyframes reference-delete-pop{0%{opacity:0;transform:translate(-50%,calc(-50% + 8px)) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ws-tldraw-shell{position:absolute;inset:0;overflow:hidden;background:transparent;z-index:0}.ws-tldraw-wrapper{position:absolute;inset:0;z-index:10}.ws-tldraw-shell .tl-container,.ws-tldraw-shell .tl-canvas,.ws-tldraw-shell .tl-background,.ws-tldraw-shell .tl-layers{background:transparent!important;background-color:transparent!important}.ws-tldraw-shell .tl-grid{opacity:0}.ws-tldraw-left-tools{position:absolute;z-index:1200;left:50%;bottom:var(--canvas-dock-bottom);transform:translate(-50%);display:flex;flex-direction:row;align-items:center;gap:8px;height:44px;padding:0 10px;border:1px solid var(--color-border-card);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-md);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);pointer-events:auto;transition:all .3s cubic-bezier(.16,1,.3,1)}.ws-tldraw-left-tools.drawer-open-hide{opacity:0;pointer-events:none;transform:translate(-50%) translateY(60px)}.ws-tldraw-zoom-controls.drawer-open-hide{opacity:0;pointer-events:none;transform:translate(-60px)}.ws-tldraw-left-tools:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-lg)}.ws-tldraw-left-tools button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);color:var(--color-text-main);transition:all .2s ease}.ws-tldraw-left-tools button:hover{background:var(--color-hover);color:var(--color-brand-start);transform:scale(1.08)}.ws-tldraw-left-tools button.primary{background:var(--color-brand-gradient)!important;color:#fff!important;box-shadow:0 4px 10px rgba(var(--color-brand-rgb),.2)}.ws-tldraw-left-tools button.primary:hover{transform:scale(1.08) translateY(-1px);box-shadow:0 6px 14px rgba(var(--color-brand-rgb),.3)}.ws-add-menu,.ws-upload-submenu{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:4px;min-width:104px;padding:6px;border:1px solid var(--color-border-card);border-radius:var(--radius-md);background:var(--color-surface-strong);box-shadow:var(--shadow-lg);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%)}.ws-add-menu{left:10px;transform:none}.ws-add-menu button,.ws-upload-submenu button{width:100%;height:30px;justify-content:flex-start;gap:8px;padding:0 8px;border-radius:var(--radius-sm);white-space:nowrap}.ws-add-menu button span,.ws-upload-submenu button span{font-size:12px}.ws-add-menu-upload-flyout{position:relative}.ws-add-menu-upload-flyout:after{content:"";position:absolute;left:100%;bottom:0;width:10px;height:100%}.ws-upload-submenu{top:auto;bottom:0;left:calc(100% + 8px);transform:none;display:none}.ws-add-menu-upload-flyout:hover .ws-upload-submenu,.ws-add-menu-upload-flyout:focus-within .ws-upload-submenu{display:flex}.ws-tool-divider{width:1px;height:20px;background:var(--color-border-card)}.ws-tool-divider.vertical{width:1px;height:16px;background:var(--color-border-card)}.fc-toolbar-pill{position:fixed;top:calc(14px + var(--fc-notify-banner-h, 0px));right:16px;z-index:4000;display:inline-flex;align-items:center;gap:2px;height:38px;padding:2px;border:1px solid var(--color-border-card);border-radius:var(--radius-pill);background:var(--color-surface-strong);box-shadow:var(--shadow-md);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%)}.fc-toolbar-pill>*+*{position:relative}.fc-toolbar-pill>*+*:before{content:"";position:absolute;left:-1px;top:50%;transform:translateY(-50%);width:1px;height:18px;background:var(--color-border-card);pointer-events:none}.fc-toolbar-task-slot{display:inline-flex;align-items:center;gap:2px}.fc-toolbar-task-slot:empty{display:none}.fc-toolbar-task-slot>*+*{position:relative}.fc-toolbar-task-slot>*+*:before{content:"";position:absolute;left:-1px;top:50%;transform:translateY(-50%);width:1px;height:18px;background:var(--color-border-card);pointer-events:none}.ws-task-fab-wrap{position:relative;display:inline-flex;align-items:center}button.ws-task-fab{position:relative;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:none;border-radius:var(--radius-pill);background:transparent;color:var(--color-text-main);cursor:pointer;transition:background .15s ease,color .15s ease}button.ws-task-fab:hover{background:var(--color-hover);color:var(--color-brand-start)}button.ws-task-fab.active{background:var(--color-active-soft);color:var(--color-brand-start)}.ws-task-fab-wrap>[data-tooltip]:after{top:100%;right:0;transform:translateY(6px)}.ws-task-fab-wrap>[data-tooltip]:hover:after{opacity:1;transform:translateY(10px)}.ws-task-fab-wrap.panel-open>[data-tooltip]:after,.ws-task-fab-wrap.panel-open>[data-tooltip]:hover:after{content:none;opacity:0;pointer-events:none}.ws-task-fab-badge{position:absolute;top:-5px;right:-5px;min-width:17px;height:17px;padding:0 5px;border-radius:999px;background:var(--color-brand-gradient);color:#fff;font-size:10px;font-weight:700;line-height:17px;text-align:center;letter-spacing:-.02em;box-shadow:0 2px 6px rgba(var(--color-brand-rgb),.35);border:1.5px solid var(--color-surface-strong)}.ws-task-panel{position:fixed;top:var(--popover-top);right:var(--popover-right);left:auto;z-index:var(--popover-z-menu);display:flex;flex-direction:column;width:min(348px,calc(100vw - 32px));max-height:min(520px,calc(100vh - 72px));border:1px solid var(--color-border-card);border-radius:var(--popover-radius);background:var(--color-surface-strong);box-shadow:var(--popover-shadow);backdrop-filter:var(--popover-blur);-webkit-backdrop-filter:var(--popover-blur);overflow:hidden;transform-origin:top right;animation:ws-popover-in var(--popover-anim-duration) var(--popover-anim-ease)}@keyframes ws-popover-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes ws-task-panel-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.ws-task-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:14px 12px 12px 14px;background:linear-gradient(180deg,rgba(var(--color-brand-rgb),.04) 0%,transparent 100%);border-bottom:1px solid var(--color-border-card)}.ws-task-panel-heading{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1}.ws-task-panel-title{font-family:var(--font-family-title);font-size:13.5px;font-weight:650;letter-spacing:-.01em;color:var(--color-text-main);line-height:1.2}.ws-task-stats{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.ws-task-stat{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 8px;border-radius:999px;font-size:11.5px;font-weight:650;font-variant-numeric:tabular-nums;color:var(--color-text-muted);background:color-mix(in srgb,var(--color-text-main) 4%,transparent);border:1px solid transparent;cursor:default;transition:background .15s ease,border-color .15s ease,color .15s ease}.ws-task-stat:hover{border-color:color-mix(in srgb,var(--color-text-main) 6%,transparent);background:color-mix(in srgb,var(--color-text-main) 6%,transparent)}.ws-task-stat.running{color:var(--color-brand-start);background:rgba(var(--color-brand-rgb),.08);border-color:rgba(var(--color-brand-rgb),.12)}.ws-task-stat.succeeded{color:var(--color-success);background:rgba(var(--color-success-rgb),.1);border-color:rgba(var(--color-success-rgb),.14)}.ws-task-stat.failed{color:var(--color-danger);background:rgba(var(--color-danger-rgb),.08);border-color:rgba(var(--color-danger-rgb),.12)}.ws-task-stat.total{color:var(--color-text-main);background:color-mix(in srgb,var(--color-text-main) 4.5%,transparent)}.ws-task-stat-num{line-height:1;min-width:.75em}.ws-task-stats [data-tooltip]:after,.ws-task-panel [data-tooltip]:after{top:100%;left:50%;transform:translate(-50%) translateY(6px)}.ws-task-stats [data-tooltip]:hover:after,.ws-task-panel [data-tooltip]:hover:after{opacity:1;transform:translate(-50%) translateY(10px)}.ws-task-panel button.ws-task-panel-close{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:28px;height:28px;margin-top:-2px;border:0;border-radius:9px;background:transparent;color:var(--color-text-muted);transition:background .15s ease,color .15s ease}.ws-task-panel button.ws-task-panel-close:hover{background:color-mix(in srgb,var(--color-text-main) 6%,transparent);color:var(--color-text-main)}.ws-task-panel-body{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:8px;display:flex;flex-direction:column;gap:5px;scrollbar-gutter:stable}.ws-task-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:40px 16px 36px;text-align:center;font-size:13px;font-weight:550;color:var(--color-text-main)}.ws-task-empty>svg{color:var(--color-text-muted);opacity:.55;margin-bottom:4px}.ws-task-empty-hint{font-size:11.5px;font-weight:450;color:var(--color-text-muted)}.ws-task-item{position:relative;display:flex;align-items:flex-start;gap:10px;padding:10px 10px 10px 12px;border-radius:12px;border:1px solid transparent;background:color-mix(in srgb,var(--color-text-main) 2%,transparent);cursor:pointer;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .15s ease}.ws-task-item:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:0 3px 3px 0;background:transparent;transition:background .15s ease}.ws-task-item:hover{background:color-mix(in srgb,var(--color-text-main) 4%,transparent);border-color:var(--color-hover)}.ws-task-item:focus-visible{outline:2px solid rgba(var(--color-brand-rgb),.35);outline-offset:1px}.ws-task-item.running,.ws-task-item.queued{background:rgba(var(--color-brand-rgb),.04)}.ws-task-item.running:before,.ws-task-item.queued:before{background:var(--color-brand-start)}.ws-task-item.running:hover,.ws-task-item.queued:hover{background:rgba(var(--color-brand-rgb),.07);border-color:rgba(var(--color-brand-rgb),.12)}.ws-task-item.succeeded:before{background:var(--color-success);opacity:.55}.ws-task-item.failed{background:rgba(var(--color-danger-rgb),.035)}.ws-task-item.failed:before{background:var(--color-danger)}.ws-task-item.failed:hover{background:rgba(var(--color-danger-rgb),.06);border-color:rgba(var(--color-danger-rgb),.12)}.ws-task-item.canceled{opacity:.78}.ws-task-status{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:28px;height:28px;margin-top:0;border-radius:9px;background:var(--color-hover);color:var(--color-text-muted)}.ws-task-status.running,.ws-task-status.queued{color:var(--color-brand-start);background:rgba(var(--color-brand-rgb),.12)}.ws-task-status.succeeded{color:var(--color-success);background:rgba(var(--color-success-rgb),.12)}.ws-task-status.failed{color:var(--color-danger);background:rgba(var(--color-danger-rgb),.12)}.ws-task-status.canceled{color:var(--color-text-muted);background:var(--color-hover)}.ws-task-spin{animation:ws-task-spin .9s linear infinite}@keyframes ws-task-spin{to{transform:rotate(360deg)}}.ws-task-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px;padding-top:1px}.ws-task-info-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.ws-task-name{font-size:13px;font-weight:600;letter-spacing:-.01em;color:var(--color-text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.25}.ws-task-time{flex-shrink:0;font-size:11px;font-weight:500;font-variant-numeric:tabular-nums;color:var(--color-text-muted);letter-spacing:.01em}.ws-task-info-sub{display:flex;align-items:center;flex-wrap:wrap;gap:5px;font-size:11px;color:var(--color-text-muted);line-height:1.3}.ws-task-info-sub .ws-task-kind{padding:2px 7px;border-radius:6px;font-weight:550;color:var(--color-text-main);background:color-mix(in srgb,var(--color-text-main) 6%,transparent)}.ws-task-status-label{padding:2px 7px;border-radius:6px;font-weight:550;background:color-mix(in srgb,var(--color-text-main) 4%,transparent)}.ws-task-status-label.running,.ws-task-status-label.queued{color:var(--color-brand-start);background:rgba(var(--color-brand-rgb),.08)}.ws-task-status-label.succeeded{color:var(--color-success);background:rgba(var(--color-success-rgb),.1)}.ws-task-status-label.failed{color:var(--color-danger);background:rgba(var(--color-danger-rgb),.08)}.ws-task-status-label.canceled{color:var(--color-text-muted)}.ws-task-model{max-width:100%;padding:2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.88;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10.5px;letter-spacing:-.02em}.ws-task-error{margin-top:1px;padding:5px 8px;border-radius:7px;font-size:11px;font-weight:500;line-height:1.35;color:#be123c;background:rgba(var(--color-danger-rgb),.08);border:1px solid rgba(var(--color-danger-rgb),.1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-task-actions{display:flex;align-items:center;gap:3px;flex-shrink:0;margin-top:1px;opacity:.55;transition:opacity .15s ease}.ws-task-item:hover .ws-task-actions,.ws-task-item:focus-within .ws-task-actions{opacity:1}.ws-task-panel .ws-task-actions button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:0;border-radius:8px;background:var(--color-surface);color:var(--color-text-muted);box-shadow:inset 0 0 0 1px var(--color-border-card);transition:background .15s ease,color .15s ease,box-shadow .15s ease}.ws-task-panel .ws-task-actions button:hover{background:var(--color-surface-strong);color:var(--color-text-main);box-shadow:inset 0 0 0 1px #1c1b171a}.ws-task-item.failed .ws-task-actions button:hover{color:var(--color-brand-start);box-shadow:inset 0 0 0 1px rgba(var(--color-brand-rgb),.22);background:rgba(var(--color-brand-rgb),.08)}.ws-tldraw-zoom-controls{position:absolute;z-index:1200;left:var(--canvas-chrome-gutter);bottom:var(--canvas-dock-bottom);display:flex;align-items:center;gap:6px;height:44px;padding:0 10px;border:1px solid var(--color-border-card);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-md);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(16px);pointer-events:auto;transition:all .3s cubic-bezier(.16,1,.3,1)}.ws-tldraw-zoom-controls:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-lg)}.ws-tldraw-zoom-controls button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);color:var(--color-text-main);transition:all .2s}.ws-tldraw-zoom-controls button:hover:not(:disabled){background:var(--color-hover);color:var(--color-brand-start);transform:scale(1.08)}.ws-tldraw-zoom-controls button:disabled{color:var(--color-text-muted);opacity:.5;cursor:default}.ws-zoom-value{min-width:44px;font-size:11px;font-weight:700;text-align:center;color:var(--color-text-muted)}.ws-chat-dock{position:absolute;top:60px;right:16px;z-index:1350;display:flex;flex-direction:column;width:min(400px,calc(100vw - 32px));height:calc(100% - 76px);transform:translate3d(calc(100% + 24px),0,0);opacity:0;pointer-events:none;border:1px solid var(--color-border-card);border-radius:var(--radius-lg);background:var(--color-surface-strong);box-shadow:var(--shadow-lg);backdrop-filter:none;-webkit-backdrop-filter:none;contain:layout style paint;isolation:isolate;will-change:transform,opacity}.ws-chat-dock.open{pointer-events:auto;animation:ws-chat-dock-enter .28s cubic-bezier(.22,1,.36,1) both}@keyframes ws-chat-dock-enter{0%{transform:translate3d(calc(100% + 24px),0,0);opacity:0}to{transform:translateZ(0);opacity:1}}.ws-chat-dock .chat-panel{flex:1;min-height:0;display:flex;flex-direction:column;gap:0;padding:0}.chat-panel-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 16px 12px;border-bottom:1px solid var(--color-border-card);flex-shrink:0}.chat-panel-title-block{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.chat-panel-title{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--color-text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-panel-title-icon{flex-shrink:0;color:var(--color-brand-start)}.chat-panel-subtitle{font-size:11px;font-weight:500;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-panel-header-actions{display:flex;gap:2px;flex-shrink:0}.chat-icon-btn{width:28px;height:28px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;color:var(--color-text-muted);transition:all .2s ease;cursor:pointer;padding:0}.chat-icon-btn:hover{background:color-mix(in srgb,var(--color-text-main) 6%,transparent);color:var(--color-brand-start);transform:scale(1.08)}.chat-history{display:flex;flex-direction:column;gap:8px;flex:1;min-height:0;overflow:hidden;padding:12px 14px 16px}.chat-history-list{display:flex;flex-direction:column;gap:6px;overflow-y:auto;flex:1;min-height:0;padding-right:2px}.chat-history-item{position:relative;display:grid;grid-template-columns:1fr auto;gap:4px 8px;border:1px solid transparent;border-radius:10px;background:color-mix(in srgb,var(--color-text-main) 3%,transparent);color:var(--color-text-main);padding:8px 34px 8px 10px;text-align:left}.chat-history-item.active{border-color:rgba(var(--color-brand-rgb),.22);background:rgba(var(--color-brand-rgb),.08)}.chat-history-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700}.chat-history-meta{grid-column:1 / -1;color:var(--color-text-muted);font-size:10px}.chat-history-delete{position:absolute;right:8px;top:50%;width:22px;height:22px;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;border-radius:7px;color:var(--color-text-muted)}.chat-history-delete:hover{background:rgba(var(--color-danger-rgb),.12);color:var(--color-danger)}.chat-history-empty{color:var(--color-text-muted);font-size:12px;padding:8px 2px}.ws-chat-dock .chat-log,.chat-panel-full .chat-log{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:14px;padding:14px 16px 8px;scroll-behavior:smooth}.chat-empty-state{align-self:center;margin:auto 0;max-width:260px;display:flex;flex-direction:column;align-items:center;gap:8px;padding:28px 12px;text-align:center;color:var(--color-text-muted)}.chat-empty-icon{width:44px;height:44px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(var(--color-brand-rgb),.14),rgba(var(--color-brand-rgb),.04));color:var(--color-brand-start);margin-bottom:4px}.chat-empty-state strong{font-size:14px;font-weight:700;color:var(--color-text-main)}.chat-empty-state p{margin:0;font-size:12px;line-height:1.55}.empty-line{align-self:center;margin-top:40px;font-size:12px;color:var(--color-text-muted);text-align:center}.chat-message{position:relative;max-width:min(92%,520px);padding:10px 14px 12px;border-radius:16px;font-size:13px;line-height:1.6;box-shadow:var(--shadow-sm);word-wrap:break-word;margin-bottom:18px}.chat-message:last-child{margin-bottom:8px}.chat-message-content{white-space:normal;word-wrap:break-word;overflow-wrap:anywhere;-moz-user-select:text;user-select:text;-webkit-user-select:text;cursor:text}.chat-message-content .chat-md{min-width:0}.chat-typing{display:inline-flex;align-items:center;gap:5px;min-height:18px;padding:2px 0}.chat-typing span{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.35;animation:chat-typing-bounce 1.1s infinite ease-in-out}.chat-typing span:nth-child(2){animation-delay:.15s}.chat-typing span:nth-child(3){animation-delay:.3s}@keyframes chat-typing-bounce{0%,80%,to{transform:translateY(0);opacity:.3}40%{transform:translateY(-3px);opacity:.85}}.chat-message-content *{-moz-user-select:text;user-select:text;-webkit-user-select:text}.chat-message-content h1,.chat-message-content h2,.chat-message-content h3,.chat-message-content h4,.chat-message-content h5,.chat-message-content h6{margin:16px 0 8px;font-weight:600;line-height:1.3}.chat-message-content h1{font-size:20px}.chat-message-content h2{font-size:18px}.chat-message-content h3{font-size:16px}.chat-message-content h4{font-size:14px}.chat-message-content h5{font-size:13px}.chat-message-content h6{font-size:12px}.chat-message-content h1:first-child,.chat-message-content h2:first-child,.chat-message-content h3:first-child,.chat-message-content h4:first-child,.chat-message-content h5:first-child,.chat-message-content h6:first-child{margin-top:0}.chat-message-content p{margin:8px 0}.chat-message-content p:first-child{margin-top:0}.chat-message-content p:last-child{margin-bottom:0}.chat-message-content br{content:"";display:block;margin-top:.15em}.chat-md>*:first-child{margin-top:0!important}.chat-md>*:last-child{margin-bottom:0!important}.chat-message-content li>p{margin:0}.chat-message-content pre{white-space:pre;word-break:normal;overflow-wrap:normal}.chat-message-content ul,.chat-message-content ol{margin:8px 0;padding-left:24px}.chat-message-content li,.chat-message-content ul ul,.chat-message-content ol ul,.chat-message-content ul ol,.chat-message-content ol ol{margin:4px 0}.chat-message-content strong{font-weight:700}.chat-message-content em{font-style:italic}.chat-message-content code{padding:2px 5px;border-radius:3px;background:color-mix(in srgb,var(--color-text-main) 8%,transparent);font-family:Consolas,Monaco,Courier New,monospace;font-size:12px}.chat-message.user .chat-message-content code{background:#fff3}.chat-message-content pre{margin:12px 0;padding:12px;border-radius:6px;background:#0000000f;overflow-x:auto}.chat-message.user .chat-message-content pre{background:#ffffff26}.chat-message-content pre code{padding:0;background:transparent;font-size:12px;line-height:1.5}.chat-message-content blockquote{margin:12px 0;padding:8px 12px;border-left:3px solid rgba(0,0,0,.2);background:#00000008;font-style:italic}.chat-message.user .chat-message-content blockquote{border-left-color:#fff6;background:#ffffff1a}.chat-message-content a{color:var(--color-brand-start, #ff5c7a);text-decoration:underline}.chat-message-content a:hover{opacity:.8}.chat-message-content hr{margin:16px 0;border:none;border-top:1px solid rgba(0,0,0,.1)}.chat-message-content table{margin:12px 0;border-collapse:collapse;width:100%;font-size:12px}.chat-message-content th,.chat-message-content td{padding:6px 10px;border:1px solid rgba(0,0,0,.15);text-align:left}.chat-message-content th{background:#0000000d;font-weight:600}.chat-message-content img{max-width:100%;border-radius:6px;margin:8px 0}.chat-message-actions{position:absolute;right:0;bottom:0;transform:translateY(calc(100% + 4px));display:flex;justify-content:flex-end;gap:4px;opacity:0;transition:opacity .15s ease;-moz-user-select:none;user-select:none;-webkit-user-select:none;z-index:2}.chat-message:hover .chat-message-actions,.chat-message:focus-within .chat-message-actions{opacity:1}.chat-message-actions button{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:0;border-radius:6px;background:color-mix(in srgb,var(--color-text-main) 6%,transparent);color:currentColor;cursor:pointer;transition:all .15s ease}.chat-message-actions button:hover:not(:disabled){background:color-mix(in srgb,var(--color-text-main) 12%,transparent)}.chat-message.user .chat-message-actions button{background:#fff3}.chat-message.user .chat-message-actions button:hover:not(:disabled){background:#ffffff4d}.chat-message.assistant .chat-message-actions{left:0;right:auto}.chat-message-actions button:disabled{cursor:not-allowed;opacity:.45}.chat-message.user{align-self:flex-end;background:var(--color-brand-gradient);color:#fff;border-bottom-right-radius:2px;font-weight:500}.chat-message.assistant{align-self:flex-start;background:color-mix(in srgb,var(--color-text-main) 3%,transparent);color:var(--color-text-main);border-bottom-left-radius:2px;border:1px solid var(--color-border-card)}.chat-input-wrapper{display:flex;flex-direction:column;background:color-mix(in srgb,var(--color-text-main) 3%,transparent);border:1px solid var(--color-border-card);border-radius:16px;padding:10px 12px;margin:0 12px 12px;transition:all .2s ease;position:relative;z-index:10;flex-shrink:0}.chat-input-wrapper:focus-within{background:var(--color-surface-strong);border-color:var(--color-brand-start);box-shadow:0 0 0 3px rgba(var(--color-brand-rgb),.12)}.chat-input-wrapper textarea{width:100%;min-height:54px;max-height:120px;border:0!important;background:transparent!important;padding:4px 0!important;resize:none;font-size:13px;line-height:1.45;color:var(--color-text-main);outline:none!important}.chat-input-actions{display:flex;align-items:center;margin-top:4px;gap:8px}.chat-model-selector-container{position:relative;width:108px;flex:0 0 108px;min-width:0}.chat-preset-selector-container{position:relative;width:116px;flex:0 0 116px;min-width:0}.chat-model-trigger{width:100%;height:28px;border:1px solid var(--color-border-card);border-radius:8px;background:#1c1b1708;color:var(--color-text-muted);padding:0 6px 0 8px;font-size:11px;display:flex;align-items:center;justify-content:space-between;gap:4px;cursor:pointer;outline:none;transition:all .2s ease;min-width:0}.chat-model-trigger:hover{background:#1c1b170f;border-color:#1c1b171f;color:var(--color-text-main)}.chat-model-trigger.has-model{color:var(--color-text-main)}.chat-model-trigger-text{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-model-trigger-arrow{flex-shrink:0;transition:transform .2s ease;opacity:.7}.chat-model-trigger-arrow.open{transform:rotate(180deg)}.chat-model-dropdown{position:absolute;bottom:calc(100% + 6px);left:0;z-index:1500;width:180px;border:1px solid var(--color-border-card);border-radius:12px;background:var(--color-surface-strong);box-shadow:var(--shadow-lg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;flex-direction:column;overflow:hidden;animation:chat-model-slide-up .2s cubic-bezier(.16,1,.3,1) forwards}.chat-preset-dropdown{width:200px}@keyframes chat-model-slide-up{0%{opacity:0;transform:translateY(4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-model-dropdown-header{padding:8px 12px 6px;font-size:10px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid rgba(0,0,0,.03)}.chat-model-dropdown-list{display:flex;flex-direction:column;max-height:180px;overflow-y:auto;padding:4px}.chat-model-dropdown-list::-webkit-scrollbar{width:4px}.chat-model-dropdown-list::-webkit-scrollbar-track{background:transparent}.chat-model-dropdown-list::-webkit-scrollbar-thumb{background:#1c1b171f;border-radius:99px}.chat-model-dropdown-list::-webkit-scrollbar-thumb:hover{background:#1c1b173d}.chat-model-dropdown-item{width:100%;border:0;background:transparent;padding:6px 10px;font-size:11px;color:var(--color-text-main);text-align:left;border-radius:6px;transition:all .15s ease;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-model-dropdown-item:hover{background:#1c1b170d;color:var(--color-brand-start)}.chat-model-dropdown-item.active{background:rgba(var(--color-brand-rgb),.08);color:var(--color-brand-start);font-weight:600}.chat-input-actions>button,.chat-send-btn{height:28px;padding:0 12px;font-size:12px;font-weight:600;border:0;border-radius:99px;background:var(--color-brand-gradient);color:#fff;box-shadow:0 4px 10px rgba(var(--color-brand-rgb),.2);transition:all .2s;margin-left:auto;display:inline-flex;align-items:center;justify-content:center;gap:5px;flex-shrink:0}.chat-input-actions>button:hover,.chat-send-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 14px rgba(var(--color-brand-rgb),.3)}.chat-input-actions>button:disabled,.chat-send-btn:disabled{opacity:.35;cursor:default;transform:none;box-shadow:none}.chat-send-spin{animation:chat-send-spin .9s linear infinite}@keyframes chat-send-spin{to{transform:rotate(360deg)}}.chat-model-trigger.is-warning{border-color:rgba(var(--color-danger-rgb),.35);color:var(--color-danger)}.chat-input-hint{margin-top:6px;font-size:11px;color:var(--color-danger);line-height:1.4}.ws-chat-fab{position:absolute;right:16px;bottom:16px;z-index:1360;width:48px;height:48px;border:0;border-radius:50%;background:var(--color-brand-gradient);color:#fff;box-shadow:0 8px 24px rgba(var(--color-brand-rgb),.25);display:inline-flex;align-items:center;justify-content:center;transform:translateZ(0);transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .2s ease;will-change:transform}.ws-chat-fab.shifted{transform:translate3d(calc(-1*min(416px,calc(100vw - 88px))),0,0)}.ws-chat-fab:hover{transform:translateZ(0) scale(1.08) rotate(5deg);box-shadow:0 12px 28px rgba(var(--color-brand-rgb),.35)}.ws-chat-fab.shifted:hover{transform:translate3d(calc(-1*min(416px,calc(100vw - 88px))),0,0) scale(1.08) rotate(5deg)}.ws-chat-fab:active{transform:translateZ(0) scale(.95)}.ws-chat-fab.shifted:active{transform:translate3d(calc(-1*min(416px,calc(100vw - 88px))),0,0) scale(.95)}.tl-watermark_SEE-LICENSE,[data-testid=tl-watermark-unlicensed]{display:none!important}.ws-ai-object{position:relative;color:var(--color-text-main);-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:all .32s cubic-bezier(.22,1,.36,1);border-radius:20px;pointer-events:auto}@keyframes border-pulse{0%{box-shadow:0 0 rgba(var(--color-brand-rgb),.45),var(--shadow-md)}50%{box-shadow:0 0 0 5px rgba(var(--color-brand-rgb),.18),0 0 18px rgba(var(--color-brand-rgb),.32),var(--shadow-md)}to{box-shadow:0 0 rgba(var(--color-brand-rgb),0),var(--shadow-md)}}.ws-ai-object.running{animation:border-pulse 1.8s infinite ease-in-out}.ws-ai-object-label{position:absolute;left:0;top:-30px;z-index:2;display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:3px 10px 3px 8px;border-radius:999px;background:var(--color-surface-strong);box-shadow:0 2px 8px #1c1b1714,inset 0 0 0 1px var(--color-border-card);color:var(--color-text-main);font-family:var(--font-family-title);font-size:11px;font-weight:600;line-height:18px;white-space:nowrap;overflow:visible;text-overflow:ellipsis;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background .2s ease,box-shadow .2s ease,color .2s ease,transform .2s ease}.chat-model-provider-group{display:flex;flex-direction:column;gap:2px}.chat-model-provider-name{padding:6px 8px 2px;color:var(--color-text-muted);font-size:10px;font-weight:700;line-height:1.2}.ws-ai-object-title{display:inline-block;max-width:calc(100vw - 48px);overflow:hidden;text-overflow:ellipsis}.ws-ai-object-label .ws-label-editable{cursor:pointer;padding:2px 6px;margin:-2px -6px;border-radius:4px;transition:background-color .15s ease;pointer-events:auto;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ws-ai-object-label .ws-label-editable:hover{background-color:var(--color-hover)}.ws-ai-object-label .ws-label-input{flex:1;min-width:60px;max-width:180px;padding:2px 6px;margin:-2px -6px;background:var(--color-surface-strong);border:1px solid var(--color-brand-start);border-radius:4px;color:var(--color-text-main);font-family:var(--font-family-title);font-size:11px;font-weight:700;line-height:16px;outline:none;box-shadow:0 0 0 2px rgba(var(--color-brand-rgb),.1);pointer-events:auto;-webkit-user-select:text;-moz-user-select:text;user-select:text}.ws-ai-object .ws-ai-shape{width:100%;height:100%;overflow:hidden}.ws-ai-object.media-object .ws-ai-shape{border:1px solid var(--color-border-card);border-radius:18px;background:var(--color-surface-strong);box-shadow:var(--shadow-sm);transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}.ws-ai-object.media-object:hover .ws-ai-shape{border-color:var(--color-border-hover);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.ws-ai-object.text-object .ws-ai-shape{border:1px solid var(--color-border-card);border-radius:18px;background:var(--color-surface-strong);box-shadow:var(--shadow-sm);transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}.ws-ai-object.text-object:hover .ws-ai-shape{border-color:var(--color-border-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.ws-ai-object .ws-ai-shape img,.ws-ai-object .ws-ai-shape video{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.ws-ai-video-frame{position:relative;width:100%;height:100%}.ws-ai-video-frame video{width:100%;height:100%}.ws-ai-object.media-object[data-node-type=videoGeneration] .ws-ai-shape video{-o-object-fit:contain;object-fit:contain;background:var(--color-bg-base)}.ws-ai-media-toggle{position:absolute;right:8px;bottom:8px;z-index:4;display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.45);border-radius:999px;background:#1c1d229e;pointer-events:auto;color:#fff;box-shadow:0 6px 16px #1c1d222e}.ws-ai-media-toggle:hover{background:#1c1d22c7}.ws-ai-audio-object{width:100%;height:100%;background:transparent;pointer-events:auto;overflow:hidden}.ws-custom-audio-player{width:100%;height:100%;padding:16px;background:var(--color-surface);border-radius:inherit;display:flex;flex-direction:column;justify-content:space-between;box-sizing:border-box;pointer-events:auto}.ws-audio-header{display:flex;align-items:center;justify-content:space-between;width:100%}.ws-audio-info{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.ws-audio-icon{color:var(--color-brand-start);flex-shrink:0}.ws-audio-title{font-size:13px;font-weight:600;color:var(--color-text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-audio-controls{display:flex;align-items:center;gap:12px;width:100%}.ws-audio-play-btn{width:26px;height:26px;border-radius:50%;background:var(--color-brand-gradient);color:#fff;border:0;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 10px rgba(var(--color-brand-rgb),.25);transition:all .2s cubic-bezier(.16,1,.3,1);flex-shrink:0}.ws-audio-play-btn:hover{transform:scale(1.1);box-shadow:0 6px 14px rgba(var(--color-brand-rgb),.35)}.ws-audio-play-btn:active{transform:scale(.95)}.ws-audio-slider-container{flex:1;display:flex;align-items:center}.ws-audio-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;border-radius:2px;outline:none;cursor:pointer}.ws-audio-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:10px;height:10px;border-radius:50%;background:var(--color-brand-start);box-shadow:0 0 4px rgba(var(--color-brand-rgb),.5);-webkit-transition:transform .15s ease;transition:transform .15s ease}.ws-audio-slider::-webkit-slider-thumb:hover{transform:scale(1.3)}.ws-audio-time{font-size:11px;color:var(--color-text-muted);font-family:monospace;white-space:nowrap;flex-shrink:0}.ws-audio-visualizer{display:flex;align-items:flex-end;gap:3px;height:16px;width:28px;flex-shrink:0}.ws-wave-bar{width:3px;background:var(--color-brand-start);border-radius:1px;height:3px;transition:height .25s ease}.ws-audio-visualizer.playing .bar-1{animation:ws-bar-bounce .8s infinite ease-in-out alternate}.ws-audio-visualizer.playing .bar-2{animation:ws-bar-bounce .5s infinite ease-in-out alternate .15s}.ws-audio-visualizer.playing .bar-3{animation:ws-bar-bounce .7s infinite ease-in-out alternate .05s}.ws-audio-visualizer.playing .bar-4{animation:ws-bar-bounce .6s infinite ease-in-out alternate .2s}.ws-audio-visualizer.playing .bar-5{animation:ws-bar-bounce .9s infinite ease-in-out alternate .1s}@keyframes ws-bar-bounce{0%{height:3px;background:var(--color-brand-start)}to{height:14px;background:var(--color-brand-end)}}.ws-edge-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.ws-edge-overlay-display{z-index:1}.ws-edge-overlay-interactive{z-index:2}.ws-edge-path-bg{fill:none!important;stroke-width:2.5;stroke-linecap:round;opacity:.24;vector-effect:non-scaling-stroke;transition:opacity .3s ease,stroke-width .3s ease;pointer-events:none}.ws-edge-path-fg{fill:none!important;stroke-width:2.2;stroke-linecap:round;vector-effect:non-scaling-stroke;pointer-events:none}.ws-edge-path-hotspot{fill:none!important;stroke:transparent;stroke-width:16;cursor:pointer;pointer-events:stroke}.ws-edge-group.selected .ws-edge-path-fg{stroke:url(#ws-edge-selected-flow-grad);stroke-width:3.2}.ws-edge-group.selected .ws-edge-path-bg{stroke:var(--color-primary-blue);stroke-width:3.2;opacity:.75}.ws-edge-overlay .ws-edge-preview{stroke:rgba(var(--color-brand-rgb),.82);stroke-dasharray:6 6;stroke-width:2;fill:none!important}@keyframes ws-edge-flow-anim{0%{stroke-dashoffset:200}to{stroke-dashoffset:0}}.ws-edge-path-fg{stroke-dasharray:24 176;animation:ws-edge-flow-anim 8s infinite linear;opacity:.74}.ws-edge-group.selected .ws-edge-path-fg{opacity:.95}.ws-canvas-moving .ws-edge-group .ws-edge-path-fg{animation:none}.ws-edge-overlay .ws-edge-preview{stroke-dasharray:7 11;animation:ws-edge-preview-anim 1.2s infinite linear;vector-effect:non-scaling-stroke}.ws-canvas-moving .ws-edge-overlay .ws-edge-preview{animation:none}@keyframes ws-edge-preview-anim{to{stroke-dashoffset:-18}}@media(prefers-reduced-motion:reduce){.ws-edge-group .ws-edge-path-fg,.ws-edge-overlay .ws-edge-preview{animation:none}}.ws-ai-port{position:absolute;top:50%;z-index:3;width:30px;height:30px;margin-top:-15px;display:none;align-items:center;justify-content:center;border:1px solid var(--color-border-card);border-radius:999px;background:var(--color-surface-strong);color:var(--color-text-muted);box-shadow:var(--shadow-sm);pointer-events:auto}.ws-ai-port.left{left:-44px}.ws-ai-port.right{right:-44px}.ws-ai-port:before{content:"";position:absolute;top:0;bottom:0;width:14px}.ws-ai-port.left:before{right:-14px}.ws-ai-port.right:before{left:-14px}.ws-ai-object.selected .ws-ai-port,.ws-ai-object:hover .ws-ai-port{display:inline-flex}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.ws-ai-media-placeholder-shimmer{display:flex;width:100%;height:100%;align-items:center;justify-content:center;background:linear-gradient(90deg,color-mix(in srgb,var(--color-text-main) 5%,var(--color-surface-strong)) 25%,color-mix(in srgb,var(--color-text-main) 12%,var(--color-surface-strong)),color-mix(in srgb,var(--color-text-main) 5%,var(--color-surface-strong)) 75%);background-size:200% 100%;animation:shimmer 1.6s infinite linear;color:var(--color-text-muted)}.ws-ai-media-placeholder{display:flex;flex-direction:column;width:100%;height:100%;align-items:center;justify-content:center;color:color-mix(in srgb,var(--color-text-muted) 55%,transparent);background:radial-gradient(ellipse 70% 55% at 50% 42%,rgba(var(--color-brand-rgb),.06),transparent 72%),var(--color-surface-strong)}.ws-director-cover{position:relative;width:100%;height:100%;overflow:hidden;color:#fffffff5;background:linear-gradient(115deg,transparent 0 44%,rgba(255,255,255,.07) 44% 48%,transparent 48% 100%),radial-gradient(circle at 78% 18%,rgba(var(--color-brand-end-rgb),.42),transparent 34%),linear-gradient(145deg,#302630,#171318 56%,#2b1c22)}.ws-director-cover:before{position:absolute;inset:0;z-index:1;opacity:.28;background-image:repeating-linear-gradient(-38deg,transparent 0 18px,rgba(255,255,255,.08) 18px 19px);content:"";pointer-events:none}.ws-director-cover>img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .32s cubic-bezier(.16,1,.3,1)}.ws-ai-object:hover .ws-director-cover.has-cover>img{transform:scale(1.035)}.ws-director-cover-scrim{position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,#0d0a0e1a 20%,#0d0a0ebd),linear-gradient(90deg,rgba(var(--color-brand-rgb),.15),transparent 46%);pointer-events:none}.ws-director-cover:not(.has-cover) .ws-director-cover-scrim{background:radial-gradient(circle at 50% 42%,rgba(var(--color-brand-rgb),.2),transparent 54%)}.ws-director-cover-content{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;pointer-events:none;text-shadow:0 2px 12px rgba(0,0,0,.46)}.ws-director-cover-content span{color:#ffffffc7;font-size:12px;font-weight:600;letter-spacing:.01em}.ws-director-cover.has-cover .ws-director-cover-content{inset:auto 12px 11px;flex-direction:row;justify-content:flex-start;gap:7px}.ws-ai-object .ws-ai-shape-prompt,.ws-ai-object .ws-ai-shape-text,.ws-ai-object .ws-ai-shape-textarea{height:100%;overflow:hidden;padding:16px;color:var(--color-text-main);font-size:13px;line-height:1.55}.ws-ai-object .ws-ai-shape-textarea{display:block;width:100%;border:0;background:transparent;resize:none;outline:none;pointer-events:auto;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}.ws-ai-object .ws-ai-shape-text{overflow-y:auto;overflow-x:hidden;pointer-events:auto;overscroll-behavior:contain}.ws-ai-object .ws-ai-shape-text::-webkit-scrollbar{width:6px}.ws-ai-object .ws-ai-shape-text::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--color-text-main) 18%,transparent);border-radius:999px}.ws-canvas-markdown{display:flex;flex-direction:column;gap:8px;min-width:0;white-space:normal;overflow-wrap:anywhere}.ws-canvas-markdown h3,.ws-canvas-markdown h4,.ws-canvas-markdown h5,.ws-canvas-markdown p,.ws-canvas-markdown blockquote,.ws-canvas-markdown pre,.ws-canvas-markdown ul,.ws-canvas-markdown ol{margin:0}.ws-canvas-markdown h3{font-size:15px;line-height:1.35}.ws-canvas-markdown h3,.ws-canvas-markdown h4,.ws-canvas-markdown h5,.ws-canvas-markdown p,.ws-canvas-markdown blockquote,.ws-canvas-list-block{position:relative}.ws-canvas-markdown h4{font-size:14px;line-height:1.35}.ws-canvas-markdown h5{font-size:13px;line-height:1.35}.ws-canvas-markdown ul,.ws-canvas-markdown ol{padding-left:18px}.ws-canvas-markdown li+li{margin-top:3px}.ws-canvas-markdown blockquote{padding:6px 8px;border-left:3px solid rgba(var(--color-brand-rgb),.35);border-radius:6px;background:rgba(var(--color-brand-rgb),.06);color:var(--color-text-muted)}.ws-canvas-markdown pre{position:relative;max-width:100%;overflow-x:auto;padding:22px 10px 10px;border-radius:8px;background:var(--color-hover);font-size:12px;line-height:1.45}.ws-canvas-markdown pre code,.ws-canvas-markdown p code,.ws-canvas-markdown li code,.ws-canvas-thinking code{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace}.ws-canvas-markdown p code,.ws-canvas-markdown li code,.ws-canvas-thinking code{padding:1px 4px;border-radius:4px;background:var(--color-hover);font-size:12px}.ws-canvas-code-lang{position:absolute;top:6px;right:8px;color:var(--color-text-muted);font-size:10px}.ws-canvas-markdown a{color:var(--color-brand-start);text-decoration:none}.ws-copy-all-btn,.ws-copy-mini-btn{border:0;border-radius:6px;background:var(--color-hover);color:var(--color-text-muted);cursor:pointer;font-size:11px;line-height:1}.ws-copy-all-btn{align-self:flex-end;padding:5px 8px}.ws-copy-mini-btn{display:inline-flex;align-items:center;height:20px;margin-left:6px;padding:0 6px;vertical-align:middle}.ws-canvas-markdown pre>.ws-copy-mini-btn{position:absolute;top:5px;left:8px}.ws-copy-all-btn:hover,.ws-copy-mini-btn:hover{background:var(--color-active-soft);color:var(--color-brand-start)}.ws-canvas-thinking{padding:8px 10px;border:1px solid rgba(var(--color-brand-rgb),.16);border-radius:8px;background:rgba(var(--color-brand-rgb),.05);color:var(--color-text-muted)}.ws-canvas-thinking summary{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;color:var(--color-text-main);font-size:12px;font-weight:700}.ws-canvas-thinking>div{margin-top:6px;white-space:pre-wrap}.ws-ai-object.text-object.editing .ws-ai-shape{border-color:rgba(var(--color-brand-rgb),.32);box-shadow:0 0 0 3px rgba(var(--color-brand-rgb),.1),var(--shadow-md)}.ws-ai-object .ws-ai-shape-textarea::-moz-placeholder{color:var(--color-text-muted)}.ws-ai-object .ws-ai-shape-textarea::placeholder{color:var(--color-text-muted)}.ws-ai-object .ws-ai-shape-prompt span{color:var(--color-text-muted)}.ws-titlebar{position:absolute;top:var(--fc-notify-banner-h, 0px);left:0;width:100%;z-index:2000;display:flex;align-items:center;gap:8px;padding:var(--canvas-header-top) var(--canvas-chrome-gutter);background:transparent;pointer-events:none}.ws-titlebar-spacer{flex:1}.ws-back-btn-wrapper{position:relative;pointer-events:auto}.ws-back-btn{display:flex;align-items:center;justify-content:center;gap:2px;width:auto;min-width:var(--canvas-header-h);height:var(--canvas-header-h);padding:0 8px;border:1px solid var(--color-border-card);background:var(--color-surface);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;transition:all .2s ease}.ws-back-btn:hover{border-color:var(--color-border-hover);background:var(--color-surface-strong);color:var(--color-brand-start)}.ws-status-beacon{display:inline-block;width:6px;height:6px;border-radius:50%;margin-left:auto;transition:all .25s cubic-bezier(.16,1,.3,1)}.ws-ai-object-label .ws-status-beacon{overflow:visible;pointer-events:auto;position:relative;z-index:20;flex:0 0 auto}.ws-status-beacon.idle{background:#1c1d222e}@keyframes beacon-pulse-brand{0%{box-shadow:0 0 rgba(var(--color-brand-rgb),.5);background:rgba(var(--color-brand-rgb),.8)}70%{box-shadow:0 0 0 6px rgba(var(--color-brand-rgb),0);background:rgba(var(--color-brand-end-rgb),1)}to{box-shadow:0 0 rgba(var(--color-brand-rgb),0);background:rgba(var(--color-brand-rgb),.8)}}.ws-status-beacon.running,.ws-status-beacon.queued{animation:beacon-pulse-brand 1.4s infinite ease-in-out}.ws-status-beacon.succeeded{background:var(--color-success);box-shadow:0 0 6px var(--color-success)}@keyframes beacon-pulse-red{0%{box-shadow:0 0 rgba(var(--color-danger-rgb),.6);background:rgba(var(--color-danger-rgb),.8)}50%{box-shadow:0 0 0 5px rgba(var(--color-danger-rgb),0);background:rgba(var(--color-danger-rgb),1)}to{box-shadow:0 0 rgba(var(--color-danger-rgb),0);background:rgba(var(--color-danger-rgb),.8)}}.ws-status-beacon.failed{animation:beacon-pulse-red .8s infinite ease-in-out}.ws-status-beacon.failed[data-tooltip]:before{content:"";position:absolute;inset:-8px;border-radius:50%}.ws-status-beacon.failed[data-tooltip]:after{bottom:calc(100% + 8px);left:50%;width:-moz-max-content;width:max-content;max-width:280px;white-space:normal;overflow-wrap:anywhere;text-align:left;transform:translate(-50%) translateY(4px);pointer-events:none}.ws-status-beacon.failed[data-tooltip]:hover:after{opacity:1;transform:translate(-50%) translateY(0)}.ws-generation-elapsed{flex:0 0 auto;padding:1px 5px;border-radius:999px;background:#1c1d2214;color:#1c1b179e;font-size:10px;font-weight:700;line-height:14px;font-variant-numeric:tabular-nums}.ws-ai-object.text-object[data-node-type=prompt] .ws-ai-shape{border-left:4px solid var(--color-brand-start);background:#fffdf9;background-image:radial-gradient(rgba(var(--color-brand-rgb),.03) 1px,transparent 0);background-size:8px 8px}.ws-ai-object.text-object[data-node-type=prompt] .ws-ai-shape-prompt{font-style:italic;color:#1c1b17d1}.ws-ai-object.text-object[data-node-type=textGeneration] .ws-ai-shape{position:relative;background:#fafafc}.ws-ai-object.text-object[data-node-type=textGeneration] .ws-ai-shape:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--color-primary-blue);z-index:2}.ws-ai-object.text-object[data-node-type=textGeneration] .ws-ai-shape-text{font-family:var(--font-family-body);line-height:1.6;letter-spacing:.01em;padding:16px}.ws-ai-object.media-object .ws-ai-shape img,.ws-ai-object.media-object .ws-ai-shape video{transition:transform .4s cubic-bezier(.16,1,.3,1)}.ws-ai-object.media-object:hover .ws-ai-shape img,.ws-ai-object.media-object:hover .ws-ai-shape video{transform:scale(1.025)}.ws-generation-bar{position:absolute;z-index:1250;background:var(--color-surface-strong);border:1px solid var(--color-border-card);border-radius:16px;box-shadow:0 12px 36px #1c1d2214,var(--shadow-lg);padding:12px;display:flex;flex-direction:column;gap:10px;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);min-height:auto;transition:border-color .3s,box-shadow .3s}.ws-generation-bar:before{content:"";position:absolute;left:var(--ws-generation-caret-left, 50%);top:-8px;width:14px;height:14px;transform:translate(-50%) rotate(45deg);border-left:1px solid var(--color-border-card);border-top:1px solid var(--color-border-card);border-top-left-radius:3px;background:var(--color-surface-strong);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.ws-generation-bar.placed-top:before{top:auto;bottom:-8px;border-left:0;border-top:0;border-right:1px solid var(--color-border-card);border-bottom:1px solid var(--color-border-card);border-top-left-radius:0;border-bottom-right-radius:3px}.ws-generation-bar:hover{border-color:var(--color-border-hover)}.ws-generation-bar textarea.ws-generation-prompt{width:100%;min-height:88px;max-height:200px;border:0;outline:none;background:transparent;color:var(--color-text-main);font-size:13px;line-height:1.6;padding:10px 6px;font-family:inherit;resize:vertical;overflow-y:auto;transition:min-height .2s}.ws-generation-bar textarea.ws-generation-prompt:focus{min-height:100px}.ws-generation-bar textarea.ws-generation-prompt::-moz-placeholder{color:#1c1d2257}.ws-generation-bar textarea.ws-generation-prompt::placeholder{color:#1c1d2257}.ws-generation-bar textarea.ws-generation-prompt::-webkit-resizer{background-image:linear-gradient(135deg,transparent 50%,rgba(28,29,34,.1) 50%);background-size:8px 8px;background-repeat:no-repeat;background-position:bottom right}.ws-generation-references{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding-bottom:6px;border-bottom:1px solid rgba(28,29,34,.06)}.ws-generation-reference{width:40px;height:40px;position:relative;background:transparent;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted)}.ws-ref-media-container{width:100%;height:100%;border-radius:8px;border:1px solid var(--color-border-card);overflow:hidden;background:var(--color-surface-strong);position:relative;display:flex;align-items:center;justify-content:center}.ws-generation-reference img,.ws-generation-reference video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.ws-ref-media-container.previewable{cursor:zoom-in}.ws-ref-media-container.previewable:hover{border-color:var(--color-border-hover)}.ws-ref-delete-btn{position:absolute;top:-5px;right:-5px;width:13px;height:13px;border-radius:50%;background:var(--color-brand-start, #ff5c7a);border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;opacity:0;transform:scale(.8);transition:all .2s cubic-bezier(.16,1,.3,1);padding:0;box-shadow:0 1px 4px #0003}.ws-ref-delete-btn:hover{background:var(--color-danger);transform:scale(1.1)!important}.ws-generation-reference:hover .ws-ref-delete-btn{opacity:1;transform:scale(1)}.ws-ref-video-badge{position:absolute;bottom:2px;right:2px;background:#0009;color:#fff;border-radius:2px;padding:1px;display:flex;align-items:center;justify-content:center}.ws-ref-index{position:absolute;top:2px;left:2px;background:#000000bf;color:#fff;font-size:10px;font-weight:600;border-radius:3px;padding:1px 4px;line-height:1.2;z-index:5;pointer-events:none}.ws-ref-type-badge{position:absolute;top:2px;left:20px;font-size:10px;font-weight:600;border-radius:3px;padding:1px 4px;line-height:1.2;z-index:5;pointer-events:none;color:#fff}.ws-ref-type-badge.type-image{background:rgba(var(--color-media-image-rgb),.9)}.ws-ref-type-badge.type-video{background:rgba(var(--color-media-video-rgb),.9)}.ws-ref-type-badge.type-audio{background:rgba(var(--color-media-audio-rgb),.9)}.ws-ref-type-badge.type-text{background:#5f6368e6}.ws-gen-prompt-count{position:absolute;top:10px;right:34px;z-index:6;font-size:11px;font-variant-numeric:tabular-nums;line-height:22px;color:var(--color-text-muted);opacity:.7;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.ws-gen-prompt-count.modal{position:static;top:auto;right:auto;line-height:1;opacity:.8;margin-right:2px}.ws-gen-expand-btn{position:absolute;top:8px;right:8px;z-index:6;width:22px;height:22px;border:1px solid var(--color-border-card);border-radius:7px;background:var(--color-surface);color:var(--color-text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none;transition:color .2s,border-color .2s,background .2s}.ws-gen-expand-btn:hover{color:var(--color-text-main);border-color:var(--color-border-hover);background:var(--color-surface-strong)}.ws-ref-group-dot{width:7px;height:7px;border-radius:50%;flex:none}.ws-ref-group-dot.type-image{background:rgba(var(--color-media-image-rgb),.9)}.ws-ref-group-dot.type-video{background:rgba(var(--color-media-video-rgb),.9)}.ws-ref-group-dot.type-audio{background:rgba(var(--color-media-audio-rgb),.9)}.ws-ref-group-count{min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#1c1d220f;color:var(--color-text-muted);font-size:10px;font-weight:600;display:inline-flex;align-items:center;justify-content:center}.ws-gen-modal-overlay{position:fixed;inset:0;z-index:4000;background:#14151a6b;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:24px}.ws-gen-modal{width:min(760px,100%);max-height:min(94vh,860px);min-height:min(520px,72vh);display:flex;flex-direction:column;background:var(--color-surface-strong);border:1px solid var(--color-border-card);border-radius:16px;box-shadow:var(--shadow-lg);overflow:hidden}.ws-gen-modal-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid rgba(28,29,34,.06);flex-shrink:0}.ws-gen-modal-title{font-size:14px;font-weight:600;color:var(--color-text-main)}.ws-gen-modal-actions{margin-left:auto;display:flex;align-items:center;gap:6px}.ws-gen-modal-action,.ws-gen-modal-close{width:26px;height:26px;border:none;border-radius:8px;background:transparent;color:var(--color-text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,color .2s;flex-shrink:0}.ws-gen-modal-action:hover,.ws-gen-modal-close:hover{background:#1c1d220f;color:var(--color-text-main)}.ws-gen-preset-selector{position:relative}.ws-gen-preset-dropdown{left:auto;right:0;width:240px}.ws-gen-preset-item{display:flex!important;flex-direction:column;gap:3px;white-space:normal}.ws-gen-preset-item span,.ws-gen-preset-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-gen-preset-item small{color:var(--color-text-muted);font-size:11px;font-weight:400}.ws-gen-dropdown-empty{padding:10px;color:var(--color-text-muted);font-size:12px}.ws-gen-modal-body{padding:16px 18px 18px;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:14px;flex:1;min-height:0}.ws-ref-grid{display:flex;flex-direction:column;gap:14px;flex-shrink:0;max-height:180px;overflow-y:auto}.ws-ref-grid-row{display:flex;gap:18px;flex-shrink:0}.ws-ref-grid-row.two .ws-ref-grid-cell{flex:1;min-width:0}.ws-ref-grid-cell{display:flex;flex-direction:column;gap:8px;flex-shrink:0}.ws-ref-grid-head{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--color-text-main);flex-shrink:0}.ws-ref-grid-slots{display:flex;flex-wrap:wrap;gap:8px;flex-shrink:0}.ws-ref-grid-slots .ws-generation-reference{width:48px;height:48px;flex-shrink:0}.ws-ref-slot{width:48px;height:48px;border:1px dashed var(--color-border-hover);border-radius:8px;background:#1c1d2204;color:#1c1d2247;display:flex;align-items:center;justify-content:center;position:relative;cursor:pointer;flex:none;transition:color .2s,border-color .2s,background .2s}.ws-ref-slot:hover{background:#1c1d220a}.ws-ref-slot.type-image:hover{border-color:rgba(var(--color-media-image-rgb),.7);color:rgba(var(--color-media-image-rgb),.9)}.ws-ref-slot.type-video:hover{border-color:rgba(var(--color-media-video-rgb),.7);color:rgba(var(--color-media-video-rgb),.9)}.ws-ref-slot.type-audio:hover{border-color:rgba(var(--color-media-audio-rgb),.7);color:rgba(var(--color-media-audio-rgb),.9)}.ws-ref-slot-index{position:absolute;top:2px;left:4px;font-size:9px;font-weight:600;line-height:1;color:#1c1d2252;pointer-events:none}.ws-gen-modal-prompt{width:100%;min-height:200px;max-height:none;border:1px solid var(--color-border-card);border-radius:12px;outline:none;background:var(--color-surface-strong);color:var(--color-text-main);font-size:14px;line-height:1.7;padding:14px 16px;font-family:inherit;resize:none;flex-shrink:0}.ws-gen-modal-prompt:focus{border-color:var(--color-border-hover)}.ws-gen-modal-prompt::-moz-placeholder{color:#1c1d2257}.ws-gen-modal-prompt::placeholder{color:#1c1d2257}.ws-rich-prompt-wrap{position:relative;width:100%;display:flex;flex-direction:column;flex:1;min-height:0}.ws-rich-prompt{width:100%;outline:none;font-family:inherit;white-space:pre-wrap;word-break:break-word;overflow-y:auto;cursor:text;color:var(--color-text-main)}.ws-rich-prompt:empty:before{content:attr(data-placeholder);color:#1c1d2257;pointer-events:none}.ws-rich-prompt.bar{min-height:88px;max-height:200px;font-size:13px;line-height:1.7;padding:10px 6px}.ws-rich-prompt.modal{min-height:200px;max-height:none;flex:1;border:1px solid var(--color-border-card);border-radius:12px;font-size:14px;line-height:1.8;padding:14px 16px}.ws-rich-prompt.modal:focus{border-color:var(--color-border-hover)}.ws-token{display:inline-flex;align-items:center;gap:4px;vertical-align:-.4em;height:1.7em;margin:0 3px;padding:0 7px 0 3px;position:relative;border-radius:6px;border:1px solid var(--color-border-card);background:#1c1d220d;line-height:1;white-space:nowrap}.ws-token.type-image{border-color:rgba(var(--color-media-image-rgb),.55)}.ws-token.type-video{border-color:rgba(var(--color-media-video-rgb),.55)}.ws-token.type-audio{border-color:rgba(var(--color-media-audio-rgb),.55)}.ws-token-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.ws-token-thumb{width:1.3em;height:1.3em;flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-size:.85em;color:var(--color-text-muted);background:#1c1d220f}.ws-token-thumb img,.ws-token-thumb video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.ws-token-label{-webkit-user-select:none;-moz-user-select:none;user-select:none;font-size:.86em;font-weight:600;color:var(--color-text-main)}.ws-token-hover-card{position:fixed;z-index:5000;padding:4px;background:var(--color-surface-strong);border:1px solid var(--color-border-card);border-radius:10px;box-shadow:var(--shadow-lg);pointer-events:none}.ws-token-hover-card img,.ws-token-hover-card video{display:block;max-width:220px;max-height:220px;border-radius:6px}.ws-token-hover-head{position:absolute;top:10px;left:10px;padding:2px 8px;border-radius:6px;background:#14151a9e;color:#fff;font-size:11px;font-weight:600;pointer-events:none}.ws-token-hover-meta{display:flex;align-items:center;gap:8px;padding:10px 14px;color:var(--color-text-main);font-size:12px;max-width:220px}.ws-token-hover-meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-mention-popup{width:-moz-max-content;width:max-content;min-width:160px;max-width:320px;max-height:260px;display:flex;flex-direction:column;background:var(--color-surface-strong);border:1px solid var(--color-border-card);border-radius:14px;box-shadow:var(--shadow-lg);z-index:5000;overflow:hidden}.ws-mention-popup-list{overflow-y:auto;padding:6px;display:flex;flex-direction:column;gap:2px}.ws-mention-item{display:flex;align-items:center;gap:10px;padding:6px 10px 6px 6px;border:none;background:transparent;border-radius:10px;cursor:pointer;text-align:left;width:100%}.ws-mention-item:hover,.ws-mention-item.active{background:#1c1d220f}.ws-mention-thumb{width:40px;height:40px;flex:none;border-radius:10px;overflow:hidden;border:1px solid var(--color-border-card);background:var(--color-surface-strong);display:flex;align-items:center;justify-content:center;color:var(--color-text-muted)}.ws-mention-thumb img,.ws-mention-thumb video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.ws-mention-label{font-size:13px;font-weight:500;color:var(--color-text-main);white-space:nowrap;padding-right:8px}.ws-generation-controls{display:flex;align-items:center;gap:4px;flex-wrap:nowrap;min-height:32px;width:100%}.ws-gen-popover-container{position:relative;display:inline-block}.ws-gen-control-btn{border:1px solid var(--color-border-card);border-radius:10px;background:var(--color-hover);color:var(--color-text-main);height:32px;padding:0 8px;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;white-space:nowrap;flex-shrink:1;min-width:0;transition:all .2s ease;outline:none}.ws-gen-control-btn:hover{background:color-mix(in srgb,var(--color-text-main) 10%,transparent);border-color:var(--color-border-hover)}.ws-gen-control-btn.active{border-color:rgba(var(--color-brand-rgb),.28);background:var(--color-active-soft)}.ws-gen-control-icon{color:var(--color-brand-start);flex-shrink:0}.ws-btn-text{max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;flex-shrink:1;min-width:0}@keyframes dropdown-slide-down{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.ws-gen-dropdown{position:absolute;top:calc(100% + 8px);left:0;z-index:2100;background:var(--color-surface-strong);border:1px solid var(--color-border-card);border-radius:14px;box-shadow:var(--shadow-lg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);padding:10px;animation:dropdown-slide-down .2s cubic-bezier(.16,1,.3,1) forwards;display:flex;flex-direction:column;gap:8px;color:var(--color-text-main)}.ws-gen-dropdown.ws-gen-preset-dropdown{left:auto;right:0;width:240px}.ws-gen-dropdown.add-dropdown{min-width:44px;width:44px;padding:6px;gap:4px;align-items:center;justify-content:center}.ws-gen-icon-item{width:32px;height:32px;border:none;outline:none;background:transparent;border-radius:8px;color:var(--color-text-main);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:all .2s cubic-bezier(.16,1,.3,1)}.ws-gen-icon-item:hover{background:#1c1b170d;color:var(--color-brand-start, #ff5c7a);transform:scale(1.06)}.ws-gen-icon-item:active{transform:scale(.94)}.ws-gen-dropdown-header{font-size:11px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;padding:2px 6px}.model-dropdown{width:220px}.ws-gen-dropdown-list{display:flex;flex-direction:column;max-height:180px;overflow-y:auto;gap:4px;padding-right:4px}.ws-gen-dropdown-list::-webkit-scrollbar{width:4px}.ws-gen-dropdown-list::-webkit-scrollbar-track{background:transparent}.ws-gen-dropdown-list::-webkit-scrollbar-thumb{background:#1c1b1714;border-radius:2px}.ws-gen-dropdown-list::-webkit-scrollbar-thumb:hover{background:#1c1b1726}.ws-gen-dropdown-group{display:flex;flex-direction:column;gap:2px}.ws-gen-dropdown-group+.ws-gen-dropdown-group{margin-top:6px}.ws-gen-dropdown-group-header,.ws-gen-dropdown-group-title{padding:6px 10px 3px;color:var(--color-text-muted);font-size:10px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-gen-dropdown-item{border:0!important;background:transparent;width:100%!important;display:block!important;text-align:left;padding:8px 10px;border-radius:8px;font-size:12px;font-weight:500;color:var(--color-text-main);transition:all .15s ease;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box!important}.ws-gen-dropdown-item:hover{background:#1c1b170d}.ws-gen-dropdown-item.selected{background:rgba(var(--color-brand-rgb),.08);color:var(--color-brand-start);font-weight:600}.resolution-dropdown,.duration-dropdown{width:120px!important}.duration-dropdown .ws-gen-dropdown-item,.resolution-dropdown .ws-gen-dropdown-item{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;padding-left:6px!important;padding-right:6px!important;overflow:visible!important;text-overflow:clip!important;white-space:nowrap!important}.ratio-dropdown{width:204px}.ws-gen-ratio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.ws-gen-ratio-grid-item{border:1px solid var(--color-border-card);background:#1c1b1705;border-radius:8px;padding:8px 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:all .15s ease;outline:none}.ws-gen-ratio-grid-item:hover{background:#1c1b170f;border-color:var(--color-border-hover);transform:translateY(-.5px)}.ws-gen-ratio-grid-item.selected{border-color:rgba(var(--color-brand-rgb),.3);background:rgba(var(--color-brand-rgb),.08);color:var(--color-brand-start);font-weight:700}.ws-ratio-text{font-size:10px}.ws-ratio-preview-box{width:20px;height:20px;border:1px solid currentColor;border-radius:3px;opacity:.65;margin-bottom:5px;display:flex;align-items:center;justify-content:center;pointer-events:none;background:transparent}.ws-ratio-preview-box[data-ratio="1:1"]{width:14px;height:14px}.ws-ratio-preview-box[data-ratio="2:3"]{width:12px;height:18px}.ws-ratio-preview-box[data-ratio="3:2"]{width:18px;height:12px}.ws-ratio-preview-box[data-ratio="3:4"]{width:13px;height:17px}.ws-ratio-preview-box[data-ratio="4:3"]{width:17px;height:13px}.ws-ratio-preview-box[data-ratio="9:16"]{width:10px;height:18px}.ws-ratio-preview-box[data-ratio="16:9"]{width:18px;height:10px}.ws-ratio-preview-box[data-ratio="9:21"]{width:8px;height:18px}.ws-ratio-preview-box[data-ratio="21:9"]{width:18px;height:8px}.ws-gen-btn-cycle{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 10px;border:1px solid var(--color-border-card);border-radius:10px;background:#1c1b1708;color:var(--color-text-main);font-size:12px;font-weight:600;transition:all .18s cubic-bezier(.16,1,.3,1);outline:none}.ws-gen-btn-cycle:hover{background:#1c1b170f;border-color:var(--color-border-hover)}.ws-gen-btn-cycle:active{transform:scale(.95);background:#1c1b1714}.ws-generation-actions{margin-left:auto;display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;flex-shrink:0}.ws-gen-credit{display:inline-flex;align-items:center;gap:5px;height:32px;padding:0 8px;border:1px solid rgba(184,116,26,.18);border-radius:8px;background:#b8741a12;color:var(--color-text-muted);font-size:11px;font-weight:500;white-space:nowrap}.ws-gen-credit svg{color:#b8741a;flex-shrink:0}.ws-gen-credit strong{color:var(--color-text-main);font-size:12px;font-weight:700}.ws-gen-credit.is-insufficient{border-color:rgba(var(--color-danger-rgb),.28);background:rgba(var(--color-danger-rgb),.08);color:var(--color-danger)}.ws-gen-credit.is-insufficient svg,.ws-gen-credit.is-insufficient strong{color:var(--color-danger)}.ws-generation-submit{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 16px;border:0;border-radius:10px;background:var(--color-brand-gradient);color:#fff;font-size:13px;font-weight:700;white-space:nowrap;box-shadow:0 4px 10px rgba(var(--color-brand-rgb),.2);transition:all .2s;outline:none}.ws-generation-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 14px rgba(var(--color-brand-rgb),.35)}.ws-generation-submit:active:not(:disabled){transform:translateY(0)}.ws-generation-submit:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.ws-generation-submit.is-credit-blocked:disabled{background:linear-gradient(135deg,#b8a8a4,#978a87);color:#ffffffeb;opacity:.72}.ws-tldraw-shell{--tl-color-selection-stroke: rgba(28, 29, 34, .72);--tl-color-selection-fill: rgba(28, 29, 34, .04)}.ws-tldraw-zoom-controls button.active{color:var(--color-brand-start)!important;background:rgba(var(--color-brand-rgb),.08)!important}.ws-custom-minimap{position:absolute;left:20px;bottom:72px;z-index:1200;width:200px;height:160px;border:1px solid rgba(28,27,23,.12);border-radius:12px;background:#ffffffd9;box-shadow:0 8px 24px #00000014,0 2px 6px #0000000a,inset 0 0 0 1px #fff6;backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);overflow:hidden;display:flex;flex-direction:column;pointer-events:auto;transition:all .3s cubic-bezier(.16,1,.3,1)}.ws-custom-minimap:hover{border-color:rgba(var(--color-brand-rgb),.25);transform:translateY(-2px);box-shadow:0 12px 32px #0000001a,0 3px 8px #0000000f,inset 0 0 0 1px #ffffff80}.ws-minimap-body{flex:1;width:100%;height:100%;position:relative;overflow:hidden;background:linear-gradient(135deg,#f6f6f3f2,#fafaf8e6)}.ws-custom-minimap .tlui-minimap{width:100%!important;height:100%!important;min-height:100%!important;border:0!important;background:transparent!important;padding:0!important}.ws-custom-minimap .tlui-minimap__canvas{background:transparent!important;border:0!important;border-radius:0;overflow:visible}.ws-custom-minimap .tlui-minimap__viewport-bounds{stroke:var(--color-brand-start)!important;stroke-width:2!important;fill:rgba(var(--color-brand-rgb),.08)!important;rx:3;ry:3;transition:all .2s ease}.ws-custom-minimap .tlui-minimap__shapes{opacity:.85}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;z-index:9999;background:#1c1d22e0;color:#fff;font-size:11px;font-weight:500;padding:6px 10px;border-radius:8px;white-space:nowrap;pointer-events:none;opacity:0;transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 14px #0000001f,inset 0 0 0 1px #ffffff26;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.ws-tldraw-left-tools [data-tooltip]:after{bottom:100%;left:50%;transform:translate(-50%) translateY(-6px)}.ws-tldraw-left-tools [data-tooltip]:hover:after{opacity:1;transform:translate(-50%) translateY(-12px)}.ws-tldraw-zoom-controls [data-tooltip]:after{bottom:100%;left:50%;transform:translate(-50%) translateY(-6px)}.ws-tldraw-zoom-controls [data-tooltip]:hover:after{opacity:1;transform:translate(-50%) translateY(-12px)}.ws-grid-item-badge{position:absolute;right:8px;bottom:8px;background:#1c1d22c7;color:#fff;font-size:10px;font-weight:700;padding:2px 6px;border-radius:4px;z-index:10;box-shadow:0 2px 4px #00000026}.ws-ai-media-toolbar{position:absolute;z-index:1300;display:inline-flex;align-items:center;gap:6px;padding:6px;border:1px solid var(--color-border-card);border-radius:12px;background:var(--color-surface-strong);box-shadow:var(--shadow-md);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);transform:translate(-50%);pointer-events:auto;color:var(--color-text-main)}.ws-ai-media-toolbar button{width:32px;height:32px;border:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:var(--color-hover);color:var(--color-text-main);padding:0}.ws-ai-media-toolbar button:hover{background:var(--color-active-soft);color:var(--color-brand-start)}.ws-ai-media-toolbar .ws-toolbar-divider{width:1px;height:20px;background:var(--color-border-card);margin:0 2px}.image-editor-overlay{position:fixed;inset:0;z-index:2147483000;isolation:isolate;background:#0a0a0cc7;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:16px}.image-editor-container{width:min(1280px,100%);height:min(900px,calc(100dvh - 32px));min-height:0;background:var(--color-surface-strong);border:1px solid color-mix(in srgb,var(--color-text-main) 14%,transparent);border-radius:8px;display:flex;flex-direction:column;box-shadow:0 28px 80px #0000006b,0 3px 12px #0003;overflow:hidden}.image-editor-container--crop{max-width:1220px}.image-editor-container--compose{max-width:1320px}.image-editor-header{flex:0 0 auto;min-height:62px;display:flex;align-items:center;justify-content:space-between;padding:11px 16px 11px 20px;border-bottom:1px solid var(--color-border-card);background:var(--color-surface-strong)}.image-editor-heading{display:flex;align-items:baseline;gap:11px;min-width:0}.image-editor-kicker{color:var(--color-brand-start);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;font-weight:800;line-height:1;letter-spacing:0}.image-editor-header h3{margin:0;font-family:var(--font-family-title);font-size:17px;font-weight:700;line-height:1.25;letter-spacing:0;color:var(--color-text-main)}.image-editor-close{width:34px;height:34px;flex:0 0 34px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--color-text-main);display:flex;align-items:center;justify-content:center}.image-editor-close:hover{background:rgba(var(--color-danger-rgb),.1);border-color:rgba(var(--color-danger-rgb),.18);color:var(--color-danger)}.image-editor-toolbar{flex:0 0 auto;display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-height:52px;padding:8px 16px;border-bottom:1px solid var(--color-border-card);background:var(--color-surface)}.image-editor-tool-label{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;padding-right:2px;color:var(--color-text-muted);font-size:12px;font-weight:700}.image-editor-text-controls{display:inline-flex;align-items:center;flex:1 1 620px;gap:8px;min-width:0}.image-editor-text-input{width:clamp(150px,22vw,300px);height:34px;padding:0 10px;border:1px solid var(--color-border-card);border-radius:5px;outline:none;color:var(--color-text-main);background:var(--color-surface-strong);font-size:13px}.image-editor-text-input:focus{border-color:var(--color-brand-start);box-shadow:0 0 0 2px rgba(var(--color-brand-rgb),.12)}.image-editor-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:6px 12px;border:1px solid var(--color-border-card);border-radius:6px;background:var(--color-surface-strong);color:var(--color-text-main);font-size:13px;font-weight:650;white-space:nowrap}.image-editor-btn:hover:not(:disabled){background:var(--color-hover);border-color:color-mix(in srgb,var(--color-text-main) 18%,transparent)}.image-editor-btn.primary{background:var(--color-brand-start);border-color:var(--color-brand-start);color:#fff}.image-editor-btn.primary:hover:not(:disabled){background:color-mix(in srgb,var(--color-brand-start) 88%,#1d1b22);border-color:color-mix(in srgb,var(--color-brand-start) 88%,#1d1b22)}.image-editor-btn.danger{background:rgba(var(--color-danger-rgb),.1);border-color:transparent;color:var(--color-danger)}.image-editor-btn.danger:hover:not(:disabled){background:rgba(var(--color-danger-rgb),.2)}.image-editor-btn:disabled{opacity:.42;cursor:not-allowed}.image-editor-divider{flex:0 0 auto;width:1px;height:24px;background:var(--color-border-card);margin:0 2px}.image-editor-segments{display:flex;align-items:center;gap:2px;min-width:0;padding:3px;border:1px solid var(--color-border-card);border-radius:6px;background:color-mix(in srgb,var(--color-text-main) 4%,transparent)}.image-editor-segments button{min-width:44px;height:28px;padding:0 9px;border:0;border-radius:4px;background:transparent;color:var(--color-text-muted);font-size:12px;font-weight:700}.image-editor-segments button:hover:not(:disabled){background:var(--color-hover);color:var(--color-text-main)}.image-editor-segments button.active{background:var(--color-surface-strong);color:var(--color-text-main);box-shadow:0 1px 4px #0000001f}.image-editor-segments button:disabled{opacity:.4;cursor:not-allowed}.image-editor-icon-btn{width:34px;height:34px;flex:0 0 34px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--color-border-card);border-radius:6px;background:var(--color-surface-strong);color:var(--color-text-main)}.image-editor-icon-btn:hover:not(:disabled){background:var(--color-hover);border-color:color-mix(in srgb,var(--color-text-main) 18%,transparent)}.image-editor-icon-btn:disabled{opacity:.42;cursor:not-allowed}.image-editor-colors{display:flex;align-items:center;gap:5px;padding:3px 5px;border-left:1px solid var(--color-border-card);border-right:1px solid var(--color-border-card)}.image-editor-color{width:22px;height:22px;flex:0 0 22px;padding:0;border:2px solid color-mix(in srgb,var(--color-text-main) 14%,transparent);border-radius:4px;cursor:pointer}.image-editor-color.active{border-color:var(--color-brand-start);box-shadow:0 0 0 2px var(--color-surface-strong),0 0 0 3px var(--color-brand-start)}.image-editor-font-size{display:flex;align-items:center;gap:4px}.image-editor-font-size button{width:30px;height:30px;border:1px solid var(--color-border-card);border-radius:5px;background:var(--color-surface-strong);color:var(--color-text-main);display:flex;align-items:center;justify-content:center}.image-editor-font-size button:hover{background:var(--color-hover);border-color:color-mix(in srgb,var(--color-text-main) 18%,transparent)}.image-editor-font-size span{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;font-weight:700;color:var(--color-text-main);min-width:48px;text-align:center}.image-editor-info{margin-left:auto;display:inline-flex;align-items:baseline;gap:4px;min-height:30px;padding:6px 9px;border:1px solid var(--color-border-card);border-radius:5px;background:color-mix(in srgb,var(--color-text-main) 3%,transparent);color:var(--color-text-muted);white-space:nowrap}.image-editor-info strong{color:var(--color-text-main);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;font-weight:750}.image-editor-info span{font-size:10px;font-weight:700}.image-editor-canvas-wrapper{flex:1;overflow:auto;padding:36px;display:flex;align-items:center;justify-content:center;position:relative;min-height:0}.image-editor-stage{background-color:#191a1d;background-image:linear-gradient(45deg,rgba(255,255,255,.025) 25%,transparent 25%),linear-gradient(-45deg,rgba(255,255,255,.025) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(255,255,255,.025) 75%),linear-gradient(-45deg,transparent 75%,rgba(255,255,255,.025) 75%);background-position:0 0,0 12px,12px -12px,-12px 0;background-size:24px 24px}.image-compose-media{position:relative;flex:0 0 auto;overflow:hidden;max-width:none;max-height:none;border-radius:2px;outline:1px solid rgba(255,255,255,.16);background:#0f1012;box-shadow:0 16px 38px #00000061,0 2px 8px #00000047;-webkit-user-select:none;-moz-user-select:none;user-select:none}.image-compose-media>img{display:block;width:100%;height:100%;max-width:none;max-height:none;-o-object-fit:fill;object-fit:fill;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.image-editor-canvas{position:absolute;inset:0;display:block;width:100%;height:100%;border:0;touch-action:none}.image-editor-state{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:8px;padding:24px;color:#ffffffa8;font-size:13px;font-weight:600;text-align:center;pointer-events:none}.image-editor-state.is-error{color:#ff9aab}.image-editor-spin{animation:image-editor-spin .9s linear infinite}@keyframes image-editor-spin{to{transform:rotate(360deg)}}.image-crop-media{position:relative;flex:0 0 auto;overflow:hidden;border:0;outline:1px solid rgba(255,255,255,.18);border-radius:2px;background:#0f1012;box-shadow:0 16px 38px #0000006b,0 2px 8px #0000004d;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.image-crop-media>img{display:block;width:100%;height:100%;max-width:none;max-height:none;-o-object-fit:fill;object-fit:fill;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.image-crop-frame{position:absolute;box-sizing:border-box;border:1px solid rgba(255,255,255,.96);outline:1px solid rgba(0,0,0,.32);box-shadow:0 0 0 9999px #050608a3,inset 0 0 0 1px #ffffff29;cursor:grab;touch-action:none}.image-crop-frame.is-moving{cursor:grabbing}.image-crop-grid{position:absolute;display:block;background:#ffffff6b;box-shadow:0 0 0 .5px #0000002e;pointer-events:none}.image-crop-grid.vertical{top:0;bottom:0;width:1px}.image-crop-grid.horizontal{left:0;right:0;height:1px}.image-crop-grid.vertical.one{left:33.333%}.image-crop-grid.vertical.two{left:66.666%}.image-crop-grid.horizontal.one{top:33.333%}.image-crop-grid.horizontal.two{top:66.666%}.image-crop-handle{position:absolute;z-index:2;width:16px;height:16px;padding:0;border:2px solid #ff6b55;border-radius:3px;background:#fff;box-shadow:0 1px 4px #00000080;touch-action:none}.image-crop-handle.tl{top:5px;left:5px;cursor:nwse-resize}.image-crop-handle.tr{top:5px;right:5px;cursor:nesw-resize}.image-crop-handle.bl{bottom:5px;left:5px;cursor:nesw-resize}.image-crop-handle.br{right:5px;bottom:5px;cursor:nwse-resize}.image-editor-footer{flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;gap:8px;min-height:58px;padding:10px 16px;border-top:1px solid var(--color-border-card);background:var(--color-surface-strong)}@media(max-width:760px){.image-editor-overlay{padding:0}.image-editor-container{width:100%;height:100dvh;border-right:0;border-left:0;border-radius:0}.image-editor-header{min-height:54px;padding:8px 10px 8px 14px}.image-editor-heading{gap:8px}.image-editor-header h3{font-size:15px}.image-editor-toolbar{min-height:48px;gap:6px;padding:7px 10px}.image-editor-text-controls{flex:1 0 100%;flex-wrap:wrap}.image-editor-text-controls>.image-editor-divider{display:none}.image-editor-text-input{flex:1 1 180px;width:auto}.image-editor-colors{flex:0 0 auto}.image-editor-segments{order:2;flex:1 1 calc(100% - 54px);overflow-x:auto}.image-editor-segments button{flex:1 0 42px;min-width:42px;padding:0 6px}.image-editor-tool-label{order:1}.image-editor-toolbar>.image-editor-divider{display:none}.image-editor-icon-btn{order:3}.image-editor-info{order:4;margin-left:auto}.image-editor-canvas-wrapper{padding:18px}.image-editor-footer{min-height:54px;padding:8px 10px}}@media(max-width:440px){.image-editor-kicker{display:none}.image-editor-colors{order:3;width:100%;justify-content:space-between;border:0;padding:2px 0}.image-editor-font-size{margin-right:auto}.image-editor-canvas-wrapper{padding:14px}}.image-editor-overlay--pro{padding:12px;background:#08090bd1;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.image-editor-pro{width:min(1480px,100%);max-width:1480px;height:min(960px,calc(100dvh - 24px));color:#f4f4f5;background:#15171a;border:1px solid #34373d;border-radius:8px;box-shadow:0 28px 90px #0000008f;outline:none}.image-editor-pro-header{min-height:58px;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);padding:0 12px 0 14px;border-bottom-color:#303238;background:#17191c}.image-editor-pro-header .image-editor-heading{align-items:center;gap:10px}.image-editor-pro-header .image-editor-heading>div{display:flex;align-items:baseline;gap:9px;min-width:0}.image-editor-pro-header h3{flex:0 0 auto;color:#f7f7f8;font-size:15px;font-weight:720}.image-editor-file-icon{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 32px;border:1px solid #363940;border-radius:6px;background:#22252a;color:#ff725e}.image-editor-file-name{min-width:0;max-width:min(34vw,440px);overflow:hidden;color:#8f939b;font-size:11px;font-weight:560;text-overflow:ellipsis;white-space:nowrap}.image-editor-pro-header .image-editor-close{justify-self:end;color:#b7bac1}.image-editor-pro-header .image-editor-close:hover{border-color:#4a3136;background:#302126;color:#ff8b98}.image-editor-history{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid #30333a;border-radius:6px;background:#121316}.image-editor-history button,.image-editor-zoom button{width:32px;height:30px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:4px;background:transparent;color:#c4c7ce}.image-editor-history button:hover:not(:disabled),.image-editor-zoom button:hover:not(:disabled){background:#2a2d32;color:#fff}.image-editor-history button:disabled{color:#555961;cursor:not-allowed}.image-editor-pro-body{display:flex;flex:1;min-height:0;background:#111316}.image-editor-toolrail{width:56px;flex:0 0 56px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:8px 6px;border-right:1px solid #303238;background:#17191c}.image-editor-toolrail-main,.image-editor-toolrail-bottom{display:flex;flex-direction:column;align-items:center;gap:4px}.image-editor-toolrail button{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid transparent;border-radius:6px;background:transparent;color:#a8abb3}.image-editor-toolrail button:hover:not(:disabled){border-color:#383b42;background:#24272c;color:#f7f7f8}.image-editor-toolrail button.active{border-color:#ff6b5594;background:#ff6b5524;color:#ff806d}.image-editor-toolrail button:disabled{color:#4f5259;cursor:not-allowed}.image-editor-toolrail-divider{width:28px;height:1px;margin:4px 0;background:#303238}.image-editor-main{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.image-editor-properties{min-height:52px;flex:0 0 52px;display:flex;align-items:center;gap:12px;overflow-x:auto;overflow-y:hidden;padding:7px 14px;border-bottom:1px solid #303238;background:#1b1d21;scrollbar-width:none}.image-editor-properties::-webkit-scrollbar{display:none}.image-editor-current-tool{min-width:76px;height:34px;display:inline-flex;align-items:center;gap:7px;padding:0 10px;border:1px solid #363940;border-radius:5px;background:#24272c;color:#f1f2f4;white-space:nowrap}.image-editor-current-tool svg{color:#ff725e}.image-editor-current-tool strong{font-size:12px;font-weight:700}.image-editor-property-group{min-width:0;display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;padding-left:12px;border-left:1px solid #34373d}.image-editor-property-label{color:#858991;font-size:11px;font-weight:650;white-space:nowrap}.image-editor-colors--pro{gap:5px;padding:0;border:0}.image-editor-colors--pro .image-editor-color{width:22px;height:22px;flex-basis:22px;border-color:#474a51;border-radius:50%}.image-editor-colors--pro .image-editor-color.active{border-color:#f7f7f8;box-shadow:0 0 0 2px #1b1d21,0 0 0 3px #ff6b55}.image-editor-custom-color{position:relative;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 24px;cursor:pointer}.image-editor-custom-color input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.image-editor-custom-color span{position:absolute;inset:2px;border:1px solid #575a62;border-radius:50%}.image-editor-custom-color svg{position:absolute;right:-1px;bottom:-1px;padding:1px;border-radius:50%;background:#f1f2f4;color:#17181c}.image-editor-slider-field input[type=range]{width:118px;height:4px;accent-color:#ff6b55;cursor:pointer}.image-editor-slider-field output,.image-editor-text-size-control output{min-width:48px;color:#d7d9de;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;text-align:right;white-space:nowrap}.image-editor-text-size-control button{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid #3a3d44;border-radius:4px;background:#24272c;color:#d7d9de}.image-editor-text-size-control button:hover{border-color:#50535b;background:#2d3036}.image-editor-property-delete{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;padding:0;border:1px solid #4b3237;border-radius:4px;background:#2e2024;color:#ff8b98}.image-editor-property-edit{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;padding:0;border:1px solid #3a3d44;border-radius:4px;background:#24272c;color:#d7d9de}.image-editor-property-edit:hover{border-color:#50535b;background:#2d3036;color:#fff}.image-editor-property-delete:hover{border-color:#674149;background:#3a262b}.image-editor-document-meta{margin-left:auto;display:inline-flex;align-items:center;gap:6px;color:#777b83;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;white-space:nowrap}.image-editor-document-meta span+span:before{content:"/";margin-right:6px;color:#4d5057}.image-editor-pro-stage{display:block;flex:1;min-height:0;padding:0;overflow:auto;background:#24262a;background-image:none}.image-editor-workspace{width:-moz-max-content;width:max-content;height:-moz-max-content;height:max-content;min-width:100%;min-height:100%;display:grid;place-items:center;padding:34px}.image-editor-pro .image-compose-media{outline-color:#575a61;box-shadow:0 18px 46px #0000007a,0 3px 12px #00000057}.image-editor-inline-text{position:absolute;z-index:4;min-width:80px;min-height:18px;margin:0;padding:0;overflow:auto;resize:none;border:0;border-radius:0;outline:1px solid #ff725e;outline-offset:3px;background:transparent;box-shadow:none;font-family:Microsoft YaHei,PingFang SC,sans-serif;font-weight:600;line-height:1.2;letter-spacing:0;white-space:pre;caret-color:#ff725e}.image-editor-brush-cursor{position:absolute;z-index:5;top:0;left:0;box-sizing:border-box;border:1px solid;border-radius:50%;opacity:0;pointer-events:none;box-shadow:0 0 0 1px #000000b8;will-change:transform}.image-editor-brush-cursor.is-eraser{border-style:dashed;background:#ffffff12}.image-editor-crop-pro{width:min(1320px,100%);max-width:1320px;height:min(920px,calc(100dvh - 24px));color:#f4f4f5;border-color:#34373d;background:#15171a;box-shadow:0 28px 90px #0000008f}.image-editor-crop-header{min-height:58px;padding:0 12px 0 14px;border-bottom-color:#303238;background:#17191c}.image-editor-crop-header .image-editor-heading{align-items:center;gap:10px}.image-editor-crop-header .image-editor-heading>div{display:flex;align-items:baseline;gap:9px;min-width:0}.image-editor-crop-header h3{color:#f7f7f8;font-size:15px;font-weight:720}.image-editor-crop-pro .image-editor-toolbar{min-height:52px;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;padding:7px 14px;border-bottom-color:#303238;background:#1b1d21;scrollbar-width:none}.image-editor-crop-pro .image-editor-toolbar::-webkit-scrollbar{display:none}.image-editor-crop-pro .image-editor-tool-label{color:#c7cad0}.image-editor-crop-pro .image-editor-tool-label svg{color:#ff725e}.image-editor-crop-pro .image-editor-segments{flex:0 0 auto;border-color:#34373d;background:#121316}.image-editor-crop-pro .image-editor-segments button{color:#969aa2}.image-editor-crop-pro .image-editor-segments button:hover:not(:disabled){background:#282b30;color:#fff}.image-editor-crop-pro .image-editor-segments button.active{background:#ff6b5529;color:#ff806d;box-shadow:inset 0 0 0 1px #ff6b5585}.image-editor-crop-pro .image-editor-divider{background:#34373d}.image-editor-crop-pro .image-editor-icon-btn{border-color:#3a3d44;background:#24272c;color:#d7d9de}.image-editor-crop-pro .image-editor-icon-btn:hover:not(:disabled){border-color:#50535b;background:#2d3036}.image-editor-crop-pro .image-editor-info{flex:0 0 auto;border-color:#34373d;background:#16181b;color:#858991}.image-editor-crop-pro .image-editor-info strong{color:#e4e5e8}.image-editor-crop-pro .image-editor-stage{padding:34px;background:#24262a;background-image:none}.image-editor-crop-pro .image-crop-media{outline-color:#575a61;box-shadow:0 18px 46px #0000007a,0 3px 12px #00000057}.image-editor-crop-pro .image-crop-frame{border-color:#fffffffa;outline-color:#0000009e;box-shadow:0 0 0 9999px #050608b3,inset 0 0 0 1px #00000047}.image-editor-crop-pro .image-crop-grid{background:#fff6;box-shadow:0 0 0 .5px #00000059}.image-editor-crop-pro .image-crop-handle{z-index:4;width:28px;height:28px;border:0;border-radius:0;background:transparent;box-shadow:none}.image-editor-crop-pro .image-crop-handle:before{position:absolute;width:13px;height:13px;border-color:#fff;border-style:solid;content:"";filter:drop-shadow(0 1px 1px rgba(0,0,0,.72))}.image-editor-crop-pro .image-crop-handle.tl{top:0;left:0}.image-editor-crop-pro .image-crop-handle.tr{top:0;right:0}.image-editor-crop-pro .image-crop-handle.bl{bottom:0;left:0}.image-editor-crop-pro .image-crop-handle.br{right:0;bottom:0}.image-editor-crop-pro .image-crop-handle.tl:before{top:2px;left:2px;border-width:3px 0 0 3px}.image-editor-crop-pro .image-crop-handle.tr:before{top:2px;right:2px;border-width:3px 3px 0 0}.image-editor-crop-pro .image-crop-handle.bl:before{bottom:2px;left:2px;border-width:0 0 3px 3px}.image-editor-crop-pro .image-crop-handle.br:before{right:2px;bottom:2px;border-width:0 3px 3px 0}.image-editor-crop-pro .image-crop-edge{position:absolute;z-index:3;display:block;padding:0;border:0;background:transparent;touch-action:none}.image-editor-crop-pro .image-crop-edge.t,.image-editor-crop-pro .image-crop-edge.b{right:24px;left:24px;height:32px;cursor:ns-resize}.image-editor-crop-pro .image-crop-edge.t{top:-16px}.image-editor-crop-pro .image-crop-edge.b{bottom:-16px}.image-editor-crop-pro .image-crop-edge.l,.image-editor-crop-pro .image-crop-edge.r{top:24px;bottom:24px;width:32px;cursor:ew-resize}.image-editor-crop-pro .image-crop-edge.l{left:-16px}.image-editor-crop-pro .image-crop-edge.r{right:-16px}.image-editor-crop-pro .image-crop-edge:after{position:absolute;top:50%;left:50%;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-text-main) 72%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-bg-base) 58%,transparent);content:"";transform:translate(-50%,-50%)}.image-editor-crop-pro .image-crop-edge.t:after,.image-editor-crop-pro .image-crop-edge.b:after{width:44px;height:5px}.image-editor-crop-pro .image-crop-edge.l:after,.image-editor-crop-pro .image-crop-edge.r:after{width:5px;height:44px}.image-editor-crop-pro .image-crop-edge:hover:after,.image-editor-crop-pro .image-crop-edge.active:after{background:var(--color-brand-start)}.image-editor-crop-pro .image-editor-footer{border-top-color:#303238;background:#17191c}.image-editor-crop-pro .image-editor-btn{border-color:#393c43;background:#24272c;color:#e3e4e7}.image-editor-crop-pro .image-editor-btn:hover:not(:disabled){border-color:#50535b;background:#2c2f35}.image-editor-crop-pro .image-editor-btn.primary{border-color:#ff6b55;background:#ff6b55;color:#17181c;font-weight:760}.image-editor-crop-pro .image-editor-btn.primary:hover:not(:disabled){border-color:#ff806d;background:#ff806d}.image-editor-inline-text::-moz-placeholder{color:#ffffff73}.image-editor-inline-text::placeholder{color:#ffffff73}.image-editor-pro-footer{min-height:58px;justify-content:space-between;padding:9px 12px 9px 68px;border-top-color:#303238;background:#17191c}.image-editor-zoom{display:inline-flex;align-items:center;gap:1px;padding:2px;border:1px solid #30333a;border-radius:5px;background:#111316}.image-editor-zoom .image-editor-zoom-value{width:54px;color:#d0d2d7;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px}.image-editor-save-actions{display:flex;align-items:center;gap:7px}.image-editor-pro .image-editor-btn{min-height:34px;border-color:#393c43;background:#24272c;color:#e3e4e7}.image-editor-pro .image-editor-btn:hover:not(:disabled){border-color:#50535b;background:#2c2f35}.image-editor-pro .image-editor-btn.primary{border-color:#ff6b55;background:#ff6b55;color:#17181c;font-weight:760}.image-editor-pro .image-editor-btn.primary:hover:not(:disabled){border-color:#ff806d;background:#ff806d}@media(max-width:760px){.image-editor-overlay--pro{padding:0}.image-editor-pro{height:100dvh;border:0;border-radius:0}.image-editor-pro-header{min-height:54px;padding:0 8px 0 10px}.image-editor-pro-header .image-editor-heading>div{display:block}.image-editor-file-name{display:block;max-width:30vw;margin-top:2px}.image-editor-history button{width:38px;height:34px}.image-editor-pro-body{flex-direction:column}.image-editor-main{order:1}.image-editor-toolrail{order:2;width:100%;height:56px;flex:0 0 56px;flex-direction:row;padding:6px 8px;border-top:1px solid #303238;border-right:0}.image-editor-toolrail-main,.image-editor-toolrail-bottom{flex-direction:row}.image-editor-toolrail button{width:44px;height:44px}.image-editor-toolrail-divider{width:1px;height:28px;margin:0 3px}.image-editor-properties{min-height:58px;flex-basis:58px;padding:7px 10px}.image-editor-colors--pro{width:auto}.image-editor-colors--pro .image-editor-color,.image-editor-custom-color,.image-editor-text-size-control button,.image-editor-property-edit,.image-editor-property-delete{width:44px;height:44px;flex-basis:44px}.image-editor-workspace{padding:18px}.image-editor-pro-footer{min-height:54px;padding:8px}.image-editor-crop-pro{height:100dvh;border:0;border-radius:0}.image-editor-crop-header{min-height:54px;padding:0 8px 0 10px}.image-editor-crop-header .image-editor-heading>div{display:block}.image-editor-crop-pro .image-editor-toolbar{flex-wrap:nowrap;padding:7px 10px}.image-editor-crop-pro .image-editor-segments{order:initial;flex:0 0 auto}.image-editor-crop-pro .image-editor-icon-btn{order:initial}.image-editor-crop-pro .image-editor-info{order:initial;margin-left:auto}.image-editor-crop-pro .image-editor-stage{padding:18px}.image-editor-crop-pro .image-crop-edge.t,.image-editor-crop-pro .image-crop-edge.b{height:44px}.image-editor-crop-pro .image-crop-edge.t{top:-22px}.image-editor-crop-pro .image-crop-edge.b{bottom:-22px}.image-editor-crop-pro .image-crop-edge.l,.image-editor-crop-pro .image-crop-edge.r{width:44px}.image-editor-crop-pro .image-crop-edge.l{left:-22px}.image-editor-crop-pro .image-crop-edge.r{right:-22px}}@media(max-width:620px){.image-editor-pro-footer{flex-wrap:nowrap;gap:7px}.image-editor-zoom{flex:0 0 auto}.image-editor-save-actions{width:auto;min-width:0;margin-left:auto}.image-editor-save-actions .image-editor-btn{min-width:44px;padding-right:8px;padding-left:8px}.image-editor-save-actions .image-editor-btn:first-child{display:none}.image-editor-save-actions .image-editor-btn:nth-child(2) span{display:none}.image-editor-slider-field input[type=range]{width:92px}}@media(max-width:390px){.image-editor-zoom button:first-child,.image-editor-zoom button:nth-child(3){display:none}}@media(max-width:420px){.image-editor-file-icon{display:none}.image-editor-pro-header{grid-template-columns:minmax(0,1fr) auto auto;gap:4px}.image-editor-pro-header h3{font-size:14px}.image-editor-toolrail{overflow-x:auto}.image-editor-workspace{padding:12px}.image-editor-save-actions .image-editor-btn:first-child{display:none}}.image-editor-overlay--pro{background:var(--image-editor-overlay)}.image-editor-pro,.image-editor-crop-pro{color:var(--color-text-main);background:var(--image-editor-panel);border-color:var(--image-editor-line);box-shadow:var(--image-editor-shadow)}.image-editor-pro-header,.image-editor-crop-header,.image-editor-pro-footer,.image-editor-crop-pro .image-editor-footer{background:var(--image-editor-panel);border-color:var(--image-editor-line)}.image-editor-pro-header h3,.image-editor-crop-header h3,.image-editor-pro .image-editor-heading,.image-editor-crop-pro .image-editor-heading{color:var(--color-text-main)}.image-editor-file-name{color:var(--color-text-muted)}.image-editor-file-icon{border-color:var(--image-editor-line);background:color-mix(in srgb,var(--color-text-main) 7%,transparent);color:var(--color-brand-start)}.image-editor-pro-header .image-editor-close,.image-editor-crop-header .image-editor-close{color:var(--color-text-muted)}.image-editor-pro-header .image-editor-close:hover,.image-editor-crop-header .image-editor-close:hover{border-color:rgba(var(--color-danger-rgb),.22);background:rgba(var(--color-danger-rgb),.1);color:var(--color-danger)}.image-editor-history,.image-editor-zoom{border-color:var(--image-editor-line);background:color-mix(in srgb,var(--color-bg-base) 82%,var(--color-text-main))}.image-editor-history button,.image-editor-zoom button{color:var(--color-text-muted)}.image-editor-history button:hover:not(:disabled),.image-editor-zoom button:hover:not(:disabled){background:var(--color-hover);color:var(--color-text-main)}.image-editor-pro-body{background:var(--image-editor-body)}.image-editor-toolrail{border-color:var(--image-editor-line);background:var(--image-editor-panel)}.image-editor-toolrail button{color:var(--color-text-muted)}.image-editor-toolrail button:hover:not(:disabled){border-color:var(--color-border-hover);background:var(--color-hover);color:var(--color-text-main)}.image-editor-toolrail button.active{border-color:rgba(var(--color-brand-rgb),.58);background:var(--color-active-soft);color:var(--color-brand-start)}.image-editor-toolrail-divider,.image-editor-properties,.image-editor-property-group{border-color:var(--image-editor-line)}.image-editor-properties{background:var(--image-editor-panel-soft)}.image-editor-current-tool,.image-editor-text-size-control button,.image-editor-property-edit{border-color:var(--image-editor-line-strong);background:color-mix(in srgb,var(--color-text-main) 6%,transparent);color:var(--color-text-main)}.image-editor-property-label,.image-editor-document-meta{color:var(--color-text-muted)}.image-editor-current-tool svg{color:var(--color-brand-start)}.image-editor-text-size-control button:hover,.image-editor-property-edit:hover{border-color:var(--color-border-hover);background:var(--color-hover);color:var(--color-text-main)}.image-editor-colors--pro .image-editor-color{border-color:var(--image-editor-line-strong)}.image-editor-colors--pro .image-editor-color.active{border-color:var(--color-text-main);box-shadow:0 0 0 2px var(--image-editor-panel-soft),0 0 0 3px var(--color-brand-start)}.image-editor-custom-color span{border-color:var(--image-editor-line-strong)}.image-editor-custom-color svg{background:var(--color-text-main);color:var(--image-editor-panel)}.image-editor-slider-field input[type=range]{accent-color:var(--color-brand-start)}.image-editor-slider-field output,.image-editor-text-size-control output,.image-editor-zoom .image-editor-zoom-value{color:var(--color-text-main)}.image-editor-property-delete{border-color:rgba(var(--color-danger-rgb),.34);background:rgba(var(--color-danger-rgb),.1);color:var(--color-danger)}.image-editor-property-delete:hover{border-color:rgba(var(--color-danger-rgb),.52);background:rgba(var(--color-danger-rgb),.16)}.image-editor-pro-stage,.image-editor-crop-pro .image-editor-stage{background:var(--image-editor-stage);background-image:radial-gradient(circle at 1px 1px,var(--image-editor-stage-grid) 1px,transparent 0);background-size:24px 24px}:root[data-theme=dark] .image-editor-pro-stage,:root[data-theme=dark] .image-editor-crop-pro .image-editor-stage{background-image:radial-gradient(circle at 1px 1px,var(--image-editor-stage-grid) 1px,transparent 0),radial-gradient(ellipse 80% 60% at 50% 40%,rgba(var(--color-brand-rgb),.04),transparent 70%);background-size:24px 24px,auto}.image-editor-pro .image-compose-media,.image-editor-crop-pro .image-crop-media{outline-color:var(--image-editor-line-strong);box-shadow:var(--shadow-lg)}.image-editor-inline-text{outline-color:var(--color-brand-start);caret-color:var(--color-brand-start)}.image-editor-inline-text::-moz-placeholder{color:var(--color-text-muted)}.image-editor-inline-text::placeholder,.image-editor-document-meta span+span:before{color:var(--color-text-muted)}.image-editor-pro .image-editor-btn,.image-editor-crop-pro .image-editor-btn,.image-editor-crop-pro .image-editor-icon-btn{border-color:var(--image-editor-line-strong);background:color-mix(in srgb,var(--color-text-main) 6%,transparent);color:var(--color-text-main)}.image-editor-pro .image-editor-btn:hover:not(:disabled),.image-editor-crop-pro .image-editor-btn:hover:not(:disabled),.image-editor-crop-pro .image-editor-icon-btn:hover:not(:disabled){border-color:var(--color-border-hover);background:var(--color-hover)}.image-editor-pro .image-editor-btn.primary,.image-editor-crop-pro .image-editor-btn.primary{border-color:var(--color-brand-start);background:var(--color-brand-gradient);color:#fff}.image-editor-pro .image-editor-btn.primary:hover:not(:disabled),.image-editor-crop-pro .image-editor-btn.primary:hover:not(:disabled){border-color:var(--color-brand-end);background:linear-gradient(135deg,var(--color-brand-end),var(--color-brand-start))}.image-editor-crop-pro .image-editor-toolbar{background:var(--image-editor-panel-soft);border-color:var(--image-editor-line)}.image-editor-crop-pro .image-editor-tool-label{color:var(--color-text-muted)}.image-editor-crop-pro .image-editor-tool-label svg{color:var(--color-brand-start)}.image-editor-crop-pro .image-editor-segments,.image-editor-crop-pro .image-editor-info{border-color:var(--image-editor-line);background:color-mix(in srgb,var(--color-bg-base) 82%,var(--color-text-main))}.image-editor-crop-pro .image-editor-segments button,.image-editor-crop-pro .image-editor-info{color:var(--color-text-muted)}.image-editor-crop-pro .image-editor-info strong{color:var(--color-text-main)}.image-editor-crop-pro .image-editor-segments button:hover:not(:disabled){background:var(--color-hover);color:var(--color-text-main)}.image-editor-crop-pro .image-editor-segments button.active{background:var(--color-active-soft);color:var(--color-brand-start);box-shadow:inset 0 0 0 1px rgba(var(--color-brand-rgb),.52)}.image-editor-crop-pro .image-crop-frame{border-color:var(--color-text-main);outline-color:color-mix(in srgb,var(--color-bg-base) 66%,transparent)}.image-editor-crop-pro .image-crop-grid{background:color-mix(in srgb,var(--color-text-main) 36%,transparent)}.image-editor-crop-pro .image-crop-handle:before{border-color:var(--color-text-main)}.ws-custom-minimap{border-color:var(--color-border-card);background:var(--color-surface-strong);box-shadow:var(--shadow-md),inset 0 0 0 1px color-mix(in srgb,var(--color-text-main) 7%,transparent)}.ws-custom-minimap:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-lg),inset 0 0 0 1px color-mix(in srgb,var(--color-text-main) 9%,transparent)}.ws-minimap-body{background:var(--color-bg-base)}.video-frame-extractor{width:min(960px,95vw);height:auto;max-height:92vh}.video-frame-stage{flex:0 0 auto;width:100%;aspect-ratio:16 / 9;padding:0;background:#000;display:flex;align-items:center;justify-content:center;overflow:hidden}.video-frame-player{display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain;background:#000;cursor:pointer}.video-frame-empty{width:100%;height:100%;min-height:320px;display:flex;align-items:center;justify-content:center;color:#ffffff4d;border:2px dashed rgba(255,255,255,.12);border-radius:12px}.video-frame-controls{flex:0 0 auto;display:flex;align-items:center;gap:16px;padding:14px 20px;border-top:1px solid var(--color-border-card);background:#ffffffa6}.video-step-btn{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;color:var(--color-text-main);background:#1c1d220d;border:1px solid var(--color-border-card);border-radius:50%;cursor:pointer;transition:background .2s,color .2s,transform .15s cubic-bezier(.16,1,.3,1)}.video-step-btn:hover:not(:disabled){background:rgba(var(--color-brand-rgb),.1);color:var(--color-brand-start);transform:scale(1.06)}.video-step-btn:active:not(:disabled){transform:scale(.96)}.video-step-btn:disabled{opacity:.4;cursor:not-allowed}.video-play-btn{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;color:#fff;background:var(--color-brand-gradient);border:none;border-radius:50%;cursor:pointer;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s,opacity .2s;box-shadow:0 2px 8px rgba(var(--color-brand-rgb),.3)}.video-play-btn:hover:not(:disabled){transform:scale(1.06);box-shadow:0 4px 14px rgba(var(--color-brand-rgb),.45)}.video-play-btn:active:not(:disabled){transform:scale(.98)}.video-play-btn:disabled{opacity:.4;cursor:not-allowed}.video-timeline-field{flex:1;display:flex;align-items:center;min-width:0}.video-timeline{width:100%;height:6px;border-radius:3px;background:linear-gradient(90deg,var(--color-brand-start) 0%,var(--color-brand-end) var(--progress, 0%),rgba(28,29,34,.1) var(--progress, 0%),rgba(28,29,34,.1) 100%);outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.video-timeline:disabled{cursor:default;opacity:.5}.video-timeline::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:#fff;cursor:grab;box-shadow:0 1px 4px #00000040,0 0 0 3px var(--color-brand-start);-webkit-transition:transform .15s cubic-bezier(.16,1,.3,1),box-shadow .15s;transition:transform .15s cubic-bezier(.16,1,.3,1),box-shadow .15s}.video-timeline::-webkit-slider-thumb:hover{transform:scale(1.18);box-shadow:0 2px 8px #0000004d,0 0 0 4px var(--color-brand-start)}.video-timeline::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.05)}.video-timeline::-moz-range-thumb{width:16px;height:16px;border:none;border-radius:50%;background:#fff;cursor:grab;box-shadow:0 1px 4px #00000040,0 0 0 3px var(--color-brand-start);-moz-transition:transform .15s cubic-bezier(.16,1,.3,1),box-shadow .15s;transition:transform .15s cubic-bezier(.16,1,.3,1),box-shadow .15s}.video-timeline::-moz-range-thumb:hover{transform:scale(1.18);box-shadow:0 2px 8px #0000004d,0 0 0 4px var(--color-brand-start)}.video-timeline::-moz-range-thumb:active{cursor:grabbing;transform:scale(1.05)}.video-time-display{flex:0 0 auto;font-variant-numeric:tabular-nums;font-size:13px;font-weight:600;color:var(--color-text-main);white-space:nowrap;letter-spacing:.3px}.video-time-sep{margin:0 2px;color:var(--color-text-muted);font-weight:400}.video-frame-error{padding:12px 20px;background:linear-gradient(90deg,rgba(var(--color-danger-rgb),.08),rgba(var(--color-danger-rgb),.04));border-left:4px solid var(--color-danger);color:var(--color-danger);font-size:13px;font-weight:500}@media(max-width:720px){.video-frame-stage{padding:16px}.video-frame-controls{gap:12px;padding:12px 16px}.video-time-display{font-size:12px}}.ws-ai-object .ws-ai-shape.ws-ai-shape-stacked{overflow:visible}.ws-image-stack{position:relative;width:100%;height:100%}.ws-image-stack-front{position:relative;width:100%;height:100%;border-radius:inherit;overflow:hidden;z-index:2}.ws-image-stack-front img,.ws-image-stack-front video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.ws-image-stack-layer{position:absolute;inset:0;border-radius:inherit;overflow:hidden;pointer-events:none}.ws-image-stack-layer img,.ws-image-stack-layer video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;filter:brightness(.82) saturate(.9)}.ws-image-stack-layer-mask{position:absolute;inset:0;background:#0000001f;backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px);border-radius:inherit}.ws-image-stack-layer.layer-1{transform:translate(5px,5px) scale(.96);z-index:1;border:1px solid var(--color-border-card);background:var(--color-surface)}.ws-image-stack-layer.layer-2{transform:translate(9px,9px) scale(.92);z-index:0;border:1px solid var(--color-border-card);background:var(--color-surface)}.ws-image-stack-layer.layer-3{transform:translate(13px,13px) scale(.88);z-index:-1;border:1px solid var(--color-border-card);background:var(--color-surface)}.ws-image-stack-layer.layer-4{transform:translate(17px,17px) scale(.84);z-index:-2;border:1px solid var(--color-border-card);background:var(--color-surface)}.ws-grid-item-index{position:absolute;right:6px;bottom:6px;min-width:18px;height:18px;padding:0 5px;display:flex;align-items:center;justify-content:center;background:#1c1d22ad;color:#fff;font-size:10px;font-weight:700;border-radius:6px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);pointer-events:none;z-index:4}.ws-stack-expand-btn{position:absolute;top:8px;right:8px;z-index:10;display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 8px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:#1c1d22a3;color:#fff;font-size:11px;font-weight:700;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 2px 8px #00000038;pointer-events:auto;white-space:nowrap;transition:background .15s ease,transform .12s ease}.ws-stack-expand-btn:hover{background:#1c1d22db;transform:scale(1.05)}.ws-stack-expand-btn:active{transform:scale(.96)}.ws-ai-object .ws-ai-shape.ws-ai-shape-expanded{overflow:visible}.ws-image-grid{display:grid;width:100%;height:100%}.ws-grid-item{position:relative;border-radius:14px;overflow:hidden;cursor:pointer;background:var(--color-surface);border:2px solid transparent;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}.ws-grid-item img,.ws-grid-item video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;pointer-events:none}.ws-grid-item:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-md);transform:scale(1.02)}.ws-grid-item.active{border-color:var(--color-brand-start);box-shadow:0 0 0 2px rgba(var(--color-brand-rgb),.25),var(--shadow-md)}.ws-grid-item .ws-stack-expand-btn{position:absolute;top:6px;right:6px;z-index:5}.ws-grid-item-label{position:absolute;bottom:0;left:0;right:0;padding:20px 8px 6px;background:linear-gradient(to top,rgba(0,0,0,.55),transparent);color:#fff;font-size:10px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none;border-radius:0 0 14px 14px}.ws-ai-media-toolbar,.ws-generation-bar{transition:opacity .25s cubic-bezier(.16,1,.3,1),visibility .25s!important}.ws-canvas-moving .ws-ai-media-toolbar,.ws-canvas-moving .ws-generation-bar{opacity:0!important;pointer-events:none!important;visibility:hidden!important;transition:opacity .16s ease-out,visibility .16s!important}.ws-canvas-moving .ws-ai-media-generating-overlay{backdrop-filter:none;-webkit-backdrop-filter:none}.ws-canvas-moving .ws-ai-generating-aurora,.ws-canvas-moving .ws-ai-generating-grid,.ws-canvas-moving .ws-ai-generating-shimmer{display:none}.ws-canvas-moving .ws-image-stack-layer img{filter:none}.ws-canvas-moving .ws-image-stack-layer-mask,.ws-canvas-moving .ws-stack-expand-btn,.ws-canvas-moving .ws-grid-item-index{backdrop-filter:none;-webkit-backdrop-filter:none}.ws-double-click-menu{position:absolute;z-index:2000;width:168px;background:var(--color-surface-strong);border:1px solid var(--color-border-card);border-radius:14px;padding:6px;box-shadow:var(--shadow-lg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;flex-direction:column;gap:2px;animation:ws-menu-appear .16s cubic-bezier(.16,1,.3,1);transform-origin:top left}.ws-media-context-menu{position:absolute;z-index:2100;overflow:visible}.ws-media-export-flyout{position:relative}.ws-media-export-flyout:after{content:"";position:absolute;left:100%;top:-6px;width:12px;height:calc(100% + 12px)}.ws-media-export-trigger{cursor:default}.ws-media-export-chevron{margin-left:auto}.ws-media-export-submenu{position:absolute;left:calc(100% + 6px);top:-6px;display:none;width:120px;z-index:2110}.ws-media-export-flyout:hover .ws-media-export-submenu,.ws-media-export-flyout:focus-within .ws-media-export-submenu{display:flex}@keyframes ws-menu-appear{0%{opacity:0;transform:scale(.92) translate(-6px,-6px)}to{opacity:1;transform:scale(1) translate(0)}}.ws-double-click-menu-group{display:flex;flex-direction:column;gap:1px}.ws-double-click-menu-title{font-family:var(--font-family-title);font-size:11px;font-weight:700;color:var(--color-text-muted);padding:6px 10px 4px;text-transform:uppercase;letter-spacing:.08em}.ws-double-click-menu-divider{height:1px;background:var(--color-border-card);margin:4px 6px}.ws-double-click-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:var(--color-text-main);font-size:13px;font-weight:500;text-align:left;transition:all .15s ease}.ws-double-click-menu-item:hover{background:rgba(var(--color-brand-rgb),.08);color:var(--color-brand-start)}.ws-double-click-menu-item svg{color:var(--color-text-muted);transition:color .15s ease}.ws-double-click-menu-item:hover svg{color:var(--color-brand-start)}.ws-double-click-menu-item.danger{color:var(--color-danger)}.ws-double-click-menu-item.danger svg{color:var(--color-danger)}.ws-double-click-menu-item.danger:hover{color:var(--color-danger);background:rgba(var(--color-danger-rgb),.1)}.ws-ai-object.media-object .ws-ai-shape>img,.ws-ai-object.media-object .ws-ai-shape>video,.ws-ai-object.media-object .ws-ai-shape .ws-ai-video-frame,.ws-ai-object.media-object .ws-ai-shape .ws-ai-video-frame video,.ws-ai-object.media-object .ws-ai-shape .ws-image-grid{border-radius:17px!important;overflow:hidden!important}.ws-ai-media-generating-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#1c1d2273;backdrop-filter:blur(8px) saturate(140%);-webkit-backdrop-filter:blur(8px) saturate(140%);border-radius:17px;z-index:5;overflow:hidden}.ws-ai-media-generating-overlay.failed{background:#441616b8}.ws-ai-generating-aurora{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}.ws-ai-generating-aurora:before,.ws-ai-generating-aurora:after{content:"";position:absolute;border-radius:50%;filter:blur(40px);opacity:.6;mix-blend-mode:screen}.ws-ai-generating-aurora:before{width:140%;height:140%;top:-30%;left:-20%;background:radial-gradient(circle,rgba(var(--color-brand-rgb),.35) 0%,transparent 70%);animation:aurora-move-1 8s infinite alternate ease-in-out}.ws-ai-generating-aurora:after{width:120%;height:120%;bottom:-20%;right:-20%;background:radial-gradient(circle,rgba(236,72,153,.3) 0%,transparent 70%);animation:aurora-move-2 6s infinite alternate ease-in-out}@keyframes aurora-move-1{0%{transform:translate(0) scale(1)}50%{transform:translate(15%,10%) scale(1.1)}to{transform:translate(-10%,15%) scale(.95)}}@keyframes aurora-move-2{0%{transform:translate(0) scale(1)}50%{transform:translate(-15%,-10%) scale(1.05)}to{transform:translate(10%,-5%) scale(.9)}}.ws-ai-generating-grid{position:absolute;inset:0;background-image:linear-gradient(to right,rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.03) 1px,transparent 1px);background-size:14px 14px;z-index:2;pointer-events:none}.ws-ai-generating-shimmer{position:absolute;inset:-100% -50%;background:linear-gradient(95deg,transparent 35%,rgba(255,255,255,0) 42%,rgba(255,255,255,.4) 50%,rgba(255,255,255,0) 58%,transparent 65%);z-index:3;pointer-events:none;transform:rotate(-15deg);animation:ws-shimmer-sweep 2.4s infinite cubic-bezier(.25,1,.5,1)}@keyframes ws-shimmer-sweep{0%{transform:translate(-100%,-30%) rotate(-15deg)}to{transform:translate(100%,30%) rotate(-15deg)}}.ws-ai-media-generating-content{position:relative;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;animation:ws-generating-fade-in .4s cubic-bezier(.16,1,.3,1)}@keyframes ws-generating-fade-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.animate-sparkle-glow{color:#ff5c7a;filter:drop-shadow(0 0 8px rgba(var(--color-brand-rgb),.6)) drop-shadow(0 0 16px rgba(var(--color-brand-rgb),.3));animation:ws-sparkle-glow 1.8s infinite ease-in-out;margin-bottom:2px}@keyframes ws-sparkle-glow{0%,to{transform:scale(1) rotate(0);opacity:.85}50%{transform:scale(1.18) rotate(15deg);filter:drop-shadow(0 0 12px rgba(var(--color-brand-rgb),.95)) drop-shadow(0 0 4px #ffd235);opacity:1}}.ws-ai-generating-text{font-size:13px;font-weight:600;color:#fff;letter-spacing:.08em;text-shadow:0 2px 4px rgba(0,0,0,.3)}.ws-ai-media-generating-overlay.failed .ws-ai-generating-text{max-width:calc(100% - 32px);line-height:1.45;letter-spacing:0;overflow-wrap:anywhere}.ws-ai-generating-model{font-size:10px;font-weight:600;color:#ffffffe6;background:#ffffff1f;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:3px 9px;border-radius:20px;border:1px solid rgba(255,255,255,.15);font-family:var(--font-family-mono),monospace;max-width:140px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 2px 6px #00000026;text-shadow:0 1px 2px rgba(0,0,0,.2)}.ws-image-stack{position:relative;width:100%;height:100%;border-radius:16px}.ws-image-stack-front{position:relative;z-index:5;width:100%;height:100%;border-radius:17px}.ws-image-stack-front>img,.ws-image-stack-front>video{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:17px;border:1px solid var(--color-border-card);box-shadow:var(--shadow-sm);background:var(--color-surface-strong);transition:transform .35s cubic-bezier(.16,1,.3,1)}.ws-image-stack-layer{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:17px;border:1px solid var(--color-border-card);background:var(--color-surface-strong);box-shadow:var(--shadow-sm);transition:all .35s cubic-bezier(.16,1,.3,1);pointer-events:none;overflow:hidden}.ws-image-stack-layer img{position:absolute;width:116%;height:116%;left:-8%;top:-8%;-o-object-fit:cover;object-fit:cover;border-radius:14px;filter:blur(16px) saturate(1.2)}.ws-image-stack-layer .ws-grid-item-index{display:none!important}.ws-image-stack-layer-mask{position:absolute;inset:0;background:#1c1d221f;-webkit-backdrop-filter:brightness(.92) contrast(.96);backdrop-filter:brightness(.92) contrast(.96);pointer-events:none}.ws-image-stack-layer.layer-1{transform:translate(8px,8px) scale(1);z-index:4;opacity:.9}.ws-image-stack-layer.layer-2{transform:translate(16px,16px) scale(1);z-index:3;opacity:.75}.ws-image-stack-layer.layer-3{transform:translate(24px,24px) scale(1);z-index:2;opacity:.6}.ws-image-stack-layer.layer-4{transform:translate(32px,32px) scale(1);z-index:1;opacity:.45}.ws-ai-object.media-object:hover .ws-image-stack-front>img,.ws-ai-object.media-object:hover .ws-image-stack-front>video{transform:scale(1)}.ws-ai-object.media-object:hover .ws-image-stack-layer.layer-1{transform:translate(10px,10px) scale(1);opacity:.95;box-shadow:0 6px 16px #0000001f}.ws-ai-object.media-object:hover .ws-image-stack-layer.layer-2{transform:translate(20px,20px) scale(1);opacity:.85;box-shadow:0 8px 20px #0000001a}.ws-ai-object.media-object:hover .ws-image-stack-layer.layer-3{transform:translate(30px,30px) scale(1);opacity:.72;box-shadow:0 10px 24px #00000014}.ws-ai-object.media-object:hover .ws-image-stack-layer.layer-4{transform:translate(40px,40px) scale(1);opacity:.55;box-shadow:0 12px 28px #0000000f}.ws-ai-object.media-object .ws-ai-shape-stacked,.ws-ai-object.media-object .ws-ai-shape-expanded{background:transparent!important;border:none!important;box-shadow:none!important;overflow:visible!important}.ws-ai-object.media-object .ws-ai-shape-expanded .ws-image-grid{border-radius:0!important;overflow:visible!important}.ws-ai-object.media-object.selected .ws-ai-shape-stacked .ws-image-stack-front>img,.ws-ai-object.media-object.selected .ws-ai-shape-stacked .ws-image-stack-front>video{border-color:var(--color-brand-start)!important;box-shadow:0 0 0 1px var(--color-brand-start),0 0 12px var(--shadow-brand-glow)}.ws-stack-expand-btn{position:absolute;top:8px;right:8px;z-index:25;width:24px;height:24px;border-radius:50%;border:1px solid rgba(28,29,34,.08);background:#ffffffbf;backdrop-filter:blur(12px) saturate(140%);-webkit-backdrop-filter:blur(12px) saturate(140%);box-shadow:0 2px 8px #0000000d,inset 0 0 0 1px #fff6;display:inline-flex;align-items:center;justify-content:center;color:var(--color-text-main);cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);pointer-events:auto!important}.ws-stack-expand-btn:hover{background:#ffffffe6;border-color:rgba(var(--color-brand-rgb),.25);color:var(--color-brand-start);transform:scale(1.08) rotate(5deg);box-shadow:0 4px 12px rgba(var(--color-brand-rgb),.15)}.ws-stack-expand-btn:active{transform:scale(.94)}.ws-image-grid{width:100%;height:100%;display:grid;grid-template-columns:repeat(2,1fr);align-items:start}.ws-ai-object.media-object .ws-stack-expand-btn{pointer-events:auto!important}.ws-image-grid{width:100%;height:100%;display:grid;grid-template-columns:repeat(2,1fr);grid-gap:8px;padding:0;background:transparent;align-items:start}.ws-grid-item{position:relative;width:100%;border-radius:12px;overflow:hidden;border:2px solid transparent;cursor:pointer;background:#eaeaea;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:var(--shadow-sm)}.ws-grid-item img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:10px;transition:transform .25s ease}.ws-grid-item-label{position:absolute;left:6px;bottom:5px;z-index:10;max-width:calc(100% - 12px);padding:2px 4px;border-radius:3px;background:#1c1d22b8;color:#fff;font-size:8px;font-weight:700;line-height:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-grid-item:hover img{transform:scale(1.05)}.ws-grid-item.active{border-color:var(--color-brand-start);box-shadow:0 0 8px rgba(var(--color-brand-rgb),.35)}.ws-grid-item .ws-stack-expand-btn{top:8px;right:8px;width:42px;height:26px;border-radius:7px;gap:4px;background:var(--color-brand-end);color:#1c1d22;font-size:11px;font-weight:800}.ws-grid-item-badge{position:absolute;bottom:6px;right:6px;background:var(--color-brand-start);color:#fff;font-size:10px;font-weight:700;padding:2px 6px;border-radius:4px;z-index:10;box-shadow:0 2px 4px #00000026}.ws-grid-item-index{position:absolute;top:6px;left:6px;z-index:10;width:18px;height:18px;border-radius:50%;background:#1c1d22a3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px #00000026}.ws-grid-item.active .ws-grid-item-index{background:var(--color-brand-end);color:#1c1d22}.ws-media-preview-overlay{position:absolute;inset:0;z-index:2200;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at center,#101116c7,#08090ced);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);transition:all .3s cubic-bezier(.16,1,.3,1)}.ws-media-preview-open .ws-ai-object,.ws-media-preview-open .ws-ai-media-toolbar{visibility:hidden!important;pointer-events:none!important}.ws-media-preview-open .ws-titlebar,.ws-media-preview-open .fc-toolbar-pill,.ws-media-preview-open .ws-chat-fab,.ws-media-preview-open .ws-generation-bar{display:none!important}.ws-media-preview-stage{position:relative;display:flex;align-items:center;justify-content:center;max-width:min(86vw,1280px);max-height:min(78vh,860px);animation:ws-preview-zoom-in .25s cubic-bezier(.16,1,.3,1)}@keyframes ws-preview-zoom-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.ws-media-preview-audio{display:flex;flex-direction:column;align-items:center;gap:16px;padding:36px 44px;color:#fff;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:16px}.ws-media-preview-audio-name{font-size:14px;color:#ffffffd9;max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-media-preview-audio audio{width:320px}.ws-media-preview-stage img,.ws-media-preview-stage video{display:block;max-width:min(86vw,1280px);max-height:min(78vh,860px);-o-object-fit:contain;object-fit:contain;border-radius:12px;border:1px solid rgba(255,255,255,.08);box-shadow:0 24px 80px #00000080,0 4px 16px #0003;transition:transform .1s ease-out}.ws-media-preview-close,.ws-media-preview-main-btn{transition:all .2s cubic-bezier(.16,1,.3,1)}.ws-media-preview-close{position:absolute;top:24px;right:24px;z-index:3;width:38px;height:38px;border:1px solid rgba(255,255,255,.12);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#ffffff14;color:#fff;box-shadow:0 4px 12px #00000026}.ws-media-preview-close:hover{background:var(--color-brand-gradient);border-color:transparent;transform:scale(1.08) rotate(90deg);box-shadow:0 6px 16px rgba(var(--color-brand-rgb),.25),0 0 10px rgba(var(--color-brand-rgb),.2)}.ws-media-preview-close:active{transform:scale(.95)}.ws-media-preview-main-btn{position:absolute;top:24px;right:72px;z-index:3;height:38px;padding:0 16px;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:#ffffff14;color:#fff;font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000026}.ws-media-preview-main-btn:hover{background:var(--color-brand-gradient);color:#fff;border-color:transparent;transform:translateY(-1px);box-shadow:0 6px 16px rgba(var(--color-brand-rgb),.3),0 0 12px rgba(var(--color-brand-rgb),.25)}.ws-media-preview-main-btn:disabled,.ws-media-preview-main-btn.active{cursor:default;border-color:rgba(var(--color-success-rgb),.28);background:rgba(var(--color-success-rgb),.14);color:#d1fae5;box-shadow:none}.ws-media-preview-main-btn:disabled:hover,.ws-media-preview-main-btn.active:hover{transform:none;border-color:rgba(var(--color-success-rgb),.28);background:rgba(var(--color-success-rgb),.14);color:#d1fae5;box-shadow:none}.ws-media-preview-main-btn:active{transform:translateY(1px)}.ws-media-preview-meta{position:absolute;top:24px;left:24px;z-index:3;display:flex;align-items:center;gap:8px;max-width:calc(100vw - 48px);pointer-events:none}.ws-media-preview-index,.ws-media-preview-chip{min-width:48px;height:38px;padding:0 14px;border:1px solid rgba(255,255,255,.06);border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:#14151aad;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#ffffffe6;font-size:13px;font-family:var(--font-family-mono),monospace;font-weight:700;box-shadow:0 4px 12px #00000026;letter-spacing:.05em;white-space:nowrap;font-variant-numeric:tabular-nums}.ws-media-preview-chip{min-width:0;background:#14151a85;color:#ffffffc2;font-weight:600;letter-spacing:.01em}.ws-media-preview-resolution{color:#ffffffa8}@media(max-width:640px){.ws-media-preview-meta{top:70px;left:16px;right:16px;gap:6px;max-width:none;flex-wrap:wrap}.ws-media-preview-index,.ws-media-preview-chip{height:34px;padding:0 10px;font-size:12px}}.ws-media-preview-nav{position:absolute;top:50%;z-index:3;width:48px;height:48px;border:1px solid rgba(255,255,255,.08);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;transform:translateY(-50%);background:#ffffff14;color:#ffffffd9;font-size:28px;font-weight:300;line-height:1;box-shadow:0 8px 24px #0003;transition:all .25s cubic-bezier(.16,1,.3,1)}.ws-media-preview-nav.prev{left:36px}.ws-media-preview-nav.next{right:36px}.ws-media-preview-nav:hover{background:#ffffff29;color:#fff;border-color:#ffffff40;box-shadow:0 8px 28px #0000004d}.ws-media-preview-nav.prev:hover{transform:translateY(-50%) translate(-2px)}.ws-media-preview-nav.next:hover{transform:translateY(-50%) translate(2px)}.ws-media-preview-nav:active{transform:translateY(-50%) scale(.94)}.ws-media-preview-thumbs{position:absolute;left:50%;bottom:24px;z-index:3;display:flex;gap:10px;max-width:min(80vw,920px);overflow-x:auto;padding:8px 12px;border:1px solid rgba(255,255,255,.06);border-radius:16px;transform:translate(-50%);background:#14151a73;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 16px 40px #0000004d,inset 0 1px #ffffff0d}.ws-media-preview-thumbs::-webkit-scrollbar{height:4px}.ws-media-preview-thumbs::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:10px}.ws-media-preview-thumbs button{position:relative;width:54px;height:54px;flex:0 0 auto;padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;background:#ffffff0f;transition:all .2s cubic-bezier(.16,1,.3,1);cursor:pointer}.ws-media-preview-thumbs button:hover{transform:translateY(-2px);border-color:#fff3}.ws-media-preview-thumbs button.active{border-color:var(--color-brand-start);box-shadow:0 0 10px rgba(var(--color-brand-rgb),.3),0 4px 12px rgba(var(--color-brand-rgb),.15)}.ws-media-preview-thumbs img,.ws-media-preview-thumbs video{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.ws-media-preview-thumbs span{position:absolute;top:4px;left:4px;z-index:2;min-width:16px;height:16px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#101116b8;color:#fff;font-size:9px;font-weight:700;box-shadow:0 1px 3px #0003}.ws-preview-control-bar{position:absolute;top:24px;left:50%;transform:translate(-50%);z-index:5;height:36px;padding:0 12px;display:flex;align-items:center;gap:12px;background:#14151ad9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:18px;box-shadow:0 8px 24px #00000040,inset 0 1px #ffffff0d;color:#fff;animation:ws-preview-zoom-in .25s cubic-bezier(.16,1,.3,1)}.ws-preview-control-bar button{border:0;background:transparent;color:#ffffffbf;width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;padding:0;transition:all .15s ease;cursor:pointer}.ws-preview-control-bar button:hover{background:#ffffff1a;color:var(--color-brand-start);transform:scale(1.08)}.ws-preview-control-bar button:active{transform:scale(.92)}.ws-preview-control-bar span{font-family:var(--font-family-mono),monospace;font-size:12px;font-weight:700;min-width:42px;text-align:center;letter-spacing:.02em;color:#ffffffe6}.ws-preview-control-divider{width:1px;height:14px;background:#ffffff26;margin:0 -2px}.ws-image-stack-front{z-index:5;width:100%}.ws-image-stack-front>img,.ws-image-stack-front>video{-o-object-fit:cover;object-fit:cover}.ws-ai-object.media-object .ws-ai-shape-stacked{overflow:visible!important}.ws-image-stack-layer{width:100%}.ws-image-stack-layer.layer-1{transform:translate(8px,8px) scale(1)!important}.ws-image-stack-layer.layer-4{transform:translate(32px,32px) scale(1)!important}.ws-ai-object.collapsed .ws-stack-expand-btn{right:8px}.ws-grid-item .ws-stack-expand-btn{top:8px;right:8px}.ws-grid-item.active .ws-grid-item-index{background:var(--color-brand-end)!important}.ws-ai-object.media-object .ws-grid-item{pointer-events:auto!important}.ws-ai-object.media-object .ws-grid-item img{pointer-events:none}.ws-ai-object.media-object .ws-ai-shape-expanded{background:transparent!important;border:none!important;overflow:visible!important}.ws-image-grid{padding:0!important;background:transparent!important}.ws-grid-item-label{display:none}.ws-ai-object.selected .ws-ai-shape{border-color:var(--color-brand-start)!important;box-shadow:0 0 0 1.5px var(--color-brand-start),0 12px 36px rgba(var(--color-brand-rgb),.18),0 4px 12px #00000014!important;transform:scale(1.01)}.ws-ai-object.selected .ws-ai-object-label{background:linear-gradient(135deg,rgba(var(--color-brand-rgb),.16),var(--color-surface-strong) 72%);box-shadow:0 0 0 1px var(--color-brand-start),0 4px 14px rgba(var(--color-brand-rgb),.18),inset 0 0 0 1px #ffffff6b;color:var(--color-text-main);transform:translateY(-1px)}.ws-ai-object.selected .ws-ai-object-label .ws-status-beacon{box-shadow:0 0 0 3px rgba(var(--color-brand-rgb),.12),0 0 8px rgba(var(--color-brand-rgb),.42)}.ws-ai-object .ws-ai-shape{transition:all .25s cubic-bezier(.16,1,.3,1)}.ws-tldraw-shell .tl-selection__fg,.ws-tldraw-shell .tl-selection-box{stroke:transparent!important}.ws-tldraw-shell.multi-selecting .ws-ai-object.selected .ws-ai-shape{border-color:var(--color-border-card)!important;box-shadow:var(--shadow-sm)!important;transform:none}.ws-tldraw-shell.multi-selecting .ws-ai-object.selected .ws-ai-object-label{background:var(--color-surface-strong);box-shadow:0 2px 8px #1c1b1714,inset 0 0 0 1px var(--color-border-card);transform:none}.ws-tldraw-shell.multi-selecting .ws-ai-object.selected .ws-ai-object-label .ws-status-beacon{box-shadow:none}.ws-multi-select-frame{position:absolute;z-index:1100;pointer-events:none;border:1.5px dashed rgba(var(--color-brand-rgb),.45);border-radius:var(--radius-lg);animation:ws-multi-select-frame-appear .18s cubic-bezier(.16,1,.3,1)}@keyframes ws-multi-select-frame-appear{0%{opacity:0}to{opacity:1}}.ws-multi-select-toolbar{position:absolute;z-index:1250;transform:translate(-50%);display:inline-flex;align-items:center;gap:4px;height:44px;padding:0 8px;border:1px solid var(--color-border-card);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-md);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);pointer-events:auto;white-space:nowrap;animation:ws-multi-select-frame-appear .18s cubic-bezier(.16,1,.3,1)}.ws-multi-select-toolbar:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-lg)}.ws-multi-select-count{padding:0 8px 0 6px;color:var(--color-text-muted);font-family:var(--font-family-title);font-size:12px;font-weight:600}.ws-multi-select-toolbar .ws-toolbar-divider{width:1px;height:20px;background:var(--color-border-card);margin:0 2px}.ws-multi-select-action{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 10px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-main);font-family:var(--font-family-title);font-size:12px;font-weight:600;cursor:pointer;transition:background .2s ease,color .2s ease}.ws-multi-select-action:hover,.ws-multi-select-action.active{background:var(--color-hover);color:var(--color-brand-start)}.ws-multi-select-action.danger:hover{background:#dc26261a;color:#dc2626}.ws-multi-select-caret{opacity:.6}.ws-double-click-menu.ws-menu-upward{transform-origin:bottom left}.warmsun-modal-card:has(.settings-panel-container){display:flex;flex-direction:column}.warmsun-modal-card:has(.settings-panel-container) .modal-header{flex-shrink:0}.settings-panel-container{display:flex;flex:1;min-height:0;background:var(--color-surface);border-radius:0 0 20px 20px;overflow:hidden}.settings-panel-sidebar{width:190px;flex-shrink:0;background:#1c1b1705;border-right:1px solid var(--color-border-card);padding:16px 8px;display:flex;flex-direction:column;gap:6px}.sidebar-section-header{display:flex;align-items:center;justify-content:space-between;margin-top:14px;margin-bottom:4px;padding:0 10px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted)}.sidebar-add-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;border-radius:4px;background:transparent;color:var(--color-text-muted);cursor:pointer;transition:all .2s}.sidebar-add-btn:hover{background:#1c1b170f;color:var(--color-text-main)}.sidebar-tab-btn.sub-item{padding-left:20px;font-size:13px}.sidebar-tab-btn{width:100%;display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--color-text-muted);font-size:13px;font-weight:500;text-align:left;transition:all .2s cubic-bezier(.16,1,.3,1);position:relative}.sidebar-tab-btn:hover{background:#1c1b170a;color:var(--color-text-main)}.sidebar-tab-btn.active{background:rgba(var(--color-brand-rgb),.08);border-color:rgba(var(--color-brand-rgb),.15);color:var(--color-brand-start);font-weight:600}.sidebar-tab-btn.active:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:99px;background:var(--color-brand-gradient)}.settings-panel-content{flex:1;padding:24px 28px;overflow-y:auto;background:var(--color-surface-strong);display:flex;flex-direction:column;gap:20px}.settings-panel-content:after{content:"";display:block;flex:0 0 10px;width:100%;height:10px;pointer-events:none}.settings-tab-pane{display:flex;flex-direction:column;gap:24px;flex:0 0 auto;min-height:0;padding:4px}.settings-tab-pane>.panel-section:last-child{margin-bottom:0}.settings-storage-row{display:flex;align-items:center;gap:12px;margin-top:8px}.settings-storage-input-wrapper{position:relative;flex:1}.settings-storage-input-wrapper input{width:100%;padding:9px 12px 9px 36px!important;border:1px solid var(--color-border-card);border-radius:8px;background:#1c1b1705!important;color:var(--color-text-main);font-size:13px;outline:none;cursor:default;transition:all .2s;text-overflow:ellipsis}.settings-storage-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.settings-storage-btn{height:36px;padding:0 16px;border:1px solid var(--color-border-card);border-radius:8px;background:#1c1b1708;color:var(--color-text-main);font-size:13px;font-weight:600;transition:all .2s ease}.settings-storage-btn:hover:not(:disabled){background:#1c1b170f;border-color:var(--color-border-hover);transform:translateY(-1px)}.settings-storage-btn:active:not(:disabled){transform:translateY(0)}.settings-storage-btn:disabled{opacity:.6;cursor:not-allowed}.chat-preset-form{display:flex;flex-direction:column;gap:18px;margin-top:0}.chat-preset-form label{display:flex;flex-direction:column;gap:10px;color:var(--color-text-main);font-size:13px;font-weight:600;letter-spacing:.2px}.chat-preset-form input,.chat-preset-form textarea{width:100%;border:1.5px solid rgba(28,27,23,.1);border-radius:10px;background:var(--color-surface);color:var(--color-text-main);font-size:13.5px;font-weight:500;outline:none;transition:all .2s cubic-bezier(.4,0,.2,1)}.chat-preset-form input:focus,.chat-preset-form textarea:focus{border-color:var(--color-brand-start);background:#fff;box-shadow:0 0 0 3px rgba(var(--color-brand-rgb),.08),0 2px 8px rgba(var(--color-brand-rgb),.06)}.chat-preset-form input{height:42px;padding:0 14px}.chat-preset-form textarea{min-height:140px;padding:13px 14px;resize:vertical;line-height:1.65;font-family:inherit}.chat-preset-form button{align-self:flex-start;background:var(--color-brand-gradient);color:#fff;border:none;height:40px;padding:0 22px;border-radius:10px;font-size:13.5px;font-weight:650;letter-spacing:.3px;box-shadow:0 2px 10px rgba(var(--color-brand-rgb),.24);transition:all .2s cubic-bezier(.4,0,.2,1)}.chat-preset-form button:hover:not(:disabled){box-shadow:0 4px 16px rgba(var(--color-brand-rgb),.35);transform:translateY(-1.5px)}.chat-preset-form button:active:not(:disabled){transform:translateY(0)}.chat-preset-list{display:flex;flex-direction:column;gap:10px;margin-top:6px}.chat-preset-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;color:var(--color-text-muted);font-size:13px;font-weight:500}.chat-preset-item{display:flex;align-items:flex-start;gap:14px;padding:18px;border:1.5px solid rgba(28,27,23,.08);border-radius:14px;background:linear-gradient(135deg,#fafaf9,#fff);transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 4px #00000005}.chat-preset-item:hover{border-color:rgba(var(--color-brand-rgb),.22);background:#fff;box-shadow:0 4px 16px #1c1d2214,0 2px 6px rgba(var(--color-brand-rgb),.06);transform:translateY(-2px)}.chat-preset-item-main{display:flex;flex:1;min-width:0;flex-direction:column;gap:9px}.chat-preset-item-main strong{color:var(--color-text-main);font-size:14.5px;font-weight:650;line-height:1.4;letter-spacing:.15px}.chat-preset-item-main span{color:var(--color-text-muted);font-size:13px;line-height:1.6;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.chat-preset-delete-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:0;border-radius:10px;background:linear-gradient(135deg,#1c1b1708,#1c1b170a);color:#1c1b1780;cursor:pointer;flex-shrink:0;transition:all .22s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 2px #00000005}.chat-preset-delete-btn:hover{background:linear-gradient(135deg,#dc26261f,#dc262629);color:#dc2626;transform:translateY(-1px) scale(1.08);box-shadow:0 3px 10px #dc262633}.chat-preset-delete-btn:active{transform:translateY(0) scale(.98);box-shadow:0 1px 4px #dc262626}.image-prompt-preset-form textarea{min-height:90px}.image-prompt-preset-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px;color:var(--color-text-muted);font-size:12.5px;font-weight:500}.image-prompt-preset-add-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1.5px solid rgba(28,27,23,.12);border-radius:10px;background:linear-gradient(135deg,#fff,#fafaf9);color:#1c1b17a6;cursor:pointer;transition:all .22s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #00000005}.image-prompt-preset-add-btn:hover{border-color:var(--color-brand-start);color:var(--color-brand-start);background:linear-gradient(135deg,rgba(var(--color-brand-rgb),.04),rgba(var(--color-brand-rgb),.08));box-shadow:0 3px 12px rgba(var(--color-brand-rgb),.16),0 1px 4px rgba(var(--color-brand-rgb),.08);transform:translateY(-2px) scale(1.05)}.image-prompt-preset-add-btn:active{transform:translateY(0) scale(.98);box-shadow:0 1px 4px rgba(var(--color-brand-rgb),.1)}.image-prompt-preset-add-btn:disabled,.chat-preset-delete-btn:disabled{cursor:not-allowed;opacity:.4;box-shadow:none;transform:none}.image-prompt-preset-list .chat-preset-item{padding:12px 14px}.image-prompt-preset-dialog,.chat-preset-dialog{width:min(540px,calc(100vw - 40px))}.prompt-formatter-tool-row{display:flex;align-items:center;gap:14px;margin-top:16px;color:var(--color-text-muted);font-size:12.5px;font-weight:500}.prompt-formatter-tool-row>span{flex:1;min-width:0;font-size:13px;opacity:.9}.prompt-formatter-style-select{flex:1;min-width:160px;max-width:280px;height:32px;padding:0 32px 0 12px;border:1.5px solid rgba(28,27,23,.1);border-radius:9px;background:var(--color-surface);color:var(--color-text-main);font-size:12.5px;font-weight:500;outline:none;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%231c1b17' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}.prompt-formatter-style-select:hover:not(:disabled){border-color:#1c1b173d;background-color:#fff;box-shadow:0 1px 4px #0000000a}.prompt-formatter-style-select:focus:not(:disabled){border-color:var(--color-brand-start);background-color:#fff;box-shadow:0 0 0 3px rgba(var(--color-brand-rgb),.08)}.prompt-formatter-style-select:disabled{color:var(--color-text-muted);background-color:#f7f7f6;opacity:.7;cursor:not-allowed}.settings-tool-dialog-overlay{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.settings-tool-dialog{width:min(560px,calc(100vw - 40px));max-height:min(720px,calc(100vh - 72px));display:flex;flex-direction:column;background:var(--color-surface-strong);border:1px solid rgba(28,27,23,.06);border-radius:16px;box-shadow:0 20px 68px #1c1b1733,0 4px 16px #1c1b1714;overflow:hidden}.settings-tool-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid rgba(28,27,23,.06)}.settings-tool-dialog-header h3{margin:0;color:var(--color-text-main);font-size:16px;font-weight:700;letter-spacing:.1px}.settings-tool-dialog .chat-preset-form,.settings-tool-dialog .prompt-formatter-rule-list{padding:20px;overflow-y:auto}.settings-tool-dialog .chat-preset-form{margin-top:0}.settings-tool-dialog-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:14px 20px 16px;border-top:1px solid rgba(28,27,23,.06)}.prompt-formatter-rules-dialog{width:min(720px,calc(100vw - 40px))}.prompt-formatter-rules-dialog .prompt-formatter-rule-list{max-height:min(460px,calc(100vh - 220px))}.image-prompt-preset-detail{-webkit-line-clamp:3;font-size:11px}.settings-empty{padding:44px 24px;text-align:center;color:var(--color-text-muted);font-size:13.5px;font-weight:500;border:2px dashed rgba(28,27,23,.1);border-radius:14px;background:linear-gradient(135deg,#1c1b1703,#1c1b1706);letter-spacing:.1px;opacity:.85}.settings-empty.compact{padding:28px 16px;font-size:12.5px}.settings-tab-desc{padding:20px;border:1.5px solid rgba(28,27,23,.08);border-radius:14px;background:linear-gradient(135deg,#1c1b1705,#fffc);margin-top:auto;box-shadow:0 1px 4px #00000005}.settings-tab-desc h4{margin:0 0 10px;font-size:13px;font-weight:700;color:var(--color-text-main);letter-spacing:.2px}.settings-tab-desc p{margin:0;font-size:12.5px;line-height:1.7;color:var(--color-text-muted)}.settings-storage-btn.secondary{background:#fff;color:var(--color-text-main);border:1px solid rgba(28,27,23,.15)}.settings-storage-btn.secondary:hover{background:#1c1b170a;border-color:#1c1b1740}.settings-storage-btn.primary{background:var(--color-brand-gradient);color:#fff;border:none;box-shadow:0 2px 8px rgba(var(--color-brand-rgb),.2)}.settings-storage-btn.primary:hover{box-shadow:0 4px 12px rgba(var(--color-brand-rgb),.3);transform:translateY(-1px)}.settings-storage-input-wrapper input.settings-secret-input{padding-right:38px!important}.settings-secret-toggle{position:absolute;right:8px;top:50%;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:0;border-radius:6px;background:transparent;color:var(--color-text-muted);transform:translateY(-50%);cursor:pointer}.settings-secret-toggle:hover{background:#1c1b170f;color:var(--color-text-main)}.settings-tab-desc p{margin:0;font-size:11px;line-height:1.5;color:var(--color-text-muted)}.settings-tab-pane label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:var(--color-text-muted);width:100%}.settings-tab-pane input[type=text],.settings-tab-pane input[type=password]{width:100%;padding:10px 12px;border:1px solid var(--color-border-card);border-radius:8px;background:var(--color-surface-strong);color:var(--color-text-main);transition:border-color .2s,box-shadow .2s;outline:none;font-size:13px}.settings-tab-pane input[type=text]:focus,.settings-tab-pane input[type=password]:focus{border-color:var(--color-brand-start);box-shadow:0 0 0 3px rgba(var(--color-brand-rgb),.12)}.settings-model-subhead{display:flex;justify-content:space-between;align-items:center;margin-top:18px;margin-bottom:8px;font-size:12px;color:var(--color-text-main)}.settings-model-subhead strong{font-weight:700}.settings-confirm-btn{height:26px;padding:0 10px;border:0;border-radius:6px;background:var(--color-brand-gradient);color:#fff;font-size:11px;font-weight:600;box-shadow:0 2px 6px rgba(var(--color-brand-rgb),.15);transition:all .2s}.settings-confirm-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 10px rgba(var(--color-brand-rgb),.25)}.settings-confirm-btn:disabled{background:#1c1b1714;color:var(--color-text-muted);box-shadow:none;cursor:not-allowed}.settings-model-status{font-size:11px;color:var(--color-brand-start);margin-top:4px;font-weight:500}.sidebar-section-title{display:flex;align-items:center;justify-content:space-between;padding:14px 14px 6px;font-size:11px;font-weight:700;text-transform:uppercase;color:var(--color-text-muted);letter-spacing:.5px}.sidebar-add-provider-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:0;border-radius:4px;background:transparent;color:var(--color-text-muted);cursor:pointer;transition:all .2s}.sidebar-add-provider-btn:hover{background:#1c1b1714;color:var(--color-text-main)}.sidebar-provider-list{display:flex;flex-direction:column;gap:4px;max-height:240px;overflow-y:auto;padding-left:4px}.sidebar-tab-btn.sub-item{padding:8px 12px 8px 16px;font-size:12.5px;border-radius:8px}.provider-tab-dot-wrapper{display:flex;align-items:center;margin-right:2px}.provider-status-dot{width:6px;height:6px;border-radius:50%;transition:background-color .2s,box-shadow .2s}.provider-status-dot.on{background:#10b981;box-shadow:0 0 6px rgba(var(--color-success-rgb),.6)}.provider-status-dot.off{background:#9ca3af}.provider-tab-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.provider-status-badge{font-size:9px;font-weight:700;padding:2px 4px;border-radius:4px;background:rgba(var(--color-success-rgb),.1);color:#10b981;margin-left:6px}.settings-provider-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:1px solid var(--color-border-card);margin-bottom:8px}.settings-provider-header h2{margin:0;font-size:18px;font-weight:700;color:var(--color-text-main)}.settings-provider-header-actions{display:flex;align-items:center;gap:16px}.provider-enable-switch{position:relative;display:block!important;width:44px!important;min-width:44px!important;height:24px!important;cursor:pointer!important;flex-shrink:0!important;margin:0!important;-webkit-user-select:none;-moz-user-select:none;user-select:none}.provider-enable-switch input{opacity:0;width:0;height:0}.provider-enable-switch .slider{position:absolute;cursor:pointer;inset:0;background-color:#1c1b171f;transition:all .35s cubic-bezier(.25,.8,.25,1.15);border-radius:24px;border:1px solid rgba(28,27,23,.03)}.provider-enable-switch:hover .slider{background-color:#1c1b172e}.provider-enable-switch .slider:before{position:absolute;content:"";height:20px;width:20px;left:1px;bottom:1px;background-color:#fff;transition:all .35s cubic-bezier(.25,.8,.25,1.15);border-radius:50%;box-shadow:0 2px 4px #0000001f,0 0 1px #0000001a}.provider-enable-switch:active .slider:before{width:24px}.provider-enable-switch input:checked+.slider{background-color:#10b981;border-color:rgba(var(--color-success-rgb),.1);box-shadow:0 2px 6px rgba(var(--color-success-rgb),.15)}.provider-enable-switch input:checked+.slider:before{transform:translate(20px)}.provider-enable-switch input:checked:active+.slider:before{transform:translate(16px)}.provider-delete-btn{display:flex;align-items:center;justify-content:center;width:32px;min-width:32px;height:32px;flex-shrink:0;margin:0;border:1px solid var(--color-border-card);border-radius:8px;background:var(--color-surface-strong);color:var(--color-text-main);cursor:pointer;transition:all .2s}.provider-delete-btn:hover{background:#ef44440d;border-color:#ef444433;color:#ef4444}.settings-input-with-action{display:flex;gap:8px;position:relative}.settings-input-with-action input{flex:1}.settings-input-btn{flex-shrink:0;height:38px;padding:0 14px;border:1px solid var(--color-border-card);border-radius:8px;background:#1c1b1705;color:var(--color-text-main);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.settings-input-btn:hover:not(:disabled){background:#1c1b170f;border-color:var(--color-border-hover)}.settings-input-btn:disabled{opacity:.5;cursor:not-allowed}.settings-input-btn.test-btn{background:var(--color-brand-gradient);color:#fff;border:0;box-shadow:0 2px 6px rgba(var(--color-brand-rgb),.15)}.settings-input-btn.test-btn:hover{opacity:.9;transform:translateY(-.5px)}.settings-secret-toggle-inline{position:absolute;right:86px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--color-text-muted);cursor:pointer;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px}.settings-secret-toggle-inline:hover{background:#1c1b170f}.settings-input-with-action input[type=password],.settings-input-with-action input[type=text]{padding-right:120px!important}.test-status-text{font-size:11px;font-weight:600;margin-top:4px}.test-status-text.success{color:#10b981}.test-status-text.failed{color:#ef4444}.settings-model-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.settings-model-badge-btn{display:flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--color-border-card);border-radius:20px;background:var(--color-surface-strong);color:var(--color-text-main);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.settings-model-badge-btn:hover{background:#1c1b1705;border-color:var(--color-border-hover)}.model-count-badge{font-size:11px;font-weight:700;padding:2px 6px;border-radius:99px;background:rgba(var(--color-brand-rgb),.12);color:var(--color-brand-start)}.settings-model-refresh-btn{height:30px;padding:0 12px;border:1px solid var(--color-border-card);border-radius:8px;background:#1c1b1705;color:var(--color-text-main);font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.settings-model-refresh-btn:hover:not(:disabled){background:#1c1b170d}.settings-model-refresh-btn:disabled{opacity:.6;cursor:not-allowed}.settings-model-list.inline{max-height:240px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleUp{0%{transform:scale(.96);opacity:0}to{transform:scale(1);opacity:1}}@keyframes popIn{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}@keyframes slideDown{0%{transform:translateY(-8px);opacity:0}to{transform:translateY(0);opacity:1}}.select-model-overlay{background:#0f0f0a66;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn .25s ease-out}.select-model-card{width:min(580px,calc(100vw - 48px));max-height:85vh;box-shadow:0 20px 50px #00000026,0 0 1px #0003;border:1px solid var(--color-border-card);border-radius:16px;background:var(--color-surface-strong);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:scaleUp .3s cubic-bezier(.34,1.56,.64,1);overflow:hidden}.select-model-body{padding:18px 20px;display:flex;flex-direction:column;gap:14px;flex:1;min-height:0}.modal-search-group{display:flex;position:relative;width:100%}.modal-search-group .settings-search{display:flex;align-items:center;position:relative;width:100%;border:1.5px solid var(--color-border-card, #eef0f3);border-radius:10px;background:var(--color-surface);overflow:hidden;transition:all .25s ease}.modal-search-group .settings-search:focus-within{border-color:var(--color-brand-start, #ff5c7a);box-shadow:0 0 0 3px rgba(var(--color-brand-rgb),.12),0 4px 12px rgba(var(--color-brand-rgb),.05);background:var(--color-surface-strong)}.modal-search-group .settings-search input{border:0!important;background:transparent!important;width:100%;height:38px;font-size:13px!important;padding:8px 12px 8px 34px!important;color:var(--color-text-main, #1c1b17);outline:none!important}.modal-search-group .settings-search .search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--color-text-muted, #8a8880);pointer-events:none;transition:color .2s}.modal-search-group .settings-search:focus-within .search-icon{color:var(--color-brand-start, #ff5c7a)}.modal-search-add-btn{display:flex;align-items:center;gap:4px;height:28px;margin-right:6px;padding:0 12px;border:none;border-radius:6px;background:var(--color-brand-gradient, linear-gradient(135deg, #ff5c7a, #ff8142));color:#fff;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;animation:popIn .2s cubic-bezier(.34,1.56,.64,1);box-shadow:0 2px 6px rgba(var(--color-brand-rgb),.2);transition:transform .2s,filter .2s}.modal-search-add-btn:hover{transform:scale(1.03);filter:brightness(1.05)}.modal-search-add-btn:active{transform:scale(.97)}.modal-model-add-suggestion{display:flex;align-items:center;gap:12px;padding:10px 14px;background:rgba(var(--color-brand-rgb),.04);border:1px dashed var(--color-brand-start, #ff5c7a);border-radius:8px;cursor:pointer;transition:all .2s ease;margin-bottom:6px;animation:slideDown .25s ease-out}.modal-model-add-suggestion:hover{background:rgba(var(--color-brand-rgb),.08);transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--color-brand-rgb),.08)}.suggestion-icon-wrapper{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--color-brand-gradient, linear-gradient(135deg, #ff5c7a, #ff8142));color:#fff;box-shadow:0 2px 6px rgba(var(--color-brand-rgb),.2)}.modal-model-checkbox-list{display:flex;flex-direction:column;gap:6px;height:280px;overflow-y:auto;border:1.5px solid var(--color-border-card, #eef0f3);border-radius:12px;padding:8px;background:#1c1b1704}.modal-model-checkbox-list::-webkit-scrollbar{width:6px}.modal-model-checkbox-list::-webkit-scrollbar-track{background:transparent}.modal-model-checkbox-list::-webkit-scrollbar-thumb{background:#1c1b1714;border-radius:3px}.modal-model-checkbox-list::-webkit-scrollbar-thumb:hover{background:#1c1b1733}.modal-model-checkbox-row{border-radius:8px;transition:all .2s ease;border:1px solid transparent}.modal-model-checkbox-row:hover{background:#1c1b170a;transform:translate(2px)}.modal-model-checkbox-row.checked{background:rgba(var(--color-brand-rgb),.05);border-color:rgba(var(--color-brand-rgb),.15)}.modal-model-checkbox-row.checked:hover{background:rgba(var(--color-brand-rgb),.07)}.modal-model-checkbox-label{display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;width:100%}.modal-model-checkbox-label input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:16px;height:16px;border:1.5px solid var(--color-border-card, #ccc);border-radius:4px;outline:none;background-color:#fff;cursor:pointer;position:relative;transition:all .2s ease}.modal-model-checkbox-label input[type=checkbox]:checked{background-color:var(--color-brand-start, #ff5c7a);border-color:var(--color-brand-start, #ff5c7a)}.modal-model-checkbox-label input[type=checkbox]:checked:after{content:"";position:absolute;left:4.5px;top:1px;width:4px;height:8px;border:solid white;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}.modal-model-info{display:flex;flex-direction:column;gap:2px}.modal-model-name{font-size:13px;font-weight:600;color:var(--color-text-main)}.modal-model-remote-id{font-size:11px;color:var(--color-text-muted)}.select-model-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-top:1.5px solid var(--color-border-card, #eef0f3);background:#1c1b1704}.footer-left,.footer-right{display:flex;gap:8px}.modal-btn{height:32px;padding:0 16px;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent}.modal-btn.primary{background:var(--color-brand-gradient, linear-gradient(135deg, #ff5c7a, #ff8142));color:#fff;box-shadow:0 2px 8px rgba(var(--color-brand-rgb),.2)}.modal-btn.primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--color-brand-rgb),.3);filter:brightness(1.05)}.modal-btn.primary:active{transform:translateY(0)}.modal-btn.secondary{background:var(--color-surface-strong);border:1.5px solid var(--color-border-card, #eef0f3);color:var(--color-text-main, #1c1b17)}.modal-btn.secondary:hover{background:#1c1b1708;border-color:#1c1b171f}.settings-input-with-action{display:flex;width:100%;gap:8px;align-items:center;position:relative}.settings-input-with-action input{flex:1;width:100%;height:38px;border:1.2px solid rgba(28,27,23,.08);border-radius:8px;padding:0 12px;font-size:13.5px;background:#fff;color:var(--color-text-main);box-shadow:0 1px 2px #1c1b1703;transition:all .25s cubic-bezier(.25,.8,.25,1)}.settings-input-with-action input:hover{border-color:#1c1b172e}.settings-input-with-action input:focus{border-color:var(--color-brand-start);box-shadow:0 0 0 3.5px rgba(var(--color-brand-rgb),.09),0 1px 3px rgba(var(--color-brand-rgb),.03);outline:none}.settings-model-header-row .settings-model-refresh-btn{margin-left:auto}@keyframes green-pulse{0%{box-shadow:0 0 rgba(var(--color-success-rgb),.5)}70%{box-shadow:0 0 0 6px rgba(var(--color-success-rgb),0)}to{box-shadow:0 0 rgba(var(--color-success-rgb),0)}}.model-active-badge{font-size:10px!important;font-weight:700!important;color:#10b981!important;background:rgba(var(--color-success-rgb),.08)!important;border:1px solid rgba(var(--color-success-rgb),.15)!important;padding:2px 6px!important;border-radius:4px!important;letter-spacing:.5px!important;font-family:var(--font-family-sans)!important;flex-shrink:0}.model-delete-inline-btn{background:transparent!important;border:none!important;color:var(--color-text-muted)!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:4px!important;border-radius:4px!important;transition:all .25s ease!important;opacity:0!important;margin-left:auto!important}.model-delete-inline-btn:hover{background:#ff3b3014!important;color:#ff3b30!important}.sidebar-sub-list{display:flex;flex-direction:column;gap:4px}.select-model-card{width:460px!important;max-height:calc(100% - 32px);display:flex;flex-direction:column;overflow:hidden}.select-model-card .modal-header h3{display:flex;align-items:baseline;gap:6px}.select-model-card .modal-header h3 span{font-weight:500;color:var(--color-text-muted)}.modal-search-add-row{flex-direction:column;gap:12px}.settings-custom-add{width:100%}.modal-model-checkbox-list{flex:1;min-height:0;border-left:0;border-right:0;border-radius:0;margin:0 -20px;padding:8px 16px;background:transparent}.modal-model-info{min-width:0;flex:1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;-moz-column-gap:16px;column-gap:16px}.modal-model-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-model-remote-id{flex:0 0 auto;white-space:nowrap}.prompt-formatter-tool-row .custom-select{width:200px;flex:none;margin-left:auto}.prompt-formatter-tool-row .custom-select-trigger{height:34px;font-size:13px;border-radius:9px;padding:0 36px 0 14px}.prompt-formatter-tool-row .custom-select-arrow{position:absolute;right:12px}.generation-default-control .custom-select{width:100%}.generation-default-control .custom-select-trigger{height:42px;font-size:13.5px;border-radius:10px;padding:0 40px 0 14px}.custom-select{position:relative;width:100%}.custom-select-trigger{position:relative;width:100%;height:38px;padding:0 36px 0 14px;border:1.5px solid var(--color-border-card);border-radius:10px;background:var(--color-surface-strong);color:var(--color-text-main);font-size:13px;font-weight:500;outline:none;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;text-align:left;box-shadow:0 1px 3px #00000008,0 1px 2px #00000005}.custom-select-trigger:hover:not(:disabled){border-color:var(--color-border-hover);background:var(--color-surface-strong);box-shadow:0 3px 8px #0000000d,0 1px 3px #00000008;transform:translateY(-1px)}.custom-select-trigger:focus:not(:disabled),.custom-select-trigger.open{border-color:var(--color-brand-start, #ff5c7a);background:var(--color-surface-strong);box-shadow:0 0 0 3px rgba(var(--color-brand-rgb),.08),0 4px 12px rgba(var(--color-brand-rgb),.12);transform:translateY(0)}.custom-select-trigger:disabled{color:var(--color-text-muted);background:var(--color-surface);opacity:.6;cursor:not-allowed;box-shadow:none}.custom-select.disabled{opacity:.6;pointer-events:none}.custom-select-value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-select-arrow{position:absolute;right:12px;top:50%;transform:translateY(-50%);flex-shrink:0;color:var(--color-text-muted);transition:all .25s cubic-bezier(.4,0,.2,1);pointer-events:none}.custom-select-trigger:hover:not(:disabled) .custom-select-arrow{color:var(--color-text-main)}.custom-select-trigger.open .custom-select-arrow{transform:translateY(-50%) rotate(180deg);color:var(--color-brand-start)}.custom-select-dropdown{position:absolute;top:calc(100% + 8px);left:0;right:0;max-height:320px;overflow-y:auto;background:var(--color-surface-strong);border:1.5px solid var(--color-border-card);border-radius:12px;box-shadow:0 16px 48px #1c1b172e,0 6px 16px #1c1b171a;padding:8px;z-index:1000;animation:customSelectSlideIn .25s cubic-bezier(.4,0,.2,1)}@keyframes customSelectSlideIn{0%{opacity:0;transform:translateY(-12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.custom-select-option{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border:none;border-radius:8px;background:transparent;color:var(--color-text-main);font-size:13px;font-weight:500;text-align:left;cursor:pointer;transition:all .18s cubic-bezier(.4,0,.2,1);min-height:38px}.custom-select-option:hover{background:linear-gradient(135deg,rgba(var(--color-brand-rgb),.08),rgba(var(--color-brand-rgb),.12));color:var(--color-brand-start);transform:translate(3px);box-shadow:0 2px 8px rgba(var(--color-brand-rgb),.08)}.custom-select-option.selected{background:linear-gradient(135deg,rgba(var(--color-brand-rgb),.12),rgba(var(--color-brand-rgb),.16));color:var(--color-brand-start);font-weight:650}.custom-select-option.selected:hover{background:linear-gradient(135deg,rgba(var(--color-brand-rgb),.16),rgba(var(--color-brand-rgb),.22));transform:translate(3px);box-shadow:0 2px 10px rgba(var(--color-brand-rgb),.12)}.custom-select-check{color:var(--color-brand-start);font-size:15px;font-weight:700;margin-left:10px;animation:checkFadeIn .2s ease}@keyframes checkFadeIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.custom-select-group{margin-top:8px}.custom-select-group:first-child{margin-top:0}.custom-select-group-label{padding:10px 14px 6px;font-size:10.5px;font-weight:700;color:#1c1b1773;letter-spacing:.8px;text-transform:uppercase;background:transparent}.settings-modal select,.settings-panel-content select{height:38px;padding:0 36px 0 14px;border:1.5px solid rgba(28,27,23,.1);border-radius:10px;background:var(--color-surface);color:var(--color-text-main);font-size:13px;font-weight:500;outline:none;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='13' viewBox='0 0 24 24' fill='none' stroke='%231c1b17' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;box-shadow:0 1px 2px #00000005}.settings-modal select:hover,.settings-panel-content select:hover{border-color:#1c1b173d;background-color:#fff;box-shadow:0 2px 6px #0000000a}.settings-modal select:focus,.settings-panel-content select:focus{border-color:var(--color-brand-start, #ff5c7a);background-color:#fff;box-shadow:0 0 0 3px rgba(var(--color-brand-rgb),.08),0 2px 10px rgba(var(--color-brand-rgb),.08)}.settings-modal select:disabled,.settings-panel-content select:disabled{color:var(--color-text-muted);background-color:#f7f7f6;opacity:.7;cursor:not-allowed}.settings-modal select optgroup,.settings-panel-content select optgroup{font-size:11px;font-weight:650;color:#1c1b1780;letter-spacing:.6px;text-transform:uppercase;padding:8px 0 4px;background:#f5f5f4}.settings-modal select option,.settings-panel-content select option{padding:8px 14px;font-size:13px;font-weight:500;color:var(--color-text-main);background:#fff;line-height:1.5;min-height:36px}.settings-modal select option:hover,.settings-panel-content select option:hover{background:linear-gradient(135deg,rgba(var(--color-brand-rgb),.08),rgba(var(--color-brand-rgb),.12));color:var(--color-brand-start)}.settings-modal select option:checked,.settings-panel-content select option:checked{background:linear-gradient(135deg,rgba(var(--color-brand-rgb),.12),rgba(var(--color-brand-rgb),.16));color:var(--color-brand-start);font-weight:600}.generation-defaults-form{display:flex;flex-direction:column;gap:24px;margin-top:8px}.generation-default-row{display:flex;flex-direction:column;gap:12px}.generation-default-label{color:var(--color-text-main);font-size:13.5px;font-weight:650;letter-spacing:.2px;opacity:.95}.generation-default-control{min-width:0}.generation-default-select{width:100%;height:42px;padding:0 40px 0 14px;border:1.5px solid rgba(28,27,23,.1);border-radius:10px;background:var(--color-surface);color:var(--color-text-main);font-size:13.5px;font-weight:500;line-height:42px;outline:none;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%231c1b17' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;box-shadow:0 1px 3px #00000005}.generation-default-select:hover{border-color:var(--color-border-hover);background-color:var(--color-surface-strong);box-shadow:0 2px 6px #0000000a}.generation-default-select:focus{border-color:var(--color-brand-start, #ff5c7a);background-color:var(--color-surface-strong);box-shadow:0 0 0 3px rgba(var(--color-brand-rgb),.08),0 2px 10px rgba(var(--color-brand-rgb),.08)}.generation-default-select optgroup{font-size:11.5px;font-weight:650;color:#1c1b1780;letter-spacing:.6px;text-transform:uppercase;padding:8px 0 4px;background:#f5f5f4}.generation-default-select option{padding:10px 14px;font-size:13.5px;font-weight:500;color:var(--color-text-main);background:#fff;line-height:1.4}.prompt-formatter-settings{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px 18px;margin-top:6px}.settings-tab-pane .prompt-formatter-check{display:inline-flex;flex-direction:row;align-items:center;gap:11px;min-height:38px;padding:8px 12px;margin:0;color:var(--color-text-main);font-size:13px;font-weight:500;border-radius:9px;transition:all .2s cubic-bezier(.4,0,.2,1);cursor:pointer;border:1.5px solid transparent}.settings-tab-pane .prompt-formatter-check:hover{background:linear-gradient(135deg,rgba(var(--color-brand-rgb),.04),rgba(var(--color-brand-rgb),.06));border-color:rgba(var(--color-brand-rgb),.12);transform:translateY(-1px);box-shadow:0 2px 6px #00000008}.prompt-formatter-tool-row .prompt-formatter-check{min-height:34px;padding:8px 12px;margin:0;background:linear-gradient(135deg,rgba(var(--color-brand-rgb),.04),rgba(var(--color-brand-rgb),.06));border:1.5px solid rgba(var(--color-brand-rgb),.12);border-radius:9px;transition:all .2s cubic-bezier(.4,0,.2,1)}.prompt-formatter-tool-row .prompt-formatter-check:hover{background:linear-gradient(135deg,rgba(var(--color-brand-rgb),.08),rgba(var(--color-brand-rgb),.12));border-color:rgba(var(--color-brand-rgb),.24);transform:translateY(-1px);box-shadow:0 2px 6px rgba(var(--color-brand-rgb),.15)}.settings-tab-pane .prompt-formatter-rule-enabled,.settings-tab-pane .prompt-formatter-rule-flag{display:inline-flex;flex-direction:row;align-items:center;gap:10px;min-height:32px;margin:0;color:var(--color-text-main);font-size:13px;font-weight:500}.prompt-formatter-check input,.prompt-formatter-rule-enabled input,.prompt-formatter-rule-flag input{width:15px;height:15px;margin:0;cursor:pointer;accent-color:var(--color-brand-start, #ff5c7a)}.prompt-formatter-rule-list{display:flex;flex-direction:column;gap:8px}.prompt-formatter-rule{display:grid;grid-template-columns:24px minmax(120px,1fr) minmax(120px,1fr) 48px 48px 32px;align-items:center;gap:8px;padding:8px;border:1px solid rgba(28,27,23,.08);border-radius:8px;background:var(--color-surface-strong)}.prompt-formatter-rule input[type=text]{min-width:0}.prompt-formatter-rule-flag{justify-content:center;padding:0 6px;border-radius:6px;background:#1c1b170a}.prompt-formatter-add-rule{margin-top:12px}.confirm-overlay{z-index:2500}.confirm-dialog-card{width:min(380px,calc(100vw - 40px));border:1px solid rgba(28,27,23,.05);border-radius:14px;background:var(--color-surface-strong);box-shadow:0 20px 50px #0000001f,0 4px 16px #0000000a;overflow:hidden}.confirm-dialog-panel{min-width:min(360px,calc(100vw - 48px))}.confirm-dialog-panel p{margin:0;padding:4px 0 18px;color:var(--color-text-muted);font-size:13px;line-height:1.55}.confirm-dialog-panel .confirm-dialog-actions{margin:0 -20px -20px}.confirm-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 10px}.confirm-dialog-header h3{margin:0;color:var(--color-text-main);font-size:16px;font-weight:800}.confirm-dialog-card p{margin:0;padding:0 18px 18px;color:var(--color-text-muted);font-size:13px;line-height:1.55}.confirm-dialog-warning,.confirm-dialog-error{display:block;margin-top:10px;padding:9px 10px;border-radius:8px;font-size:12px}.confirm-dialog-warning{background:#f59e0b17;color:#a16207}.confirm-dialog-error{background:#ef444414;color:#dc2626}.confirm-dialog-actions{display:flex;justify-content:flex-end;gap:10px;padding:14px 18px;border-top:1px solid rgba(28,27,23,.05);background:#1c1b1704}.confirm-dialog-btn{height:34px;padding:0 16px;border:1px solid transparent;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;transition:all .25s cubic-bezier(.25,.8,.25,1)}.confirm-dialog-btn:disabled,.modal-close-btn:disabled{cursor:not-allowed;opacity:.55;transform:none}.confirm-dialog-btn.secondary{border-color:var(--color-border-card);background:var(--color-surface-strong);color:var(--color-text-main)}.confirm-dialog-btn.secondary:hover{background:#1c1b1708;border-color:#1c1b1733;transform:translateY(-.5px)}.confirm-dialog-btn.secondary:active{transform:translateY(.5px)}.confirm-dialog-btn.primary{background:var(--color-brand-gradient);color:#fff;box-shadow:0 2px 6px rgba(var(--color-brand-rgb),.2)}.confirm-dialog-btn.primary:hover{filter:brightness(1.05);transform:translateY(-.5px);box-shadow:0 4px 10px rgba(var(--color-brand-rgb),.25)}.confirm-dialog-btn.primary:active{transform:translateY(.5px);box-shadow:0 2px 6px rgba(var(--color-brand-rgb),.2)}.confirm-dialog-btn.danger{background:#ef4444;color:#fff;box-shadow:0 4px 10px #ef444438}.confirm-dialog-btn.danger:hover{filter:brightness(1.05);transform:translateY(-.5px);box-shadow:0 6px 14px #ef444447}.confirm-dialog-btn.danger:active{transform:translateY(.5px);box-shadow:0 4px 10px #ef444438}.ws-asset-library{position:absolute;top:var(--canvas-overlay-top);left:var(--canvas-chrome-gutter);z-index:1200;width:340px;height:var(--canvas-overlay-h);transform:translate(calc(-340px - var(--canvas-chrome-gutter) - 16px));transition:transform .4s cubic-bezier(.16,1,.3,1),opacity .3s ease;display:flex;flex-direction:column;background:var(--color-surface-strong);border:1px solid var(--color-border-card);border-radius:20px;box-shadow:var(--shadow-lg);overflow:hidden}.ws-asset-library.open{transform:translate(0)}.ws-asset-library-tabs{display:flex;gap:6px;padding:12px 16px 0}.ws-asset-library-tabs button{flex:1;height:32px;border:1px solid transparent;border-radius:9px;background:#1c1b170a;color:var(--color-text-muted);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.ws-asset-library-tabs button:hover{background:#1c1b1712;color:var(--color-text-main)}.ws-asset-library-tabs button.active{background:rgba(var(--color-brand-rgb),.1);border-color:rgba(var(--color-brand-rgb),.2);color:var(--color-brand-start)}.ws-asset-library-tabs.media-tabs{padding-top:8px}.ws-asset-library-tabs.media-tabs button{height:28px;font-size:12px;border-radius:8px}.ws-asset-library-tabs.source-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:5px}.ws-asset-library-search{position:relative;display:flex;align-items:center;margin:8px 16px 0;height:32px;color:var(--color-text-muted)}.ws-asset-library-search>svg{position:absolute;left:10px;pointer-events:none}.ws-asset-library-search input{width:100%;height:100%;padding:0 10px 0 31px;border:1px solid var(--color-border-card);border-radius:9px;outline:none;background:#1c1b1709;color:var(--color-text-main);font:inherit;font-size:12px;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.ws-asset-library-search input::-moz-placeholder{color:var(--color-text-muted)}.ws-asset-library-search input::placeholder{color:var(--color-text-muted)}.ws-asset-library-search input:focus{border-color:rgba(var(--color-brand-rgb),.35);background:var(--color-surface-strong);box-shadow:0 0 0 3px rgba(var(--color-brand-rgb),.08)}.ws-asset-library-toolbar{padding:10px 16px 0}.ws-asset-library-grid{flex:1;min-height:0;overflow-y:auto;display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:max-content;gap:10px;padding:12px 16px 16px;align-content:start}.ws-asset-library-item{display:flex;flex-direction:column;border:1px solid var(--color-border-card);border-radius:12px;background:var(--color-surface-strong);overflow:hidden;cursor:grab;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.ws-asset-library-item:hover{transform:translateY(-2px);border-color:rgba(var(--color-brand-rgb),.25);box-shadow:0 6px 16px #1c1b1714}.ws-asset-library-item:active{cursor:grabbing}.ws-asset-library-thumb{position:relative;width:100%;height:120px;flex-shrink:0;background:#1c1b170a;display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer}.ws-asset-library-card-actions{position:absolute;top:7px;right:7px;z-index:3;display:flex;align-items:center;gap:5px;opacity:0;transform:translateY(-2px);transition:opacity .16s ease,transform .16s ease}.ws-asset-library-card-action{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;padding:0;border:1px solid rgba(255,255,255,.72);border-radius:7px;background:#ffffffe6;color:var(--color-text-main);box-shadow:0 2px 8px #1c1b1721;cursor:pointer;transition:background .16s ease,color .16s ease,transform .16s ease}.ws-asset-library-item:hover .ws-asset-library-card-actions,.ws-asset-library-item:focus-within .ws-asset-library-card-actions{opacity:1;transform:translateY(0)}.ws-asset-library-card-action:hover{background:#fff;color:var(--color-brand-start);transform:translateY(-1px)}.ws-asset-library-card-action.danger{color:#dc2626}.ws-asset-library-card-action.danger:hover{color:#b91c1c}.ws-asset-library-card-action:focus-visible{outline:2px solid rgba(var(--color-brand-rgb),.32);outline-offset:2px}.ws-asset-library-card-action:disabled{cursor:wait;opacity:.55;transform:none}.ws-asset-library-thumb img,.ws-asset-library-thumb video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.ws-asset-library-audio{color:var(--color-text-muted)}.ws-asset-library-type{position:absolute;top:6px;left:6px;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:6px;background:#1c1b178c;color:#fff;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.ws-asset-library-type.image{background:rgba(var(--color-media-image-rgb),.7)}.ws-asset-library-type.video{background:rgba(var(--color-media-video-rgb),.7)}.ws-asset-library-type.audio{background:rgba(var(--color-media-audio-rgb),.7)}.ws-asset-library-delete-btn{position:absolute;top:6px;right:6px;z-index:2;display:none;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:6px;background:#dc2626e6;color:#fff;cursor:pointer;transition:all .15s ease;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.ws-asset-library-delete-btn:hover{background:#b91c1c;transform:scale(1.05)}.ws-asset-library-delete-btn:active{transform:scale(.95)}.ws-asset-library-item:hover .ws-asset-library-delete-btn{display:inline-flex}.ws-asset-library-meta{display:flex;align-items:center;gap:6px;padding:6px 8px}.ws-asset-library-name{flex:1;min-width:0;font-size:11.5px;color:var(--color-text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-asset-library-actions{display:flex;align-items:center;gap:4px;flex:0 0 auto}.ws-asset-library-action{width:22px;height:22px;border:0;border-radius:6px;background:#1c1b170d;color:var(--color-text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .18s ease}.ws-asset-library-action:hover{background:rgba(var(--color-brand-rgb),.12);color:var(--color-brand-start)}.ws-asset-library-action.active{background:rgba(var(--color-success-rgb),.14);color:#10b981;cursor:default}.ws-asset-library-action.danger:hover{background:#ef44441f;color:#ef4444}.ws-asset-library-empty{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:48px 16px;color:var(--color-text-muted);text-align:center;font-size:13px}.ws-tldraw-file-drop-overlay{position:absolute;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:rgba(var(--color-brand-rgb),.06);border:2px dashed rgba(var(--color-brand-rgb),.5);border-radius:12px;pointer-events:none}.ws-tldraw-file-drop-card{display:flex;flex-direction:column;align-items:center;gap:10px;padding:22px 30px;border-radius:16px;background:var(--color-surface-strong);box-shadow:0 10px 30px #1c1b171f;color:var(--color-brand-start);font-size:14px;font-weight:600}.ws-asset-preview-overlay{position:absolute;inset:0;z-index:1400;display:flex;align-items:center;justify-content:center;padding:48px;background:#1c1b178c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.ws-asset-preview-card{position:relative;max-width:min(80vw,1100px);max-height:86vh;display:flex;flex-direction:column;align-items:center;gap:12px;padding:18px;background:var(--color-surface-strong);border:1px solid var(--color-border-card);border-radius:18px;box-shadow:var(--shadow-lg)}.ws-asset-preview-close{position:absolute;top:10px;right:10px;width:30px;height:30px;border:0;border-radius:8px;background:#1c1b170f;color:var(--color-text-main);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .18s ease}.ws-asset-preview-close:hover{background:#ef44441f;color:#ef4444}.ws-asset-preview-media{max-width:100%;max-height:74vh;-o-object-fit:contain;object-fit:contain;border-radius:12px;background:#1c1b170a}.ws-asset-preview-audio{display:flex;flex-direction:column;align-items:center;gap:16px;padding:40px 48px;color:var(--color-text-muted)}.ws-asset-preview-name{max-width:100%;font-size:13px;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-row{padding-top:6px;padding-bottom:6px;padding-right:8px}.project-row-open{flex:1;min-width:0;display:flex;align-items:center;gap:10px;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;padding:0}.project-row-open span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-row-actions{display:flex;align-items:center;gap:2px;flex-shrink:0;opacity:0;transition:opacity .18s ease}.project-row:hover .project-row-actions,.project-row.active .project-row-actions{opacity:1}.project-row-actions button{width:24px;height:24px;border:0;border-radius:6px;background:transparent;color:var(--color-text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.project-row-actions button:hover{background:var(--color-active-soft);color:var(--color-brand-start)}.project-rename-input{flex:1;min-width:0;height:26px;border:1px solid var(--color-brand-start);border-radius:6px;padding:0 8px;font-size:13px;background:var(--color-surface-strong);color:var(--color-text-main);outline:none}.director-desk-overlay{position:fixed;inset:0;z-index:10000;background:var(--color-bg-base);display:flex;align-items:center;justify-content:center;padding:0}.director-desk-container{position:relative;width:100%;height:100%;max-width:none;border-radius:0;overflow:hidden;box-shadow:none;background:var(--color-bg-base)}.director-desk-frame{width:100%;height:100%;border:0;display:block}.director-desk-loading{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px;color:var(--color-text-main);background:radial-gradient(circle at 50% 38%,rgba(var(--color-brand-rgb),.14),transparent 34%),linear-gradient(145deg,var(--color-bg-base),var(--color-surface-strong));text-align:center}.director-desk-loading.is-error{background:radial-gradient(circle at 50% 38%,rgba(var(--color-danger-rgb),.15),transparent 34%),linear-gradient(145deg,var(--color-bg-base),var(--color-surface-strong))}.director-desk-loading strong{font-size:16px;font-weight:650;letter-spacing:.02em}.director-desk-loading span{max-width:360px;color:var(--color-text-muted);font-size:13px;line-height:1.6}.director-desk-loading-actions{display:flex;align-items:center;gap:8px;margin-top:8px}.director-desk-loading-actions button{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 13px;border:1px solid var(--color-border-card);border-radius:8px;color:var(--color-text-main);background:var(--color-surface);transition:background .18s ease,border-color .18s ease}.director-desk-loading-actions button:hover{border-color:var(--color-border-hover);background:var(--color-active-soft)}.director-desk-close{position:absolute;top:12px;right:12px;z-index:2;width:32px;height:32px;border:0;border-radius:8px;background:#0000008c;color:#fff;display:flex;align-items:center;justify-content:center;transition:background .2s}.director-desk-close:hover{background:rgba(var(--color-danger-rgb),.85)}.ws-quit-confirm-overlay{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;background:#1c1b172e;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.ws-quit-confirm-card{width:min(400px,calc(100vw - 48px));padding:24px;border:1px solid var(--color-border-card);border-radius:16px;background:var(--color-surface-strong);box-shadow:var(--shadow-lg);animation:modal-scale-up .24s cubic-bezier(.16,1,.3,1) forwards}.ws-quit-confirm-title{font-size:16px;font-weight:600;color:var(--color-text-strong, #1c1b17);margin-bottom:10px}.ws-quit-confirm-body{font-size:13px;line-height:1.6;color:var(--color-text-muted, #6b6b6b);margin-bottom:20px}.ws-quit-confirm-actions{display:flex;justify-content:flex-end;gap:10px}.ws-quit-confirm-btn{padding:8px 16px;border-radius:10px;font-size:13px;font-weight:500;cursor:pointer;border:1px solid transparent;transition:background .18s,border-color .18s}.ws-quit-confirm-btn.cancel{background:transparent;border-color:var(--color-border-card);color:var(--color-text-strong, #1c1b17)}.ws-quit-confirm-btn.cancel:hover{background:#0000000a}.ws-quit-confirm-btn.danger{background:#f43f5e;color:#fff}.ws-quit-confirm-btn.danger:hover{background:rgba(var(--color-danger-rgb),.85)}.ws-chat-modal-overlay{position:fixed;inset:0;z-index:1400;display:flex;align-items:center;justify-content:center;background:#1c1b171f;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);pointer-events:auto}.ws-chat-modal-card{width:95vw;height:92vh;max-width:none;max-height:none;overflow:hidden;border:1px solid var(--color-border-card);border-radius:20px;background:var(--color-surface-strong);box-shadow:var(--shadow-lg);animation:modal-scale-up .3s cubic-bezier(.16,1,.3,1) forwards}.ws-chat-modal-card .chat-panel-full{width:100%;height:100%;display:flex;flex-direction:row;gap:0;padding:0}.chat-full-sidebar{width:260px;flex-shrink:0;display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--color-border-card);background:var(--color-surface)}.chat-full-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 12px;border-bottom:1px solid var(--color-border-card)}.chat-full-sidebar-title{font-weight:700;font-size:13px}.chat-full-sidebar-groups{flex:1;min-height:0;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:12px}.chat-full-group{display:flex;flex-direction:column;gap:4px}.chat-full-group-header{display:flex;align-items:center;gap:6px;width:100%;padding:6px 8px;border:none;border-radius:8px;background:transparent;cursor:pointer;text-align:left;transition:background .15s ease}.chat-full-group-header:hover{background:var(--color-surface-strong)}.chat-full-group-caret{flex-shrink:0;opacity:.6;transition:transform .15s ease}.chat-full-group-caret.collapsed{transform:rotate(-90deg)}.chat-full-group-name{flex:1;min-width:0;font-size:12px;font-weight:600;opacity:.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-full-group-count{flex-shrink:0;font-size:10px;font-weight:600;opacity:.4;padding:1px 6px;border-radius:8px;background:var(--color-surface-strong)}.chat-full-history-item{position:relative;display:flex;flex-direction:column;gap:2px;padding:8px 10px;border:none;border-radius:10px;background:transparent;text-align:left;cursor:pointer;transition:background .15s ease}.chat-full-history-item:hover{background:var(--color-surface-strong)}.chat-full-history-item.active{background:var(--color-surface-strong);box-shadow:inset 0 0 0 1px var(--color-border-card)}.chat-full-history-item .chat-history-name{font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:18px}.chat-full-history-item .chat-history-meta{font-size:10px;opacity:.5}.chat-full-history-item .chat-history-delete{position:absolute;top:8px;right:8px;opacity:0;display:inline-flex;transition:opacity .15s ease}.chat-full-history-item:hover .chat-history-delete{opacity:.6}.chat-full-history-item .chat-history-delete:hover{opacity:1}.chat-panel-full .chat-panel-main{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;gap:0;padding:0}.chat-panel:not(.chat-panel-full) .chat-panel-main{flex:1;min-height:0;display:flex;flex-direction:column}.chat-panel-full .chat-input-wrapper{margin:0 16px 16px}.chat-panel-full .chat-log{padding:16px 20px 10px}.chat-sidebar-preset-selector{position:relative;flex:1;min-width:0}.chat-sidebar-preset-trigger{display:flex;align-items:center;gap:6px;width:100%;padding:6px 10px;border:1px solid var(--color-border-card);border-radius:10px;background:var(--color-surface-strong);cursor:pointer;transition:background .15s ease}.chat-sidebar-preset-trigger:hover{background:var(--color-surface)}.chat-sidebar-preset-name{flex:1;min-width:0;text-align:left;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-sidebar-preset-caret{flex-shrink:0;opacity:.6;transition:transform .2s ease}.chat-sidebar-preset-caret.open{transform:rotate(180deg)}.chat-sidebar-preset-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:20;max-height:300px;overflow-y:auto;padding:4px;border:1px solid var(--color-border-card);border-radius:12px;background:var(--color-surface-strong);box-shadow:var(--shadow-lg)}.chat-sidebar-preset-empty{padding:10px;font-size:12px;opacity:.5;text-align:center}.chat-sidebar-preset-option{display:flex;align-items:center;gap:6px;width:100%;padding:8px 10px;border:none;border-radius:8px;background:transparent;cursor:pointer;transition:background .15s ease}.chat-sidebar-preset-option:hover{background:var(--color-surface)}.chat-sidebar-preset-option.active{background:var(--color-surface);box-shadow:inset 0 0 0 1px var(--color-border-card)}.chat-sidebar-preset-option-name{flex:1;min-width:0;text-align:left;font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-boot-splash{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;background:var(--color-bg-base)}.app-boot-splash-brand{font-family:var(--font-family-title);font-size:30px;font-weight:700;letter-spacing:.02em;background:var(--color-brand-gradient);-webkit-background-clip:text;background-clip:text;color:transparent;animation:app-boot-brand-in .5s cubic-bezier(.16,1,.3,1)}.app-boot-splash-spinner{width:26px;height:26px;border-radius:50%;border:3px solid rgba(var(--color-brand-rgb),.18);border-top-color:var(--color-brand-start);animation:app-boot-spin .9s linear infinite}@keyframes app-boot-spin{to{transform:rotate(360deg)}}@keyframes app-boot-brand-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.app-boot-splash-spinner{animation-duration:2s}.app-boot-splash-brand{animation:none}}:root[data-theme=dark] .settings-modal select,:root[data-theme=dark] .settings-panel-content select,:root[data-theme=dark] .prompt-formatter-style-select,:root[data-theme=dark] .generation-default-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='13' viewBox='0 0 24 24' fill='none' stroke='%23f0ecf2' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E")}button:focus-visible,[role=button]:focus-visible{outline:2px solid rgba(var(--color-brand-rgb),.55);outline-offset:2px}:root[data-theme=dark] .chat-icon-btn:hover{background:#ffffff14}:root[data-theme=dark] .chat-message.assistant{background:#ffffff0a}:root[data-theme=dark] .chat-message-content code{background:#ffffff1a}:root[data-theme=dark] .chat-message-content pre{background:#00000047}:root[data-theme=dark] .chat-input-wrapper{background:#ffffff0a}
