@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Merriweather:ital,wght@0,400;0,700;1,400&family=JetBrains+Mono:wght@400;500&display=swap";.dc-lc-playground{--lc-desc-col: clamp(300px, 42%, 520px);--lc-desc-w: var(--lc-desc-col);--lc-bg: #1a1a1a;--lc-surface: #282828;--lc-surface-elevated: #333;--lc-border: #3a3a3a;--lc-text-primary: #eff1f6;--lc-text-secondary: #ccc;--lc-text-muted: #888;--lc-text-hover: #fff;--lc-code-inline-bg: #333;--lc-code-inline-fg: #e8e8e8;--lc-chip-bg: #333;--lc-link: #ffa116;--lc-input-bg: #1a1a1a;--lc-input-border: #3a3a3a;--lc-input-fg: #ccc;--lc-editor-bg: #282828;--lc-tab-active: #fff;display:grid;grid-template-columns:var(--lc-desc-col) 1fr;grid-template-rows:38px minmax(0,1fr);height:calc(100vh - 50px);overflow:hidden;background:var(--lc-bg);color:var(--lc-text-primary)}[data-theme=light] .dc-lc-playground{--lc-bg: #f5f5f5;--lc-surface: #ffffff;--lc-surface-elevated: #f0f0f0;--lc-border: #e0e0e0;--lc-text-primary: #262626;--lc-text-secondary: #444444;--lc-text-muted: #737373;--lc-text-hover: #111111;--lc-code-inline-bg: #f0f0f0;--lc-code-inline-fg: #333333;--lc-chip-bg: #f0f0f0;--lc-link: #b45309;--lc-input-bg: #fafafa;--lc-input-border: #e0e0e0;--lc-input-fg: #333333;--lc-editor-bg: #ffffff;--lc-tab-active: #262626;color:var(--lc-text-primary)}.dc-lc-playground--resizable{--lc-desc-w: 380px;grid-template-columns:var(--lc-desc-w) 5px minmax(240px,1fr)}.dc-lc-playground--resizable .dc-lc-topbar__left{grid-column:1}.dc-lc-playground--resizable .dc-lc-topbar__right{grid-column:3}.dc-lc-playground--resizable .dc-lc-desc{grid-column:1;grid-row:2}.dc-lc-playground--resizable .dc-lc-splitter--desc{grid-column:2;grid-row:2;z-index:4}.dc-lc-playground--resizable .dc-lc-workspace{grid-column:3;grid-row:2}.dc-lc-playground--resizable[data-desc-narrow] .dc-lc-topbar__nav{display:none}.dc-lc-playground--resizable[data-desc-narrow] .dc-lc-topbar__back{font-size:0;line-height:0;gap:0;padding:4px 6px!important;flex-shrink:0}.dc-lc-playground--resizable[data-desc-narrow] .dc-lc-topbar__back svg{width:14px;height:14px}body.dc-lc-resizing{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}body.dc-lc-resizing--row{cursor:row-resize!important}body.dc-lc-resizing .dc-lc-splitter--desc{background:#ffa116}body.dc-lc-resizing.dc-lc-resizing--row .dc-lc-splitter:not(.dc-lc-splitter--col){background:#ffa116}[data-theme=light] .dc-lc-playground--resizable .dc-lc-splitter--desc:hover,[data-theme=light] body.dc-lc-resizing .dc-lc-splitter--desc{background:#f59e0b}.dc-lc-topbar__left{grid-column:1;grid-row:1;display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;padding:0 12px;border-right:1px solid var(--lc-border);border-bottom:1px solid var(--lc-border);background:var(--lc-surface)}.dc-lc-topbar__right{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:0 12px;border-bottom:1px solid var(--lc-border);background:var(--lc-surface)}[data-theme=light] .dc-lc-topbar__left,[data-theme=light] .dc-lc-topbar__right{background:var(--lc-surface);border-color:var(--lc-border)}.dc-lc-topbar__nav-group{display:flex;align-items:center;gap:6px;min-width:0;flex:1}.dc-lc-topbar__code-meta{display:flex;align-items:center;gap:8px;min-width:0}.dc-lc-topbar__actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.dc-lc-topbar__pane-label{flex-shrink:0;font-size:12px;font-weight:500;color:#888;font-family:system-ui,-apple-system,sans-serif;white-space:nowrap;padding-left:8px}.dc-lc-topbar__pane-label--code{display:inline-flex;align-items:center;gap:5px;color:#aaa;padding-left:0}.dc-lc-topbar__lang-static{font-size:12px;color:#aaa;font-family:system-ui,-apple-system,sans-serif}.dc-lc-topbar__lang .dc-dd__trigger{height:26px;min-width:90px;font-size:12px;font-family:system-ui,-apple-system,sans-serif;background:#333;border-color:#444;color:#ddd}[data-theme=light] .dc-lc-topbar__lang .dc-dd__trigger,[data-theme=light] .dc-lc-topbar__picker .dc-dd__trigger{background:var(--lc-surface-elevated);border-color:var(--lc-border);color:var(--lc-text-primary)}[data-theme=light] .dc-lc-playground .dc-dd__menu{background:var(--lc-surface);border-color:var(--lc-border)}[data-theme=light] .dc-lc-playground .dc-dd__option{color:var(--lc-text-secondary)}[data-theme=light] .dc-lc-playground .dc-dd__option.is-active,[data-theme=light] .dc-lc-playground .dc-dd__option:hover{color:var(--lc-text-primary)}.dc-lc-topbar__back{flex-shrink:0;border-color:transparent!important;background:transparent!important;color:#b3b3b3!important;padding:4px 6px!important;font-family:system-ui,-apple-system,sans-serif!important;font-weight:500!important}.dc-lc-topbar__back:hover{color:#fff!important;background:#3a3a3a!important}[data-theme=light] .dc-lc-topbar__back{color:#666!important}[data-theme=light] .dc-lc-topbar__back:hover{color:#262626!important;background:#f0f0f0!important}.dc-lc-topbar__nav{display:flex;gap:2px;flex-shrink:0}.dc-lc-topbar__icon-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:6px;background:transparent;color:#b3b3b3;cursor:pointer}.dc-lc-topbar__icon-btn:hover:not(:disabled){background:#3a3a3a;color:#fff}.dc-lc-topbar__icon-btn:disabled{opacity:.35;cursor:not-allowed}.dc-lc-topbar__picker{min-width:0;flex:1;max-width:180px}.dc-lc-topbar__picker .dc-dd__trigger{height:26px;font-size:12px;font-family:system-ui,-apple-system,sans-serif;background:#333;border-color:#444;color:#ddd}.dc-lc-topbar__run{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:28px;height:28px;padding:0;border-radius:8px;border:1px solid #555;background:#333;color:#eee;cursor:pointer}.dc-lc-topbar__run-spin{animation:dc-lc-run-spin .75s linear infinite}@keyframes dc-lc-run-spin{to{transform:rotate(360deg)}}.dc-lc-topbar__run:hover:not(:disabled){background:#3d3d3d;border-color:#666}.dc-lc-topbar__run:disabled{opacity:.55;cursor:not-allowed}[data-theme=light] .dc-lc-topbar__run{background:var(--lc-surface);border-color:var(--lc-border);color:var(--lc-text-primary)}[data-theme=light] .dc-lc-topbar__run:hover:not(:disabled){background:var(--lc-surface-elevated);border-color:#c4c4c4;color:var(--lc-text-primary)}.dc-lc-topbar__submit{height:28px;padding:0 14px;border-radius:8px;border:none;background:#2db55d;color:#fff;font-size:13px;font-weight:600;cursor:pointer;font-family:system-ui,-apple-system,sans-serif}.dc-lc-topbar__submit:hover:not(:disabled){background:#28a552}.dc-lc-topbar__submit:disabled{opacity:.55;cursor:not-allowed}.dc-lc-desc{grid-column:1;grid-row:2;min-width:0;min-height:0;display:flex;flex-direction:column;border-right:1px solid var(--lc-border);background:var(--lc-surface);overflow:hidden}[data-theme=light] .dc-lc-desc{background:var(--lc-surface);border-right-color:var(--lc-border)}.dc-lc-desc__body{flex:1;overflow-y:auto;padding:16px 20px 24px;font-size:14px;line-height:1.65;font-family:system-ui,-apple-system,sans-serif}.dc-lc-desc__title{margin:0 0 12px;font-size:22px;font-weight:600;color:var(--lc-text-primary);line-height:1.35;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:-.01em}[data-theme=light] .dc-lc-desc__title{color:var(--lc-text-primary)}.dc-lc-desc__tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.dc-lc-desc__pill{padding:3px 10px;border-radius:999px;font-size:12px;font-weight:500}.dc-lc-desc__pill--easy{background:#2db55d26;color:#2db55d}.dc-lc-desc__pill--medium{background:#ffa11626;color:#ffa116}.dc-lc-desc__pill--hard{background:#ef444426;color:#ef4444}.dc-lc-desc__text{margin-bottom:20px;color:var(--lc-text-secondary);font-size:14px;line-height:1.75}.dc-lc-desc__para{margin:0 0 14px}.dc-lc-desc__para:last-child{margin-bottom:0}[data-theme=light] .dc-lc-desc__text{color:var(--lc-text-secondary)}.dc-lc-desc__example{margin-bottom:16px}.dc-lc-desc__example-label{margin:0 0 6px;font-weight:600;color:var(--lc-text-secondary);font-size:13px}[data-theme=light] .dc-lc-desc__example-label{color:var(--lc-text-primary)}.dc-lc-desc__example-block{margin:0;padding:12px 14px;border-radius:8px;background:var(--lc-input-bg);border:1px solid var(--lc-input-border);font-family:JetBrains Mono,Consolas,monospace;font-size:12px;line-height:1.55;color:var(--lc-input-fg);white-space:pre-wrap;overflow-x:auto}[data-theme=light] .dc-lc-desc__example-block{background:var(--lc-input-bg);border-color:var(--lc-input-border);color:var(--lc-input-fg)}.dc-lc-desc__constraints ul{margin:0;padding-left:18px;color:var(--lc-text-secondary);line-height:1.75}.dc-lc-desc__constraints li{margin-bottom:6px}.dc-lc-desc__constraints code{font-family:JetBrains Mono,Consolas,monospace;font-size:13px;padding:1px 5px;border-radius:4px;background:var(--lc-code-inline-bg);color:var(--lc-code-inline-fg)}.dc-lc-desc__inline-code{padding:1px 5px;border-radius:4px;background:var(--lc-code-inline-bg, #333);color:var(--lc-code-inline-fg, #e8e8e8);font-family:JetBrains Mono,Consolas,monospace;font-size:.92em}.dc-lc-desc__io-block{margin:0;padding:12px 14px;border-radius:8px;background:var(--lc-input-bg);border:1px solid var(--lc-input-border);font-family:JetBrains Mono,Consolas,monospace;font-size:13px;line-height:1.65;color:var(--lc-input-fg)}.dc-lc-desc__io-line{margin-bottom:6px}.dc-lc-desc__io-line:last-child{margin-bottom:0}.dc-lc-desc__io-line strong{color:var(--lc-text-primary);font-weight:600}.dc-lc-desc__io-line--explain{margin-top:8px;color:var(--lc-text-muted, #999);font-family:system-ui,-apple-system,sans-serif;font-size:13px}.dc-lc-desc__accordions{margin-top:20px;border-top:1px solid var(--lc-border, #3a3a3a)}.dc-lc-acc{border-bottom:1px solid var(--lc-border, #3a3a3a)}.dc-lc-acc__head{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 0;border:none;background:none;color:var(--lc-text-primary, #eff1f6);cursor:pointer;font-family:system-ui,-apple-system,sans-serif;font-size:14px;font-weight:500;text-align:left}.dc-lc-acc__head:hover{color:var(--lc-text-hover, #fff)}.dc-lc-acc__head-left{display:flex;align-items:center;gap:10px}.dc-lc-acc__icon{display:flex;color:var(--lc-text-muted, #888)}.dc-lc-acc__chev{color:var(--lc-text-muted, #888);transition:transform .15s ease}.dc-lc-acc__chev--open{transform:rotate(180deg)}.dc-lc-acc__body{padding:0 0 14px 24px}.dc-lc-acc__hint-text{margin:0;font-size:13px;line-height:1.6;color:var(--lc-text-secondary, #ccc);font-family:system-ui,-apple-system,sans-serif}.dc-lc-desc__topic-row{display:flex;flex-wrap:wrap;gap:8px}.dc-lc-desc__topic-chip{padding:4px 10px;border-radius:999px;font-size:12px;background:var(--lc-chip-bg, #333);color:var(--lc-text-secondary, #ccc);font-family:system-ui,-apple-system,sans-serif}.dc-lc-desc__similar-list{list-style:none;margin:0;padding:0}.dc-lc-desc__similar-list li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 0}.dc-lc-desc__similar-link{border:none;background:none;padding:0;color:var(--lc-link, #ffa116);font-size:13px;cursor:pointer;text-align:left;font-family:system-ui,-apple-system,sans-serif}.dc-lc-desc__similar-link:hover{text-decoration:underline}.dc-lc-desc__similar-diff{font-size:11px;flex-shrink:0}.dc-lc-desc__similar-diff--easy{color:#2db55d}.dc-lc-desc__similar-diff--medium{color:#ffa116}.dc-lc-desc__similar-diff--hard{color:#ef4444}.dc-lc-workspace{grid-column:2;grid-row:2;min-width:0;min-height:0;display:flex;flex-direction:column;background:var(--lc-bg);overflow:hidden}[data-theme=light] .dc-lc-workspace{background:var(--lc-bg)}.dc-lc-code{flex:1 1 calc(100% - var(--console-pct, 38%));min-height:140px;display:flex;flex-direction:column;overflow:hidden}.dc-lc-code__editor{flex:1;min-height:0}.dc-lc-splitter{height:5px;flex-shrink:0;cursor:row-resize;background:#3a3a3a;transition:background .12s}.dc-lc-splitter:hover{background:#ffa116}[data-theme=light] .dc-lc-splitter{background:#ddd}[data-theme=light] .dc-lc-splitter:hover{background:#f59e0b}.dc-lc-splitter--col{width:5px;height:auto;flex-shrink:0;cursor:col-resize;align-self:stretch;min-height:0}.dc-lc-splitter--col:hover{background:#ffa116}body.dc-sd-resizing{-webkit-user-select:none;user-select:none;cursor:col-resize}body.dc-sd-resizing--row,body.dc-sd-resizing .dc-lc-splitter{cursor:row-resize}body.dc-sd-resizing .dc-lc-splitter--col{cursor:col-resize}.dc-lc-bottom{flex:0 0 var(--console-pct, 38%);min-height:120px;display:flex;flex-direction:column;border-top:1px solid var(--lc-border);background:var(--lc-surface);overflow:hidden}[data-theme=light] .dc-lc-bottom{background:var(--lc-surface);border-top-color:var(--lc-border)}.dc-lc-bottom__tabs{display:flex;gap:0;padding:0 8px;border-bottom:1px solid var(--lc-border);flex-shrink:0;background:var(--lc-surface)}[data-theme=light] .dc-lc-bottom__tabs{border-bottom-color:var(--lc-border)}.dc-lc-bottom__tab{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;background:none;color:var(--lc-text-muted);font-size:13px;font-weight:500;cursor:pointer;font-family:system-ui,-apple-system,sans-serif}.dc-lc-bottom__tab:hover{color:var(--lc-text-secondary)}.dc-lc-bottom__tab--active{color:var(--lc-tab-active);border-bottom-color:#ffa116}[data-theme=light] .dc-lc-bottom__tab--active{color:var(--lc-tab-active)}.dc-lc-bottom__pane{flex:1;min-height:0;position:relative;overflow:hidden}.dc-lc-testcase{height:100%;padding:12px 14px;overflow-y:auto;background:var(--lc-surface)}.dc-lc-testcase__cases{display:flex;gap:6px;margin-bottom:12px}.dc-lc-testcase__case{padding:4px 12px;border-radius:6px;border:1px solid var(--lc-border);background:var(--lc-surface-elevated);color:var(--lc-text-muted);font-size:12px;cursor:pointer;font-family:system-ui,-apple-system,sans-serif}.dc-lc-testcase__case--active{background:var(--lc-border);border-color:var(--lc-text-muted);color:var(--lc-text-primary)}[data-theme=light] .dc-lc-testcase__case{background:#f5f5f5;border-color:#d4d4d4;color:#666}[data-theme=light] .dc-lc-testcase__case--active{background:#e8e8e8;border-color:#999;color:#262626}.dc-lc-testcase__fields{display:flex;flex-direction:column;gap:10px}.dc-lc-testcase__field span{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--lc-text-muted);margin-bottom:4px}.dc-lc-testcase__field pre{margin:0;padding:10px 12px;border-radius:6px;background:var(--lc-input-bg);border:1px solid var(--lc-input-border);font-family:JetBrains Mono,Consolas,monospace;font-size:12px;color:var(--lc-input-fg);white-space:pre-wrap}[data-theme=light] .dc-lc-testcase__field pre{background:var(--lc-input-bg);border-color:var(--lc-input-border);color:var(--lc-input-fg)}.dc-lc-testcase__empty{color:var(--lc-text-muted);font-size:13px}.dc-lc-result{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;overflow:hidden}.dc-lc-result--hidden{visibility:hidden;pointer-events:none;z-index:-1}.dc-lc-result__placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;margin:0;color:var(--lc-text-muted);font-size:14px;pointer-events:none;z-index:1;background:var(--lc-surface)}.dc-lc-result .ce-xterm{flex:1;min-height:0;padding:8px 12px;background:var(--lc-input-bg)!important}[data-theme=light] .dc-lc-result .ce-xterm{background:var(--lc-input-bg)!important}.dc-lc-result .ce-xterm .xterm{height:100%;width:100%}.dc-lc-result .ce-xterm .xterm-viewport{overflow-y:auto!important;background-color:transparent!important}.dc-lc-playground .dc-dd__menu{background:#2d2d2d;border-color:#444}[data-theme=light] .dc-lc-playground .dc-dd__menu{background:#fff;border-color:#ddd}@media (max-width: 900px){.dc-lc-playground{grid-template-columns:1fr;grid-template-rows:auto auto minmax(200px,36vh) minmax(480px,1fr)}.dc-lc-topbar__left{grid-column:1;grid-row:1;border-right:none}.dc-lc-topbar__right{grid-column:1;grid-row:2}.dc-lc-desc{grid-column:1;grid-row:3;border-right:none;border-bottom:1px solid #3a3a3a}.dc-lc-workspace{grid-column:1;grid-row:4}.dc-lc-topbar__pane-label:not(.dc-lc-topbar__pane-label--code){display:none}}.dc-sd-playground{--sd-desc-w: 380px;--sd-comp-w: 212px;grid-template-columns:var(--sd-desc-w) 5px minmax(200px,1fr) 5px var(--sd-comp-w);grid-template-rows:auto minmax(0,1fr)}.dc-sd-playground .dc-lc-topbar__left{grid-column:1;border-right:none}.dc-sd-topbar__center{grid-column:3;grid-row:1;display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;padding:0 12px;border-bottom:1px solid var(--lc-border);background:var(--lc-surface)}.dc-sd-topbar__comp{grid-column:5;grid-row:1;display:flex;align-items:center;padding:0 12px;border-bottom:1px solid var(--lc-border);border-left:none;background:var(--lc-surface);font-size:12px;font-weight:600;color:var(--lc-text-muted);font-family:system-ui,-apple-system,sans-serif}.dc-sd-desc{grid-column:1;grid-row:2;display:flex;flex-direction:column;overflow:hidden;border-right:none;min-width:0;container-type:inline-size;container-name:sd-desc}.dc-sd-playground .dc-lc-desc{border-right:none;min-width:0}.dc-sd-desc .dc-lc-desc__body{flex:1;min-height:0;min-width:0;overflow-x:hidden;overflow-y:auto;overflow-wrap:anywhere;word-break:break-word}.dc-sd-desc .dc-lc-desc__title,.dc-sd-desc .dc-lc-desc__text,.dc-sd-desc .dc-lc-list__item,.dc-sd-desc .dc-lc-acc__hint-text{overflow-wrap:anywhere;word-break:break-word}.dc-sd-desc .dc-lc-desc__inline-code{overflow-wrap:anywhere;word-break:break-all;white-space:pre-wrap}.dc-sd-playground .dc-lc-topbar__left{overflow:hidden;min-width:0;gap:6px;padding:4px 8px;min-height:38px;flex-wrap:wrap;align-content:center}.dc-sd-playground .dc-lc-topbar__nav-group{flex:1 1 120px;min-width:0;max-width:100%;overflow:hidden}.dc-sd-playground .dc-lc-topbar__picker{flex:1 1 0;min-width:0;max-width:100%}.dc-sd-playground .dc-lc-topbar__picker .dc-dd__trigger{width:100%;min-width:0;max-width:100%}.dc-sd-playground[data-desc-narrow] .dc-lc-topbar__nav{display:none}.dc-sd-playground[data-desc-narrow] .dc-lc-topbar__back{font-size:0;line-height:0;gap:0;padding:4px 6px!important;flex-shrink:0}.dc-sd-playground[data-desc-narrow] .dc-lc-topbar__back svg{width:14px;height:14px}.dc-sd-desc .dc-lc-desc__accordions{min-width:0}.dc-sd-desc .dc-lc-acc__head{min-width:0;gap:6px}.dc-sd-desc .dc-lc-acc__head-left{min-width:0;flex:1;overflow:hidden}.dc-sd-desc .dc-lc-acc__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dc-sd-desc .dc-lc-acc__chev{flex-shrink:0}.dc-sd-desc .dc-lc-acc__body{padding-left:0;min-width:0;overflow:hidden}.dc-sd-desc .dc-lc-desc__similar-link{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.dc-sd-desc .dc-lc-desc__similar-list li{min-width:0}@container sd-desc (max-width: 300px){.dc-sd-desc .dc-lc-desc__body{padding-left:12px;padding-right:12px}.dc-sd-desc .dc-lc-desc__title{font-size:18px}}.dc-sd-workspace{grid-column:3;grid-row:2;min-width:0;min-height:0;display:flex;flex-direction:column;background:var(--lc-bg);overflow:hidden}.dc-sd-canvas-wrap{position:relative;flex:1 1 calc(100% - var(--console-pct, 34%));min-height:160px;overflow:hidden;display:flex;flex-direction:column;background:var(--lc-editor-bg, #ffffff)}[data-theme=dark] .dc-sd-playground .dc-sd-canvas-wrap{background:#282828}.dc-sd-canvas-wrap .dc-design-canvas{flex:1;min-height:0}.dc-sd-comp-sidebar{grid-column:5;grid-row:2;min-width:0;min-height:0;display:flex;flex-direction:column;border-left:none;background:var(--lc-surface);overflow:hidden}.dc-sd-splitter-v{grid-row:1 / -1;z-index:4;background:var(--lc-border)}.dc-sd-splitter-v--desc{grid-column:2}.dc-sd-splitter-v--comp{grid-column:4}.dc-sd-splitter-v:hover,.dc-sd-splitter-v:active{background:#ffa116}[data-theme=light] .dc-sd-splitter-v{background:#e0e0e0}[data-theme=light] .dc-sd-splitter-v:hover,[data-theme=light] .dc-sd-splitter-v:active{background:#f59e0b}.dc-sd-comp-sidebar .dc-comp-sidebar{flex:1;min-height:0;width:100%;border:none;background:transparent}.dc-sd-desc__tabs{display:flex;gap:0;padding:0 12px;border-bottom:1px solid var(--lc-border);flex-shrink:0;background:var(--lc-surface)}.dc-sd-desc__tab{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;background:none;color:var(--lc-text-muted);font-size:13px;font-weight:500;cursor:pointer;font-family:system-ui,-apple-system,sans-serif}.dc-sd-desc__tab:hover{color:var(--lc-text-secondary)}.dc-sd-desc__tab--active{color:var(--lc-tab-active);border-bottom-color:#ffa116}[data-theme=light] .dc-sd-desc__tab--active{border-bottom-color:#f59e0b}.dc-sd-desc__tab-badge{font-size:10px;padding:1px 6px;border-radius:999px;background:#ffa11626;color:#ffa116}.dc-sd-desc__tab--notify{animation:dc-sd-tab-pulse 1s ease-in-out 3}@keyframes dc-sd-tab-pulse{0%,to{color:var(--lc-text-muted)}50%{color:#ffa116}}.dc-sd-playground .dc-lc-section{margin-top:18px}.dc-sd-playground .dc-lc-section__label{font-size:13px;font-weight:600;color:var(--lc-text-primary);text-transform:none;letter-spacing:0;margin-bottom:8px}.dc-sd-playground .dc-lc-list__item{color:var(--lc-text-secondary);font-size:14px}.dc-sd-playground .dc-lc-list__item:before{color:#ffa116}.dc-sd-playground .dc-lc-list--constraints .dc-lc-list__item{background:var(--lc-input-bg);border-color:var(--lc-input-border);color:var(--lc-input-fg)}.dc-sd-playground .dc-lc-api-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:6px 8px;min-width:0;overflow:hidden;background:var(--lc-input-bg);border-color:var(--lc-input-border)}.dc-sd-playground .dc-lc-api-method{flex-shrink:0}.dc-sd-playground .dc-lc-api-path{flex:1 1 auto;min-width:0;max-width:100%;color:var(--lc-link);overflow-wrap:anywhere;word-break:break-all;white-space:normal;line-height:1.45}.dc-sd-playground .dc-lc-api-desc{flex:1 1 100%;min-width:0;margin-left:0;color:var(--lc-text-muted);overflow-wrap:anywhere;word-break:break-word;line-height:1.45;font-size:12px}.dc-sd-playground .dc-lc-api-list,.dc-sd-playground .dc-lc-section{min-width:0}.dc-sd-playground .dc-lc-testcase-summary{background:var(--lc-input-bg);border-color:var(--lc-input-border);color:var(--lc-text-secondary)}.dc-sd-topbar__tools{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.dc-sd-playground .dc-sim-toolbar{background:var(--lc-surface-elevated);border:1px solid var(--lc-border);border-radius:8px;padding:2px 6px}.dc-sd-playground .dc-sim-toolbar__btn{width:28px;height:26px;border-radius:6px;border:1px solid var(--lc-border);background:var(--lc-surface);color:var(--lc-text-secondary)}.dc-sd-playground .dc-sim-toolbar__btn--play{background:#2db55d;border-color:#2db55d;color:#fff}.dc-sd-playground .dc-sim-toolbar__btn--pause{background:#f59e0b;border-color:#f59e0b;color:#fff}.dc-sd-playground .dc-sim-toolbar__divider{background:var(--lc-border)}.dc-sd-playground .dc-sim-toolbar__speed-val{color:var(--lc-text-muted)}.dc-sd-palette{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--lc-surface)}.dc-sd-palette__search{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--lc-border);flex-shrink:0}.dc-sd-palette__search svg{flex-shrink:0;color:var(--lc-text-muted)}.dc-sd-palette__search input{flex:1;min-width:0;border:none;background:transparent;outline:none;font-size:13px;color:var(--lc-text-primary);font-family:system-ui,-apple-system,sans-serif}.dc-sd-palette__search input::placeholder{color:var(--lc-text-muted)}.dc-sd-palette__list{flex:1;min-height:0;overflow-y:auto;padding:8px 0;scrollbar-width:thin}.dc-sd-palette__group{margin-bottom:4px}.dc-sd-palette__group-label{padding:8px 14px 4px;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--lc-text-muted);font-family:system-ui,-apple-system,sans-serif}.dc-sd-palette__item{display:flex;align-items:center;gap:10px;margin:2px 8px;padding:8px 10px;border-radius:8px;border:1px solid transparent;cursor:grab;-webkit-user-select:none;user-select:none;transition:background .12s,border-color .12s}.dc-sd-palette__item:hover{background:var(--lc-surface-elevated);border-color:var(--lc-border)}.dc-sd-palette__item:active{cursor:grabbing;background:var(--lc-input-bg)}.dc-sd-palette__icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border-radius:8px;color:var(--comp-accent, var(--lc-text-secondary));background:var(--comp-fill, var(--lc-chip-bg));border:1px solid color-mix(in srgb,var(--comp-accent, #888) 35%,transparent);box-shadow:inset 0 0 0 1px #ffffff0f}.dc-sd-palette__icon svg{display:block}.dc-sd-drag-node-wrap{filter:drop-shadow(0 10px 24px rgba(15,23,42,.14))}.dc-sd-drag-node{display:flex;flex-direction:column;align-items:center;gap:6px;font-family:system-ui,-apple-system,sans-serif;-webkit-user-select:none;user-select:none}.dc-sd-drag-node__chip{display:flex;align-items:center;justify-content:center;width:48px;height:48px;color:var(--comp-accent, #64748b);background:#fff;border:1.5px solid color-mix(in srgb,var(--comp-accent, #64748b) 40%,#cbd5e1);box-shadow:0 0 0 3px color-mix(in srgb,var(--comp-accent, #64748b) 10%,transparent)}.dc-sd-drag-node--rect .dc-sd-drag-node__chip{border-radius:12px}.dc-sd-drag-node--circle .dc-sd-drag-node__chip{border-radius:50%}.dc-sd-drag-node--cylinder .dc-sd-drag-node__chip{border-radius:24px/8px}[data-theme=dark] .dc-sd-drag-node__chip{background:#333;color:color-mix(in srgb,var(--comp-accent, #94a3b8) 72%,#fff);border-color:color-mix(in srgb,var(--comp-accent, #94a3b8) 55%,#555);box-shadow:0 0 0 3px color-mix(in srgb,var(--comp-accent, #94a3b8) 14%,transparent)}.dc-sd-drag-node__label{font-size:11px;font-weight:500;color:#475569;white-space:nowrap;text-align:center}[data-theme=dark] .dc-sd-drag-node__label{color:#e8e8e8}[data-theme=dark] .dc-sd-playground .dc-design-canvas__shortcuts{background:#282828f0;border-color:var(--lc-border);color:var(--lc-text-muted)}[data-theme=dark] .dc-sd-playground .dc-design-canvas__shortcuts kbd{background:#3a3a3a;border-color:#4a4a4a;color:var(--lc-text-secondary)}.dc-comp-tile__icon{display:flex;align-items:center;justify-content:center;color:var(--accent, #6366f1)}.dc-sd-palette__name{flex:1;min-width:0;font-size:13px;font-weight:500;color:var(--lc-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:system-ui,-apple-system,sans-serif}.dc-sd-palette__grip{flex-shrink:0;color:var(--lc-text-muted);opacity:.45}.dc-sd-palette__empty{padding:24px 16px;text-align:center;font-size:12px;color:var(--lc-text-muted)}.dc-sd-palette__footer{display:flex;gap:6px;padding:8px 10px;border-top:1px solid var(--lc-border);flex-shrink:0;background:var(--lc-surface)}.dc-sd-palette__tool{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:5px;height:32px;border-radius:8px;border:1px solid var(--lc-border);background:var(--lc-surface-elevated);color:var(--lc-text-secondary);font-size:12px;font-weight:500;cursor:pointer;font-family:system-ui,-apple-system,sans-serif;transition:background .12s,color .12s,border-color .12s}.dc-sd-palette__tool:hover{background:var(--lc-input-bg);color:var(--lc-text-primary);border-color:var(--lc-text-muted)}.dc-sd-playground .dc-design-canvas,.dc-sd-playground .dc-design-canvas__el{background:transparent}[data-theme=light] .dc-sd-playground .dc-design-canvas__shortcuts{background:#ffffffeb;border-color:var(--lc-border);color:var(--lc-text-muted)}.dc-sd-playground .dc-config-panel__section{background:var(--lc-surface);border:1px solid var(--lc-border);border-radius:8px;box-shadow:0 4px 16px #0003}[data-theme=light] .dc-sd-playground .dc-config-panel__section{box-shadow:0 4px 16px #00000014}.dc-sd-playground .dc-sd-test-row{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:6px;font-size:13px;margin-bottom:4px;font-family:system-ui,-apple-system,sans-serif}.dc-sd-playground .dc-sd-test-row--pass{background:#2db55d1a}.dc-sd-playground .dc-sd-test-row--fail{background:#ef44441a}.dc-sd-playground .dc-sd-test-row__name{flex:1;font-weight:500;color:var(--lc-text-primary)}.dc-sd-playground .dc-sd-test-row__badge{font-size:10px;text-transform:uppercase;padding:2px 8px;border-radius:4px;background:var(--lc-chip-bg);color:var(--lc-text-muted)}.dc-sd-playground .dc-sd-test-empty{padding:16px;text-align:center;color:var(--lc-text-muted);font-size:13px}.dc-sd-playground .dc-sd-test-verdict{padding:10px 14px;font-size:12px;border-top:1px solid var(--lc-border);font-family:system-ui,-apple-system,sans-serif}.dc-sd-playground .dc-sd-test-verdict--pass{background:#2db55d1f;color:#2db55d}.dc-sd-playground .dc-sd-test-verdict--fail{background:#ef44441f;color:#ef4444}.dc-sd-playground .dc-sd-test-verdict--error{background:#8b5cf61f;color:#8b5cf6}@media (max-width: 1100px){.dc-sd-playground{--sd-comp-w: min(var(--sd-comp-w), 188px)}}[data-theme=light] .dc-sd-playground .dc-lc-topbar__icon-btn:hover:not(:disabled){background:#f0f0f0;color:#262626}.dc-sd-desc .dc-lc-desc__accordions{margin-top:8px;min-width:0}.dc-sd-desc .dc-lc-deepdive{padding-top:4px;min-width:0;overflow:hidden}.dc-sd-desc .dc-lc-deepdive__intro{margin-top:0;overflow-wrap:anywhere;word-break:break-word}.dc-sd-desc .dc-lc-deepdive__q{min-width:0;overflow:hidden}.dc-sd-desc .dc-lc-deepdive__q-header{flex-wrap:wrap;min-width:0}.dc-sd-desc .dc-lc-deepdive__q-text,.dc-sd-desc .dc-lc-deepdive__opt{min-width:0;overflow-wrap:anywhere;word-break:break-word}.dc-sd-desc .dc-lc-deepdive__explain{overflow-wrap:anywhere;word-break:break-word}.dc-sd-desc .dc-lc-deepdive__actions,.dc-sd-desc .dc-lc-deepdive__result{flex-wrap:wrap}/**
 * Copyright (c) 2014 The xterm.js authors. All rights reserved.
 * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
 * https://github.com/chjj/term.js
 * @license MIT
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 *
 * Originally forked from (with the author's permission):
 *   Fabrice Bellard's javascript vt100 for jslinux:
 *   http://bellard.org/jslinux/
 *   Copyright (c) 2011 Fabrice Bellard
 *   The original design remains. The terminal itself
 *   has been extended to include xterm CSI codes, among
 *   other features.
 */.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;right:0;left:0;top:0;bottom:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{font-family:monospace;-webkit-user-select:text;user-select:text;white-space:pre}.xterm .xterm-accessibility-tree>div{transform-origin:left;width:fit-content}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;background:#0000;transition:opacity .1s linear;z-index:11}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{position:absolute;display:none}.xterm .xterm-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow, #000) 0 6px 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}.ce-subheader__badge{margin-left:8px;padding:1px 6px;border-radius:4px;font-size:10px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:#f59e0b;border:1px solid color-mix(in srgb,#f59e0b 50%,transparent);background:color-mix(in srgb,#f59e0b 15%,transparent)}.ce-tab-badge{flex-shrink:0;margin-left:4px;padding:0 4px;border-radius:3px;font-size:9px;font-weight:700;letter-spacing:.03em;color:#f59e0b;border:1px solid color-mix(in srgb,#f59e0b 45%,transparent);line-height:14px}.ce-spark-health{flex-shrink:0;margin:0 12px 8px;padding:8px 12px;border-radius:8px;border:1px solid color-mix(in srgb,#f59e0b 45%,var(--obs-border, #444));background:color-mix(in srgb,#f59e0b 12%,transparent);color:var(--obs-strong, var(--text-primary, #eee));font-size:12px}.ce-spark-nb-host{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.ce-spark-nb{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;background:var(--obs-surface, var(--bg-primary, #0f0f0f))}.ce-spark-nb__toolbar{flex-shrink:0;display:flex;flex-wrap:wrap;gap:6px;padding:8px 12px;border-bottom:1px solid var(--obs-border, rgba(255,255,255,.08));background:var(--obs-chrome, var(--bg-secondary, #141414))}.ce-spark-nb__btn{border:1px solid var(--obs-border, rgba(255,255,255,.12));background:var(--obs-surface, var(--bg-primary, #0f0f0f));color:var(--obs-strong, var(--text-primary, #eee));border-radius:6px;padding:4px 10px;font-size:12px;cursor:pointer}.ce-spark-nb__btn:hover:not(:disabled){background:var(--obs-hover, rgba(255,255,255,.06))}.ce-spark-nb__btn:disabled{opacity:.5;cursor:not-allowed}.ce-spark-nb__btn--sm{padding:2px 8px;font-size:11px}.ce-spark-nb__cells{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:12px}.ce-spark-nb__cell{flex-shrink:0;border:1px solid var(--obs-border, rgba(255,255,255,.1));border-radius:10px;overflow:hidden;background:color-mix(in srgb,var(--obs-chrome, #141414) 65%,transparent)}.ce-spark-nb__cell-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 10px;border-bottom:1px solid var(--obs-border, rgba(255,255,255,.08))}.ce-spark-nb__cell-badge{font-size:11px;font-family:var(--font-mono, monospace);color:var(--obs-muted, #888)}.ce-spark-nb__cell-actions{display:flex;gap:4px}.ce-spark-nb__editor{min-height:120px}.ce-spark-nb__markdown{width:100%;box-sizing:border-box;border:none;background:transparent;color:var(--obs-strong, var(--text-primary, #eee));padding:10px 12px;font-family:var(--font-sans, inherit);font-size:13px;line-height:1.5;resize:vertical}.ce-spark-nb__outputs{border-top:1px solid var(--obs-border, rgba(255,255,255,.08));background:#0a0a0a}.ce-spark-nb__output{margin:0;padding:10px 12px;font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:12px;line-height:1.45;white-space:pre-wrap;color:#cdd6f4}.ce-spark-nb__output--err{color:#f38ba8}[data-theme=light] .ce-spark-nb__outputs{background:#f8f9fa}[data-theme=light] .ce-spark-nb__output{color:#1e1e1e}[data-theme=light] .ce-spark-nb__output--err{color:#d20f39}.excalidraw .ToolIcon{border-radius:var(--border-radius-lg);display:inline-flex;align-items:center;position:relative;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.excalidraw .ToolIcon__hidden{display:none!important}.excalidraw .ToolIcon.fillable .ToolIcon_type_radio:checked+.ToolIcon__icon,.excalidraw .ToolIcon.fillable .ToolIcon_type_checkbox:checked+.ToolIcon__icon{--icon-fill-color: var(--color-on-primary-container)}.excalidraw .ToolIcon.fillable .ToolIcon_type_radio:checked+.ToolIcon__icon svg,.excalidraw .ToolIcon.fillable .ToolIcon_type_checkbox:checked+.ToolIcon__icon svg{fill:var(--icon-fill-color)}.excalidraw .ToolIcon .ToolIcon_type_radio:checked+.ToolIcon__icon,.excalidraw .ToolIcon .ToolIcon_type_checkbox:checked+.ToolIcon__icon{background:var(--color-surface-primary-container);--keybinding-color: var(--color-on-primary-container)}.excalidraw .ToolIcon .ToolIcon_type_radio:checked+.ToolIcon__icon svg,.excalidraw .ToolIcon .ToolIcon_type_checkbox:checked+.ToolIcon__icon svg{color:var(--color-on-primary-container)}.excalidraw .ToolIcon .ToolIcon__keybinding{bottom:4px;right:4px}.excalidraw .ToolIcon .ToolIcon__icon:hover{background:var(--button-hover-bg)}.excalidraw .ToolIcon .ToolIcon__icon:active{background:var(--button-hover-bg);border:1px solid var(--button-active-border)}.excalidraw .ToolIcon .ToolIcon__icon:active svg{color:var(--color-on-primary-container)}.excalidraw .ToolIcon .ToolIcon__icon[aria-disabled=true]{background:initial;border:none}.excalidraw .ToolIcon .ToolIcon__icon[aria-disabled=true] svg{color:var(--color-disabled)}.excalidraw .ToolIcon--plain{background-color:transparent}.excalidraw .ToolIcon--plain .ToolIcon__icon{width:2rem;height:2rem}.excalidraw .ToolIcon_type_radio,.excalidraw .ToolIcon_type_checkbox{position:absolute;opacity:0;pointer-events:none}.excalidraw .ToolIcon__icon{box-sizing:border-box;width:var(--default-button-size);height:var(--default-button-size);color:var(--icon-fill-color);display:flex;justify-content:center;align-items:center;border-radius:var(--border-radius-lg)}.excalidraw .ToolIcon__icon+.ToolIcon__label{margin-inline-start:0}.excalidraw .ToolIcon__icon svg{position:relative;width:var(--default-icon-size);height:var(--default-icon-size);color:var(--icon-fill-color)}.excalidraw .ToolIcon__label{display:flex;align-items:center;color:var(--icon-fill-color);font-family:var(--ui-font);margin:0 .8em;text-overflow:ellipsis}.excalidraw .ToolIcon__label .Spinner{margin-left:.6em}.excalidraw .ToolIcon_size_small .ToolIcon__icon{width:2rem;height:2rem;font-size:.8em}.excalidraw .ToolIcon_type_button,.excalidraw .Modal .ToolIcon_type_button{padding:0;border:none;margin:0;font-size:inherit;background-color:initial}.excalidraw .ToolIcon_type_button:focus-visible,.excalidraw .Modal .ToolIcon_type_button:focus-visible{box-shadow:0 0 0 2px var(--focus-highlight-color)}.excalidraw .ToolIcon_type_button.ToolIcon--selected,.excalidraw .Modal .ToolIcon_type_button.ToolIcon--selected{background-color:var(--button-gray-2)}.excalidraw .ToolIcon_type_button.ToolIcon--selected:active,.excalidraw .Modal .ToolIcon_type_button.ToolIcon--selected:active,.excalidraw .ToolIcon_type_button:active,.excalidraw .Modal .ToolIcon_type_button:active{background-color:var(--button-gray-3)}.excalidraw .ToolIcon_type_button:disabled,.excalidraw .Modal .ToolIcon_type_button:disabled{cursor:default}.excalidraw .ToolIcon_type_button:disabled:active,.excalidraw .ToolIcon_type_button:disabled:focus-visible,.excalidraw .ToolIcon_type_button:disabled:hover,.excalidraw .Modal .ToolIcon_type_button:disabled:active,.excalidraw .Modal .ToolIcon_type_button:disabled:focus-visible,.excalidraw .Modal .ToolIcon_type_button:disabled:hover{background-color:initial;border:none;box-shadow:none}.excalidraw .ToolIcon_type_button:disabled svg,.excalidraw .Modal .ToolIcon_type_button:disabled svg{color:var(--color-disabled)}.excalidraw .ToolIcon_type_button--show,.excalidraw .Modal .ToolIcon_type_button--show{visibility:visible}.excalidraw .ToolIcon_type_button--hide,.excalidraw .Modal .ToolIcon_type_button--hide{display:none!important}.excalidraw .ToolIcon_type_floating,.excalidraw .ToolIcon_type_floating:hover,.excalidraw .ToolIcon_type_floating:active{background-color:transparent}.excalidraw .ToolIcon_type_floating .ToolIcon__icon{background-color:var(--button-gray-1)}.excalidraw .ToolIcon_type_floating .ToolIcon__icon:hover{background-color:var(--button-gray-2)}.excalidraw .ToolIcon_type_floating .ToolIcon__icon:active{background-color:var(--button-gray-3)}.excalidraw .ToolIcon_type_floating .ToolIcon__icon{width:2rem;height:2rem}.excalidraw .ToolIcon__keybinding{position:absolute;bottom:2px;right:3px;font-size:.625rem;color:var(--keybinding-color);font-family:var(--ui-font);-webkit-user-select:none;user-select:none}:root[dir=ltr] .excalidraw .unlocked-icon{left:2px}:root[dir=rtl] .excalidraw .unlocked-icon{right:2px}.excalidraw .App-toolbar-container .ToolIcon__icon{width:var(--lg-button-size);height:var(--lg-button-size)}@media screen and (max-width: 450px){.excalidraw .App-toolbar-container .ToolIcon__icon{width:1.8rem;height:1.8rem}}@media screen and (max-width: 379px){.excalidraw .App-toolbar-container .ToolIcon__icon{width:1.5rem;height:1.5rem}}.excalidraw .App-toolbar-container .ToolIcon__icon svg{width:var(--lg-icon-size);height:var(--lg-icon-size)}.excalidraw .App-toolbar-container .ToolIcon__LaserPointer .ToolIcon__icon,.excalidraw .App-toolbar-container .ToolIcon__MagicButton .ToolIcon__icon{width:var(--default-button-size);height:var(--default-button-size)}.excalidraw .Spinner{display:flex;align-items:center;justify-content:center;height:100%;margin-left:auto;margin-right:auto;--spinner-color: var(--icon-fill-color)}.excalidraw .Spinner svg{animation:rotate 1.6s linear infinite;animation-delay:var(--spinner-delay);transform-origin:center center}.excalidraw .Spinner circle{stroke:var(--spinner-color);animation:dash 1.6s linear 0s infinite;stroke-linecap:round}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,300;stroke-dashoffset:0}50%{stroke-dasharray:150,300;stroke-dashoffset:-200}to{stroke-dasharray:1,300;stroke-dashoffset:-280}}.excalidraw{--theme-filter: none;--button-destructive-bg-color: #ffe3e3;--button-destructive-color: #c92a2a;--button-gray-1: #e9ecef;--button-gray-2: #ced4da;--button-gray-3: #adb5bd;--mobile-action-button-bg: rgba(255, 255, 255, .35);--mobile-color-border: var(--default-border-color);--button-special-active-bg-color: #ebfbee;--dialog-border-color: var(--color-gray-20);--dropdown-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="292.4" height="292.4" viewBox="0 0 292 292"><path d="M287 197L159 69c-4-3-8-5-13-5s-9 2-13 5L5 197c-3 4-5 8-5 13s2 9 5 13c4 4 8 5 13 5h256c5 0 9-1 13-5s5-8 5-13-1-9-5-13z"/></svg>');--focus-highlight-color: #a5d8ff;--icon-fill-color: var(--color-on-surface);--icon-green-fill-color: #2b8a3e;--default-bg-color: #fff;--input-bg-color: #fff;--input-border-color: #ced4da;--input-hover-bg-color: #f1f3f5;--input-label-color: #495057;--island-bg-color: #ffffff;--island-bg-color-alt: #fff;--keybinding-color: var(--color-gray-40);--link-color: #1c7ed6;--link-color-hover: #1971c2;--link-color-active: #a5d8ff;--overlay-bg-color: rgba(255, 255, 255, .88);--popup-bg-color: var(--island-bg-color);--popup-secondary-bg-color: #f1f3f5;--popup-text-color: #000;--popup-text-inverted-color: #fff;--select-highlight-color: #339af0;--shadow-island: 0px 0px 1px 0px rgba(0, 0, 0, .17), 0px 0px 3px 0px rgba(0, 0, 0, .08), 0px 7px 14px 0px rgba(0, 0, 0, .05);--shadow-island-stronger: 0px 0px 1px 0px rgba(0, 0, 0, .17), 0px 0px 3px 0px rgba(0, 0, 0, .08), 0px 7px 14px 0px rgb(0 0 0 / 18%);--button-hover-bg: var(--color-surface-high);--button-active-bg: var(--color-surface-high);--button-active-border: var(--color-brand-active);--default-border-color: var(--color-surface-high);--default-button-size: 2rem;--default-icon-size: 1rem;--lg-button-size: 2.25rem;--lg-icon-size: 1rem;--editor-container-padding: 1rem;--mobile-action-button-size: 2rem;--scrollbar-thumb: var(--button-gray-2);--scrollbar-thumb-hover: var(--button-gray-3);--color-slider-track: hsl(240, 100%, 90%);--color-slider-thumb: var(--color-gray-80);--modal-shadow: 0px 100px 80px rgba(0, 0, 0, .07), 0px 41.7776px 33.4221px rgba(0, 0, 0, .0503198), 0px 22.3363px 17.869px rgba(0, 0, 0, .0417275), 0px 12.5216px 10.0172px rgba(0, 0, 0, .035), 0px 6.6501px 5.32008px rgba(0, 0, 0, .0282725), 0px 2.76726px 2.21381px rgba(0, 0, 0, .0196802);--avatar-border-color: var(--color-gray-20);--sidebar-shadow: 0px 100px 80px rgba(0, 0, 0, .07), 0px 41.7776px 33.4221px rgba(0, 0, 0, .0503198), 0px 22.3363px 17.869px rgba(0, 0, 0, .0417275), 0px 12.5216px 10.0172px rgba(0, 0, 0, .035), 0px 6.6501px 5.32008px rgba(0, 0, 0, .0282725), 0px 2.76726px 2.21381px rgba(0, 0, 0, .0196802);--sidebar-border-color: var(--color-surface-high);--sidebar-bg-color: var(--island-bg-color);--library-dropdown-shadow: 0px 15px 6px rgba(0, 0, 0, .01), 0px 8px 5px rgba(0, 0, 0, .05), 0px 4px 4px rgba(0, 0, 0, .09), 0px 1px 2px rgba(0, 0, 0, .1), 0px 0px 0px rgba(0, 0, 0, .1);--chat-msg-shadow: 0 1px 2px rgba(0, 0, 0, .1);--space-factor: .25rem;--text-primary-color: var(--color-on-surface);--color-selection: #6965db;--color-icon-white: #fff;--color-primary: #6965db;--color-primary-darker: #5b57d1;--color-primary-darkest: #4a47b1;--color-primary-light: #e3e2fe;--color-primary-light-darker: #d7d5ff;--color-primary-hover: #5753d0;--color-gray-10: #f5f5f5;--color-gray-20: #ebebeb;--color-gray-30: #d6d6d6;--color-gray-40: #b8b8b8;--color-gray-50: #999999;--color-gray-60: #7a7a7a;--color-gray-70: #5c5c5c;--color-gray-80: #3d3d3d;--color-gray-85: #242424;--color-gray-90: #1e1e1e;--color-gray-100: #121212;--color-disabled: var(--color-gray-40);--color-warning: #fceeca;--color-warning-dark: #f5c354;--color-warning-darker: #f3ab2c;--color-warning-darkest: #ec8b14;--color-text-warning: var(--text-primary-color);--color-danger: #db6965;--color-danger-dark: #db6965;--color-danger-darker: #d65550;--color-danger-darkest: #d1413c;--color-danger-text: black;--color-danger-background: #fff0f0;--color-danger-icon-background: #ffdad6;--color-danger-color: #700000;--color-danger-icon-color: #700000;--color-warning-background: var(--color-warning);--color-warning-icon-background: var(--color-warning-dark);--color-warning-color: var(--text-primary-color);--color-warning-icon-color: var(--text-primary-color);--color-muted: var(--color-gray-30);--color-muted-darker: var(--color-gray-60);--color-muted-darkest: var(--color-gray-100);--color-muted-background: var(--color-gray-80);--color-muted-background-darker: var(--color-gray-100);--color-promo: var(--color-primary);--color-success: #cafccc;--color-success-darker: #bafabc;--color-success-darkest: #a5eba8;--color-success-text: #268029;--color-success-contrast: #65bb6a;--color-success-contrast-hover: #6bcf70;--color-success-contrast-active: #6edf74;--color-logo-icon: var(--color-primary);--color-logo-text: #190064;--border-radius-md: .375rem;--border-radius-lg: .5rem;--color-surface-high: #f1f0ff;--color-surface-mid: #f6f6f9;--color-surface-low: #ececf4;--color-surface-lowest: #ffffff;--color-on-surface: #1b1b1f;--color-brand-hover: #5753d0;--color-on-primary-container: #030064;--color-brand-active: #4440bf;--color-border-outline: #767680;--color-border-outline-variant: #c5c5d0;--color-surface-primary-container: #e0dfff;--color-badge: #0b6513;--background-color-badge: #d3ffd2}.excalidraw.theme--dark{--theme-filter: invert(93%) hue-rotate(180deg);--button-destructive-bg-color: #5a0000;--button-destructive-color: #ffa8a8;--button-gray-1: #363636;--button-gray-2: #272727;--button-gray-3: #222;--mobile-action-button-bg: var(--island-bg-color);--mobile-color-border: rgba(255, 255, 255, .85);--button-special-active-bg-color: #204624;--dialog-border-color: var(--color-gray-80);--dropdown-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="292.4" height="292.4" viewBox="0 0 292 292"><path fill="%23ced4da" d="M287 197L159 69c-4-3-8-5-13-5s-9 2-13 5L5 197c-3 4-5 8-5 13s2 9 5 13c4 4 8 5 13 5h256c5 0 9-1 13-5s5-8 5-13-1-9-5-13z"/></svg>');--focus-highlight-color: #228be6;--icon-green-fill-color: #69db7c;--default-bg-color: #121212;--input-bg-color: #121212;--input-border-color: #2e2e2e;--input-hover-bg-color: #181818;--input-label-color: #e9ecef;--island-bg-color: #232329;--island-bg-color-alt: hsl(240, 12%, 12%);--keybinding-color: var(--color-gray-60);--link-color: #4dabf7;--overlay-bg-color: rgba(52, 58, 64, .12);--popup-secondary-bg-color: #222;--popup-text-color: #ced4da;--popup-text-inverted-color: #2c2c2c;--select-highlight-color: #4dabf7;--modal-shadow: 0px 100px 80px rgba(0, 0, 0, .07), 0px 41.7776px 33.4221px rgba(0, 0, 0, .0503198), 0px 22.3363px 17.869px rgba(0, 0, 0, .0417275), 0px 12.5216px 10.0172px rgba(0, 0, 0, .035), 0px 6.6501px 5.32008px rgba(0, 0, 0, .0282725), 0px 2.76726px 2.21381px rgba(0, 0, 0, .0196802);--avatar-border-color: var(--color-gray-85);--scrollbar-thumb: #343a40;--scrollbar-thumb-hover: #495057;--color-slider-track: hsl(244, 23%, 39%);--color-selection: #3530c4;--color-icon-white: var(--color-gray-90);--color-primary: #a8a5ff;--color-primary-darker: #b2aeff;--color-primary-darkest: #beb9ff;--color-primary-light: #4f4d6f;--color-primary-light-darker: #43415e;--color-primary-hover: #bbb8ff;--color-disabled: var(--color-gray-70);--color-text-warning: var(--color-gray-80);--color-danger: #ffa8a5;--color-danger-dark: #672120;--color-danger-darker: #8f2625;--color-danger-darkest: #ac2b29;--color-danger-text: #fbcbcc;--color-danger-background: #fbcbcc;--color-danger-icon-background: #672120;--color-danger-color: #261919;--color-danger-icon-color: #fbcbcc;--color-warning-background: var(--color-warning);--color-warning-icon-background: var(--color-warning-dark);--color-warning-color: var(--color-gray-80);--color-warning-icon-color: var(--color-gray-80);--color-muted: var(--color-gray-80);--color-muted-darker: var(--color-gray-60);--color-muted-darkest: var(--color-gray-20);--color-muted-background: var(--color-gray-40);--color-muted-background-darker: var(--color-gray-20);--color-logo-text: #e2dfff;--color-surface-high: #2e2d39;--color-surface-low: hsl(240, 8%, 15%);--color-surface-mid: hsl(240 6% 10%);--color-surface-lowest: hsl(0, 0%, 7%);--color-on-surface: #e3e3e8;--color-brand-hover: #bbb8ff;--color-on-primary-container: #e0dfff;--color-brand-active: #d0ccff;--color-border-outline: #8e8d9c;--color-border-outline-variant: #46464f;--color-surface-primary-container: #403e6a}.excalidraw button.standalone{display:flex;justify-content:center;align-items:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border-width:1px;border-style:solid;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--button-color, var(--color-on-surface));font-family:var(--ui-font)}.excalidraw button.standalone svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.excalidraw button.standalone:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)));color:var(--button-hover-color, var(--button-color, var(--text-primary-color, inherit)))}.excalidraw button.standalone:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.excalidraw button.standalone.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.excalidraw button.standalone.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.excalidraw button.standalone.active svg{color:var(--button-color, var(--color-on-primary-container))}.excalidraw--mobile.excalidraw button.standalone{width:var(--mobile-action-button-size, var(--default-button-size));height:var(--mobile-action-button-size, var(--default-button-size))}.excalidraw button.standalone{padding:0}.excalidraw button.standalone svg{width:var(--default-icon-size);height:var(--default-icon-size)}.excalidraw button.standalone>*{pointer-events:none}.excalidraw .excalidraw-eye-dropper-container,.excalidraw .excalidraw-eye-dropper-backdrop{position:absolute;width:100%;height:100%;z-index:var(--zIndex-eyeDropperBackdrop);touch-action:none}.excalidraw .excalidraw-eye-dropper-container{pointer-events:none}.excalidraw .excalidraw-eye-dropper-backdrop{pointer-events:all}.excalidraw .excalidraw-eye-dropper-preview{pointer-events:none;width:3rem;height:3rem;position:fixed;z-index:var(--zIndex-eyeDropperPreview);border-radius:1rem;border:1px solid var(--default-border-color);filter:var(--theme-filter)}.excalidraw .excalidraw-eye-dropper-trigger{width:1.25rem;height:1.25rem;cursor:pointer;padding:4px;margin-right:-4px;margin-left:-2px;border-radius:.5rem;color:var(--icon-fill-color)}.excalidraw .excalidraw-eye-dropper-trigger:hover{background:var(--button-hover-bg)}.excalidraw .excalidraw-eye-dropper-trigger.selected{color:var(--color-primary);background:var(--color-primary-light)}.excalidraw .Island{--padding: 0;box-sizing:border-box;background-color:var(--island-bg-color);box-shadow:var(--shadow-island);border-radius:var(--border-radius-lg);padding:calc(var(--padding) * var(--space-factor));position:relative}.excalidraw .Island.zen-mode{box-shadow:none}.excalidraw .focus-visible-none:focus-visible{outline:none!important}.excalidraw .color-picker__title{padding:0 .5rem;font-size:.875rem;text-align:left}.excalidraw .color-picker__heading{padding:0 .5rem;font-size:.75rem;text-align:left}.excalidraw .color-picker-container{display:grid;grid-template-columns:1fr 20px 1.625rem;padding:.25rem 0px;align-items:center}.excalidraw--mobile.excalidraw .color-picker-container{max-width:11rem}.excalidraw .color-picker-container.color-picker-container--no-top-picks{display:flex;justify-content:center;grid-template-columns:unset}.excalidraw .color-picker__top-picks{display:flex;justify-content:space-between;align-items:center}.excalidraw .color-picker__button{--radius: 4px;--size: 1.375rem}.excalidraw .color-picker__button.has-outline{box-shadow:inset 0 0 0 1px #d9d9d9}.excalidraw .color-picker__button{padding:0;margin:0;width:var(--size);height:var(--size);border:0;border-radius:var(--radius);filter:var(--theme-filter);background-color:var(--swatch-color);background-position:left center;position:relative;font-family:inherit;box-sizing:border-box}.excalidraw .color-picker__button:hover:not(.active):not(.color-picker__button--large){transform:scale(1.075)}.excalidraw .color-picker__button:hover:not(.active).color-picker__button--large:after{content:"";position:absolute;top:-1px;left:-1px;right:-1px;bottom:-1px;box-shadow:0 0 0 1px var(--color-gray-30);border-radius:var(--radius);filter:var(--theme-filter)}.excalidraw .color-picker__button .color-picker__button-outline{display:flex;align-items:center;justify-content:center}.excalidraw .color-picker__button .color-picker__button-outline svg{color:var(--color-gray-60);width:1.25rem;height:1.25rem}.excalidraw .color-picker__button .color-picker__button-background{display:flex;align-items:center;justify-content:center}.excalidraw .color-picker__button .color-picker__button-background svg{width:100%;height:100%}.excalidraw .color-picker__button.active .color-picker__button-outline{position:absolute;--offset: -1px;top:var(--offset);left:var(--offset);right:var(--offset);bottom:var(--offset);box-shadow:0 0 0 1px var(--color-primary-darkest);z-index:1;border-radius:var(--radius);filter:var(--theme-filter)}.excalidraw .color-picker__button:focus-visible{outline:none}.excalidraw .color-picker__button:focus-visible:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:3px solid var(--focus-highlight-color);border-radius:calc(var(--radius) + 1px)}.excalidraw .color-picker__button:focus-visible.active .color-picker__button-outline{display:none}.excalidraw .color-picker__button--large{--radius: .5rem;width:1.875rem;height:1.875rem}.excalidraw .color-picker__button.is-transparent{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMUlEQVQ4T2NkYGAQYcAP3uCTZhw1gGGYhAGBZIA/nYDCgBDAm9BGDWAAJyRCgLaBCAAgXwixzAS0pgAAAABJRU5ErkJggg==)}.excalidraw .color-picker__button--no-focus-visible{border:0}.excalidraw .color-picker__button--no-focus-visible:after{display:none}.excalidraw .color-picker__button--no-focus-visible:focus-visible{outline:none!important}.excalidraw .color-picker__button.active-color{border-radius:calc(var(--radius) + 1px);width:1.625rem;height:1.625rem}.excalidraw .color-picker__button.compact-sizing{width:var(--mobile-action-button-size);height:var(--mobile-action-button-size)}.excalidraw .color-picker__button.mobile-border{border:1px solid var(--mobile-color-border)}.excalidraw .color-picker__button__hotkey-label{position:absolute;right:5px;bottom:3px;filter:none;font-size:11px;font-weight:500}.excalidraw .color-picker{background:var(--popup-bg-color);border:0 solid rgba(255,255,255,.25);box-shadow:#00000040 0 1px 4px;border-radius:4px;position:absolute}:root[dir=ltr] .excalidraw .color-picker{left:-5.5px}:root[dir=rtl] .excalidraw .color-picker{right:-5.5px}.excalidraw .color-picker-control-container{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:.5rem}.excalidraw .color-picker-control-container+.popover{position:static}.excalidraw .color-picker-popover-container{margin-top:-.25rem}:root[dir=ltr] .excalidraw .color-picker-popover-container{margin-left:.5rem}:root[dir=rtl] .excalidraw .color-picker-popover-container{margin-left:-3rem}.excalidraw .color-picker-triangle{width:0;height:0;border-style:solid;border-width:0 9px 10px;border-color:transparent transparent var(--popup-bg-color);position:absolute;top:10px}:root[dir=ltr] .excalidraw .color-picker-triangle{transform:rotate(270deg);left:-14px}:root[dir=rtl] .excalidraw .color-picker-triangle{transform:rotate(90deg);right:-14px}.excalidraw .color-picker-triangle-shadow{border-color:transparent transparent rgba(0,0,0,.1)}:root[dir=ltr] .excalidraw .color-picker-triangle-shadow{left:-14px}:root[dir=rtl] .excalidraw .color-picker-triangle-shadow{right:-16px}.excalidraw .color-picker-content{display:flex;flex-direction:column;gap:.75rem;outline:none}.excalidraw .color-picker-content--default{padding:.5rem;display:grid;grid-template-columns:repeat(5,1.875rem);grid-gap:.25rem;border-radius:4px}.excalidraw .color-picker-content--default:focus{outline:none;box-shadow:0 0 0 2px var(--focus-highlight-color)}.excalidraw .color-picker-content--canvas{display:flex;flex-direction:column;padding:.25rem}.excalidraw .color-picker-content--canvas-title{color:#868e96;font-size:12px;padding:0 .25rem}.excalidraw .color-picker-content--canvas-colors{padding:.5rem 0}.excalidraw .color-picker-content--canvas-colors .color-picker-swatch{margin:0 .25rem}.excalidraw .color-picker-content .color-input-container{grid-column:1/span 5}.excalidraw .color-picker-swatch{position:relative;height:1.875rem;width:1.875rem;cursor:pointer;border-radius:4px;margin:0;box-sizing:border-box;border:1px solid #ddd;background-color:currentColor!important;filter:var(--theme-filter)}.excalidraw .color-picker-swatch:focus{box-shadow:0 0 4px 1px currentColor;border-color:var(--select-highlight-color)}.excalidraw .color-picker-transparent{border-radius:4px;box-shadow:#0000001a 0 0 0 1px inset;position:absolute;top:0;right:0;bottom:0;left:0}.excalidraw .color-picker-transparent,.excalidraw .color-picker-label-swatch{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMUlEQVQ4T2NkYGAQYcAP3uCTZhw1gGGYhAGBZIA/nYDCgBDAm9BGDWAAJyRCgLaBCAAgXwixzAS0pgAAAABJRU5ErkJggg==) left center}.excalidraw .color-picker-hash{height:var(--default-button-size);flex-shrink:0;padding:.5rem .5rem .5rem .75rem;border:1px solid var(--default-border-color);border-right:0;box-sizing:border-box}:root[dir=ltr] .excalidraw .color-picker-hash{border-radius:var(--border-radius-lg) 0 0 var(--border-radius-lg)}:root[dir=rtl] .excalidraw .color-picker-hash{border-radius:0 var(--border-radius-lg) var(--border-radius-lg) 0;border-right:1px solid var(--default-border-color);border-left:0}.excalidraw .color-picker-hash{color:var(--input-label-color);display:flex;align-items:center;justify-content:center;position:relative}.excalidraw .color-input-container{display:flex}.excalidraw .color-input-container:focus-within{box-shadow:0 0 0 1px var(--color-primary-darkest);border-radius:var(--border-radius-lg)}.excalidraw .color-picker__input-label{display:grid;grid-template-columns:auto 1fr auto auto;gap:8px;align-items:center;border:1px solid var(--default-border-color);border-radius:8px;padding:0 12px;margin:8px;box-sizing:border-box}.excalidraw .color-picker__input-label:focus-within{box-shadow:0 0 0 1px var(--color-primary-darkest);border-radius:var(--border-radius-lg)}.excalidraw .color-picker__input-hash{padding:0 .25rem}.excalidraw .color-picker-input{box-sizing:border-box;width:100%;margin:0;font-size:.875rem;font-family:inherit;background-color:transparent;color:var(--text-primary-color);border:0;outline:none;height:var(--default-button-size);border:1px solid var(--default-border-color);border-left:0;letter-spacing:.4px}:root[dir=ltr] .excalidraw .color-picker-input{border-radius:0 var(--border-radius-lg) var(--border-radius-lg) 0}:root[dir=rtl] .excalidraw .color-picker-input{border-radius:var(--border-radius-lg) 0 0 var(--border-radius-lg);border-left:1px solid var(--default-border-color);border-right:0}.excalidraw .color-picker-input{padding:.5rem .5rem .5rem .25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.excalidraw .color-picker-input:focus-visible{box-shadow:none}.excalidraw .color-picker-label-swatch-container{border:1px solid var(--default-border-color);border-radius:var(--border-radius-lg);width:var(--default-button-size);height:var(--default-button-size);box-sizing:border-box;overflow:hidden}.excalidraw .color-picker-label-swatch{display:flex;justify-content:center;align-items:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border-width:1px;border-style:solid;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--button-color, var(--color-on-surface));font-family:var(--ui-font)}.excalidraw .color-picker-label-swatch svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.excalidraw .color-picker-label-swatch:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)));color:var(--button-hover-color, var(--button-color, var(--text-primary-color, inherit)))}.excalidraw .color-picker-label-swatch:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.excalidraw .color-picker-label-swatch.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.excalidraw .color-picker-label-swatch.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.excalidraw .color-picker-label-swatch.active svg{color:var(--button-color, var(--color-on-primary-container))}.excalidraw--mobile.excalidraw .color-picker-label-swatch{width:var(--mobile-action-button-size, var(--default-button-size));height:var(--mobile-action-button-size, var(--default-button-size))}.excalidraw .color-picker-label-swatch{background-color:var(--swatch-color)!important;overflow:hidden;position:relative;filter:var(--theme-filter);border:0!important}.excalidraw .color-picker-label-swatch:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var(--swatch-color)}.excalidraw .color-picker-keybinding{position:absolute;bottom:2px;font-size:.7em}:root[dir=ltr] .excalidraw .color-picker-keybinding{right:2px}:root[dir=rtl] .excalidraw .color-picker-keybinding{left:2px}.excalidraw--mobile.excalidraw .color-picker-keybinding{display:none}.excalidraw .color-picker-type-canvasBackground .color-picker-keybinding{color:#aaa}.excalidraw .color-picker-type-elementBackground .color-picker-keybinding{color:#fff}.excalidraw .color-picker-swatch[aria-label=transparent] .color-picker-keybinding{color:#aaa}.excalidraw .color-picker-type-elementStroke .color-picker-keybinding{color:#d4d4d4}.excalidraw.theme--dark .color-picker-type-elementBackground .color-picker-keybinding,.excalidraw.theme--dark .color-picker-swatch[aria-label=transparent] .color-picker-keybinding{color:#000}.excalidraw{--list-border-color: var(--color-gray-20)}.excalidraw .QuickSearch__wrapper{position:relative;height:2.6rem;border-bottom:1px solid var(--list-border-color)}.excalidraw .QuickSearch__wrapper svg{position:absolute;top:47.5%;transform:translateY(-50%);left:.75rem;width:1.25rem;height:1.25rem;color:var(--color-gray-40);z-index:1}.excalidraw.theme--dark{--list-border-color: var(--color-gray-80)}.excalidraw.theme--dark .QuickSearch__wrapper{border-bottom:none}.excalidraw .QuickSearch__input{position:absolute;top:0;left:0;width:100%;box-sizing:border-box;border:0!important;font-size:.875rem;padding-left:2.5rem!important;padding-right:.75rem!important}.excalidraw .QuickSearch__input::placeholder{color:var(--color-gray-40)}.excalidraw .QuickSearch__input:focus{box-shadow:none!important}.excalidraw .ScrollableList__wrapper{position:static!important;border:none;font-size:.875rem;overflow-y:auto}.excalidraw .ScrollableList__wrapper>.empty,.excalidraw .ScrollableList__wrapper>.hint{display:flex;justify-content:center;align-items:center;padding:.5rem;font-size:.75rem;color:var(--color-gray-60);overflow:hidden;text-align:center;line-height:150%}.excalidraw .FontPicker__container{display:grid;grid-template-columns:calc(1rem + 3 * var(--default-button-size)) 1rem 1fr;align-items:center}.excalidraw--mobile.excalidraw .FontPicker__container{max-width:calc(2rem + 4 * var(--default-button-size))}.excalidraw .FontPicker__container--compact{display:block;grid-template-columns:none}.excalidraw .picker{padding:.5rem;background:var(--popup-bg-color);border:0 solid rgba(255,255,255,.25);box-shadow:var(--shadow-island-stronger);border-radius:4px}:root[dir=rtl] .excalidraw .picker{padding:.4rem}.excalidraw .picker-sections,.excalidraw .picker-section{display:flex;flex-direction:column;gap:.5rem}.excalidraw .picker-container button,.excalidraw .picker button{position:relative;display:flex;align-items:center;justify-content:center}.excalidraw .picker-container button:focus-visible,.excalidraw .picker button:focus-visible{outline:transparent;background-color:var(--button-gray-2)}.excalidraw .picker-container button:focus-visible svg,.excalidraw .picker button:focus-visible svg{opacity:1}.excalidraw .picker-container button:hover,.excalidraw .picker button:hover{background-color:var(--button-gray-2)}.excalidraw .picker-container button:active,.excalidraw .picker button:active{background-color:var(--button-gray-3)}.excalidraw .picker-container button:disabled,.excalidraw .picker button:disabled{cursor:not-allowed}.excalidraw .picker-container button svg,.excalidraw .picker button svg{margin:0;width:36px;height:18px;pointer-events:none}.excalidraw .picker button{padding:.25rem .28rem .35rem .25rem}.excalidraw .picker-content{display:grid;grid-template-columns:repeat(4,auto);grid-gap:.5rem;border-radius:4px}.excalidraw .picker-collapsible{font-size:.75rem;padding:0;color:var(--text-primary-color)}.excalidraw .picker-section-label{font-size:.75rem;color:var(--text-primary-color)}.excalidraw .picker-keybinding{position:absolute;bottom:2px;font-size:.7em;color:var(--keybinding-color)}:root[dir=ltr] .excalidraw .picker-keybinding{right:2px}:root[dir=rtl] .excalidraw .picker-keybinding{left:2px}.excalidraw--mobile.excalidraw .picker-keybinding{display:none}.excalidraw .picker-type-canvasBackground .picker-keybinding{color:#aaa}.excalidraw .picker-type-elementBackground .picker-keybinding{color:#fff}.excalidraw .picker-swatch[aria-label=transparent] .picker-keybinding{color:#aaa}.excalidraw .picker-type-elementStroke .picker-keybinding{color:#d4d4d4}.excalidraw.theme--dark .picker-type-elementBackground .picker-keybinding,.excalidraw.theme--dark .picker-swatch[aria-label=transparent] .picker-keybinding{color:#000}.excalidraw{--slider-thumb-size: 16px}.excalidraw .range-wrapper{position:relative;padding-top:10px;padding-bottom:25px}.excalidraw .range-input{width:100%;height:4px;-webkit-appearance:none;background:var(--color-slider-track);border-radius:2px;outline:none}.excalidraw .range-input::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:var(--slider-thumb-size);height:var(--slider-thumb-size);background:var(--color-slider-thumb);border-radius:50%;cursor:pointer;border:none}.excalidraw .range-input::-moz-range-thumb{width:var(--slider-thumb-size);height:var(--slider-thumb-size);background:var(--color-slider-thumb);border-radius:50%;cursor:pointer;border:none}.excalidraw .value-bubble{position:absolute;bottom:0;transform:translate(-50%);font-size:12px;color:var(--text-primary-color)}.excalidraw .zero-label{position:absolute;bottom:0;left:4px;font-size:12px;color:var(--text-primary-color)}.excalidraw-tooltip{--ui-font: Assistant, system-ui, BlinkMacSystemFont, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;font-family:var(--ui-font);position:fixed;z-index:var(--zIndex-popup);padding:8px;border-radius:6px;box-sizing:border-box;pointer-events:none;word-wrap:break-word;background:#000;line-height:1.5;text-align:center;font-size:13px;font-weight:500;color:#fff;display:none}.excalidraw-tooltip.excalidraw-tooltip--visible{display:block}.excalidraw-tooltip-wrapper{display:flex}.excalidraw-tooltip-icon{width:.9em;height:.9em;margin-left:5px;margin-top:1px;display:flex}.excalidraw--mobile.excalidraw-tooltip-icon{display:none}.excalidraw .Checkbox{margin:4px .3em;display:flex;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.excalidraw .Checkbox:hover:not(.is-checked) .Checkbox-box:not(:focus){box-shadow:0 0 0 2px #4dabf7}.excalidraw .Checkbox:hover:not(.is-checked) .Checkbox-box:not(:focus) svg{display:block;opacity:.3}.excalidraw .Checkbox:active .Checkbox-box{box-shadow:0 0 2px 1px inset #1c7ed6!important}.excalidraw .Checkbox:hover .Checkbox-box{background-color:#d0ebff33}.excalidraw .Checkbox.is-checked .Checkbox-box{background-color:#d0ebff}.excalidraw .Checkbox.is-checked .Checkbox-box svg{display:block}.excalidraw .Checkbox.is-checked:hover .Checkbox-box{background-color:#a5d8ff}.excalidraw .Checkbox .Checkbox-box{width:22px;height:22px;padding:0;flex:0 0 auto;margin:0 1em;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px #1c7ed6;background-color:transparent;border-radius:4px;color:#1c7ed6;border:0}.excalidraw .Checkbox .Checkbox-box:focus{box-shadow:0 0 0 3px #1c7ed6}.excalidraw .Checkbox .Checkbox-box svg{display:none;width:16px;height:16px;stroke-width:3px}.excalidraw .Checkbox .Checkbox-label{display:flex;align-items:center}.excalidraw .Checkbox .excalidraw-tooltip-icon{width:1em;height:1em}.excalidraw .TextInput{display:inline-block}.ProjectName{margin:auto;display:flex;align-items:center}.ProjectName .TextInput{height:calc(1rem - 3px);width:200px;overflow:hidden;text-align:center;margin-left:8px;text-overflow:ellipsis}.ProjectName .TextInput--readonly{background:none;border:none}.ProjectName .TextInput--readonly:hover{background:none}.ProjectName .TextInput--readonly{width:auto;max-width:200px;padding-left:2px}.excalidraw .Toast{animation:Toast-fade-in .5s;min-width:220px;max-width:min(360px,100vw - 32px);border-radius:var(--border-radius-lg);border:1px solid var(--default-border-color);background-color:var(--island-bg-color);color:var(--text-primary-color);padding:.5rem .75rem;box-shadow:0 0 0 1px var(--color-surface-lowest);box-sizing:border-box;cursor:default;pointer-events:none}.excalidraw .Toast .Toast__message{font-family:var(--ui-font);font-size:.75rem;line-height:1.25rem;text-align:center;padding:0 1.6rem;white-space:pre-wrap}.excalidraw .Toast .Toast__progress-bar{margin-top:.35rem;width:100%;height:4px;border-radius:999px;background-color:var(--button-gray-2);overflow:hidden}.excalidraw .Toast .Toast__progress-bar-fill{height:100%;border-radius:inherit;background-color:var(--color-primary)}.excalidraw .Toast .close{position:absolute;top:0;right:0;padding:.4rem;pointer-events:auto}.excalidraw .Toast .close .ToolIcon__icon{width:1.2rem;height:1.2rem}@keyframes Toast-fade-in{0%{opacity:0}to{opacity:1}}.excalidraw .Avatar{width:var(--avatar-size, 1.5rem);height:var(--avatar-size, 1.5rem);position:relative;border-radius:100%;outline-offset:2px;display:flex;justify-content:center;align-items:center;cursor:pointer;font-size:.75rem;font-weight:700;line-height:1;color:var(--color-gray-90);flex:0 0 auto}.excalidraw .Avatar:active{transform:scale(.94)}.excalidraw .Avatar-img{width:100%;height:100%;border-radius:100%}.excalidraw .Avatar:before{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:100%}.excalidraw .Avatar.is-followed:before{border-color:var(--color-primary-hover);box-shadow:0 0 0 1px var(--color-primary-hover)}.excalidraw .Avatar.is-current-user{cursor:auto}.excalidraw-hyperlinkContainer{display:flex;align-items:center;justify-content:space-between;position:absolute;box-shadow:0 2px 4px #0000004d;z-index:var(--zIndex-hyperlinkContainer);background:var(--island-bg-color);border-radius:var(--border-radius-md);box-sizing:border-box;min-height:42px}.excalidraw-hyperlinkContainer-input,.excalidraw-hyperlinkContainer button{z-index:100}.excalidraw-hyperlinkContainer-input,.excalidraw-hyperlinkContainer-link{height:24px;padding:0 8px;line-height:24px;font-size:.9rem;font-weight:500;font-family:var(--ui-font)}.excalidraw-hyperlinkContainer-input{width:18rem;background-color:transparent;color:var(--text-primary-color);outline:none;border:none;box-shadow:none!important}.excalidraw-hyperlinkContainer-link{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:15rem}.excalidraw-hyperlinkContainer button{color:#228be6;background-color:transparent!important;font-weight:500}.excalidraw-hyperlinkContainer button.excalidraw-hyperlinkContainer--remove{color:#c92a2a}.excalidraw-hyperlinkContainer--remove .ToolIcon__icon svg{color:#fa5252}.excalidraw-hyperlinkContainer .ToolIcon__icon{width:2rem;height:2rem}.excalidraw-hyperlinkContainer__buttons{flex:0 0 auto}.excalidraw .ConvertElementTypePopup{display:flex;flex-wrap:wrap;justify-content:center;gap:.2rem;border-radius:.5rem;background:var(--island-bg-color);box-shadow:var(--shadow-island);padding:.5rem}.excalidraw .ConvertElementTypePopup:focus{outline:none}.excalidraw .Dialog__action-button{position:relative;display:flex;column-gap:.5rem;align-items:center;padding:.5rem 1.5rem;border:1px solid var(--default-border-color);background-color:transparent;height:3rem;border-radius:var(--border-radius-lg);letter-spacing:.4px;color:inherit;font-family:inherit;font-size:.875rem;font-weight:600;-webkit-user-select:none;user-select:none}.excalidraw .Dialog__action-button svg{display:block;width:1rem;height:1rem}.excalidraw .Dialog__action-button--danger{background-color:var(--color-danger);border-color:var(--color-danger);color:#fff}.excalidraw .Dialog__action-button--primary{background-color:var(--color-primary);border-color:var(--color-primary);color:#fff}.excalidraw.theme--dark .Dialog__action-button--danger,.excalidraw.theme--dark .Dialog__action-button--primary{color:var(--color-gray-100)}.excalidraw .confirm-dialog-buttons{display:flex;column-gap:.5rem;justify-content:flex-end}.excalidraw .publish-library__fields{display:flex;flex-direction:column}.excalidraw .publish-library__fields label{padding:1em 0;display:flex;justify-content:space-between;align-items:center}.excalidraw .publish-library__fields label span{font-weight:500;font-size:1rem;color:#868e96}.excalidraw .publish-library__fields label input,.excalidraw .publish-library__fields label textarea{width:70%;padding:.6em;font-family:var(--ui-font)}.excalidraw .publish-library__fields label .required{color:#e03131;margin:.2rem}.excalidraw .publish-library__buttons{display:flex;padding:.2rem 0;justify-content:flex-end;gap:.5rem}.excalidraw .publish-library__buttons .ToolIcon__icon{min-width:2.5rem;width:auto;font-size:1rem}.excalidraw .publish-library__buttons .ToolIcon_type_button{margin-left:1rem;padding:0 .5rem}.excalidraw .publish-library__buttons--confirm.ToolIcon_type_button{background-color:#228be6}.excalidraw .publish-library__buttons--confirm.ToolIcon_type_button:hover{background-color:#1971c2}.excalidraw .publish-library__buttons--cancel.ToolIcon_type_button{background-color:#adb5bd}.excalidraw .publish-library__buttons--cancel.ToolIcon_type_button:hover{background-color:#868e96}.excalidraw .publish-library__buttons .ToolIcon__icon{color:#fff}.excalidraw .publish-library__buttons .ToolIcon__icon .Spinner{--spinner-color: #fff}.excalidraw .publish-library__buttons .ToolIcon__icon .Spinner svg{padding:.5rem}.excalidraw .publish-library .selected-library-items{display:flex;flex-wrap:wrap}.excalidraw .publish-library .selected-library-items .single-library-item-wrapper{width:9rem}.excalidraw .publish-library-warning{color:#fa5252}.excalidraw .publish-library-note{padding:1em 0;font-style:italic;font-size:14px;display:block}.excalidraw .single-library-item{position:relative}.excalidraw .single-library-item-status{position:absolute;top:.3rem;left:.3rem;font-size:.7rem;color:#f03e3e;background:#ffffffe6;padding:.1rem .2rem;border-radius:.2rem}.excalidraw .single-library-item__svg{background-color:#fff;padding:.3rem;width:7.5rem;height:7.5rem;border:1px solid var(--button-gray-2)}.excalidraw .single-library-item__svg svg{width:100%;height:100%}.excalidraw .single-library-item .ToolIcon__icon{background-color:#fff;width:auto;height:auto;margin:0 .5rem}.excalidraw .single-library-item .ToolIcon,.excalidraw .single-library-item .ToolIcon_type_button:hover{background-color:#fff}.excalidraw .single-library-item .required,.excalidraw .single-library-item .error{color:#e03131;font-weight:700;font-size:1rem;margin:.2rem}.excalidraw .single-library-item .error{font-weight:500;margin:0;padding:.3em 0}.excalidraw .single-library-item--remove{position:absolute;top:.2rem;right:1rem}.excalidraw .single-library-item--remove .ToolIcon__icon{margin:0}.excalidraw .single-library-item--remove .ToolIcon__icon{background-color:#fa5252}.excalidraw .single-library-item--remove .ToolIcon__icon:hover{background-color:#f03e3e}.excalidraw .single-library-item--remove .ToolIcon__icon:active{background-color:#e03131}.excalidraw .single-library-item--remove svg{color:#fff;padding:.26rem;border-radius:.3em;width:1rem;height:1rem}.excalidraw .Stack{--gap: 0;display:grid;gap:calc(var(--space-factor) * var(--gap))}.excalidraw .Stack_vertical{grid-template-columns:auto;grid-auto-flow:row;grid-auto-rows:min-content}.excalidraw .Stack_horizontal{grid-template-rows:auto;grid-auto-flow:column;grid-auto-columns:min-content}.excalidraw .dropdown-menu{max-width:20rem;z-index:1}.excalidraw .dropdown-menu--placement-top{margin-bottom:.5rem}.excalidraw .dropdown-menu__submenu-trigger[aria-expanded=true] .dropdown-menu-item{background-color:var(--button-hover-bg)}.excalidraw .dropdown-menu__submenu-trigger-icon{margin-left:auto;opacity:.5}.excalidraw .dropdown-menu__submenu-trigger-icon svg g{stroke-width:2}.excalidraw .dropdown-menu--mobile{width:100%;row-gap:.75rem}.excalidraw .dropdown-menu--mobile.main-menu{min-width:232px;margin-top:0;margin-bottom:0}@media screen and (orientation: landscape){.excalidraw .dropdown-menu--mobile.main-menu{max-width:232px}}.excalidraw .dropdown-menu--mobile .dropdown-menu-container{padding:8px;box-sizing:border-box;border-radius:var(--border-radius-lg);position:relative;transition:box-shadow .5s ease-in-out;display:flex;flex-direction:column;overflow-y:auto}.excalidraw .dropdown-menu--mobile .dropdown-menu-container.zen-mode{box-shadow:none}.excalidraw .dropdown-menu .dropdown-menu-container{background-color:var(--island-bg-color);overflow-y:auto;display:flex;flex-direction:column;gap:1px;box-shadow:var(--box-shadow, var(--shadow-island));max-height:calc(100svh - var(--editor-container-padding) * 2 - 2.25rem)}.excalidraw.theme--dark.excalidraw .dropdown-menu .dropdown-menu-container{box-shadow:var(--box-shadow, var(--shadow-island)),0 0 0 1px #00000026}.excalidraw .dropdown-menu .dropdown-menu-item-base{display:flex;column-gap:.625rem;padding:0 .5rem;font-size:.875rem;color:var(--color-on-surface);width:100%;box-sizing:border-box;font-weight:400;font-family:inherit}.excalidraw .dropdown-menu.manual-hover .dropdown-menu-item:hover{background-color:transparent}.excalidraw .dropdown-menu.manual-hover .dropdown-menu-item--hovered{background-color:var(--button-hover-bg)!important}.excalidraw .dropdown-menu.manual-hover .dropdown-menu-item--selected{background-color:var(--color-primary-light)!important}.excalidraw .dropdown-menu.fonts{margin-top:1rem;max-height:calc(7*(2rem + 2px) + 3.95rem)}@media screen and (min-width: 1921px){.excalidraw .dropdown-menu.fonts{max-height:calc(7*(2.25rem + 2px) + 3.95rem)}}.excalidraw .dropdown-menu.fonts .dropdown-menu-item-base{display:inline-flex}.excalidraw .dropdown-menu.fonts .dropdown-menu-group:not(:first-child){margin-top:1rem}.excalidraw .dropdown-menu.fonts .dropdown-menu-group-title{font-size:.75rem;text-align:left;font-weight:400;margin:0 0 .5rem;line-height:1.3}.excalidraw .dropdown-menu .dropdown-menu-item{height:2rem;padding:0 .5rem;background-color:transparent;border:none;align-items:center;cursor:pointer;border-radius:var(--border-radius-md);flex:1 0 auto}@media screen and (min-width: 1921px){.excalidraw .dropdown-menu .dropdown-menu-item{height:2.25rem}}.excalidraw .dropdown-menu .dropdown-menu-item__text{display:flex;align-items:center;width:100%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;gap:.75rem}.excalidraw .dropdown-menu .dropdown-menu-item__shortcut{margin-inline-start:auto;opacity:.5}.excalidraw .dropdown-menu .dropdown-menu-item__shortcut--orphaned{text-align:right;font-size:.875rem;padding:0 .625rem}.excalidraw .dropdown-menu .dropdown-menu-item--selected{background:var(--color-primary-light);--icon-fill-color: var(--color-primary-darker)}.excalidraw .dropdown-menu .dropdown-menu-item:hover{background-color:var(--button-hover-bg);text-decoration:none}.excalidraw .dropdown-menu .dropdown-menu-item:active{background-color:var(--button-hover-bg);box-shadow:0 0 0 1px var(--color-brand-active)}.excalidraw .dropdown-menu .dropdown-menu-item[disabled]{cursor:not-allowed;opacity:.5;pointer-events:none}.excalidraw .dropdown-menu .dropdown-menu-item[disabled]:hover{background-color:transparent}.excalidraw .dropdown-menu .dropdown-menu-item[disabled]:active{background-color:transparent;box-shadow:none}.excalidraw .dropdown-menu .dropdown-menu-item svg{width:1rem;height:1rem;display:block}.excalidraw .dropdown-menu .dropdown-menu-item-bare{align-items:center;height:2rem;justify-content:space-between}@media screen and (min-width: 1921px){.excalidraw .dropdown-menu .dropdown-menu-item-bare{height:2.25rem}}.excalidraw .dropdown-menu .dropdown-menu-item-bare svg{width:1rem;height:1rem;display:block}.excalidraw .dropdown-menu .dropdown-menu-item-custom{margin-top:.5rem}.excalidraw .dropdown-menu .dropdown-menu-group-title{font-size:14px;text-align:left;margin:10px 0;font-weight:500}.excalidraw .dropdown-menu-button{display:flex;justify-content:center;align-items:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border-width:1px;border-style:solid;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--button-color, var(--color-on-surface));font-family:var(--ui-font)}.excalidraw .dropdown-menu-button svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.excalidraw .dropdown-menu-button:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)));color:var(--button-hover-color, var(--button-color, var(--text-primary-color, inherit)))}.excalidraw .dropdown-menu-button:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.excalidraw .dropdown-menu-button.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.excalidraw .dropdown-menu-button.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.excalidraw .dropdown-menu-button.active svg{color:var(--button-color, var(--color-on-primary-container))}.excalidraw--mobile.excalidraw .dropdown-menu-button{width:var(--mobile-action-button-size, var(--default-button-size));height:var(--mobile-action-button-size, var(--default-button-size))}.excalidraw .dropdown-menu-button{width:var(--lg-button-size);height:var(--lg-button-size);--background: var(--color-surface-mid);background-color:var(--background)}.excalidraw.theme--dark.excalidraw .dropdown-menu-button{--background: var(--color-surface-high)}.excalidraw.theme--dark.excalidraw .dropdown-menu-button:hover{--background: #363541}.excalidraw .dropdown-menu-button:hover{--background: var(--color-surface-high);background-color:var(--background);text-decoration:none}.excalidraw .dropdown-menu-button:active{box-shadow:0 0 0 1px var(--color-primary)}.excalidraw .dropdown-menu-button[disabled]{cursor:not-allowed}.excalidraw .dropdown-menu-button[disabled]:hover{--background: var(--color-surface-mid);background-color:var(--background)}.excalidraw .dropdown-menu-button[disabled]:active{box-shadow:none}.excalidraw.theme--dark.excalidraw .dropdown-menu-button[disabled]:hover{--background: var(--color-surface-high)}.excalidraw .dropdown-menu-button svg{width:var(--lg-icon-size);height:var(--lg-icon-size)}.excalidraw .dropdown-menu-button--mobile{border:none;margin:0;padding:0;width:var(--default-button-size);height:var(--default-button-size)}.excalidraw .library-unit{align-items:center;border:1px solid transparent;display:flex;justify-content:center;position:relative;width:55px;height:55px;box-sizing:border-box;border-radius:var(--border-radius-lg)}.excalidraw .library-unit svg{pointer-events:none}.excalidraw .library-unit--hover{background-color:var(--color-surface-mid)}.excalidraw .library-unit:active:not(:has(.library-unit__checkbox:hover)),.excalidraw .library-unit--selected{background-color:var(--color-surface-high)}.excalidraw .library-unit--skeleton{opacity:.5;background:linear-gradient(-45deg,var(--color-gray-10),var(--color-gray-20),var(--color-gray-10));background-size:200% 200%;animation:library-unit__skeleton-opacity-animation .2s linear}.excalidraw.theme--dark .library-unit--skeleton{background-image:linear-gradient(-45deg,var(--color-gray-100),var(--color-gray-80),var(--color-gray-100))}.excalidraw .library-unit__dragger{display:flex;align-items:center;justify-content:center;height:100%;width:100%}.excalidraw .library-unit__dragger>svg{filter:var(--theme-filter);flex-grow:1;max-height:100%;max-width:100%}.excalidraw .library-unit__checkbox-container,.excalidraw .library-unit__checkbox-container:hover,.excalidraw .library-unit__checkbox-container:active{align-items:center;background:none;border:none;color:var(--icon-fill-color);display:flex;justify-content:center;margin:0;padding:.5rem;position:absolute;left:2rem;bottom:2rem;cursor:pointer}.excalidraw .library-unit__checkbox-container input,.excalidraw .library-unit__checkbox-container:hover input,.excalidraw .library-unit__checkbox-container:active input{cursor:pointer}.excalidraw .library-unit__checkbox{position:absolute;top:.125rem;right:.125rem;margin:0}.excalidraw .library-unit__checkbox .Checkbox-box{margin:0;width:1rem;height:1rem;border-radius:4px;background-color:var(--color-primary-light);border:1px solid var(--color-primary);box-shadow:none!important;padding:2px}.excalidraw .library-unit__checkbox.Checkbox:hover .Checkbox-box{background-color:var(--color-primary-light)}.excalidraw .library-unit__checkbox.is-checked .Checkbox-box{background-color:var(--color-primary)!important}.excalidraw .library-unit__checkbox.is-checked .Checkbox-box svg{color:var(--color-primary-light)}.excalidraw .library-unit__removeFromLibrary>svg{height:16px;width:16px}.excalidraw .library-unit__adder{transform:scale(1);animation:library-unit__adder-animation 1s ease-in infinite;position:absolute;width:1.5rem;height:1.5rem;background-color:var(--color-primary);border-radius:var(--border-radius-md);display:flex;justify-content:center;align-items:center;pointer-events:none}.excalidraw .library-unit__adder svg{color:var(--color-primary-light);width:1rem;height:1rem}.excalidraw .library-unit:active .library-unit__adder{animation:none;transform:scale(.8)}.excalidraw .library-unit__active{cursor:pointer}@keyframes library-unit__adder-animation{0%{transform:scale(.85)}50%{transform:scale(1)}to{transform:scale(.85)}}@keyframes library-unit__skeleton-opacity-animation{0%{opacity:0}75%{opacity:0}to{opacity:.5}}.excalidraw{--container-padding-y: 1rem;--container-padding-x: .75rem}.excalidraw .library-menu-items-header{display:flex;padding-top:1rem;padding-bottom:.5rem;gap:.5rem}.excalidraw .library-menu-items__no-items{text-align:center;color:var(--color-gray-70);line-height:1.5;font-size:.875rem;width:100%;min-height:55px;display:flex;flex-direction:column;align-items:center;justify-content:center}.excalidraw .library-menu-items__no-items__label{color:var(--color-primary);font-weight:700;font-size:1.125rem;margin-bottom:.25rem}.excalidraw .library-menu-items__no-items__hint{color:var(--color-border-outline);padding:.75rem 1rem}.excalidraw.theme--dark .library-menu-items__no-items{color:var(--color-gray-40)}.excalidraw .library-menu-items-container{width:100%;display:flex;flex-grow:1;flex-shrink:1;flex-basis:0;overflow-y:auto;flex-direction:column;height:100%;justify-content:flex-start;margin:0;position:relative}.excalidraw .library-menu-items-container>div{padding-left:.75rem;padding-right:.75rem}.excalidraw .library-menu-items-container__row{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.excalidraw .library-menu-items-container__items{position:relative;row-gap:.5rem;padding:1rem 0 var(--container-padding-y) 0;flex:1;overflow-y:auto;overflow-x:hidden}.excalidraw .library-menu-items-container__header{display:flex;align-items:center;flex:1 1 auto;color:var(--color-primary);font-size:1.125rem;font-weight:700;margin-bottom:.75rem;width:100%;box-sizing:border-box}.excalidraw .library-menu-items-container__header--excal{margin-top:2rem}.excalidraw .library-menu-items-container__header__hint{margin-left:auto;font-size:10px;color:var(--color-border-outline);font-weight:400}.excalidraw .library-menu-items-container__header__hint kbd{font-family:monospace;border:1px solid var(--color-border-outline);border-radius:4px;padding:1px 3px}.excalidraw .library-menu-items-container__grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;grid-gap:1rem}.excalidraw .library-menu-items-container__search{flex:1 1 auto;margin:0}.excalidraw .library-menu-items-container__search .ExcTextField__input{height:var(--lg-button-size)}.excalidraw .library-menu-items-container__search .ExcTextField__input input{font-size:.875rem}.excalidraw .library-menu-items-container__search.hideCancelButton input::-webkit-search-cancel-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:none}.excalidraw .library-menu-items-container .separator{width:100%;display:flex;align-items:center;font-weight:500;font-size:.9rem;margin:.6em .2em;color:var(--text-primary-color)}.excalidraw .library-menu-items-private-library-container{min-height:3.75rem;width:100%}.excalidraw{--theme-filter: none;--button-destructive-bg-color: #ffe3e3;--button-destructive-color: #c92a2a;--button-gray-1: #e9ecef;--button-gray-2: #ced4da;--button-gray-3: #adb5bd;--mobile-action-button-bg: rgba(255, 255, 255, .35);--mobile-color-border: var(--default-border-color);--button-special-active-bg-color: #ebfbee;--dialog-border-color: var(--color-gray-20);--dropdown-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="292.4" height="292.4" viewBox="0 0 292 292"><path d="M287 197L159 69c-4-3-8-5-13-5s-9 2-13 5L5 197c-3 4-5 8-5 13s2 9 5 13c4 4 8 5 13 5h256c5 0 9-1 13-5s5-8 5-13-1-9-5-13z"/></svg>');--focus-highlight-color: #a5d8ff;--icon-fill-color: var(--color-on-surface);--icon-green-fill-color: #2b8a3e;--default-bg-color: #fff;--input-bg-color: #fff;--input-border-color: #ced4da;--input-hover-bg-color: #f1f3f5;--input-label-color: #495057;--island-bg-color: #ffffff;--island-bg-color-alt: #fff;--keybinding-color: var(--color-gray-40);--link-color: #1c7ed6;--link-color-hover: #1971c2;--link-color-active: #a5d8ff;--overlay-bg-color: rgba(255, 255, 255, .88);--popup-bg-color: var(--island-bg-color);--popup-secondary-bg-color: #f1f3f5;--popup-text-color: #000;--popup-text-inverted-color: #fff;--select-highlight-color: #339af0;--shadow-island: 0px 0px 1px 0px rgba(0, 0, 0, .17), 0px 0px 3px 0px rgba(0, 0, 0, .08), 0px 7px 14px 0px rgba(0, 0, 0, .05);--shadow-island-stronger: 0px 0px 1px 0px rgba(0, 0, 0, .17), 0px 0px 3px 0px rgba(0, 0, 0, .08), 0px 7px 14px 0px rgb(0 0 0 / 18%);--button-hover-bg: var(--color-surface-high);--button-active-bg: var(--color-surface-high);--button-active-border: var(--color-brand-active);--default-border-color: var(--color-surface-high);--default-button-size: 2rem;--default-icon-size: 1rem;--lg-button-size: 2.25rem;--lg-icon-size: 1rem;--editor-container-padding: 1rem;--mobile-action-button-size: 2rem;--scrollbar-thumb: var(--button-gray-2);--scrollbar-thumb-hover: var(--button-gray-3);--color-slider-track: hsl(240, 100%, 90%);--color-slider-thumb: var(--color-gray-80);--modal-shadow: 0px 100px 80px rgba(0, 0, 0, .07), 0px 41.7776px 33.4221px rgba(0, 0, 0, .0503198), 0px 22.3363px 17.869px rgba(0, 0, 0, .0417275), 0px 12.5216px 10.0172px rgba(0, 0, 0, .035), 0px 6.6501px 5.32008px rgba(0, 0, 0, .0282725), 0px 2.76726px 2.21381px rgba(0, 0, 0, .0196802);--avatar-border-color: var(--color-gray-20);--sidebar-shadow: 0px 100px 80px rgba(0, 0, 0, .07), 0px 41.7776px 33.4221px rgba(0, 0, 0, .0503198), 0px 22.3363px 17.869px rgba(0, 0, 0, .0417275), 0px 12.5216px 10.0172px rgba(0, 0, 0, .035), 0px 6.6501px 5.32008px rgba(0, 0, 0, .0282725), 0px 2.76726px 2.21381px rgba(0, 0, 0, .0196802);--sidebar-border-color: var(--color-surface-high);--sidebar-bg-color: var(--island-bg-color);--library-dropdown-shadow: 0px 15px 6px rgba(0, 0, 0, .01), 0px 8px 5px rgba(0, 0, 0, .05), 0px 4px 4px rgba(0, 0, 0, .09), 0px 1px 2px rgba(0, 0, 0, .1), 0px 0px 0px rgba(0, 0, 0, .1);--chat-msg-shadow: 0 1px 2px rgba(0, 0, 0, .1);--space-factor: .25rem;--text-primary-color: var(--color-on-surface);--color-selection: #6965db;--color-icon-white: #fff;--color-primary: #6965db;--color-primary-darker: #5b57d1;--color-primary-darkest: #4a47b1;--color-primary-light: #e3e2fe;--color-primary-light-darker: #d7d5ff;--color-primary-hover: #5753d0;--color-gray-10: #f5f5f5;--color-gray-20: #ebebeb;--color-gray-30: #d6d6d6;--color-gray-40: #b8b8b8;--color-gray-50: #999999;--color-gray-60: #7a7a7a;--color-gray-70: #5c5c5c;--color-gray-80: #3d3d3d;--color-gray-85: #242424;--color-gray-90: #1e1e1e;--color-gray-100: #121212;--color-disabled: var(--color-gray-40);--color-warning: #fceeca;--color-warning-dark: #f5c354;--color-warning-darker: #f3ab2c;--color-warning-darkest: #ec8b14;--color-text-warning: var(--text-primary-color);--color-danger: #db6965;--color-danger-dark: #db6965;--color-danger-darker: #d65550;--color-danger-darkest: #d1413c;--color-danger-text: black;--color-danger-background: #fff0f0;--color-danger-icon-background: #ffdad6;--color-danger-color: #700000;--color-danger-icon-color: #700000;--color-warning-background: var(--color-warning);--color-warning-icon-background: var(--color-warning-dark);--color-warning-color: var(--text-primary-color);--color-warning-icon-color: var(--text-primary-color);--color-muted: var(--color-gray-30);--color-muted-darker: var(--color-gray-60);--color-muted-darkest: var(--color-gray-100);--color-muted-background: var(--color-gray-80);--color-muted-background-darker: var(--color-gray-100);--color-promo: var(--color-primary);--color-success: #cafccc;--color-success-darker: #bafabc;--color-success-darkest: #a5eba8;--color-success-text: #268029;--color-success-contrast: #65bb6a;--color-success-contrast-hover: #6bcf70;--color-success-contrast-active: #6edf74;--color-logo-icon: var(--color-primary);--color-logo-text: #190064;--border-radius-md: .375rem;--border-radius-lg: .5rem;--color-surface-high: #f1f0ff;--color-surface-mid: #f6f6f9;--color-surface-low: #ececf4;--color-surface-lowest: #ffffff;--color-on-surface: #1b1b1f;--color-brand-hover: #5753d0;--color-on-primary-container: #030064;--color-brand-active: #4440bf;--color-border-outline: #767680;--color-border-outline-variant: #c5c5d0;--color-surface-primary-container: #e0dfff;--color-badge: #0b6513;--background-color-badge: #d3ffd2}.excalidraw.theme--dark{--theme-filter: invert(93%) hue-rotate(180deg);--button-destructive-bg-color: #5a0000;--button-destructive-color: #ffa8a8;--button-gray-1: #363636;--button-gray-2: #272727;--button-gray-3: #222;--mobile-action-button-bg: var(--island-bg-color);--mobile-color-border: rgba(255, 255, 255, .85);--button-special-active-bg-color: #204624;--dialog-border-color: var(--color-gray-80);--dropdown-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="292.4" height="292.4" viewBox="0 0 292 292"><path fill="%23ced4da" d="M287 197L159 69c-4-3-8-5-13-5s-9 2-13 5L5 197c-3 4-5 8-5 13s2 9 5 13c4 4 8 5 13 5h256c5 0 9-1 13-5s5-8 5-13-1-9-5-13z"/></svg>');--focus-highlight-color: #228be6;--icon-green-fill-color: #69db7c;--default-bg-color: #121212;--input-bg-color: #121212;--input-border-color: #2e2e2e;--input-hover-bg-color: #181818;--input-label-color: #e9ecef;--island-bg-color: #232329;--island-bg-color-alt: hsl(240, 12%, 12%);--keybinding-color: var(--color-gray-60);--link-color: #4dabf7;--overlay-bg-color: rgba(52, 58, 64, .12);--popup-secondary-bg-color: #222;--popup-text-color: #ced4da;--popup-text-inverted-color: #2c2c2c;--select-highlight-color: #4dabf7;--modal-shadow: 0px 100px 80px rgba(0, 0, 0, .07), 0px 41.7776px 33.4221px rgba(0, 0, 0, .0503198), 0px 22.3363px 17.869px rgba(0, 0, 0, .0417275), 0px 12.5216px 10.0172px rgba(0, 0, 0, .035), 0px 6.6501px 5.32008px rgba(0, 0, 0, .0282725), 0px 2.76726px 2.21381px rgba(0, 0, 0, .0196802);--avatar-border-color: var(--color-gray-85);--scrollbar-thumb: #343a40;--scrollbar-thumb-hover: #495057;--color-slider-track: hsl(244, 23%, 39%);--color-selection: #3530c4;--color-icon-white: var(--color-gray-90);--color-primary: #a8a5ff;--color-primary-darker: #b2aeff;--color-primary-darkest: #beb9ff;--color-primary-light: #4f4d6f;--color-primary-light-darker: #43415e;--color-primary-hover: #bbb8ff;--color-disabled: var(--color-gray-70);--color-text-warning: var(--color-gray-80);--color-danger: #ffa8a5;--color-danger-dark: #672120;--color-danger-darker: #8f2625;--color-danger-darkest: #ac2b29;--color-danger-text: #fbcbcc;--color-danger-background: #fbcbcc;--color-danger-icon-background: #672120;--color-danger-color: #261919;--color-danger-icon-color: #fbcbcc;--color-warning-background: var(--color-warning);--color-warning-icon-background: var(--color-warning-dark);--color-warning-color: var(--color-gray-80);--color-warning-icon-color: var(--color-gray-80);--color-muted: var(--color-gray-80);--color-muted-darker: var(--color-gray-60);--color-muted-darkest: var(--color-gray-20);--color-muted-background: var(--color-gray-40);--color-muted-background-darker: var(--color-gray-20);--color-logo-text: #e2dfff;--color-surface-high: #2e2d39;--color-surface-low: hsl(240, 8%, 15%);--color-surface-mid: hsl(240 6% 10%);--color-surface-lowest: hsl(0, 0%, 7%);--color-on-surface: #e3e3e8;--color-brand-hover: #bbb8ff;--color-on-primary-container: #e0dfff;--color-brand-active: #d0ccff;--color-border-outline: #8e8d9c;--color-border-outline-variant: #46464f;--color-surface-primary-container: #403e6a}.excalidraw .excalidraw-button{display:flex;justify-content:center;align-items:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border-width:1px;border-style:solid;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--button-color, var(--color-on-surface));font-family:var(--ui-font)}.excalidraw .excalidraw-button svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.excalidraw .excalidraw-button:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)));color:var(--button-hover-color, var(--button-color, var(--text-primary-color, inherit)))}.excalidraw .excalidraw-button:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.excalidraw .excalidraw-button.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.excalidraw .excalidraw-button.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.excalidraw .excalidraw-button.active svg{color:var(--button-color, var(--color-on-primary-container))}.excalidraw--mobile.excalidraw .excalidraw-button{width:var(--mobile-action-button-size, var(--default-button-size));height:var(--mobile-action-button-size, var(--default-button-size))}.excalidraw{--ExcTextField--color: var(--color-on-surface);--ExcTextField--label-color: var(--color-on-surface);--ExcTextField--background: var(--color-surface-low);--ExcTextField--readonly--background: var(--color-surface-high);--ExcTextField--readonly--color: var(--color-on-surface);--ExcTextField--border: var(--color-gray-20);--ExcTextField--readonly--border: var(--color-border-outline-variant);--ExcTextField--border-hover: var(--color-brand-hover);--ExcTextField--border-active: var(--color-brand-active);--ExcTextField--placeholder: var(--color-border-outline-variant)}.excalidraw.theme--dark{--ExcTextField--border: var(--color-border-outline-variant)}.excalidraw .ExcTextField{position:relative}.excalidraw .ExcTextField svg{position:absolute;top:50%;transform:translateY(-50%);left:.75rem;width:1.25rem;height:1.25rem;color:var(--color-gray-40);z-index:1}.excalidraw .ExcTextField--fullWidth{width:100%;flex-grow:1}.excalidraw .ExcTextField__label{font-family:Assistant;font-style:normal;font-weight:600;font-size:.875rem;line-height:150%;color:var(--ExcTextField--label-color);margin-bottom:.25rem;-webkit-user-select:none;user-select:none}.excalidraw .ExcTextField__input{box-sizing:border-box;display:flex;flex-direction:row;align-items:center;height:3rem;background:var(--ExcTextField--background);border:1px solid var(--ExcTextField--border);border-radius:.5rem;padding:0 .75rem}.excalidraw .ExcTextField__input:not(.excalidraw .ExcTextField__input--readonly):hover{border-color:var(--ExcTextField--border-hover)}.excalidraw .ExcTextField__input:not(.excalidraw .ExcTextField__input--readonly):active,.excalidraw .ExcTextField__input:not(.excalidraw .ExcTextField__input--readonly):focus-within{border-color:var(--ExcTextField--border-active)}.excalidraw .ExcTextField__input input{display:flex;align-items:center;border:none;outline:none;padding:0;margin:0;height:1.5rem;color:var(--ExcTextField--color);font-family:Assistant;font-style:normal;font-weight:400;font-size:1rem;line-height:150%;text-overflow:ellipsis;background:transparent;width:100%}.excalidraw .ExcTextField__input input:not(:focus):hover{background-color:initial}.excalidraw .ExcTextField__input input:focus{outline:initial;box-shadow:initial}.excalidraw .ExcTextField__input--readonly{background:var(--ExcTextField--readonly--background);border-color:var(--ExcTextField--readonly--border)}.excalidraw .ExcTextField__input--readonly input{color:var(--ExcTextField--readonly--color)}.excalidraw .ExcTextField--hasIcon .ExcTextField__input{padding-left:2.5rem}.excalidraw .layer-ui__library{display:flex;flex-direction:column;flex:1 1 auto}.excalidraw .library-actions-counter{background-color:var(--color-primary);color:var(--color-primary-light);font-weight:700;display:flex;align-items:center;justify-content:center;border-radius:50%;width:1rem;height:1rem;position:absolute;bottom:-.25rem;right:-.25rem;font-size:.625rem;pointer-events:none}.excalidraw .layer-ui__library-message{padding:2rem;min-width:200px;display:flex;flex-direction:column;align-items:center;flex-grow:1;justify-content:center}.excalidraw .layer-ui__library-message span{font-size:.8em}.excalidraw .publish-library-success .Dialog__content{display:flex;flex-direction:column}.excalidraw .publish-library-success-close.ToolIcon_type_button{background-color:#228be6;align-self:flex-end}.excalidraw .publish-library-success-close.ToolIcon_type_button:hover{background-color:#1971c2}.excalidraw .publish-library-success-close.ToolIcon_type_button .ToolIcon__icon{width:auto;font-size:1rem;color:#fff;padding:0 .5rem}.excalidraw .library-menu-control-buttons{display:flex;align-items:center;justify-content:center;gap:.625rem;position:relative}.excalidraw .library-menu-control-buttons--at-bottom:before{content:"";width:calc(100% - 1.5rem);height:1px;position:absolute;top:-1px;background:var(--sidebar-border-color)}.excalidraw .library-menu-browse-button{flex:1;height:var(--lg-button-size);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;border-radius:var(--border-radius-lg);background-color:var(--color-primary);color:#fff;text-align:center;white-space:nowrap;text-decoration:none!important;font-weight:600;font-size:.75rem}.excalidraw .library-menu-browse-button:hover{background-color:var(--color-brand-hover)}.excalidraw .library-menu-browse-button:active{background-color:var(--color-brand-active)}.excalidraw.theme--dark .library-menu-browse-button{color:var(--color-gray-100)}.excalidraw.excalidraw--mobile .library-menu-browse-button{height:var(--default-button-size)}.excalidraw .layer-ui__library .dropdown-menu{width:auto;top:initial;right:0;left:initial;bottom:100%;margin-bottom:.625rem}.excalidraw .layer-ui__library .dropdown-menu .dropdown-menu-container{width:196px;border-radius:var(--border-radius-lg);padding:.25rem .5rem;--box-shadow: var(--library-dropdown-shadow)}.excalidraw .layer-ui__library .library-menu-dropdown-container{z-index:1;position:relative}.excalidraw .layer-ui__library .library-menu-dropdown-container--in-heading{margin-left:auto}.excalidraw .layer-ui__library .library-menu-dropdown-container--in-heading .dropdown-menu{top:100%}.excalidraw.excalidraw-modal-container{position:absolute;z-index:var(--zIndex-modal)}.excalidraw .Modal{position:absolute;top:0;left:0;right:0;bottom:0;align-items:center;justify-content:center;overflow:auto;padding:calc(var(--space-factor) * 10);display:flex;flex-direction:column}.excalidraw .Modal .Island{padding:2.5rem;border:0;box-shadow:none;border-radius:0}.excalidraw .Modal.animations-disabled .Modal__background{animation:none}.excalidraw .Modal.animations-disabled .Modal__content{animation:none;opacity:1}.excalidraw .Modal__background{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1;background-color:#12121233;animation:Modal__background__fade-in .1s linear forwards}.excalidraw .Modal__content{z-index:2;width:100%;max-width:var(--max-width);max-height:100%;opacity:0;transform:translateY(10px);animation:Modal__content_fade-in 25ms ease-out 0s forwards;position:relative;overflow-y:auto;background:var(--island-bg-color);border:1px solid var(--dialog-border-color);box-shadow:var(--modal-shadow);border-radius:.75rem;box-sizing:border-box}.excalidraw .Modal__content:focus{outline:none}@keyframes Modal__background__fade-in{0%{opacity:0}to{opacity:1}}@keyframes Modal__content_fade-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.excalidraw .Modal__close{color:var(--icon-fill-color);margin:0;padding:.375rem;position:absolute;top:1rem;right:1rem;border:0;background-color:transparent;line-height:0;cursor:pointer}.excalidraw .Modal__close svg{width:1.5rem;height:1.5rem}.excalidraw .Dialog--fullscreen .Modal{padding:0}.excalidraw .Dialog--fullscreen .Modal__content{position:absolute;top:0;left:0;right:0;bottom:0;max-width:100%;border:0;border-radius:0}.excalidraw .Dialog{-webkit-user-select:text;user-select:text;cursor:auto}.excalidraw .Dialog__title{margin:0;text-align:left;font-size:1.25rem;border-bottom:1px solid var(--dialog-border-color);padding:0 0 .75rem;margin-bottom:1.5rem}.excalidraw .Dialog__close{color:var(--color-gray-40);margin:0;position:absolute;top:.75rem;right:.5rem;border:0;background-color:transparent;line-height:0;cursor:pointer}.excalidraw .Dialog__close:hover{color:var(--color-gray-60)}.excalidraw .Dialog__close:active{color:var(--color-gray-40)}.excalidraw .Dialog__close svg{width:1.5rem;height:1.5rem}.excalidraw .Dialog__close+.Dialog__content{--offset: 28px;height:calc(100% - var(--offset))!important;margin-top:var(--offset)!important}.excalidraw .Dialog--fullscreen .Dialog__close{top:1.25rem;right:1.25rem}.zoom-actions,.undo-redo-buttons{background-color:var(--island-bg-color);border-radius:var(--border-radius-lg);box-shadow:0 0 0 1px var(--color-surface-lowest)}.zoom-button,.undo-redo-buttons button{border-radius:0!important;background-color:var(--color-surface-low)!important;font-size:.875rem!important;width:var(--lg-button-size);height:var(--lg-button-size)}.zoom-button svg,.undo-redo-buttons button svg{width:var(--lg-icon-size)!important;height:var(--lg-icon-size)!important}.zoom-button .ToolIcon__icon,.undo-redo-buttons button .ToolIcon__icon{width:100%;height:100%}.reset-zoom-button{border-left:0!important;border-right:0!important;padding:0 .625rem!important;width:3.75rem!important;justify-content:center;color:var(--text-primary-color)}.zoom-out-button{border-top-left-radius:var(--border-radius-lg)!important;border-bottom-left-radius:var(--border-radius-lg)!important}:root[dir=rtl] .zoom-out-button{transform:scaleX(-1)}.zoom-out-button .ToolIcon__icon{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.zoom-in-button{border-top-right-radius:var(--border-radius-lg)!important;border-bottom-right-radius:var(--border-radius-lg)!important}:root[dir=rtl] .zoom-in-button{transform:scaleX(-1)}.zoom-in-button .ToolIcon__icon{border-top-left-radius:0!important;border-bottom-left-radius:0!important}.undo-redo-buttons .undo-button-container button{border-top-left-radius:var(--border-radius-lg)!important;border-bottom-left-radius:var(--border-radius-lg)!important;border-right:0!important}:root[dir=rtl] .undo-redo-buttons .undo-button-container button{transform:scaleX(-1)}.undo-redo-buttons .undo-button-container button .ToolIcon__icon{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.undo-redo-buttons .redo-button-container button{border-top-right-radius:var(--border-radius-lg)!important;border-bottom-right-radius:var(--border-radius-lg)!important}:root[dir=rtl] .undo-redo-buttons .redo-button-container button{transform:scaleX(-1)}.undo-redo-buttons .redo-button-container button .ToolIcon__icon{border-top-left-radius:0!important;border-bottom-left-radius:0!important}.compact-shape-actions{display:flex;flex-direction:column;gap:.5rem;max-height:calc(100vh - 200px);overflow-y:auto;padding:.5rem}.compact-shape-actions .compact-action-item{position:relative;display:flex;justify-content:center;align-items:center;min-height:2.5rem;pointer-events:auto;--default-button-size: 2rem}.compact-shape-actions .compact-action-item .compact-action-button{width:var(--mobile-action-button-size);height:var(--mobile-action-button-size);border:none;border-radius:var(--border-radius-lg);color:var(--color-on-surface);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;background:var(--mobile-action-button-bg)}.compact-shape-actions .compact-action-item .compact-action-button svg{width:1rem;height:1rem;flex:0 0 auto}.compact-shape-actions .compact-action-item .compact-action-button.active{background:var(--color-surface-primary-container, var(--mobile-action-button-bg))}.compact-shape-actions .compact-action-item .compact-popover-content .popover-section{margin-bottom:1rem}.compact-shape-actions .compact-action-item .compact-popover-content .popover-section:last-child{margin-bottom:0}.compact-shape-actions .compact-action-item .compact-popover-content .popover-section .popover-section-title{font-size:.75rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.compact-shape-actions .compact-action-item .compact-popover-content .popover-section .buttonList{display:flex;flex-wrap:wrap;gap:.25rem}.compact-shape-actions .ToolIcon .ToolIcon__icon{width:var(--mobile-action-button-size);height:var(--mobile-action-button-size);background:var(--mobile-action-button-bg)}.compact-shape-actions .ToolIcon .ToolIcon__icon:hover{background-color:transparent}.compact-shape-actions-island{width:fit-content;overflow-x:hidden}.mobile-shape-actions{z-index:999;display:flex;flex-direction:row;justify-content:space-between;width:100%;background:transparent;border-radius:var(--border-radius-lg);box-shadow:none;overflow:none;scrollbar-width:none;-ms-overflow-style:none}.shape-actions-theme-scope{--button-border: transparent;--button-bg: var(--color-surface-mid)}:root.theme--dark .shape-actions-theme-scope{--button-hover-bg: #363541;--button-bg: var(--color-surface-high)}.excalidraw .tool-popover-content{display:flex;flex-direction:row;gap:.25rem;border-radius:.5rem;background:var(--island-bg-color);box-shadow:var(--shadow-island);padding:.5rem;z-index:var(--zIndex-layerUI)}.excalidraw .command-palette-dialog{-webkit-user-select:none;user-select:none}.excalidraw .command-palette-dialog .Modal__content{height:auto;max-height:100%}@media screen and (min-width: 861px){.excalidraw .command-palette-dialog .Modal__content{max-height:750px;height:100%}}.excalidraw .command-palette-dialog .Modal__content .Island{height:100%;padding:1.5rem}.excalidraw .command-palette-dialog .Modal__content .Dialog__content{height:100%;display:flex;flex-direction:column}.excalidraw .command-palette-dialog .shortcuts-wrapper{display:flex;justify-content:center;align-items:center;margin-top:12px;gap:1.5rem}.excalidraw .command-palette-dialog .shortcut{display:flex;justify-content:center;align-items:center;height:16px;font-size:10px;gap:.25rem}.excalidraw .command-palette-dialog .shortcut .shortcut-wrapper{display:flex}.excalidraw .command-palette-dialog .shortcut .shortcut-plus{margin:0 4px}.excalidraw .command-palette-dialog .shortcut .shortcut-key{padding:0 4px;height:16px;border-radius:4px;display:flex;justify-content:center;align-items:center;background-color:var(--color-primary-light)}.excalidraw .command-palette-dialog .shortcut .shortcut-desc{margin-left:4px;color:var(--color-gray-50)}.excalidraw .command-palette-dialog .commands{overflow-y:auto;box-sizing:border-box;margin-top:12px;color:var(--popup-text-color);-webkit-user-select:none;user-select:none}.excalidraw .command-palette-dialog .commands .command-category{display:flex;flex-direction:column;padding:12px 0;margin-right:.25rem}.excalidraw .command-palette-dialog .commands .command-category-title{font-size:1rem;font-weight:600;margin-bottom:6px;display:flex;align-items:center}.excalidraw .command-palette-dialog .commands .command-item{color:var(--popup-text-color);height:2.5rem;display:flex;justify-content:space-between;align-items:center;box-sizing:border-box;padding:0 .5rem;border-radius:var(--border-radius-lg);cursor:pointer;--icon-size: 1rem}.excalidraw .command-palette-dialog .commands .command-item.command-item-large{height:2.75rem;--icon-size: 1.5rem}.excalidraw .command-palette-dialog .commands .command-item.command-item-large .icon{width:var(--icon-size);height:var(--icon-size);margin-right:.625rem}.excalidraw .command-palette-dialog .commands .command-item:active{background-color:var(--color-surface-low)}.excalidraw .command-palette-dialog .commands .command-item .name{display:flex;align-items:center;gap:.25rem;overflow:hidden}.excalidraw .command-palette-dialog .commands .item-selected{background-color:var(--color-surface-mid)}.excalidraw .command-palette-dialog .commands .item-disabled{opacity:.3;cursor:not-allowed}.excalidraw .command-palette-dialog .commands .no-match{display:flex;justify-content:center;align-items:center;margin-top:36px}.excalidraw .command-palette-dialog .icon{width:var(--icon-size, 1rem);height:var(--icon-size, 1rem);margin-right:.375rem}.excalidraw .command-palette-dialog .icon .library-item-icon{display:flex;align-items:center;justify-content:center;height:100%;width:100%}.excalidraw .excalidraw-canvas-buttons{position:absolute;box-shadow:0 2px 4px #0000004d;z-index:var(--zIndex-canvasButtons);background:var(--island-bg-color);border-radius:var(--border-radius-lg);display:flex;flex-direction:column;gap:.375rem}.excalidraw .popover{position:absolute;z-index:10;padding:5px 0;outline:none}.excalidraw .context-menu-popover{z-index:var(--zIndex-ui-context-menu)}.excalidraw .context-menu{position:relative;border-radius:4px;box-shadow:0 3px 10px #0003;padding:0;list-style:none;-webkit-user-select:none;user-select:none;margin:-.25rem 0 0 .125rem;padding:.5rem 0;background-color:var(--popup-secondary-bg-color);border:1px solid var(--button-gray-3);cursor:default}.excalidraw .context-menu button{color:var(--popup-text-color)}.excalidraw .context-menu-item{position:relative;width:100%;min-width:9.5rem;margin:0;padding:.25rem 1rem .25rem 1.25rem;text-align:start;border-radius:0;background-color:transparent;border:none;white-space:nowrap;font-family:inherit;display:grid;grid-template-columns:1fr .2fr;align-items:center}.excalidraw .context-menu-item.checkmark:before{position:absolute;left:6px;margin-bottom:1px;content:"✓"}.excalidraw .context-menu-item.dangerous .context-menu-item__label{color:#f03e3e}.excalidraw .context-menu-item .context-menu-item__label{justify-self:start;margin-inline-end:20px}.excalidraw .context-menu-item .context-menu-item__shortcut{justify-self:end;opacity:.6;font-family:inherit;font-size:.7rem}.excalidraw .context-menu-item:hover{color:var(--popup-bg-color);background-color:var(--select-highlight-color)}.excalidraw .context-menu-item:hover.dangerous .context-menu-item__label{color:var(--popup-bg-color)}.excalidraw .context-menu-item:hover.dangerous{background-color:#fa5252}.excalidraw .context-menu-item:focus{z-index:1}.excalidraw--mobile.excalidraw .context-menu-item{display:block}.excalidraw--mobile.excalidraw .context-menu-item .context-menu-item__label{margin-inline-end:0}.excalidraw--mobile.excalidraw .context-menu-item .context-menu-item__shortcut{display:none}.excalidraw .context-menu-item-separator{border:none;border-top:1px solid #adb5bd}.excalidraw .follow-mode{position:absolute;box-sizing:border-box;pointer-events:none;border:2px solid var(--color-primary-hover);z-index:9999;display:flex;align-items:flex-end;justify-content:center}.excalidraw .follow-mode__badge{background-color:var(--color-primary-hover);color:var(--color-primary-light);padding:.25rem .5rem;margin-bottom:.5rem;border-radius:.5rem;pointer-events:all;font-size:.75rem;display:flex;gap:.5rem;align-items:center}.excalidraw .follow-mode__badge__label{display:flex;white-space:pre-wrap;line-height:1}.excalidraw .follow-mode__badge__username{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px}.excalidraw .follow-mode__disconnect-btn{all:unset;cursor:pointer;border-radius:.25rem}.excalidraw .follow-mode__disconnect-btn:hover{background-color:var(--color-primary-darker)}.excalidraw .follow-mode__disconnect-btn:active{background-color:var(--color-primary-darkest)}.excalidraw .follow-mode__disconnect-btn svg{display:block;width:1rem;height:1rem}.excalidraw .mobile-toolbar{display:flex;flex:1;align-items:center;padding:0;gap:4px;border-radius:var(--space-factor);overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;justify-content:space-between}.excalidraw .mobile-toolbar::-webkit-scrollbar{display:none}.excalidraw .mobile-toolbar .ToolIcon{min-width:2rem;min-height:2rem;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.excalidraw .mobile-toolbar .ToolIcon .ToolIcon__icon{width:2.25rem;height:2.25rem}.excalidraw .mobile-toolbar .ToolIcon .ToolIcon__icon:hover{background-color:transparent}.excalidraw .mobile-toolbar .ToolIcon.active{background:var(--color-surface-primary-container, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.excalidraw .mobile-toolbar .ToolIcon svg{width:1rem;height:1rem}.excalidraw .mobile-toolbar .App-toolbar__extra-tools-dropdown{min-width:160px;z-index:var(--zIndex-layerUI)}.excalidraw .mobile-toolbar-separator{width:1px;height:24px;background:var(--default-border-color);margin:0 2px;flex-shrink:0}.excalidraw .mobile-toolbar-undo{display:flex;align-items:center}.excalidraw .mobile-toolbar-undo .ToolIcon{min-width:32px;min-height:32px;width:32px;height:32px}.excalidraw .FixedSideContainer{position:absolute;pointer-events:none}.excalidraw .FixedSideContainer>*{pointer-events:var(--ui-pointerEvents)}.excalidraw .FixedSideContainer_side_top{left:var(--editor-container-padding);top:var(--editor-container-padding);right:var(--editor-container-padding);bottom:var(--editor-container-padding)}.excalidraw .FixedSideContainer_side_top.zen-mode{right:42px}.excalidraw .PasteChartDialog .PasteChartDialog__title{display:flex;align-items:center;gap:.5rem}.excalidraw .PasteChartDialog .PasteChartDialog__titleText{min-width:0}.excalidraw .PasteChartDialog .PasteChartDialog__reshuffleBtn{margin-left:auto;flex:0 0 auto;width:1rem;height:1rem;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;cursor:pointer;color:var(--text-primary-color);transition:transform .12s ease,background-color .12s ease,color .12s ease;-webkit-user-select:none;user-select:none}.excalidraw .PasteChartDialog .PasteChartDialog__reshuffleBtn:hover{color:#228be6}.excalidraw .PasteChartDialog .PasteChartDialog__reshuffleBtn:active{transform:scale(.94)}.excalidraw--mobile.excalidraw .PasteChartDialog .Island{display:flex;flex-direction:column}.excalidraw .PasteChartDialog .container{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:1rem}.excalidraw--mobile.excalidraw .PasteChartDialog .container{flex-direction:column;justify-content:center;align-items:stretch}.excalidraw .PasteChartDialog .ChartPreview{width:260px;min-height:190px;border-radius:8px;padding:10px;border:1px solid #ced4da;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:10px;background:transparent}.excalidraw .PasteChartDialog .ChartPreview .ChartPreview__canvas{display:flex;flex:1;align-items:center;justify-content:center;overflow:hidden}.excalidraw .PasteChartDialog .ChartPreview .ChartPreview__label{font-size:.875rem;font-weight:600;line-height:1;text-align:center;color:var(--text-primary-color)}.excalidraw .PasteChartDialog .ChartPreview svg{max-height:144px;max-width:100%}.excalidraw .PasteChartDialog .ChartPreview:hover{border-color:#339af0}.excalidraw .PasteChartDialog .ChartPreview:active{border-color:#339af0;box-shadow:0 0 0 1px #339af0;transform:scale(.98)}.excalidraw .PasteChartDialog .ChartPreview:focus-visible{border-color:#339af0;box-shadow:0 0 0 1px #339af0}.excalidraw--mobile.excalidraw .PasteChartDialog .ChartPreview{width:100%;min-height:200px}.excalidraw .sidebar-trigger{display:flex;justify-content:center;align-items:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border-width:1px;border-style:solid;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--button-color, var(--color-on-surface));font-family:var(--ui-font)}.excalidraw .sidebar-trigger svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.excalidraw .sidebar-trigger:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)));color:var(--button-hover-color, var(--button-color, var(--text-primary-color, inherit)))}.excalidraw .sidebar-trigger:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.excalidraw .sidebar-trigger.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.excalidraw .sidebar-trigger.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.excalidraw .sidebar-trigger.active svg{color:var(--button-color, var(--color-on-primary-container))}.excalidraw--mobile.excalidraw .sidebar-trigger{width:var(--mobile-action-button-size, var(--default-button-size));height:var(--mobile-action-button-size, var(--default-button-size))}.excalidraw .sidebar-trigger{border:none;box-shadow:0 0 0 1px var(--color-surface-lowest);background-color:var(--color-surface-low)}.excalidraw .sidebar-trigger:active{box-shadow:0 0 0 1px var(--color-brand-active)}.excalidraw--mobile.excalidraw .sidebar-trigger{width:var(--mobile-action-button-size, 2rem);height:var(--mobile-action-button-size, 2rem)}.excalidraw .sidebar-trigger{width:auto;height:var(--lg-button-size);display:flex;align-items:center;gap:.5rem;line-height:0;font-size:.75rem;letter-spacing:.4px}.excalidraw .sidebar-trigger svg{width:var(--lg-icon-size);height:var(--lg-icon-size)}.excalidraw .sidebar-trigger__label-element{align-self:flex-start}.excalidraw .default-sidebar-trigger .sidebar-trigger__label{display:block;white-space:nowrap}.excalidraw.excalidraw--mobile .default-sidebar-trigger .sidebar-trigger__label{display:none}.excalidraw .sidebar{display:flex;flex-direction:column;position:absolute;top:0;bottom:0;right:0;z-index:var(--zIndex-ui-library);margin:0;padding:0;box-sizing:border-box;background-color:var(--sidebar-bg-color);box-shadow:var(--sidebar-shadow);pointer-events:var(--ui-pointerEvents);overflow:hidden;border-radius:0;width:calc(var(--right-sidebar-width) - var(--space-factor) * 2);border-left:1px solid var(--sidebar-border-color)}:root[dir=rtl] .excalidraw .sidebar{left:0;right:auto}.excalidraw .sidebar--docked{box-shadow:none}:root[dir=rtl] .excalidraw .sidebar{border-right:1px solid var(--sidebar-border-color);border-left:0}.excalidraw .sidebar__header{box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;width:100%;padding:1rem .75rem;position:relative}.excalidraw .sidebar__header:after{content:"";width:calc(100% - 1.5rem);height:1px;background:var(--sidebar-border-color);position:absolute;bottom:-1px}.excalidraw .sidebar__header__buttons{gap:0;display:flex;align-items:center;margin-left:auto}.excalidraw .sidebar__header__buttons button{display:flex;justify-content:center;align-items:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border-width:1px;border-style:solid;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--button-color, var(--color-on-surface));font-family:var(--ui-font)}.excalidraw .sidebar__header__buttons button svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.excalidraw .sidebar__header__buttons button:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)));color:var(--button-hover-color, var(--button-color, var(--text-primary-color, inherit)))}.excalidraw .sidebar__header__buttons button:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.excalidraw .sidebar__header__buttons button.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.excalidraw .sidebar__header__buttons button.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.excalidraw .sidebar__header__buttons button.active svg{color:var(--button-color, var(--color-on-primary-container))}.excalidraw--mobile.excalidraw .sidebar__header__buttons button{width:var(--mobile-action-button-size, var(--default-button-size));height:var(--mobile-action-button-size, var(--default-button-size))}.excalidraw .sidebar__header__buttons button{--button-bg: transparent;border:0!important;width:var(--lg-button-size);height:var(--lg-button-size);padding:0}.excalidraw .sidebar__header__buttons button svg{width:var(--lg-icon-size);height:var(--lg-icon-size)}.excalidraw .sidebar__header__buttons button:hover{background:var(--button-hover-bg, var(--island-bg-color))}.excalidraw .sidebar__header__buttons .sidebar__dock.selected svg{stroke:var(--color-primary);fill:var(--color-primary)}.excalidraw .sidebar-tabs-root{display:flex;flex-direction:column;flex:1 1 auto;padding:1rem 0}.excalidraw .sidebar-tabs-root [role=tabpanel]{flex:1;flex:1 1 auto;display:flex;flex-direction:column;outline:none}.excalidraw .sidebar-tabs-root [role=tabpanel][data-state=inactive]{display:none!important}.excalidraw .sidebar-tabs-root [role=tablist]{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(0,1fr))}.excalidraw .sidebar-tabs-root>.sidebar__header{padding-top:0;padding-bottom:1rem}.excalidraw .sidebar-tab-trigger{--button-width: auto;--button-bg: transparent;--button-hover-bg: transparent;--button-active-bg: var(--color-primary);--button-hover-color: var(--color-primary);--button-hover-border: var(--color-primary)}.excalidraw .sidebar-tab-trigger[data-state=active]{--button-bg: var(--color-primary);--button-hover-bg: var(--color-primary-darker);--button-hover-color: var(--color-icon-white);--button-border: var(--color-primary);color:var(--color-icon-white)}.excalidraw .default-sidebar{display:flex;flex-direction:column}.excalidraw .default-sidebar .sidebar-triggers{display:flex;gap:0;padding:2px;margin-top:-3px;margin-bottom:-3px;border:1px solid var(--sidebar-border-color);background:var(--default-bg-color);border-radius:.625rem}.excalidraw .default-sidebar .sidebar-triggers .sidebar-tab-trigger{height:var(--lg-button-size);width:var(--lg-button-size);border:none}.excalidraw{--RadioGroup-background: var(--island-bg-color);--RadioGroup-border: var(--color-surface-high);--RadioGroup-choice-color-off: var(--color-primary);--RadioGroup-choice-color-off-hover: var(--color-brand-hover);--RadioGroup-choice-background-off: var(--island-bg-color);--RadioGroup-choice-background-off-active: var(--color-surface-high);--RadioGroup-choice-color-on: var(--color-surface-lowest);--RadioGroup-choice-background-on: var(--color-primary);--RadioGroup-choice-background-on-hover: var(--color-brand-hover);--RadioGroup-choice-background-on-active: var(--color-brand-active)}.excalidraw .RadioGroup{box-sizing:border-box;display:flex;flex-direction:row;align-items:flex-start;padding:3px;border-radius:10px;background:var(--RadioGroup-background);border:1px solid var(--RadioGroup-border);gap:2px}.excalidraw .RadioGroup__choice{box-sizing:content-box;position:relative;display:flex;align-items:center;justify-content:center;min-width:20px;height:24px;padding:0 .375rem;color:var(--RadioGroup-choice-color-off);background:var(--RadioGroup-choice-background-off);border-radius:8px;font-family:Assistant;font-style:normal;font-weight:600;font-size:.75rem;line-height:100%;-webkit-user-select:none;user-select:none;letter-spacing:.4px}.excalidraw .RadioGroup__choice:hover{color:var(--RadioGroup-choice-color-off-hover)}.excalidraw .RadioGroup__choice:not(.active):active{background:var(--RadioGroup-choice-background-off-active)}.excalidraw .RadioGroup__choice.active{color:var(--RadioGroup-choice-color-on);background:var(--RadioGroup-choice-background-on)}.excalidraw .RadioGroup__choice.active:hover{background:var(--RadioGroup-choice-background-on-hover)}.excalidraw .RadioGroup__choice.active:active{background:var(--RadioGroup-choice-background-on-active)}.excalidraw .RadioGroup__choice input{z-index:1;position:absolute;width:100%;height:100%;margin:0;padding:0;border-radius:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.excalidraw .ActiveFile .ActiveFile__fileName{display:flex;align-items:center}.excalidraw .ActiveFile .ActiveFile__fileName span{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;width:9.3em}.excalidraw .ActiveFile .ActiveFile__fileName svg{width:1.15em;margin-inline-end:.3em;transform:scaleY(.9)}@keyframes successStatusAnimation{0%{transform:scale(.35)}50%{transform:scale(1.25)}to{transform:scale(1)}}.excalidraw .ExcButton{--text-color: transparent;--border-color: transparent;--back-color: transparent;color:var(--text-color);background-color:var(--back-color);border-color:var(--border-color);border-radius:.5rem;border-width:1px;border-style:solid;font-family:var(--font-family);-webkit-user-select:none;user-select:none}.excalidraw .ExcButton:hover{transition:all .15s ease-out}.excalidraw .ExcButton .Spinner{--spinner-color: var(--color-surface-lowest)}.excalidraw .ExcButton .ExcButton__statusIcon{visibility:visible;position:absolute;width:1.2rem;height:1.2rem;animation:successStatusAnimation .5s cubic-bezier(.3,1,.6,1)}.excalidraw .ExcButton.ExcButton--status-loading,.excalidraw .ExcButton.ExcButton--status-success{pointer-events:none;background-color:var(--color-success)}.excalidraw .ExcButton.ExcButton--status-loading .ExcButton__contents,.excalidraw .ExcButton.ExcButton--status-success .ExcButton__contents{visibility:hidden}.excalidraw .ExcButton[disabled]{cursor:not-allowed}.excalidraw .ExcButton[disabled].ExcButton--variant-filled,.excalidraw .ExcButton[disabled]:hover{--back-color: var(--color-surface-low) !important;--text-color: var(--color-on-surface-variant) !important}.excalidraw .ExcButton[disabled].ExcButton--variant-outlined,.excalidraw .ExcButton[disabled].ExcButton--variant-icon{--text-color: var(--color-on-surface-variant);--border-color: var(--color-surface-high)}.excalidraw .ExcButton,.excalidraw .ExcButton__contents{display:flex;justify-content:center;align-items:center;flex-shrink:0;flex-wrap:nowrap;position:relative}.excalidraw .ExcButton--color-primary.ExcButton--variant-filled{--text-color: var(--color-surface-lowest);--back-color: var(--color-primary)}.excalidraw .ExcButton--color-primary.ExcButton--variant-filled .Spinner{--spinner-color: var(--text-color)}.excalidraw .ExcButton--color-primary.ExcButton--variant-filled:hover{--back-color: var(--color-brand-hover)}.excalidraw .ExcButton--color-primary.ExcButton--variant-filled:active{--back-color: var(--color-brand-active)}.excalidraw .ExcButton--color-primary.ExcButton--variant-outlined,.excalidraw .ExcButton--color-primary.ExcButton--variant-icon{--text-color: var(--color-primary);--border-color: var(--color-primary);--back-color: transparent}.excalidraw .ExcButton--color-primary.ExcButton--variant-outlined .Spinner,.excalidraw .ExcButton--color-primary.ExcButton--variant-icon .Spinner{--spinner-color: var(--text-color)}.excalidraw .ExcButton--color-primary.ExcButton--variant-outlined:hover,.excalidraw .ExcButton--color-primary.ExcButton--variant-icon:hover{--text-color: var(--color-brand-hover);--border-color: var(--color-brand-hover)}.excalidraw .ExcButton--color-primary.ExcButton--variant-outlined:active,.excalidraw .ExcButton--color-primary.ExcButton--variant-icon:active{--text-color: var(--color-brand-active);--border-color: var(--color-brand-active)}.excalidraw .ExcButton--color-danger.ExcButton--variant-filled{--text-color: var(--color-danger-text);--back-color: var(--color-danger-dark)}.excalidraw .ExcButton--color-danger.ExcButton--variant-filled .Spinner{--spinner-color: var(--text-color)}.excalidraw .ExcButton--color-danger.ExcButton--variant-filled:hover{--back-color: var(--color-danger-darker)}.excalidraw .ExcButton--color-danger.ExcButton--variant-filled:active{--back-color: var(--color-danger-darkest)}.excalidraw .ExcButton--color-danger.ExcButton--variant-outlined,.excalidraw .ExcButton--color-danger.ExcButton--variant-icon{--text-color: var(--color-danger);--border-color: var(--color-danger);--back-color: transparent}.excalidraw .ExcButton--color-danger.ExcButton--variant-outlined .Spinner,.excalidraw .ExcButton--color-danger.ExcButton--variant-icon .Spinner{--spinner-color: var(--text-color)}.excalidraw .ExcButton--color-danger.ExcButton--variant-outlined:hover,.excalidraw .ExcButton--color-danger.ExcButton--variant-icon:hover{--text-color: var(--color-danger-darkest);--border-color: var(--color-danger-darkest)}.excalidraw .ExcButton--color-danger.ExcButton--variant-outlined:active,.excalidraw .ExcButton--color-danger.ExcButton--variant-icon:active{--text-color: var(--color-danger-darker);--border-color: var(--color-danger-darker)}.excalidraw .ExcButton--color-success.ExcButton--variant-filled{--text-color: var(--color-success-text);--back-color: var(--color-success)}.excalidraw .ExcButton--color-success.ExcButton--variant-filled .Spinner{--spinner-color: var(--color-success)}.excalidraw .ExcButton--color-success.ExcButton--variant-filled:hover{--back-color: var(--color-success-darker)}.excalidraw .ExcButton--color-success.ExcButton--variant-filled:active{--back-color: var(--color-success-darkest)}.excalidraw .ExcButton--color-success.ExcButton--variant-outlined,.excalidraw .ExcButton--color-success.ExcButton--variant-icon{--text-color: var(--color-success-contrast);--border-color: var(--color-success-contrast);--back-color: transparent}.excalidraw .ExcButton--color-success.ExcButton--variant-outlined .Spinner,.excalidraw .ExcButton--color-success.ExcButton--variant-icon .Spinner{--spinner-color: var(--color-success-contrast)}.excalidraw .ExcButton--color-success.ExcButton--variant-outlined:hover,.excalidraw .ExcButton--color-success.ExcButton--variant-icon:hover{--text-color: var(--color-success-contrast-hover);--border-color: var(--color-success-contrast-hover)}.excalidraw .ExcButton--color-success.ExcButton--variant-outlined:active,.excalidraw .ExcButton--color-success.ExcButton--variant-icon:active{--text-color: var(--color-success-contrast-active);--border-color: var(--color-success-contrast-active)}.excalidraw .ExcButton--color-muted.ExcButton--variant-filled{--text-color: var(--island-bg-color);--back-color: var(--color-gray-50)}.excalidraw .ExcButton--color-muted.ExcButton--variant-filled .Spinner{--spinner-color: var(--text-color)}.excalidraw .ExcButton--color-muted.ExcButton--variant-filled:hover{--back-color: var(--color-gray-60)}.excalidraw .ExcButton--color-muted.ExcButton--variant-filled:active{--back-color: var(--color-gray-80)}.excalidraw .ExcButton--color-muted.ExcButton--variant-outlined,.excalidraw .ExcButton--color-muted.ExcButton--variant-icon{--text-color: var(--color-muted-background);--border-color: var(--color-muted);--back-color: var(--island-bg-color)}.excalidraw .ExcButton--color-muted.ExcButton--variant-outlined .Spinner,.excalidraw .ExcButton--color-muted.ExcButton--variant-icon .Spinner{--spinner-color: var(--text-color)}.excalidraw .ExcButton--color-muted.ExcButton--variant-outlined:hover,.excalidraw .ExcButton--color-muted.ExcButton--variant-icon:hover{--text-color: var(--color-muted-background-darker);--border-color: var(--color-muted-darker)}.excalidraw .ExcButton--color-muted.ExcButton--variant-outlined:active,.excalidraw .ExcButton--color-muted.ExcButton--variant-icon:active{--text-color: var(--color-muted-background-darker);--border-color: var(--color-muted-darkest)}.excalidraw .ExcButton--color-warning.ExcButton--variant-filled{--text-color: black;--back-color: var(--color-warning-dark)}.excalidraw .ExcButton--color-warning.ExcButton--variant-filled .Spinner{--spinner-color: var(--text-color)}.excalidraw .ExcButton--color-warning.ExcButton--variant-filled:hover{--back-color: var(--color-warning-darker)}.excalidraw .ExcButton--color-warning.ExcButton--variant-filled:active{--back-color: var(--color-warning-darkest)}.excalidraw .ExcButton--color-warning.ExcButton--variant-outlined,.excalidraw .ExcButton--color-warning.ExcButton--variant-icon{--text-color: var(--color-warning-dark);--border-color: var(--color-warning-dark);--back-color: var(--input-bg-color)}.excalidraw .ExcButton--color-warning.ExcButton--variant-outlined .Spinner,.excalidraw .ExcButton--color-warning.ExcButton--variant-icon .Spinner{--spinner-color: var(--text-color)}.excalidraw .ExcButton--color-warning.ExcButton--variant-outlined:hover,.excalidraw .ExcButton--color-warning.ExcButton--variant-icon:hover{--text-color: var(--color-warning-darker);--border-color: var(--color-warning-darker)}.excalidraw .ExcButton--color-warning.ExcButton--variant-outlined:active,.excalidraw .ExcButton--color-warning.ExcButton--variant-icon:active{--text-color: var(--color-warning-darkest);--border-color: var(--color-warning-darkest)}.excalidraw .ExcButton--size-large{font-weight:600;font-size:.875rem;min-height:3rem;padding:.5rem 1.5rem;letter-spacing:.4px}.excalidraw .ExcButton--size-large .ExcButton__contents{gap:.75rem}.excalidraw .ExcButton--size-medium{font-weight:600;font-size:.75rem;min-height:2.5rem;padding:.5rem 1rem;letter-spacing:normal}.excalidraw .ExcButton--size-medium .ExcButton__contents{gap:.5rem}.excalidraw .ExcButton--variant-icon{padding:.5rem .75rem;width:3rem}.excalidraw .ExcButton--fullWidth{width:100%}.excalidraw .ExcButton__icon{width:1.25rem;height:1.25rem}.excalidraw .OverwriteConfirm{display:flex;flex-direction:column;align-items:center;gap:.75rem;isolation:isolate}.excalidraw .OverwriteConfirm h3{margin:0;font-weight:700;font-size:1.3125rem;line-height:130%;align-self:flex-start;color:var(--text-primary-color)}.excalidraw .OverwriteConfirm__Description{box-sizing:border-box;display:flex;flex-direction:row;align-items:center;width:100%;gap:1rem}.excalidraw--mobile.excalidraw .OverwriteConfirm__Description{flex-direction:column;text-align:center}.excalidraw .OverwriteConfirm__Description{padding:2.5rem;background:var(--color-danger-background);border-radius:.5rem;font-family:Assistant;font-style:normal;font-weight:400;font-size:1rem;line-height:150%;color:var(--color-danger-color)}.excalidraw .OverwriteConfirm__Description__spacer{flex-grow:1}.excalidraw .OverwriteConfirm__Description__icon{box-sizing:border-box;display:flex;align-items:center;justify-content:center;border-radius:2.5rem;background:var(--color-danger-icon-background);width:3.5rem;height:3.5rem;padding:.75rem}.excalidraw .OverwriteConfirm__Description__icon svg{color:var(--color-danger-icon-color);width:1.5rem;height:1.5rem}.excalidraw .OverwriteConfirm__Description.OverwriteConfirm__Description--color-warning{background:var(--color-warning-background);color:var(--color-warning-color)}.excalidraw .OverwriteConfirm__Description.OverwriteConfirm__Description--color-warning .OverwriteConfirm__Description__icon{background:var(--color-warning-icon-background);flex:0 0 auto}.excalidraw .OverwriteConfirm__Description.OverwriteConfirm__Description--color-warning .OverwriteConfirm__Description__icon svg{color:var(--color-warning-icon-color)}.excalidraw .OverwriteConfirm__Actions{display:flex;flex-direction:row;align-items:stretch;justify-items:stretch;justify-content:center;gap:1.5rem}.excalidraw--mobile.excalidraw .OverwriteConfirm__Actions{flex-direction:column}.excalidraw .OverwriteConfirm__Actions__Action{display:flex;flex-direction:column;align-items:center;padding:1.5rem;gap:.75rem;flex-basis:50%;flex-grow:0}.excalidraw .OverwriteConfirm__Actions__Action__content{height:100%;font-size:.875rem;text-align:center}.excalidraw .OverwriteConfirm__Actions__Action h4{font-weight:700;font-size:1.125rem;line-height:130%;margin:0;color:var(--text-primary-color)}.excalidraw .layer-ui__search{flex:1 0 auto;display:flex;flex-direction:column;padding:8px 0 0}.excalidraw .layer-ui__search-header{display:flex;justify-content:space-between;align-items:center;padding:0 .75rem}.excalidraw .layer-ui__search-header .ExcTextField{flex:1 0 auto}.excalidraw .layer-ui__search-header .ExcTextField__input{background-color:#f5f5f9}.excalidraw.theme--dark.excalidraw .layer-ui__search-header .ExcTextField__input{background-color:#31303b}.excalidraw .layer-ui__search-header .ExcTextField__input{border-radius:var(--border-radius-md);border:0}.excalidraw .layer-ui__search-header .ExcTextField__input input::placeholder{font-size:.9rem}.excalidraw .layer-ui__search-count{display:flex;justify-content:space-between;align-items:center;padding:8px 8px 0;margin:0 .75rem .25rem;font-size:.8em}.excalidraw .layer-ui__search-count .result-nav{display:flex}.excalidraw .layer-ui__search-count .result-nav .result-nav-btn{width:36px;height:36px;--button-border: transparent}.excalidraw .layer-ui__search-count .result-nav .result-nav-btn:active{background-color:var(--color-surface-high)}.excalidraw .layer-ui__search-count .result-nav .result-nav-btn:first-child{margin-right:4px}.excalidraw .layer-ui__search-result-container{overflow-y:auto;flex:1 1 0;display:flex;flex-direction:column;padding:0 .75rem;gap:.125rem}.excalidraw .layer-ui__search .collapsible-items{gap:2px}.excalidraw .layer-ui__search-result-title{font-size:.875rem;margin-bottom:.25rem;display:flex;align-items:center;gap:.25rem;font-weight:700}.excalidraw .layer-ui__search-result-title .title-icon{width:.875rem;height:.875rem;margin-right:.25rem}.excalidraw .layer-ui__search-result-title .title-icon svg g{stroke-width:1.25}.excalidraw .layer-ui__divider{width:100%;margin-top:.25rem;margin-bottom:1rem;position:relative}.excalidraw .layer-ui__result-item{display:flex;align-items:center;min-height:1.875rem;flex:0 0 auto;padding:.25rem .75rem;cursor:pointer;border:1px solid transparent;outline:none;font-size:16px;border-radius:var(--border-radius-md)}.excalidraw .layer-ui__result-item .text-icon{width:1rem;height:1rem;margin-right:.75rem}.excalidraw .layer-ui__result-item .preview-text{flex:1;max-height:48px;line-height:24px;overflow:hidden;text-overflow:ellipsis;word-break:break-all}.excalidraw .layer-ui__result-item:hover{background-color:var(--color-surface-high)}.excalidraw .layer-ui__result-item:active{border-color:var(--color-primary)}.excalidraw .layer-ui__result-item.active{background-color:var(--color-surface-high)}.excalidraw .dialog-mermaid-title{margin-block:.25rem;font-size:1.25rem;font-weight:700;padding-inline:2.5rem}.excalidraw.theme--dark .chat-message--assistant .chat-message__content{background:var(--color-surface-lowest)}.excalidraw.theme--dark .chat-message--system .chat-message__content{color:var(--color-surface-low)}.excalidraw .chat-interface{display:flex;flex-direction:column;height:100%;min-height:0;position:relative}@media screen and (max-width: 861px){.excalidraw .chat-interface{min-height:200px}}.excalidraw .chat-interface__messages{flex:1 1 0;overflow-y:auto;margin-bottom:.5rem;padding:1rem .5rem 0;display:flex;flex-direction:column;gap:2rem;min-height:0;border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg)}@media screen and (max-width: 861px){.excalidraw .chat-interface__messages{min-height:100px;padding:.75rem}}.excalidraw .chat-interface__welcome-screen{display:flex;align-items:center;justify-content:center;height:100%;min-height:200px}.excalidraw .chat-interface__welcome-screen__welcome-message{text-align:center}.excalidraw .chat-interface__welcome-screen__welcome-message h3{margin:0 0 .5rem;font-size:1.25rem;font-weight:600}.excalidraw .chat-interface__welcome-screen__welcome-message p{margin:0 0 .2rem;font-size:.875rem;color:var(--color-on-surface)}@media screen and (max-width: 861px){.excalidraw .chat-interface__welcome-screen{min-height:100px}}.excalidraw .chat-interface__input-outer{position:relative;min-height:71px}.excalidraw .chat-interface__input-container{display:flex;flex-direction:column;justify-content:flex-end}.excalidraw .chat-interface__input-wrapper{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:flex-end;gap:.5rem;border:1px solid var(--dialog-border-color);border-radius:var(--border-radius-lg);padding:.75rem;background:var(--color-surface-lowest);transition:border-color .2s ease}.excalidraw .chat-interface__input-wrapper:focus-within{border-color:var(--color-primary)}@media screen and (max-width: 861px){.excalidraw .chat-interface__input-wrapper{padding:.5rem .75rem}}.excalidraw .chat-interface__input{flex:1;border:none;outline:none;font-size:.875rem;line-height:1.5;min-height:24px;max-height:120px;overflow-x:hidden;border:none!important;background:transparent!important;color:var(--color-on-surface)}.excalidraw .chat-interface__input::placeholder{color:var(--color-gray-40)}@media screen and (max-width: 861px){.excalidraw .chat-interface__input{line-height:1.4;min-height:20px;max-height:100px;resize:none;padding:0}.excalidraw .chat-interface__input::placeholder{opacity:.6}}.excalidraw .chat-interface__send-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:50%;background:var(--color-primary);color:var(--color-surface-lowest);cursor:pointer;margin-bottom:8px}.excalidraw .chat-interface__send-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.excalidraw .chat-interface__send-button:hover{background-color:var(--color-primary-darker)}.excalidraw .chat-interface__send-button svg{transform:rotate(-90deg)}.excalidraw .chat-message{display:flex;align-items:center;gap:.5rem}.excalidraw .chat-message--user{justify-content:flex-end}.excalidraw .chat-message--user .chat-message__content{background:var(--color-primary-light);color:var(--text-primary-color);border-radius:var(--border-radius-md);min-width:6rem}.excalidraw .chat-message--assistant{flex-direction:column;justify-content:flex-start;align-items:flex-start}.excalidraw .chat-message--assistant .chat-message__content{background:var(--color-surface-low);color:var(--color-on-surface);border-radius:var(--border-radius-md);min-width:6rem}.excalidraw .chat-message--assistant .chat-message__content .chat-message__body{font-family:monospace}.excalidraw .chat-message--system{justify-content:flex-start;margin-bottom:0}.excalidraw .chat-message--system .chat-message__content{background:var(--color-warning);color:var(--color-on-surface);border-radius:var(--border-radius-md);min-width:6rem}.excalidraw .chat-message--system .chat-message__content .chat-message__body{font-family:monospace}.excalidraw .chat-message__content{max-width:80%;padding:.75rem 1rem;box-shadow:var(--chat-msg-shadow)}.excalidraw .chat-message__header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem;font-size:.75rem}.excalidraw .chat-message__role{font-weight:600}.excalidraw .chat-message__timestamp{font-size:.625rem}.excalidraw .chat-message__actions{display:flex;align-items:center;gap:.5rem}.excalidraw .chat-message__action{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;padding:.25rem 0;color:var(--color-gray-60);transition:color .2s ease;flex-shrink:0}.excalidraw .chat-message__action.invisible{visibility:hidden;pointer-events:none}.excalidraw .chat-message__action:hover{color:var(--color-primary)}.excalidraw .chat-message__action svg{width:14px;height:14px}.excalidraw .chat-message__action--danger:hover{color:var(--color-danger)}.excalidraw .chat-message__body{line-height:1.5}.excalidraw .chat-message__text{white-space:pre-wrap;word-wrap:break-word}.excalidraw .chat-message__cursor{display:inline-block;margin-left:2px;color:currentColor;animation:blink 1s infinite}.excalidraw .chat-message__loading{display:flex;align-items:center;gap:.5rem}.excalidraw .chat-message__typing-indicator{display:flex;gap:.25rem}.excalidraw .chat-message__typing-indicator span{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.4;animation:typing 1.4s infinite ease-in-out}.excalidraw .chat-message__typing-indicator span:nth-child(1){animation-delay:-.32s}.excalidraw .chat-message__typing-indicator span:nth-child(2){animation-delay:-.16s}.excalidraw .chat-message__typing-indicator span:nth-child(3){animation-delay:0s}.excalidraw .chat-message__error{color:var(--color-danger);font-weight:500;white-space:pre-wrap;word-wrap:break-word;display:flex;flex-direction:column;gap:.5rem}.excalidraw .chat-message__error_message{background:var(--color-warning-background);color:var(--color-warning-color);padding:.5rem .75rem;border-radius:var(--border-radius-md);margin-top:1rem;font-size:.875rem}.excalidraw .chat-message__error-link{display:flex;align-items:center;background:none;border:none;cursor:pointer;font-size:.875rem;font-weight:500;padding:0;margin-top:1rem;text-decoration:underline;font-family:inherit;color:var(--link-color)}.excalidraw .chat-message__error-link:hover{color:var(--link-color-hover)}.excalidraw .chat-message__error-link:active{color:var(--link-color-active)}.excalidraw .chat-message__error-link:disabled{cursor:not-allowed;text-decoration:none}@keyframes typing{0%,80%,to{transform:scale(.8);opacity:.4}40%{transform:scale(1);opacity:1}}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.excalidraw .Modal.Dialog.ttd-dialog{padding:1.25rem}.excalidraw .Modal.Dialog.ttd-dialog.Dialog--fullscreen{margin-top:0}.excalidraw .Modal.Dialog.ttd-dialog .Island{padding-inline:0!important;height:100%;display:flex;flex-direction:column;flex:1 1 auto}.excalidraw .Modal.Dialog.ttd-dialog .Modal__content{max-height:100%;min-height:95vh;height:100%}@media screen and (min-width: 861px){.excalidraw .Modal.Dialog.ttd-dialog .Modal__content{max-height:min(950px,100vh - 4rem);height:100%;min-height:unset}}.excalidraw .Modal.Dialog.ttd-dialog .Dialog__content{flex:1 1 auto}@media screen and (max-width: 861px){.excalidraw .Modal.Dialog.ttd-dialog .Dialog__content{margin-top:0!important}}.excalidraw .ttd-dialog-desc{font-size:15px;font-style:italic;font-weight:500;margin:.5rem 0 1.5rem}.excalidraw .ttd-dialog-tabs-root{width:100%;height:100%;display:flex;flex-direction:column}.excalidraw .ttd-dialog-tab-trigger{color:var(--color-on-surface);font-size:.875rem;margin:0;padding:0 1rem;background-color:transparent;border:0;height:2.875rem;font-weight:600;font-family:inherit;letter-spacing:.4px}.excalidraw .ttd-dialog-tab-trigger[data-state=active]{border-bottom:2px solid var(--color-primary)}.excalidraw .ttd-dialog-tab-trigger__content{display:flex;align-items:center}.excalidraw .ttd-dialog-tab-trigger__badge{display:flex;align-items:center;justify-content:center;padding:1px 6px;margin-left:10px;font-size:10px;border-radius:12px;background:var(--color-promo);color:var(--color-surface-lowest)}.excalidraw .ttd-dialog-triggers{border-bottom:1px solid var(--color-surface-high);margin-bottom:1rem;padding-inline:2.5rem}@media screen and (max-width: 861px){.excalidraw .ttd-dialog-triggers{margin-bottom:1rem}}.excalidraw .ttd-dialog-content{padding-inline:2.5rem;height:100%;display:flex;flex-direction:column;overflow:visible;outline:none}.excalidraw .ttd-dialog-content[hidden]{display:none}@media screen and (max-width: 861px){.excalidraw .ttd-dialog-content{padding-inline:1rem;flex-grow:1}}.excalidraw .ttd-dialog-panel__header .dropdown-menu{z-index:2;margin:0;right:0;left:auto;min-width:280px}.excalidraw .ttd-dialog-panel__header .dropdown-menu .dropdown-menu-container.dropdown-menu-container{padding-inline:.5rem!important;padding-top:.5rem;padding-bottom:.5rem;max-height:min(400px,70vh);height:fit-content;overflow-y:auto;box-shadow:var(--shadow-island);border-radius:var(--border-radius-lg);background-color:var(--island-bg-color-alt)}.excalidraw .ttd-dialog-layout{display:grid;grid-template-columns:1fr 1fr;height:100%}.excalidraw .ttd-dialog-layout--split{gap:2rem;min-width:0}@media screen and (max-width: 861px){.excalidraw .ttd-dialog-layout--split{grid-template-columns:1fr;grid-template-rows:1fr auto;grid-row-gap:0}}.excalidraw .ttd-dialog-layout--split .ttd-dialog-chat-panel{min-width:0}@media screen and (max-width: 861px){.excalidraw .ttd-dialog-layout--split .ttd-dialog-chat-panel{width:100%;flex:0 0 auto;height:auto;min-height:250px}}.excalidraw .ttd-dialog-layout--split .ttd-dialog-preview-panel{min-width:0;overflow:hidden}@media screen and (max-width: 861px){.excalidraw .ttd-dialog-layout--split .ttd-dialog-preview-panel{width:100%;flex:0 0 auto;max-width:100%;min-height:280px;height:unset}}.excalidraw .ttd-dialog-layout--chat-only{grid-template-columns:1fr}.excalidraw .ttd-dialog-layout--chat-only .invisible{display:none}@media screen and (max-width: 861px){.excalidraw .ttd-dialog-layout--chat-only .ttd-dialog-chat-panel{height:unset}}@media screen and (max-width: 861px){.excalidraw .ttd-dialog-layout--chat-only .chat-interface{max-height:100%}.excalidraw .ttd-dialog-layout--chat-only .chat-interface__messages{max-height:unset}}.excalidraw .ttd-dialog-input{width:auto;height:10rem;resize:none;border-radius:var(--border-radius-lg);border:1px solid var(--dialog-border-color);white-space:pre-wrap;padding:.85rem;box-sizing:border-box;font-family:monospace}@media screen and (min-width: 861px){.excalidraw .ttd-dialog-input{width:100%;height:100%}}.excalidraw .ttd-dialog-input--loading{display:flex;align-items:center;justify-content:center}.excalidraw .ttd-dialog-input--codemirror{padding:0;overflow:hidden;height:0;flex:1 1 0;min-height:0}.excalidraw .ttd-dialog-input--codemirror .cm-editor{height:100%;font-family:monospace}.excalidraw .ttd-dialog-input--codemirror .cm-editor.cm-focused{outline:none}.excalidraw .ttd-dialog-input--codemirror .cm-scroller{padding:.85rem 0;overflow:auto}.excalidraw .ttd-dialog-input--codemirror .cm-gutters{padding-left:.25rem}.excalidraw .ttd-dialog-input--codemirror .cm-content{padding:0}.excalidraw .ttd-dialog-input--codemirror .cm-placeholder{color:var(--color-gray-40);font-style:italic}.excalidraw .ttd-dialog-output-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;box-sizing:border-box;flex-grow:1;position:relative;overflow:hidden;max-height:100%;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMUlEQVQ4T2NkYGAQYcAP3uCTZhw1gGGYhAGBZIA/nYDCgBDAm9BGDWAAJyRCgLaBCAAgXwixzAS0pgAAAABJRU5ErkJggg==) left center;border-radius:var(--border-radius-lg);border:1px solid var(--dialog-border-color);height:400px;width:auto;max-width:100%}@media screen and (max-width: 600px){.excalidraw .ttd-dialog-output-wrapper{height:200px}}@media screen and (max-width: 861px){.excalidraw .ttd-dialog-output-wrapper{width:100%;max-width:100%}}.excalidraw .ttd-dialog-output-wrapper--error{background:none;border:1px solid var(--dialog-border-color);border-radius:var(--border-radius-lg)}.excalidraw .ttd-dialog-output-wrapper canvas{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.excalidraw .ttd-dialog-output-canvas-container{display:flex;width:100%;height:100%;align-items:center;justify-content:center;flex-grow:1;position:relative;-webkit-user-select:none;user-select:none}.excalidraw .ttd-dialog-output-canvas-container.invisible{visibility:hidden;pointer-events:none}.excalidraw .ttd-dialog-output-canvas-content{display:flex;width:100%;height:100%;align-items:center;justify-content:center;flex-grow:1}.excalidraw .ttd-dialog-output-canvas-content canvas{image-rendering:auto}.excalidraw .ttd-dialog-output-error{position:absolute;z-index:10;display:flex;align-items:center;justify-content:center;padding:2rem}.excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-content{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2.5rem 2rem;background:var(--color-surface-primary)}.excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-icon{color:var(--color-danger);display:flex;align-items:center;justify-content:center}.excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-icon svg{width:52px;height:52px;stroke-width:1.5}.excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-title{font-size:1.25rem;font-weight:600;color:var(--color-danger);text-align:center;margin-top:.25rem}.excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-summary{width:100%;max-width:640px;color:var(--color-gray-50);font-size:.9rem;text-align:left}.excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-summary__headline{font-weight:600;color:var(--color-gray-60)}.excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-summary__label{margin-top:.35rem;font-weight:500}.excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-summary__causes{margin:.35rem 0 0;padding-left:2rem}.excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-message{text-align:left;font-weight:400;color:var(--color-gray-50);word-break:break-word;white-space:pre-wrap;max-width:640px;width:100%;font-family:monospace}.excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-message__caret{color:var(--color-danger)}.excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-autofix-slot{align-self:flex-start;margin-top:.35rem;min-height:2.5rem;display:flex;align-items:flex-start}.excalidraw .ttd-dialog-output-error .ttd-dialog-output-error-autofix{margin-top:0;white-space:nowrap}.excalidraw .ttd-dialog-panels{height:100%}@media screen and (min-width: 861px){.excalidraw .ttd-dialog-panels{display:grid;grid-template-columns:1fr 1fr;gap:2rem}}.excalidraw .ttd-dialog-chat-panel,.excalidraw .ttd-dialog-preview-panel{display:flex;flex-direction:column;width:100%;height:100%;min-width:0;align-items:stretch}.excalidraw .ttd-dialog-panel{display:flex;flex-direction:column;width:100%;height:100%}@media screen and (max-width: 861px){.excalidraw .ttd-dialog-panel{height:50%}}.excalidraw .ttd-dialog-panel__header{display:flex;align-items:center;gap:.3rem;height:36px;margin-top:.2rem;margin-bottom:.5rem;flex-shrink:0}.excalidraw .ttd-dialog-panel__header label{font-size:14px;line-height:22px;font-style:normal;font-weight:600}.excalidraw .ttd-dialog-panel__label-wrapper{display:flex;justify-content:space-between;align-items:center;width:100%}.excalidraw .ttd-dialog-panel__label-group{display:flex;gap:5px}.excalidraw .ttd-dialog-panel__header-right{display:flex;align-items:center;gap:.75rem}.excalidraw .ttd-dialog-panel__rate-limit{font-size:.75rem;font-weight:500;white-space:nowrap}.excalidraw .ttd-dialog-panel__rate-limit--danger{color:var(--color-danger)}.excalidraw .ttd-dialog-panel__menu-wrapper{position:relative}.excalidraw .ttd-dialog-panel__menu-wrapper .ttd-dialog-menu-trigger{height:40px;width:40px}.excalidraw .ttd-dialog-panel__menu-wrapper .dropdown-menu{margin-top:.375rem;right:0}.excalidraw .ttd-dialog-panel textarea{height:100%;resize:none;border-radius:var(--border-radius-lg);border:1px solid var(--dialog-border-color);white-space:pre-wrap;padding:.85rem;box-sizing:border-box;width:100%;font-family:monospace}@media screen and (max-width: 861px){.excalidraw .ttd-dialog-panel textarea{width:auto}}.excalidraw .ttd-dialog-panel-button-container{display:flex;align-items:center;flex-grow:0;height:40px;flex-shrink:0;margin-top:1rem;margin-bottom:.5rem}@media screen and (max-width: 861px){.excalidraw .ttd-dialog-panel-button-container{margin-top:.5rem}}.excalidraw .ttd-dialog-panel-button-container.invisible{visibility:hidden}@media screen and (max-width: 861px){.excalidraw .ttd-dialog-panel-button-container.invisible{display:none}}.excalidraw .ttd-dialog-panel-button.excalidraw-button{font-family:inherit;font-weight:600;height:2.5rem;font-size:12px;color:#fff;background-color:var(--color-primary);width:100%}.excalidraw .ttd-dialog-panel-button.excalidraw-button:hover{background-color:var(--color-primary-darker)}.excalidraw .ttd-dialog-panel-button.excalidraw-button:active{background-color:var(--color-primary-darkest)}.excalidraw .ttd-dialog-panel-button.excalidraw-button:disabled{opacity:.5;cursor:not-allowed}.excalidraw .ttd-dialog-panel-button.excalidraw-button:disabled:hover{background-color:var(--color-primary)}@media screen and (min-width: 861px){.excalidraw .ttd-dialog-panel-button.excalidraw-button{width:auto;min-width:7.5rem}}.excalidraw.theme--dark.excalidraw .ttd-dialog-panel-button.excalidraw-button{color:var(--color-gray-100)}.excalidraw .ttd-dialog-panel-button{position:relative}.excalidraw .ttd-dialog-panel-button div{display:contents}.excalidraw .ttd-dialog-panel-button div.invisible{visibility:hidden}.excalidraw .ttd-dialog-panel-button div.Spinner{display:flex!important;position:absolute;top:0;right:0;bottom:0;left:0;--spinner-color: white}.excalidraw.theme--dark.excalidraw .ttd-dialog-panel-button div.Spinner{--spinner-color: var(--color-gray-100)}.excalidraw .ttd-dialog-panel-button div span{padding-left:.5rem;display:flex}.excalidraw .ttd-dialog-submit-shortcut{margin-inline-start:.5rem;font-size:.625rem;opacity:.6;display:flex;gap:.125rem}.excalidraw .ttd-dialog-submit-shortcut__key{border:1px solid gray;padding:2px 3px;border-radius:4px}.excalidraw .ttd-dialog-panel-action-link{display:flex;align-items:center;gap:.25rem;background:none;border:none;color:var(--color-primary);font-weight:500;font-family:inherit;height:40px}.excalidraw .ttd-dialog-panel-action-link__icon{display:inline-flex;align-items:center}.excalidraw .ttd-dialog-panel-action-link__icon svg{width:12px;height:12px}@media screen and (max-width: 861px){.excalidraw .ttd-dialog-panel-action-link{height:unset}}.excalidraw .dropdown-menu-item-custom.ttd-chat-menu-item{display:flex;width:unset;align-items:center;justify-content:space-between;padding:.25rem .5rem;cursor:pointer;position:relative;border:1px solid transparent;border-radius:var(--border-radius-md);margin-top:1px}.excalidraw .dropdown-menu-item-custom.ttd-chat-menu-item:hover{background-color:var(--button-hover-bg)}.excalidraw .dropdown-menu-item-custom.ttd-chat-menu-item:active{border:1px solid var(--button-active-border)}.excalidraw .dropdown-menu-item-custom.ttd-chat-menu-item--active{background-color:var(--color-surface-primary-container)}.excalidraw .dropdown-menu-item-custom.ttd-chat-menu-item .ttd-chat-menu-item__title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.excalidraw .dropdown-menu-item-custom.ttd-chat-menu-item:hover .ttd-chat-menu-item__delete{visibility:visible}.excalidraw .dropdown-menu-item-custom.ttd-chat-menu-item .ttd-chat-menu-item__delete{border:none;padding:.25rem;cursor:pointer;flex-shrink:0;margin-left:.5rem;display:flex;align-items:center;justify-content:center;background:transparent;visibility:hidden}.excalidraw .dropdown-menu-item-custom.ttd-chat-menu-item .ttd-chat-menu-item__delete:hover{color:var(--color-danger)}.excalidraw.theme--dark.excalidraw .dropdown-menu-item-custom.ttd-chat-menu-item .ttd-chat-menu-item__delete svg{color:var(--color-on-surface)}.excalidraw.theme--dark.excalidraw .dropdown-menu-item-custom.ttd-chat-menu-item .ttd-chat-menu-item__delete:hover svg{color:var(--color-danger)}.excalidraw .dropdown-menu-item-custom.ttd-chat-menu-item .ttd-chat-menu-item__delete svg{width:16px;height:16px}.excalidraw .ttd-dialog-preview-panel--hidden{display:none}.excalidraw .ttd-chat-history-menu{display:flex;gap:1rem;align-items:center}.excalidraw .drag-input-container{display:flex;width:100%;border-radius:var(--border-radius-lg)}.excalidraw .drag-input-container:focus-within{box-shadow:0 0 0 1px var(--color-primary-darkest);border-radius:var(--border-radius-md);background:transparent}.excalidraw .disabled{opacity:.5;pointer-events:none}.excalidraw .drag-input-label{flex-shrink:0;border:0;padding:0 .5rem 0 .25rem;min-width:1rem;width:1.5rem;height:2rem;box-sizing:content-box;color:var(--popup-text-color);display:flex;align-items:center;justify-content:center;position:relative}.excalidraw .drag-input{box-sizing:border-box;width:100%;margin:0;font-size:.875rem;font-family:inherit;background-color:transparent;color:var(--text-primary-color);border:0;outline:none;height:2rem;letter-spacing:.4px;padding:.5rem .5rem .5rem .25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.excalidraw .drag-input:focus-visible{box-shadow:none}.exc-stats{width:204px;position:absolute;top:60px;font-size:12px;z-index:var(--zIndex-layerUI);pointer-events:var(--ui-pointerEvents)}:root[dir=rtl] .exc-stats{left:12px;right:initial}.exc-stats h2{font-size:1.5em;margin-block-start:.83em;margin-block-end:.83em;font-weight:700}.exc-stats h3{white-space:nowrap;font-size:1.17em;margin:0;font-weight:700}.exc-stats__rows{display:flex;flex-direction:column;gap:.3125rem}.exc-stats__row{display:flex;justify-content:space-between;align-items:center;display:grid;gap:4px}.exc-stats__row div+div{text-align:right}.exc-stats__row:empty{display:none}.exc-stats__row--heading{text-align:center;font-weight:700;margin:.25rem 0}.exc-stats .title{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.exc-stats .title h2{margin:0}.exc-stats .close{height:16px;width:16px;cursor:pointer}.exc-stats .close svg{width:100%;height:100%}.excalidraw .ElementLinkDialog{position:absolute;top:var(--editor-container-padding);left:var(--editor-container-padding);z-index:var(--zIndex-modal);border-radius:10px;padding:1.5rem;display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow-island);background-color:var(--island-bg-color)}.excalidraw--mobile.excalidraw .ElementLinkDialog{left:0;margin-left:.5rem;margin-right:.5rem;width:calc(100% - 1rem);box-sizing:border-box;z-index:5}.excalidraw .ElementLinkDialog .ElementLinkDialog__header h2{margin-top:0;margin-bottom:.5rem}.excalidraw--mobile.excalidraw .ElementLinkDialog .ElementLinkDialog__header h2{font-size:1.25rem}.excalidraw .ElementLinkDialog .ElementLinkDialog__header p{margin:0}.excalidraw--mobile.excalidraw .ElementLinkDialog .ElementLinkDialog__header p{font-size:.875rem}.excalidraw .ElementLinkDialog .ElementLinkDialog__header{margin-bottom:1.5rem}.excalidraw--mobile.excalidraw .ElementLinkDialog .ElementLinkDialog__header{margin-bottom:1rem}.excalidraw .ElementLinkDialog .ElementLinkDialog__input{display:flex}.excalidraw .ElementLinkDialog .ElementLinkDialog__input .ElementLinkDialog__input-field{flex:1}.excalidraw .ElementLinkDialog .ElementLinkDialog__input .ElementLinkDialog__remove{color:#c92a2a;margin-left:1rem}.excalidraw .ElementLinkDialog .ElementLinkDialog__input .ElementLinkDialog__remove .ToolIcon__icon{width:2rem;height:2rem}.excalidraw .ElementLinkDialog .ElementLinkDialog__input .ElementLinkDialog__remove .ToolIcon__icon svg{color:#fa5252}.excalidraw .ElementLinkDialog .ElementLinkDialog__actions{display:flex;justify-content:flex-end;margin-top:1.5rem}.excalidraw--mobile.excalidraw .ElementLinkDialog .ElementLinkDialog__actions{font-size:.875rem;margin-top:1rem}.excalidraw .HelpDialog .Modal__content{max-width:960px}.excalidraw .HelpDialog h3{margin:1.5rem 0;font-weight:700;font-size:1.125rem}.excalidraw .HelpDialog__header{display:flex;flex-wrap:wrap;gap:.75rem}.excalidraw .HelpDialog__btn{--background: var(--color-surface-mid);display:flex;column-gap:.5rem;align-items:center;background-color:var(--background);padding:.625rem 1rem;border:1px solid var(--background);border-radius:var(--border-radius-lg);color:var(--text-primary-color);font-weight:600;font-size:.75rem;letter-spacing:.4px}.excalidraw.theme--dark.excalidraw .HelpDialog__btn{--background: var(--color-surface-high)}.excalidraw.theme--dark.excalidraw .HelpDialog__btn:hover{--background: #363541}.excalidraw .HelpDialog__btn:hover{--background: var(--color-surface-high);text-decoration:none}.excalidraw .HelpDialog__btn:active{border-color:var(--color-primary)}.excalidraw .HelpDialog__link-icon{line-height:0}.excalidraw .HelpDialog__link-icon svg{width:1rem;height:1rem}.excalidraw .HelpDialog__islands-container{display:grid;grid-column-gap:1.5rem;grid-row-gap:2rem}@media screen and (min-width: 1024px){.excalidraw .HelpDialog__islands-container{grid-template-columns:1fr 1fr}}@media screen and (min-width: 1024px){.excalidraw .HelpDialog__island--tools{grid-area:1/1/2/2}.excalidraw .HelpDialog__island--view{grid-area:2/1/3/2}.excalidraw .HelpDialog__island--editor{grid-area:1/2/3/3}}.excalidraw .HelpDialog__island h4{font-size:1rem;font-weight:700;margin:0;margin-bottom:.625rem}.excalidraw .HelpDialog__island-content{border:1px solid var(--dialog-border-color);border-radius:var(--border-radius-lg)}.excalidraw .HelpDialog__shortcut{border-bottom:1px solid var(--dialog-border-color);padding:.375rem .75rem;display:flex;justify-content:space-between;align-items:center;font-size:.875rem;column-gap:.5rem}.excalidraw .HelpDialog__shortcut:last-child{border-bottom:none}.excalidraw .HelpDialog__key-container{display:flex;align-items:center;column-gap:.25rem;flex-shrink:0}.excalidraw .HelpDialog__key{display:flex;box-sizing:border-box;font-size:.625rem;background-color:var(--color-primary-light);border-radius:var(--border-radius-md);padding:.5rem;word-break:keep-all;align-items:center;font-family:inherit;line-height:1}.excalidraw .HintViewer{pointer-events:none;box-sizing:border-box;position:absolute;display:flex;flex-direction:column;justify-content:center;left:0;top:100%;max-width:100%;width:100%;margin-top:.5rem;text-align:center;color:var(--color-gray-40);font-size:.75rem}.excalidraw--mobile.excalidraw .HintViewer{position:static;padding-right:2rem}.excalidraw .HintViewer>span{padding:.25rem}.excalidraw .HintViewer kbd{display:inline-block;margin:0 1px;font-family:monospace;border:1px solid var(--color-gray-40);border-radius:4px;padding:1px 3px;font-size:10px}.excalidraw.theme--dark .HintViewer{color:var(--color-gray-60)}.excalidraw.theme--dark .HintViewer kbd{border-color:var(--color-gray-60)}.excalidraw{--Switch-disabled-color: var(--color-border-outline);--Switch-disabled-toggled-background: var(--color-border-outline-variant);--Switch-disabled-border: var(--color-border-outline-variant);--Switch-track-background: var(--island-bg-color);--Switch-thumb-background: var(--color-on-surface);--Switch-hover-background: var(--color-brand-hover);--Switch-active-background: var(--color-brand-active)}.excalidraw .Switch{position:relative;box-sizing:border-box;width:40px;height:20px;border-radius:12px;transition-property:background,border;transition-duration:.15s;transition-timing-function:ease-out;background:var(--Switch-track-background);border:1px solid var(--Switch-disabled-color)}.excalidraw .Switch:hover{background:var(--Switch-track-background);border:1px solid var(--Switch-hover-background)}.excalidraw .Switch:active{border:1px solid var(--Switch-active-background)}.excalidraw .Switch.toggled{background:var(--color-primary);border:1px solid var(--color-primary)}.excalidraw .Switch.toggled:hover{background:var(--color-primary-darker);border:1px solid var(--color-primary-darker)}.excalidraw .Switch.disabled{background:var(--Switch-track-background);border:1px solid var(--Switch-disabled-border)}.excalidraw .Switch.disabled.toggled{background:var(--Switch-disabled-toggled-background);border:1px solid var(--Switch-disabled-toggled-background)}.excalidraw .Switch:before{content:"";box-sizing:border-box;display:block;pointer-events:none;position:absolute;border-radius:100%;transition:all .15s ease-out;width:10px;height:10px;top:4px;left:4px;background:var(--Switch-thumb-background)}.excalidraw .Switch:active:before{width:12px}.excalidraw .Switch.toggled:before{width:14px;height:14px;left:22px;top:2px;background:var(--Switch-track-background)}.excalidraw .Switch.toggled:active:before{width:16px;left:20px}.excalidraw .Switch.disabled:before{background:var(--Switch-disabled-color)}.excalidraw .Switch.disabled.toggled:before{background:var(--Switch-disabled-color)}.excalidraw .Switch input{width:100%;height:100%;margin:0;border-radius:12px;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.excalidraw .Switch input:disabled{cursor:unset}.excalidraw{--ImageExportModal-preview-border: #d6d6d6}.excalidraw.theme--dark{--ImageExportModal-preview-border: #5c5c5c}.excalidraw .ImageExportModal{display:flex;flex-direction:row;justify-content:space-between;-webkit-user-select:none;user-select:none}.excalidraw .ImageExportModal h3{font-family:Assistant;font-style:normal;font-weight:700;font-size:1.313rem;line-height:130%;padding:0;margin:0}.excalidraw--mobile.excalidraw .ImageExportModal h3{display:none}.excalidraw .ImageExportModal>h3{display:none}.excalidraw--mobile.excalidraw .ImageExportModal>h3{display:block}.excalidraw--mobile.excalidraw .ImageExportModal{flex-direction:column;height:calc(100vh - 5rem)}.excalidraw .ImageExportModal__preview{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;height:360px;width:55%;margin-right:1.5rem}.excalidraw--mobile.excalidraw .ImageExportModal__preview{max-width:unset;margin-right:unset;width:100%;height:unset;flex-grow:1}.excalidraw .ImageExportModal__preview__filename>input{margin-top:1rem}.excalidraw .ImageExportModal__preview__canvas{box-sizing:border-box;width:100%;height:100%;display:flex;flex-grow:1;justify-content:center;align-items:center;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMUlEQVQ4T2NkYGAQYcAP3uCTZhw1gGGYhAGBZIA/nYDCgBDAm9BGDWAAJyRCgLaBCAAgXwixzAS0pgAAAABJRU5ErkJggg==) left center;border:1px solid var(--ImageExportModal-preview-border);border-radius:12px;overflow:hidden;padding:1rem}.excalidraw .ImageExportModal__preview__canvas>canvas{max-width:calc(100% - 2rem);max-height:calc(100% - 2rem);filter:none!important}.excalidraw--mobile.excalidraw .ImageExportModal__preview__canvas>canvas{max-height:100%}.excalidraw--mobile.excalidraw .ImageExportModal__preview__canvas{margin-top:24px;max-width:unset}.excalidraw .ImageExportModal__settings{display:flex;flex-direction:column;flex-wrap:wrap;gap:18px}.excalidraw--mobile.excalidraw .ImageExportModal__settings{margin-left:unset;margin-top:1rem;flex-direction:row;gap:6px 34px;align-content:flex-start}.excalidraw .ImageExportModal__settings__setting{display:flex;flex-direction:row;justify-content:space-between;align-items:center}.excalidraw--mobile.excalidraw .ImageExportModal__settings__setting{flex-direction:column;align-items:start;justify-content:unset;height:52px}.excalidraw .ImageExportModal__settings__setting__label{display:flex;flex-direction:row;align-items:center;font-family:Assistant;font-weight:600;font-size:1rem;line-height:150%}.excalidraw .ImageExportModal__settings__setting__label svg{width:20px;height:20px;margin-left:10px}.excalidraw .ImageExportModal__settings__setting__content{display:flex;height:100%;align-items:center}.excalidraw .ImageExportModal__settings__buttons{flex-grow:1;flex-wrap:wrap;display:flex;flex-direction:row;gap:11px;align-items:flex-end;align-content:flex-end}.excalidraw--mobile.excalidraw .ImageExportModal__settings__buttons{padding-top:32px;flex-basis:100%;justify-content:center}.excalidraw .Card{display:flex;flex-direction:column;align-items:center;max-width:290px;margin:1em;text-align:center}.excalidraw .Card .Card-icon{font-size:2.6em;display:flex;flex:0 0 auto;padding:1.4rem;border-radius:50%;background:var(--card-color);color:#fff}.excalidraw .Card .Card-icon svg{width:2.8rem;height:2.8rem}.excalidraw .Card .Card-details{font-size:.96em;min-height:90px;padding:0 1em;margin-bottom:auto}.excalidraw .Card .Card-button.ToolIcon_type_button{height:2.5rem;margin-top:1em;margin-bottom:.3em;background-color:var(--card-color)}.excalidraw .Card .Card-button.ToolIcon_type_button:hover{background-color:var(--card-color-darker)}.excalidraw .Card .Card-button.ToolIcon_type_button:active{background-color:var(--card-color-darkest)}.excalidraw .Card .Card-button.ToolIcon_type_button .ToolIcon__label{color:#fff}.excalidraw .Card .Card-button.ToolIcon_type_button .Spinner{--spinner-color: #fff}.excalidraw .ExportDialog__preview{--preview-padding: calc(var(--space-factor) * 4);background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMUlEQVQ4T2NkYGAQYcAP3uCTZhw1gGGYhAGBZIA/nYDCgBDAm9BGDWAAJyRCgLaBCAAgXwixzAS0pgAAAABJRU5ErkJggg==) left center;text-align:center;padding:var(--preview-padding);margin-bottom:calc(var(--space-factor) * 3);display:flex;justify-content:center;align-items:center}.excalidraw .ExportDialog__preview canvas{max-width:calc(100% - var(--preview-padding) * 2);max-height:25rem}.excalidraw.theme--dark .ExportDialog__preview canvas{filter:none}.excalidraw .ExportDialog__actions{width:100%;display:flex;grid-gap:calc(var(--space-factor) * 2);align-items:top;justify-content:space-between}.excalidraw--mobile.excalidraw .ExportDialog{display:flex;flex-direction:column}.excalidraw--mobile.excalidraw .ExportDialog__actions{flex-direction:column;align-items:center}.excalidraw--mobile.excalidraw .ExportDialog__actions>*{margin-bottom:calc(var(--space-factor) * 3)}.excalidraw--mobile.excalidraw .ExportDialog__preview canvas{max-height:30vh}.excalidraw--mobile.excalidraw .ExportDialog__dialog,.excalidraw--mobile.excalidraw .ExportDialog__dialog .Island{height:100%;box-sizing:border-box}.excalidraw--mobile.excalidraw .ExportDialog__dialog .Island{overflow-y:auto}.excalidraw .ExportDialog--json .ExportDialog-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));justify-items:center;row-gap:2em}@media (max-width: 460px){.excalidraw .ExportDialog--json .ExportDialog-cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.excalidraw .ExportDialog--json .ExportDialog-cards .Card-details{min-height:40px}}.excalidraw .ExportDialog--json .ExportDialog-cards .ProjectName{width:fit-content;margin:1em auto;align-items:flex-start;flex-direction:column}.excalidraw .ExportDialog--json .ExportDialog-cards .ProjectName .TextInput{width:auto}.excalidraw .ExportDialog--json .ExportDialog-cards .ProjectName-label{margin:.625em 0;font-weight:700}.excalidraw button.ExportDialog-imageExportButton{border:0;width:5rem;height:5rem;margin:0 .2em;padding:0;display:flex;align-items:center;justify-content:center;border-radius:1rem;background-color:var(--button-color);box-shadow:0 3px 5px -1px #00000047,0 6px 10px #00000024;font-family:Cascadia;font-size:1.8em;color:#fff}.excalidraw button.ExportDialog-imageExportButton:hover{background-color:var(--button-color-darker)}.excalidraw button.ExportDialog-imageExportButton:active{background-color:var(--button-color-darkest);box-shadow:none}.excalidraw button.ExportDialog-imageExportButton svg{width:.9em}.excalidraw .layer-ui__wrapper.animate{transition:width .1s ease-in-out}.excalidraw .layer-ui__wrapper{position:absolute;width:100%;height:100%;pointer-events:none;z-index:var(--zIndex-layerUI)}.excalidraw .layer-ui__wrapper__top-right{display:flex;width:100%;justify-content:flex-end;gap:.75rem;pointer-events:none!important}.excalidraw .layer-ui__wrapper__top-right--compact{gap:.5rem}.excalidraw .layer-ui__wrapper__top-right>*{pointer-events:var(--ui-pointerEvents)}.excalidraw .layer-ui__wrapper__footer{width:100%}.excalidraw .layer-ui__wrapper__footer-right{z-index:100;display:flex}.excalidraw .layer-ui__wrapper .zen-mode-transition{transition:transform .5s ease-in-out}:root[dir=ltr] .excalidraw .layer-ui__wrapper .zen-mode-transition.transition-left{transform:translate(-999px)}:root[dir=ltr] .excalidraw .layer-ui__wrapper .zen-mode-transition.transition-right{transform:translate(999px)}:root[dir=rtl] .excalidraw .layer-ui__wrapper .zen-mode-transition.transition-left{transform:translate(999px)}:root[dir=rtl] .excalidraw .layer-ui__wrapper .zen-mode-transition.transition-right{transform:translate(-999px)}.excalidraw .layer-ui__wrapper .zen-mode-transition.layer-ui__wrapper__footer-left--transition-bottom{transform:translateY(92px)}.excalidraw .layer-ui__wrapper .disable-zen-mode{padding:10px;position:absolute;bottom:0}[dir=ltr] .excalidraw .layer-ui__wrapper .disable-zen-mode{right:1rem}[dir=rtl] .excalidraw .layer-ui__wrapper .disable-zen-mode{left:1rem}.excalidraw .layer-ui__wrapper .disable-zen-mode{opacity:0;visibility:hidden;transition:visibility 0s linear 0s,opacity .5s;font-family:var(--ui-font);font-size:.75rem;font-weight:500;line-height:1;border-radius:var(--border-radius-lg);border:1px solid var(--default-border-color);background-color:var(--island-bg-color);color:var(--text-primary-color)}.excalidraw .layer-ui__wrapper .disable-zen-mode:hover{background-color:var(--button-hover-bg)}.excalidraw .layer-ui__wrapper .disable-zen-mode:active{border-color:var(--color-primary)}.excalidraw .layer-ui__wrapper .disable-zen-mode--visible{opacity:1;visibility:visible;transition:visibility 0s linear .3s,opacity .5s;transition-delay:.8s;pointer-events:var(--ui-pointerEvents)}.excalidraw .layer-ui__wrapper .layer-ui__wrapper__footer-left>*,.excalidraw .layer-ui__wrapper .footer-center>*,.excalidraw .layer-ui__wrapper .layer-ui__wrapper__footer-right>*{pointer-events:var(--ui-pointerEvents)}.excalidraw .layer-ui__wrapper .layer-ui__wrapper__footer-right{margin-top:auto;margin-bottom:auto}.excalidraw .disable-view-mode{display:flex;justify-content:center;cursor:pointer;align-items:center;border:1px solid var(--color-primary);padding:.5rem;border-radius:var(--border-radius-lg);background-color:var(--island-bg-color);text-decoration:none!important;font-family:var(--ui-font);font-size:.8333rem;box-sizing:border-box;width:var(--mobile-action-button-size, var(--default-button-size));height:var(--mobile-action-button-size, var(--default-button-size));border:none;box-shadow:0 0 0 1px var(--color-surface-lowest);background-color:var(--color-surface-low);color:var(--button-color, var(--color-on-surface))!important}.excalidraw .disable-view-mode:active{box-shadow:0 0 0 1px var(--color-brand-active)}.excalidraw .disable-view-mode:hover{background-color:var(--color-primary);color:#fff!important}.excalidraw .disable-view-mode:active{background-color:var(--color-primary-darker)}.excalidraw .disable-view-mode svg{width:20px;height:20px}.excalidraw .theme--dark .plus-banner:hover{color:#000!important}.excalidraw .App-toolbar.zen-mode .ToolIcon__keybinding,.excalidraw .App-toolbar.zen-mode .HintViewer,.excalidraw .App-toolbar--compact .ToolIcon__keybinding{display:none}.excalidraw .App-toolbar--compact .App-toolbar__divider{margin:0}.excalidraw .App-toolbar__divider{width:1px;height:1.5rem;align-self:center;background-color:var(--default-border-color);margin:0 .25rem}.excalidraw--mobile.excalidraw .App-toolbar__divider{margin:0}.excalidraw .App-toolbar__extra-tools-trigger{box-shadow:none;border:0;background-color:transparent}.excalidraw .App-toolbar__extra-tools-trigger:active{background-color:var(--button-hover-bg);box-shadow:0 0 0 1px var(--button-active-border, var(--color-primary-darkest)) inset}.excalidraw .App-toolbar__extra-tools-trigger:hover{background-color:transparent}.excalidraw .App-toolbar__extra-tools-trigger--selected,.excalidraw .App-toolbar__extra-tools-trigger--selected:hover{background:var(--color-primary-light);color:var(--color-primary)}.excalidraw .App-toolbar__extra-tools-dropdown{margin-top:.375rem;right:0;min-width:11.875rem;z-index:1}.excalidraw .SVGLayer{pointer-events:none;width:100vw;height:100vh;position:fixed;top:0;left:0;z-index:var(--zIndex-svgLayer)}.excalidraw .SVGLayer svg{image-rendering:auto;overflow:visible;position:absolute;width:100%;height:100%;top:0;left:0}.excalidraw .UnlockPopup{position:absolute;z-index:var(--zIndex-interactiveCanvas);display:flex;justify-content:center;align-items:center;gap:.5rem;border-radius:.5rem;background:var(--island-bg-color);box-shadow:var(--shadow-island);padding:.8rem;cursor:pointer;color:var(--color-gray-60)}.excalidraw .UnlockPopup:focus{outline:none}.excalidraw .UnlockPopup svg{display:block;width:1.25rem;height:1.25rem;color:var(--color-gray-60)}.excalidraw .UnlockPopup:hover svg{color:var(--color-primary)}.excalidraw .UnlockPopup:active svg{transform:scale(.95)}.footer-center{pointer-events:none;display:flex;width:100%;justify-content:flex-start;margin-inline-end:.6rem}.footer-center>*{pointer-events:var(--ui-pointerEvents)}.excalidraw .collab-button{--button-bg: var(--color-primary);--button-color: var(--color-surface-lowest);--button-border: var(--color-primary);--button-width: var(--lg-button-size);--button-height: var(--lg-button-size);--button-hover-bg: var(--color-primary-darker);--button-hover-border: var(--color-primary-darker);--button-active-bg: var(--color-primary-darker);box-shadow:0 0 0 1px var(--color-surface-lowest);flex-shrink:0}.excalidraw .collab-button.active.active{background-color:#0fb884;border-color:#0fb884}.excalidraw .collab-button.active.active svg{color:#fff}.excalidraw .collab-button.active.active:hover,.excalidraw .collab-button.active.active:active{background-color:#0fb884;border-color:#0fb884}.excalidraw .CollabButton.is-collaborating{background-color:var(--button-special-active-bg-color)}.excalidraw .CollabButton.is-collaborating .ToolIcon__icon svg,.excalidraw .CollabButton.is-collaborating .ToolIcon__label{color:var(--icon-green-fill-color)}:root[dir=ltr] .excalidraw .CollabButton-collaborators{right:-5px}:root[dir=rtl] .excalidraw .CollabButton-collaborators{left:-5px}.excalidraw .CollabButton-collaborators{min-width:1em;min-height:1em;line-height:1;position:absolute;bottom:-5px;padding:3px;border-radius:50%;background-color:#b2f2bb;color:#2b8a3e;font-size:.6rem;font-family:Cascadia}.excalidraw .ExcalidrawLogo{--logo-icon--mobile: 1rem;--logo-text--mobile: .75rem;--logo-icon--xs: 2rem;--logo-text--xs: 1.5rem;--logo-icon--small: 2.5rem;--logo-text--small: 1.75rem;--logo-icon--normal: 3rem;--logo-text--normal: 2.2rem;--logo-icon--large: 90px;--logo-text--large: 65px;display:flex;align-items:center}.excalidraw .ExcalidrawLogo svg{flex:0 0 auto}.excalidraw .ExcalidrawLogo .ExcalidrawLogo-icon{width:auto;color:var(--color-logo-icon)}.excalidraw .ExcalidrawLogo .ExcalidrawLogo-text{margin-left:.75rem;width:auto;color:var(--color-logo-text)}.excalidraw .ExcalidrawLogo.is-mobile .ExcalidrawLogo-icon{height:var(--logo-icon--mobile)}.excalidraw .ExcalidrawLogo.is-mobile .ExcalidrawLogo-text{height:var(--logo-text--mobile);margin-left:.5rem}.excalidraw .ExcalidrawLogo.is-xs .ExcalidrawLogo-icon{height:var(--logo-icon--xs)}.excalidraw .ExcalidrawLogo.is-xs .ExcalidrawLogo-text{height:var(--logo-text--xs)}.excalidraw .ExcalidrawLogo.is-small .ExcalidrawLogo-icon{height:var(--logo-icon--small)}.excalidraw .ExcalidrawLogo.is-small .ExcalidrawLogo-text{height:var(--logo-text--small)}.excalidraw .ExcalidrawLogo.is-normal .ExcalidrawLogo-icon{height:var(--logo-icon--normal)}.excalidraw .ExcalidrawLogo.is-normal .ExcalidrawLogo-text{height:var(--logo-text--normal)}.excalidraw .ExcalidrawLogo.is-large .ExcalidrawLogo-icon{height:var(--logo-icon--large)}.excalidraw .ExcalidrawLogo.is-large .ExcalidrawLogo-text{height:var(--logo-text--large)}.excalidraw .excalifont{font-family:Excalifont,Xiaolai}.excalidraw .welcome-screen-decor{pointer-events:none;color:var(--color-gray-40)}.excalidraw .welcome-screen-decor a{--color: var(--color-primary);color:var(--color);text-decoration:none;margin-bottom:-6px}.excalidraw.theme--dark .welcome-screen-decor{color:var(--color-gray-60)}@media (max-height: 780px){.excalidraw .welcome-screen-decor-hint{display:none!important}}@media (max-width: 1024px),(max-width: 800px){.excalidraw .welcome-screen-decor-hint .welcome-screen-decor--help,.excalidraw .welcome-screen-decor-hint .welcome-screen-decor--menu{display:none}}.excalidraw .welcome-screen-decor-hint--help{display:flex;position:absolute;right:0;bottom:100%}:root[dir=rtl] .excalidraw .welcome-screen-decor-hint--help{left:0;right:auto}.excalidraw .welcome-screen-decor-hint--help svg{margin-top:.5rem;width:85px;height:71px;transform:scaleX(-1) rotate(80deg)}:root[dir=rtl] .excalidraw .welcome-screen-decor-hint--help svg{transform:rotate(80deg)}.excalidraw .welcome-screen-decor-hint--toolbar{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:2.5rem;display:flex;align-items:baseline}.excalidraw .welcome-screen-decor-hint--toolbar .welcome-screen-decor-hint__label{width:120px;position:relative;top:-.5rem}.excalidraw .welcome-screen-decor-hint--toolbar svg{width:38px;height:78px}:root[dir=rtl] .excalidraw .welcome-screen-decor-hint--toolbar svg{transform:scaleX(-1)}.excalidraw .welcome-screen-decor-hint--menu{position:absolute;width:320px;font-size:1rem;top:100%;margin-top:.25rem;margin-inline-start:.6rem;display:flex;align-items:flex-end;gap:.5rem}.excalidraw .welcome-screen-decor-hint--menu svg{width:41px;height:94px}:root[dir=rtl] .excalidraw .welcome-screen-decor-hint--menu svg{transform:scaleX(-1)}@media (max-width: 860px){.excalidraw .welcome-screen-decor-hint--menu .welcome-screen-decor-hint__label{max-width:160px}}.excalidraw .welcome-screen-center{display:flex;flex-direction:column;gap:2rem;justify-content:center;align-items:center;position:absolute;pointer-events:none;left:1rem;top:1rem;right:1rem;bottom:1rem}.excalidraw .welcome-screen-center__logo{display:flex;align-items:center;column-gap:.75rem;font-size:2.25rem}.excalidraw .welcome-screen-center__heading{font-size:1.125rem;text-align:center;line-height:1.35rem}.excalidraw .welcome-screen-menu{display:flex;flex-direction:column;gap:2px;justify-content:center;align-items:center}.excalidraw .welcome-screen-menu-item{box-sizing:border-box;pointer-events:var(--ui-pointerEvents);color:var(--color-gray-50);font-size:.875rem;width:100%;min-width:300px;max-width:400px;display:grid;align-items:center;justify-content:space-between;background:none;border:1px solid transparent;padding:.75rem;border-radius:var(--border-radius-md);grid-template-columns:calc(var(--default-icon-size) + .5rem) 1fr 3rem}.excalidraw .welcome-screen-menu-item__text{display:flex;align-items:center;margin-right:auto;text-align:left;column-gap:.5rem}.excalidraw .welcome-screen-menu-item__icon{width:var(--default-icon-size);height:var(--default-icon-size)}.excalidraw .welcome-screen-menu-item__shortcut{margin-left:auto;color:var(--color-gray-40);font-size:.75rem}.excalidraw .welcome-screen-menu-item:hover{text-decoration:none;background:var(--button-hover-bg)}.excalidraw .welcome-screen-menu-item:hover .welcome-screen-menu-item__shortcut,.excalidraw .welcome-screen-menu-item:hover .welcome-screen-menu-item__icon,.excalidraw .welcome-screen-menu-item:hover .welcome-screen-menu-item__text{color:var(--color-gray-100)}.excalidraw .welcome-screen-menu-item:active{background:var(--button-hover-bg);border-color:var(--color-brand-active)}.excalidraw .welcome-screen-menu-item:active .welcome-screen-menu-item__shortcut,.excalidraw .welcome-screen-menu-item:active .welcome-screen-menu-item__icon,.excalidraw .welcome-screen-menu-item:active .welcome-screen-menu-item__text{color:var(--color-gray-100)}.excalidraw.theme--dark .welcome-screen-menu-item,.excalidraw.theme--dark .welcome-screen-menu-item__shortcut{color:var(--color-gray-60)}.excalidraw.theme--dark .welcome-screen-menu-item:hover{background-color:var(--color-surface-low)}.excalidraw.theme--dark .welcome-screen-menu-item:hover .welcome-screen-menu-item__icon,.excalidraw.theme--dark .welcome-screen-menu-item:hover .welcome-screen-menu-item__shortcut,.excalidraw.theme--dark .welcome-screen-menu-item:hover .welcome-screen-menu-item__text,.excalidraw.theme--dark .welcome-screen-menu-item:active .welcome-screen-menu-item__icon,.excalidraw.theme--dark .welcome-screen-menu-item:active .welcome-screen-menu-item__shortcut,.excalidraw.theme--dark .welcome-screen-menu-item:active .welcome-screen-menu-item__text{color:var(--color-gray-10)}.excalidraw.excalidraw--mobile .welcome-screen-center{margin-bottom:2rem}@media (max-height: 500px),(max-width: 320px){.excalidraw .welcome-screen-center{display:none}}.visually-hidden{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap;-webkit-user-select:none;user-select:none}.LoadingMessage{position:absolute;top:0;right:0;bottom:0;left:0;z-index:999;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.LoadingMessage .Spinner{font-size:2.8em}.LoadingMessage .LoadingMessage-text{margin-top:1em;font-size:.8em}.LoadingMessage--dark{background-color:#121212;color:#ced4da}.excalidraw{--theme-filter: none;--button-destructive-bg-color: #ffe3e3;--button-destructive-color: #c92a2a;--button-gray-1: #e9ecef;--button-gray-2: #ced4da;--button-gray-3: #adb5bd;--mobile-action-button-bg: rgba(255, 255, 255, .35);--mobile-color-border: var(--default-border-color);--button-special-active-bg-color: #ebfbee;--dialog-border-color: var(--color-gray-20);--dropdown-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="292.4" height="292.4" viewBox="0 0 292 292"><path d="M287 197L159 69c-4-3-8-5-13-5s-9 2-13 5L5 197c-3 4-5 8-5 13s2 9 5 13c4 4 8 5 13 5h256c5 0 9-1 13-5s5-8 5-13-1-9-5-13z"/></svg>');--focus-highlight-color: #a5d8ff;--icon-fill-color: var(--color-on-surface);--icon-green-fill-color: #2b8a3e;--default-bg-color: #fff;--input-bg-color: #fff;--input-border-color: #ced4da;--input-hover-bg-color: #f1f3f5;--input-label-color: #495057;--island-bg-color: #ffffff;--island-bg-color-alt: #fff;--keybinding-color: var(--color-gray-40);--link-color: #1c7ed6;--link-color-hover: #1971c2;--link-color-active: #a5d8ff;--overlay-bg-color: rgba(255, 255, 255, .88);--popup-bg-color: var(--island-bg-color);--popup-secondary-bg-color: #f1f3f5;--popup-text-color: #000;--popup-text-inverted-color: #fff;--select-highlight-color: #339af0;--shadow-island: 0px 0px 1px 0px rgba(0, 0, 0, .17), 0px 0px 3px 0px rgba(0, 0, 0, .08), 0px 7px 14px 0px rgba(0, 0, 0, .05);--shadow-island-stronger: 0px 0px 1px 0px rgba(0, 0, 0, .17), 0px 0px 3px 0px rgba(0, 0, 0, .08), 0px 7px 14px 0px rgb(0 0 0 / 18%);--button-hover-bg: var(--color-surface-high);--button-active-bg: var(--color-surface-high);--button-active-border: var(--color-brand-active);--default-border-color: var(--color-surface-high);--default-button-size: 2rem;--default-icon-size: 1rem;--lg-button-size: 2.25rem;--lg-icon-size: 1rem;--editor-container-padding: 1rem;--mobile-action-button-size: 2rem;--scrollbar-thumb: var(--button-gray-2);--scrollbar-thumb-hover: var(--button-gray-3);--color-slider-track: hsl(240, 100%, 90%);--color-slider-thumb: var(--color-gray-80);--modal-shadow: 0px 100px 80px rgba(0, 0, 0, .07), 0px 41.7776px 33.4221px rgba(0, 0, 0, .0503198), 0px 22.3363px 17.869px rgba(0, 0, 0, .0417275), 0px 12.5216px 10.0172px rgba(0, 0, 0, .035), 0px 6.6501px 5.32008px rgba(0, 0, 0, .0282725), 0px 2.76726px 2.21381px rgba(0, 0, 0, .0196802);--avatar-border-color: var(--color-gray-20);--sidebar-shadow: 0px 100px 80px rgba(0, 0, 0, .07), 0px 41.7776px 33.4221px rgba(0, 0, 0, .0503198), 0px 22.3363px 17.869px rgba(0, 0, 0, .0417275), 0px 12.5216px 10.0172px rgba(0, 0, 0, .035), 0px 6.6501px 5.32008px rgba(0, 0, 0, .0282725), 0px 2.76726px 2.21381px rgba(0, 0, 0, .0196802);--sidebar-border-color: var(--color-surface-high);--sidebar-bg-color: var(--island-bg-color);--library-dropdown-shadow: 0px 15px 6px rgba(0, 0, 0, .01), 0px 8px 5px rgba(0, 0, 0, .05), 0px 4px 4px rgba(0, 0, 0, .09), 0px 1px 2px rgba(0, 0, 0, .1), 0px 0px 0px rgba(0, 0, 0, .1);--chat-msg-shadow: 0 1px 2px rgba(0, 0, 0, .1);--space-factor: .25rem;--text-primary-color: var(--color-on-surface);--color-selection: #6965db;--color-icon-white: #fff;--color-primary: #6965db;--color-primary-darker: #5b57d1;--color-primary-darkest: #4a47b1;--color-primary-light: #e3e2fe;--color-primary-light-darker: #d7d5ff;--color-primary-hover: #5753d0;--color-gray-10: #f5f5f5;--color-gray-20: #ebebeb;--color-gray-30: #d6d6d6;--color-gray-40: #b8b8b8;--color-gray-50: #999999;--color-gray-60: #7a7a7a;--color-gray-70: #5c5c5c;--color-gray-80: #3d3d3d;--color-gray-85: #242424;--color-gray-90: #1e1e1e;--color-gray-100: #121212;--color-disabled: var(--color-gray-40);--color-warning: #fceeca;--color-warning-dark: #f5c354;--color-warning-darker: #f3ab2c;--color-warning-darkest: #ec8b14;--color-text-warning: var(--text-primary-color);--color-danger: #db6965;--color-danger-dark: #db6965;--color-danger-darker: #d65550;--color-danger-darkest: #d1413c;--color-danger-text: black;--color-danger-background: #fff0f0;--color-danger-icon-background: #ffdad6;--color-danger-color: #700000;--color-danger-icon-color: #700000;--color-warning-background: var(--color-warning);--color-warning-icon-background: var(--color-warning-dark);--color-warning-color: var(--text-primary-color);--color-warning-icon-color: var(--text-primary-color);--color-muted: var(--color-gray-30);--color-muted-darker: var(--color-gray-60);--color-muted-darkest: var(--color-gray-100);--color-muted-background: var(--color-gray-80);--color-muted-background-darker: var(--color-gray-100);--color-promo: var(--color-primary);--color-success: #cafccc;--color-success-darker: #bafabc;--color-success-darkest: #a5eba8;--color-success-text: #268029;--color-success-contrast: #65bb6a;--color-success-contrast-hover: #6bcf70;--color-success-contrast-active: #6edf74;--color-logo-icon: var(--color-primary);--color-logo-text: #190064;--border-radius-md: .375rem;--border-radius-lg: .5rem;--color-surface-high: #f1f0ff;--color-surface-mid: #f6f6f9;--color-surface-low: #ececf4;--color-surface-lowest: #ffffff;--color-on-surface: #1b1b1f;--color-brand-hover: #5753d0;--color-on-primary-container: #030064;--color-brand-active: #4440bf;--color-border-outline: #767680;--color-border-outline-variant: #c5c5d0;--color-surface-primary-container: #e0dfff;--color-badge: #0b6513;--background-color-badge: #d3ffd2}.excalidraw--mobile.excalidraw{--editor-container-padding: .75rem}@media screen and (min-device-width: 1921px){.excalidraw{--lg-button-size: 2.5rem;--lg-icon-size: 1.25rem;--default-button-size: 2.25rem;--default-icon-size: 1.25rem}}.excalidraw.theme--dark.theme--dark-background-none{background:none}.excalidraw.theme--dark{--theme-filter: invert(93%) hue-rotate(180deg);--button-destructive-bg-color: #5a0000;--button-destructive-color: #ffa8a8;--button-gray-1: #363636;--button-gray-2: #272727;--button-gray-3: #222;--mobile-action-button-bg: var(--island-bg-color);--mobile-color-border: rgba(255, 255, 255, .85);--button-special-active-bg-color: #204624;--dialog-border-color: var(--color-gray-80);--dropdown-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="292.4" height="292.4" viewBox="0 0 292 292"><path fill="%23ced4da" d="M287 197L159 69c-4-3-8-5-13-5s-9 2-13 5L5 197c-3 4-5 8-5 13s2 9 5 13c4 4 8 5 13 5h256c5 0 9-1 13-5s5-8 5-13-1-9-5-13z"/></svg>');--focus-highlight-color: #228be6;--icon-green-fill-color: #69db7c;--default-bg-color: #121212;--input-bg-color: #121212;--input-border-color: #2e2e2e;--input-hover-bg-color: #181818;--input-label-color: #e9ecef;--island-bg-color: #232329;--island-bg-color-alt: hsl(240, 12%, 12%);--keybinding-color: var(--color-gray-60);--link-color: #4dabf7;--overlay-bg-color: rgba(52, 58, 64, .12);--popup-secondary-bg-color: #222;--popup-text-color: #ced4da;--popup-text-inverted-color: #2c2c2c;--select-highlight-color: #4dabf7;--modal-shadow: 0px 100px 80px rgba(0, 0, 0, .07), 0px 41.7776px 33.4221px rgba(0, 0, 0, .0503198), 0px 22.3363px 17.869px rgba(0, 0, 0, .0417275), 0px 12.5216px 10.0172px rgba(0, 0, 0, .035), 0px 6.6501px 5.32008px rgba(0, 0, 0, .0282725), 0px 2.76726px 2.21381px rgba(0, 0, 0, .0196802);--avatar-border-color: var(--color-gray-85);--scrollbar-thumb: #343a40;--scrollbar-thumb-hover: #495057;--color-slider-track: hsl(244, 23%, 39%);--color-selection: #3530c4;--color-icon-white: var(--color-gray-90);--color-primary: #a8a5ff;--color-primary-darker: #b2aeff;--color-primary-darkest: #beb9ff;--color-primary-light: #4f4d6f;--color-primary-light-darker: #43415e;--color-primary-hover: #bbb8ff;--color-disabled: var(--color-gray-70);--color-text-warning: var(--color-gray-80);--color-danger: #ffa8a5;--color-danger-dark: #672120;--color-danger-darker: #8f2625;--color-danger-darkest: #ac2b29;--color-danger-text: #fbcbcc;--color-danger-background: #fbcbcc;--color-danger-icon-background: #672120;--color-danger-color: #261919;--color-danger-icon-color: #fbcbcc;--color-warning-background: var(--color-warning);--color-warning-icon-background: var(--color-warning-dark);--color-warning-color: var(--color-gray-80);--color-warning-icon-color: var(--color-gray-80);--color-muted: var(--color-gray-80);--color-muted-darker: var(--color-gray-60);--color-muted-darkest: var(--color-gray-20);--color-muted-background: var(--color-gray-40);--color-muted-background-darker: var(--color-gray-20);--color-logo-text: #e2dfff;--color-surface-high: #2e2d39;--color-surface-low: hsl(240, 8%, 15%);--color-surface-mid: hsl(240 6% 10%);--color-surface-lowest: hsl(0, 0%, 7%);--color-on-surface: #e3e3e8;--color-brand-hover: #bbb8ff;--color-on-primary-container: #e0dfff;--color-brand-active: #d0ccff;--color-border-outline: #8e8d9c;--color-border-outline-variant: #46464f;--color-surface-primary-container: #403e6a}:root{--zIndex-canvas: 1;--zIndex-interactiveCanvas: 2;--zIndex-svgLayer: 3;--zIndex-wysiwyg: 3;--zIndex-canvasButtons: 3;--zIndex-layerUI: 4;--zIndex-eyeDropperBackdrop: 5;--zIndex-eyeDropperPreview: 6;--zIndex-hyperlinkContainer: 7;--zIndex-ui-bottom: 60;--zIndex-ui-context-menu: 90;--zIndex-ui-styles-popup: 100;--zIndex-ui-top: 100;--zIndex-ui-main-menu: 110;--zIndex-ui-library: 120;--zIndex-modal: 1000;--zIndex-popup: 1001;--zIndex-toast: 999999;--sab: env(safe-area-inset-bottom);--sal: env(safe-area-inset-left);--sar: env(safe-area-inset-right);--sat: env(safe-area-inset-top)}body.excalidraw-cursor-resize,body.excalidraw-cursor-resize a:hover,body.excalidraw-cursor-resize *{cursor:ew-resize}.excalidraw{--ui-font: Assistant, system-ui, BlinkMacSystemFont, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;font-family:var(--ui-font);position:relative;overflow:hidden;color:var(--text-primary-color);display:flex;top:0;bottom:0;left:0;right:0;height:100%;width:100%}.excalidraw button{font-size:.8333rem}.excalidraw button,.excalidraw label{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.excalidraw button{cursor:pointer;-webkit-user-select:none;user-select:none}.excalidraw:focus{outline:none}.excalidraw{-webkit-user-select:none;user-select:none}.excalidraw .excalidraw-link,.excalidraw a{font-weight:500;text-decoration:none;color:var(--link-color);-webkit-user-select:none;user-select:none;cursor:pointer}.excalidraw .excalidraw-link:hover,.excalidraw a:hover{text-decoration:underline}.excalidraw .excalidraw-link:active,.excalidraw a:active{text-decoration:none}.excalidraw canvas{touch-action:none;image-rendering:pixelated;image-rendering:-moz-crisp-edges;z-index:var(--zIndex-canvas)}.excalidraw canvas.interactive{z-index:var(--zIndex-interactiveCanvas);filter:var(--theme-filter)}.excalidraw__canvas-wrapper,.excalidraw__canvas.static{pointer-events:none}.excalidraw__canvas{position:absolute}.excalidraw__embeddable{width:100%;height:100%;border:0}.excalidraw__embeddable-container{position:absolute;z-index:2;transform-origin:top left;pointer-events:none}.excalidraw .FixedSideContainer{padding-top:var(--sat, 0);padding-right:var(--sar, 0);padding-bottom:var(--sab, 0);padding-left:var(--sal, 0)}.excalidraw .panelRow{display:flex;justify-content:space-between}.excalidraw .selected-shape-actions{display:flex;flex-direction:column;row-gap:.75rem}.excalidraw .selected-shape-actions h3,.excalidraw .selected-shape-actions legend,.excalidraw .selected-shape-actions .control-label{margin:0;margin-bottom:.25rem;font-size:.75rem;color:var(--text-primary-color);font-weight:400;display:block}.excalidraw .selected-shape-actions .control-label input{display:block;width:100%}.excalidraw .selected-shape-actions legend{padding:0}.excalidraw .selected-shape-actions .iconSelectList{flex-wrap:wrap;position:relative}.excalidraw .selected-shape-actions .buttonList{flex-wrap:wrap;display:flex;column-gap:.5rem;row-gap:.5rem}.excalidraw .selected-shape-actions .buttonList label{font-size:.75rem}.excalidraw .selected-shape-actions .buttonList input[type=radio],.excalidraw .selected-shape-actions .buttonList input[type=button]{opacity:0;position:absolute;pointer-events:none}.excalidraw .selected-shape-actions .buttonList .iconRow{margin-top:8px}.excalidraw .selected-shape-actions fieldset{margin:0;padding:0;border:none}.excalidraw .divider{width:1px;background-color:#e9ecef;margin:1px}.excalidraw .welcome-screen-menu-item:focus-visible,.excalidraw .dropdown-menu-item:focus-visible,.excalidraw button:focus-visible,.excalidraw .buttonList label:focus-within,.excalidraw input:focus-visible{outline:transparent;box-shadow:0 0 0 1px var(--color-brand-hover)}.excalidraw [data-radix-collection-item]:focus-visible{box-shadow:none!important}.excalidraw .buttonList .ToolIcon__icon{all:unset!important;display:flex!important}.excalidraw .buttonList button{background-color:transparent}.excalidraw .buttonList label,.excalidraw .buttonList button,.excalidraw .buttonList .zIndexButton{display:flex;justify-content:center;align-items:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border-width:1px;border-style:solid;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--button-color, var(--color-on-surface));font-family:var(--ui-font)}.excalidraw .buttonList label svg,.excalidraw .buttonList button svg,.excalidraw .buttonList .zIndexButton svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.excalidraw .buttonList label:hover,.excalidraw .buttonList button:hover,.excalidraw .buttonList .zIndexButton:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)));color:var(--button-hover-color, var(--button-color, var(--text-primary-color, inherit)))}.excalidraw .buttonList label:active,.excalidraw .buttonList button:active,.excalidraw .buttonList .zIndexButton:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.excalidraw .buttonList label.active,.excalidraw .buttonList button.active,.excalidraw .buttonList .zIndexButton.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.excalidraw .buttonList label.active:hover,.excalidraw .buttonList button.active:hover,.excalidraw .buttonList .zIndexButton.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.excalidraw .buttonList label.active svg,.excalidraw .buttonList button.active svg,.excalidraw .buttonList .zIndexButton.active svg{color:var(--button-color, var(--color-on-primary-container))}.excalidraw--mobile.excalidraw .buttonList label,.excalidraw .buttonList button,.excalidraw .buttonList .zIndexButton{width:var(--mobile-action-button-size, var(--default-button-size));height:var(--mobile-action-button-size, var(--default-button-size))}.excalidraw .buttonList label,.excalidraw .buttonList button,.excalidraw .buttonList .zIndexButton{padding:0}.excalidraw .buttonList label svg,.excalidraw .buttonList button svg,.excalidraw .buttonList .zIndexButton svg{width:var(--default-icon-size);height:var(--default-icon-size)}.excalidraw .App-top-bar{z-index:var(--zIndex-ui-top);display:flex;flex-direction:column}.excalidraw .App-welcome-screen{z-index:var(--zIndex-layerUI)}.excalidraw .App-bottom-bar{position:absolute;width:calc(100% - 28px);max-width:450px;bottom:0;left:50%;transform:translate(-50%);--bar-padding: calc(4 * var(--space-factor));z-index:var(--zIndex-ui-bottom);display:flex;flex-direction:column;pointer-events:none;justify-content:center}.excalidraw .App-bottom-bar>.Island{box-sizing:border-box;max-height:100%;padding:4px;display:flex;flex-direction:column;pointer-events:var(--ui-pointerEvents)}.excalidraw .App-toolbar{display:flex;justify-content:center}.excalidraw .App-toolbar .eraser.ToolIcon:hover{--icon-fill-color: #fff;--keybinding-color: #fff}.excalidraw .App-toolbar .eraser.active{background-color:var(--color-primary)}.excalidraw .excalidraw-ui-top-left,.excalidraw .excalidraw-ui-top-right{display:flex;align-items:center;gap:.5rem}.excalidraw .App-toolbar-content{display:flex;flex-direction:column;pointer-events:none}.excalidraw .App-toolbar-content>*{pointer-events:var(--ui-pointerEvents)}.excalidraw .App-mobile-menu{width:100%;overflow-x:visible;overflow-y:auto;box-sizing:border-box;margin-bottom:var(--bar-padding)}.excalidraw .App-mobile-menu .selected-shape-actions{padding:8px 8px 0}.excalidraw .App-menu{display:grid;color:var(--icon-fill-color)}.excalidraw .shapes-section{display:flex;justify-content:center;pointer-events:none!important}.excalidraw .shapes-section>*{pointer-events:var(--ui-pointerEvents)}.excalidraw .App-menu_top{grid-template-columns:1fr 2fr 1fr;grid-gap:1rem;align-items:flex-start;cursor:default;pointer-events:none!important}.excalidraw .App-menu_top>*{pointer-events:var(--ui-pointerEvents)}@media (min-width: 1536px){.excalidraw .App-menu_top{grid-template-columns:1fr 1fr 1fr;grid-gap:3rem}}.excalidraw .App-menu_top>*:first-child{justify-self:flex-start}.excalidraw .selected-shape-actions-container{width:fit-content}.excalidraw .selected-shape-actions-container--compact{min-width:48px}.excalidraw .App-menu_top>*:last-child{justify-self:flex-end}.excalidraw .App-menu_bottom{position:absolute;bottom:1rem;display:flex;justify-content:space-between;align-items:flex-start;cursor:default;pointer-events:none!important;box-sizing:border-box;padding:0 1rem}.excalidraw .App-menu_bottom--transition-left section{width:185px}.excalidraw .App-menu_bottom section{display:flex}.excalidraw .App-menu_bottom>*:first-child{justify-self:flex-start}.excalidraw .App-menu_bottom>*:last-child{justify-self:flex-end}.excalidraw .App-menu_left{grid-template-rows:1fr auto 1fr;height:100%}.excalidraw .App-menu_right{grid-template-rows:1fr;height:100%}.excalidraw .App-menu__left{overflow-y:auto;padding:.75rem;width:12.5rem;box-sizing:border-box;position:absolute}.excalidraw .dropdown-select{height:1.5rem;padding:0;padding-inline-start:.5rem;padding-inline-end:1.5rem;color:var(--icon-fill-color);background-color:var(--button-gray-1);border-radius:var(--space-factor);border:1px solid var(--button-gray-2);font-size:.8rem;font-family:inherit;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:var(--dropdown-icon);background-repeat:no-repeat;background-position:right .7rem top 50%,0 0}:root[dir=rtl] .excalidraw .dropdown-select{background-position:left .7rem top 50%,0 0}.excalidraw .dropdown-select{background-size:.65em auto,100%}.excalidraw .dropdown-select:focus{box-shadow:0 0 0 2px var(--focus-highlight-color)}.excalidraw .dropdown-select:hover,.excalidraw .dropdown-select:active{background-color:var(--button-gray-2)}.excalidraw .dropdown-select__language{height:2rem;background-color:var(--island-bg-color);border-color:var(--default-border-color)!important;cursor:pointer}.excalidraw .dropdown-select__language:hover{background-color:var(--island-bg-color)}.excalidraw .scroll-back-to-content{border-radius:var(--border-radius-lg);background-color:var(--island-bg-color);color:var(--icon-fill-color);border:1px solid var(--default-border-color);padding:10px 20px;position:absolute;left:50%;bottom:30px;transform:translate(-50%);pointer-events:var(--ui-pointerEvents);font-family:inherit}.excalidraw .scroll-back-to-content:hover{background-color:var(--button-hover-bg)}.excalidraw .scroll-back-to-content:active{border:1px solid var(--button-active-border)}.excalidraw .floating-status-stack{position:absolute;left:50%;bottom:30px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;pointer-events:none}.excalidraw .floating-status-stack .scroll-back-to-content{position:static;left:auto;bottom:auto;transform:none;pointer-events:var(--ui-pointerEvents)}.excalidraw .help-icon{display:flex;justify-content:center;align-items:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border-width:1px;border-style:solid;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--button-color, var(--color-on-surface));font-family:var(--ui-font)}.excalidraw .help-icon svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.excalidraw .help-icon:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)));color:var(--button-hover-color, var(--button-color, var(--text-primary-color, inherit)))}.excalidraw .help-icon:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.excalidraw .help-icon.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.excalidraw .help-icon.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.excalidraw .help-icon.active svg{color:var(--button-color, var(--color-on-primary-container))}.excalidraw--mobile.excalidraw .help-icon{width:var(--mobile-action-button-size, var(--default-button-size));height:var(--mobile-action-button-size, var(--default-button-size))}.excalidraw .help-icon{border:none;box-shadow:0 0 0 1px var(--color-surface-lowest);background-color:var(--color-surface-low)}.excalidraw .help-icon:active{box-shadow:0 0 0 1px var(--color-brand-active)}.excalidraw--mobile.excalidraw .help-icon{width:var(--mobile-action-button-size, 2rem);height:var(--mobile-action-button-size, 2rem)}.excalidraw .help-icon{width:var(--lg-button-size);height:var(--lg-button-size)}.excalidraw .help-icon svg{width:var(--lg-icon-size);height:var(--lg-icon-size)}.excalidraw .reset-zoom-button{font-family:var(--ui-font)}.excalidraw .finalize-button{display:grid;grid-auto-flow:column;gap:.4em;margin-top:auto;margin-bottom:auto;margin-inline-start:.6em}.excalidraw .undo-redo-buttons,.excalidraw .eraser-buttons{display:grid;grid-auto-flow:column;margin-top:auto;margin-bottom:auto;margin-inline-start:.6em}.excalidraw--mobile.excalidraw aside{display:none}.excalidraw--mobile.excalidraw .scroll-back-to-content{bottom:calc(100px + var(--sab, 0));z-index:-1}:root[dir=rtl] .excalidraw .rtl-mirror{transform:scaleX(-1)}.excalidraw .zen-mode-visibility{visibility:visible;opacity:1;height:auto;width:auto;transition:opacity .5s}.excalidraw .zen-mode-visibility.zen-mode-visibility--hidden{visibility:hidden;opacity:0;height:0;width:0;transition:opacity .5s}.excalidraw .disable-pointerEvents{pointer-events:none!important}.excalidraw.excalidraw--view-mode .App-menu{display:flex;justify-content:space-between}.excalidraw input.is-redacted{-webkit-text-security:disc}.excalidraw input[type=text],.excalidraw textarea:not(.excalidraw-wysiwyg){color:var(--text-primary-color);border:1.5px solid var(--input-border-color);padding:.75rem;white-space:nowrap;border-radius:var(--space-factor);background-color:var(--input-bg-color)}.excalidraw input[type=text]:not(:focus):hover,.excalidraw textarea:not(.excalidraw-wysiwyg):not(:focus):hover{border-color:var(--color-brand-hover)}.excalidraw input[type=text]:focus,.excalidraw textarea:not(.excalidraw-wysiwyg):focus{outline:none;border-color:var(--color-brand-hover)}@media print{.excalidraw .App-bottom-bar,.excalidraw .FixedSideContainer,.excalidraw .layer-ui__wrapper{display:none}}.excalidraw ::-webkit-scrollbar{width:4px;height:3px}.excalidraw select::-webkit-scrollbar{width:10px}.excalidraw ::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:10px}.excalidraw ::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.excalidraw ::-webkit-scrollbar-thumb:active{background:var(--scrollbar-thumb)}.excalidraw .mobile-misc-tools-container{position:absolute;top:calc(5rem - var(--editor-container-padding));right:calc(var(--editor-container-padding) * -1);display:flex;flex-direction:column;border:1px solid var(--sidebar-border-color);border-top-left-radius:var(--border-radius-lg);border-bottom-left-radius:var(--border-radius-lg);border-right:0;overflow:hidden;background-color:var(--island-bg-color)}.excalidraw .mobile-misc-tools-container .ToolIcon__icon{width:2rem;height:2rem;border-radius:0}.excalidraw .mobile-misc-tools-container .default-sidebar-trigger{border:0}.excalidraw .App-toolbar--mobile{overflow:visible;max-width:98vw}.excalidraw .App-toolbar--mobile .ToolIcon__keybinding{display:none}.excalidraw .UserList-Wrapper{margin:0;padding:0;border:none;text-align:left}.excalidraw .UserList-Wrapper legend{display:block;font-size:.75rem;font-weight:400;margin:0 0 .25rem;padding:0}.excalidraw .main-menu{z-index:var(--zIndex-ui-main-menu)}.excalidraw .main-menu-trigger{border:none;box-shadow:0 0 0 1px var(--color-surface-lowest);background-color:var(--color-surface-low)}.excalidraw .main-menu-trigger:active{box-shadow:0 0 0 1px var(--color-brand-active)}.excalidraw--mobile.excalidraw .main-menu-trigger{width:var(--mobile-action-button-size, 2rem);height:var(--mobile-action-button-size, 2rem)}.excalidraw .App-mobile-menu,.excalidraw .App-menu__left{--button-border: transparent;--button-bg: var(--color-surface-mid)}.excalidraw.theme--dark.excalidraw .App-mobile-menu,.excalidraw.theme--dark.excalidraw .App-menu__left{--button-hover-bg: #363541;--button-bg: var(--color-surface-high)}.excalidraw .App-menu__left .buttonList{padding:.25rem 0}.excalidraw .excalidraw__paragraph{margin:1rem 0}.excalidraw .Modal__content .excalidraw__paragraph:first-child{margin-top:0}.excalidraw .Modal__content .excalidraw__paragraph+.excalidraw__paragraph{margin-top:0rem}.excalidraw .link-button{display:flex;text-decoration:none!important}.ErrorSplash.excalidraw{min-height:100vh;padding:20px 0;overflow:auto;display:flex;align-items:center;justify-content:center;-webkit-user-select:text;user-select:text}.ErrorSplash.excalidraw .ErrorSplash-messageContainer{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;background-color:#ffe3e3;border:3px solid #c92a2a}.ErrorSplash.excalidraw .ErrorSplash-paragraph{margin:15px 0;max-width:600px}.ErrorSplash.excalidraw .ErrorSplash-paragraph.align-center{text-align:center}.ErrorSplash.excalidraw .bigger,.ErrorSplash.excalidraw .bigger button{font-size:1.1em}.ErrorSplash.excalidraw .smaller,.ErrorSplash.excalidraw .smaller button{font-size:.9em}.ErrorSplash.excalidraw .ErrorSplash-details{display:flex;flex-direction:column;align-items:flex-start}.ErrorSplash.excalidraw .ErrorSplash-details textarea{width:100%;margin:10px 0;font-family:Cascadia;font-size:.8em}.excalidraw__embeddable-container .excalidraw__embeddable-container__inner{overflow:hidden;display:flex;align-items:center;justify-content:center;border-radius:var(--embeddable-radius)}.excalidraw__embeddable-container .excalidraw__embeddable__outer{width:100%;height:100%}.excalidraw__embeddable-container .excalidraw__embeddable__content{width:100%;height:100%;transform-origin:top left}.excalidraw__embeddable-container .excalidraw__embeddable__content,.excalidraw__embeddable-container .excalidraw__embeddable__content>*{border-radius:var(--embeddable-radius)}.excalidraw__embeddable-container .excalidraw__embeddable-hint{position:absolute;z-index:1;background:#00000080;padding:1rem 1.6rem;border-radius:12px;color:#fff;font-weight:700;letter-spacing:.6px;font-family:Assistant}@font-face{font-family:Assistant;src:url(/assets/Assistant-Regular-DVxZuzxb.woff2) format("woff2");font-weight:400;style:normal;display:swap}@font-face{font-family:Assistant;src:url(/assets/Assistant-Medium-DrcxCXg3.woff2) format("woff2");font-weight:500;style:normal;display:swap}@font-face{font-family:Assistant;src:url(/assets/Assistant-SemiBold-SCI4bEL9.woff2) format("woff2");font-weight:600;style:normal;display:swap}@font-face{font-family:Assistant;src:url(/assets/Assistant-Bold-gm-uSS1B.woff2) format("woff2");font-weight:700;style:normal;display:swap}.uw-overlay{--uw-bg: var(--dcw-bg, #fff);--uw-ink: var(--dcw-ink, #1a1a1a);--uw-muted: var(--dcw-muted, #6b7280);--uw-line: var(--dcw-line, #e5e7eb);--uw-editor: var(--dcw-editor-bg, #fff);position:absolute;display:flex;flex-direction:column;box-sizing:border-box;overflow:hidden;pointer-events:none;color:var(--uw-ink);background:var(--uw-bg);border:1.5px solid var(--uw-border, var(--dcw-border, #d1d5db));border-radius:10px;box-shadow:0 6px 18px #0f172a14;font-family:var(--font-hand, "Excalifont", "Comic Sans MS", cursive)}.uw-overlay--selected{outline:2px solid #6965db;outline-offset:2px}.uw-overlay--binding-hover{outline:3px solid #a8a5ff;outline-offset:3px;box-shadow:0 0 0 5px #6965db21}.uw-overlay--dragging,.uw-overlay--resizing{box-shadow:none;opacity:.94}.uw-overlay--canvas-tool{pointer-events:none!important}.uw-overlay--canvas-tool *{pointer-events:none!important;-webkit-user-select:none;user-select:none}.uw-header{min-height:42px;display:flex;align-items:center;gap:8px;padding:0 10px 0 12px;flex:0 0 auto;cursor:grab;border-bottom:1px solid var(--uw-line);background:var(--uw-bg)}.uw-header:active{cursor:grabbing}.uw-header__icon{width:26px;height:26px;display:grid;place-items:center;color:var(--uw-accent);background:color-mix(in srgb,var(--uw-accent) 11%,transparent);border-radius:7px}.uw-header__icon svg,.uw-icon-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.uw-header__spacer{flex:1}.uw-header__badge{font-size:10px;font-weight:700;color:var(--uw-muted);text-transform:uppercase}.uw-icon-button{width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:8px;color:var(--uw-muted);background:transparent;cursor:pointer}.uw-icon-button:hover{background:var(--dcw-hover-bg, #f3f4f6);color:var(--uw-ink)}.uw-icon-button--danger:hover{color:#e03131;background:color-mix(in srgb,#e03131 10%,transparent)}.uw-body{min-height:0;flex:1;overflow:hidden}.uw-overlay--collapsed .uw-body,.uw-overlay--collapsed .uw-resize{display:none}.uw-overlay--collapsed .uw-header{border-bottom:0}.uw-stack,.uw-runner,.uw-learning{height:100%;min-height:0;display:flex;flex-direction:column}.uw-actions{min-height:42px;display:flex;align-items:center;gap:6px;padding:6px 10px;border-bottom:1px solid var(--uw-line)}.uw-actions button,.uw-actions select{min-height:30px;border:1px solid var(--uw-line);border-radius:8px;background:var(--dcw-menu-bg, #fff);color:inherit;font-family:inherit;font-size:12px;padding:3px 10px}.uw-actions button{cursor:pointer}.uw-actions select{min-width:0;max-width:230px}.uw-actions span{margin-left:auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#e03131;font-size:10px}.uw-actions .is-ok{color:#2f9e44}.uw-actions .uw-run{margin-left:auto;border-color:#22c55e;background:#22c55e;color:#fff;font-weight:700;box-shadow:0 2px 5px #22c55e38}.uw-segmented{display:inline-flex;gap:2px;padding:2px;border:1px solid var(--uw-line);border-radius:8px;background:color-mix(in srgb,var(--uw-bg) 88%,var(--uw-line))}.uw-segmented button{min-height:24px;padding:2px 8px;border:0;background:transparent}.uw-segmented button.is-active{color:#fff;background:#6965db}.uw-code{min-width:0;min-height:0;flex:1;resize:none;border:0;outline:0;padding:14px;color:var(--uw-ink);background:var(--uw-editor);font:13px/1.55 var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace)}.uw-runner{display:grid;grid-template-rows:auto minmax(90px,1fr) minmax(74px,.55fr)}.uw-output{min-height:0;overflow:auto;border-top:1px solid var(--uw-line);background:var(--uw-bg)}.uw-output>span{display:block;padding:6px 10px 0;font-size:10px;font-weight:800;text-transform:uppercase;color:var(--dcw-muted, #6b7280)}.uw-output pre,.uw-reading{margin:0;padding:8px 10px;white-space:pre-wrap;overflow-wrap:anywhere;font:11px/1.5 var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace)}.uw-table-wrap{min-height:0;flex:1;overflow:auto;padding:8px;position:relative}.uw-table{border-collapse:collapse;min-width:100%;table-layout:fixed}.uw-table th,.uw-table td{border:1px solid var(--uw-line);min-width:94px;padding:0}.uw-table input{width:100%;box-sizing:border-box;border:0;outline:0;padding:7px 8px;color:inherit;background:transparent;font:11px/1.3 inherit}.uw-table th{background:color-mix(in srgb,var(--uw-bg) 90%,var(--uw-accent) 10%)}.uw-table th input{font-weight:700}.uw-table th>div{display:grid;grid-template-columns:minmax(0,1fr) 25px;align-items:center}.uw-table th button{width:24px;height:25px;border:0;border-left:1px solid var(--uw-line);color:var(--uw-muted);background:transparent;cursor:pointer}.uw-table th button:hover{color:var(--uw-ink);background:color-mix(in srgb,var(--uw-accent) 10%,transparent)}.uw-table-actions{overflow-x:auto;scrollbar-width:none}.uw-table-actions::-webkit-scrollbar{display:none}.uw-filter-input{width:110px;min-width:90px;height:30px;box-sizing:border-box;border:1px solid var(--uw-line);border-radius:8px;padding:0 9px;color:var(--uw-ink);background:var(--dcw-menu-bg, #fff);font:11px/1.2 inherit;outline:0}.uw-filter-input:focus{border-color:#6965db}.uw-json-tree{min-height:0;flex:1;overflow:auto;padding:10px 12px 16px;background:var(--uw-editor);font:12px/1.55 var(--font-mono, ui-monospace, monospace)}.uw-json-branch{margin-left:13px}.uw-json-branch:first-child{margin-left:0}.uw-json-branch>summary{min-height:23px;display:flex;align-items:center;gap:6px;color:var(--uw-muted);cursor:pointer;list-style:none}.uw-json-branch>summary:before{content:"›";display:inline-block;transition:transform .15s ease}.uw-json-branch[open]>summary:before{transform:rotate(90deg)}.uw-json-branch>div{margin-left:9px;padding-left:9px;border-left:1px solid var(--uw-line)}.uw-json-leaf{min-height:23px;display:flex;align-items:baseline;gap:7px;padding-left:12px}.uw-json-key{color:#6965db}.uw-json-leaf .is-string{color:#2f9e44}.uw-json-leaf .is-number{color:#e8590c}.uw-json-leaf .is-boolean{color:#1971c2}.uw-json-leaf .is-null{color:var(--uw-muted);font-style:italic}.uw-json-error{color:#e03131;white-space:pre-wrap}.uw-learning{overflow:auto;padding-bottom:10px}.uw-learning .uw-actions{margin:0 0 12px;flex:0 0 auto;overflow:visible}.uw-learning h3{margin:0 14px 8px;font-size:19px;letter-spacing:0}.uw-learning p{margin:0 14px 10px;color:var(--dcw-muted, #64748b);font-size:12px;line-height:1.5}.uw-learning .uw-reading{margin:0 14px;padding:11px;border:1px solid var(--uw-line);border-radius:8px;background:var(--uw-editor);overflow:auto}.uw-kicker{margin:0 14px 6px;color:var(--uw-accent);font-size:10px;font-weight:800;text-transform:uppercase}.uw-tags{display:flex;flex-wrap:wrap;gap:5px;margin:4px 14px}.uw-tags span{padding:3px 6px;border:1px solid color-mix(in srgb,var(--uw-accent) 35%,transparent);border-radius:4px;color:var(--uw-accent);font-size:10px}.uw-markdown{white-space:normal}.uw-markdown h1,.uw-markdown h2,.uw-markdown h3{margin:10px 0 6px;font-family:var(--font-hand, inherit);line-height:1.25}.uw-markdown h1{font-size:17px}.uw-markdown h2{font-size:15px}.uw-markdown h3{font-size:13px}.uw-markdown p{margin:0 0 8px;font-size:11px}.uw-markdown ul,.uw-markdown ol{margin:4px 0 9px;padding-left:19px}.uw-markdown table{width:100%;border-collapse:collapse;font-size:10px}.uw-markdown th,.uw-markdown td{padding:4px 6px;border:1px solid var(--uw-line);text-align:left}.uw-markdown pre{overflow:auto;padding:7px;border-radius:6px;background:color-mix(in srgb,var(--uw-bg) 82%,#000 8%)}.uw-algorithm-content .uw-reading{flex:1;min-height:120px}.uw-learning--theory{padding-bottom:8px;gap:0}.uw-learning--theory .uw-actions--theory{margin:0;padding:8px 10px;gap:8px;border-bottom:1px solid var(--uw-line);background:color-mix(in srgb,var(--uw-bg) 92%,var(--uw-accent) 8%)}.uw-learning--theory .uw-actions--theory .uw-run{margin-left:0;flex:0 0 auto}.uw-algorithm-content .uw-actions .uw-run,.uw-problem-detail .uw-actions .uw-run{margin-left:auto}.uw-theory-crumb{flex:0 0 auto;margin:0;padding:7px 14px 6px;color:var(--uw-muted);font-size:10px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom:1px dashed color-mix(in srgb,var(--uw-line) 80%,transparent)}.uw-theory-reading{flex:1;min-height:0;margin:8px 10px 0!important;padding:12px 13px!important;border-radius:10px;box-shadow:inset 0 1px color-mix(in srgb,#fff 4%,transparent)}.uw-theory-loading{min-height:120px;height:100%;display:grid;place-items:center;padding:18px 12px}.uw-theory-loading .dc-spinner__label{margin-top:8px;color:var(--uw-muted);font-size:11px;font-family:var(--font-hand, inherit)}.uw-picker{position:relative;min-width:0;flex:1;z-index:6}.uw-picker.is-open{z-index:30}.uw-picker__button{width:100%;min-height:30px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 9px!important}.uw-picker__button span{margin:0;color:inherit;font-size:11px}.uw-picker__button svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2}.uw-picker__menu{position:absolute;top:calc(100% + 4px);left:0;right:0;max-height:210px;display:flex;flex-direction:column;padding:5px;border:1px solid var(--uw-line);border-radius:8px;background:var(--dcw-menu-bg, var(--uw-bg));box-shadow:0 10px 26px #0003}.uw-picker__search{height:30px;display:flex;align-items:center;gap:6px;padding:0 7px;border:1px solid var(--uw-line);border-radius:6px}.uw-picker__search svg{width:14px;height:14px;fill:none;stroke:var(--uw-muted);stroke-width:2}.uw-picker__search input{min-width:0;flex:1;border:0;outline:0;color:var(--uw-ink);background:transparent;font:11px/1.2 inherit}.uw-picker__list{min-height:0;overflow:auto;padding-top:4px}.uw-picker__list>button{width:100%;min-height:36px;display:block;padding:5px 7px;border:0;border-radius:6px;color:var(--uw-ink);background:transparent;text-align:left;cursor:pointer}.uw-picker__list>button:hover,.uw-picker__list>button.is-active{background:var(--dcw-hover-bg)}.uw-picker__list>button.is-active{color:#6965db}.uw-picker__list strong,.uw-picker__list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uw-picker__list strong{font-size:11px}.uw-picker__list small{color:var(--uw-muted);font-size:9px}.uw-empty{padding:18px;color:var(--dcw-muted, #64748b)}.uw-widget-skeleton{height:100%;display:flex;flex-direction:column;gap:10px;padding:14px}.uw-widget-skeleton span{display:block;height:14px;border-radius:5px;background:linear-gradient(90deg,var(--dcw-hover-bg) 20%,color-mix(in srgb,var(--dcw-hover-bg) 55%,var(--uw-line)) 50%,var(--dcw-hover-bg) 80%);background-size:220% 100%;animation:uw-skeleton-shimmer 1.25s ease-in-out infinite}.uw-widget-skeleton span:first-child{height:30px}.uw-widget-skeleton span:nth-child(2){width:72%}.uw-widget-skeleton span:nth-child(3){width:92%}.uw-widget-skeleton span:nth-child(4){width:58%}@keyframes uw-skeleton-shimmer{to{background-position:-220% 0}}.uw-resize{position:absolute;z-index:2}.uw-resize--n,.uw-resize--s{left:8px;right:8px;height:8px;cursor:ns-resize}.uw-resize--n{top:-4px}.uw-resize--s{bottom:-4px}.uw-resize--e,.uw-resize--w{top:8px;bottom:8px;width:8px;cursor:ew-resize}.uw-resize--e{right:-4px}.uw-resize--w{left:-4px}.uw-resize--ne,.uw-resize--se,.uw-resize--sw,.uw-resize--nw{width:12px;height:12px}.uw-resize--ne{right:-5px;top:-5px;cursor:nesw-resize}.uw-resize--se{right:-5px;bottom:-5px;cursor:nwse-resize}.uw-resize--sw{left:-5px;bottom:-5px;cursor:nesw-resize}.uw-resize--nw{left:-5px;top:-5px;cursor:nwse-resize}[data-theme=dark] .uw-overlay{color:#f1f3f5}[data-theme=dark] .uw-code,[data-theme=dark] .uw-reading{color:#f1f3f5;background:#19191e}.uw-problem-picker{height:100%;min-height:0;display:flex;flex-direction:column;padding:10px;gap:8px}.uw-problem-search{height:34px;display:flex;align-items:center;gap:7px;padding:0 9px;flex:0 0 auto;border:1px solid var(--uw-line);border-radius:8px;background:var(--uw-editor)}.uw-problem-search svg{width:15px;height:15px;fill:none;stroke:var(--uw-muted);stroke-width:2}.uw-problem-search input{min-width:0;flex:1;border:0;outline:0;color:var(--uw-ink);background:transparent;font:12px/1.2 var(--font-hand, inherit)}.uw-problem-filters{display:flex;gap:5px;overflow-x:auto;flex:0 0 auto;scrollbar-width:none}.uw-problem-filters::-webkit-scrollbar{display:none}.uw-problem-filters button{height:26px;padding:0 8px;flex:0 0 auto;border:1px solid var(--uw-line);border-radius:7px;color:var(--uw-muted);background:transparent;font:11px/1 var(--font-hand, inherit);cursor:pointer}.uw-problem-filters button:hover{color:var(--uw-ink);background:var(--dcw-hover-bg)}.uw-problem-filters button.is-active{color:#fff;border-color:#6965db;background:#6965db}.uw-problem-filters--difficulty button.is-active{color:#6965db;background:color-mix(in srgb,#6965db 14%,transparent)}.uw-problem-list{min-height:0;flex:1;overflow:auto;border:1px solid var(--uw-line);border-radius:8px}.uw-problem-row{width:100%;min-height:38px;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:7px;padding:5px 9px;border:0;border-bottom:1px solid var(--uw-line);color:var(--uw-ink);background:transparent;text-align:left;font-family:var(--font-hand, inherit);cursor:pointer}.uw-problem-row:last-child{border-bottom:0}.uw-problem-row:hover{background:var(--dcw-hover-bg)}.uw-problem-row__number{color:var(--uw-muted);font-size:10px}.uw-problem-row__title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.uw-problem-row__difficulty{font-size:10px;font-weight:700;color:#6965db}.uw-problem-row__difficulty.is-easy{color:#20c997}.uw-problem-row__difficulty.is-medium{color:#f59f00}.uw-problem-row__difficulty.is-hard{color:#fa5252}.uw-problem-detail .uw-actions{position:sticky;top:0;z-index:2;background:var(--uw-bg)}.uw-problem-detail .uw-actions .uw-run{margin-left:auto}.uw-problem-statement{margin:0 14px 10px;color:var(--uw-muted);font-size:12px;line-height:1.55;white-space:pre-wrap}.uw-problem-section{margin:10px 14px 0;padding-top:9px;border-top:1px dashed var(--uw-line)}.uw-problem-section h4{margin:0 0 7px;color:var(--uw-ink);font-size:12px}.uw-problem-section ul{display:grid;gap:6px;margin:0;padding:0 0 0 17px;color:var(--uw-muted);font-size:10.5px;line-height:1.45}.uw-problem-example dl{display:grid;gap:5px;margin:0}.uw-problem-example dl>div{display:grid;grid-template-columns:48px 1fr;gap:7px}.uw-problem-example dt{color:var(--uw-accent);font-size:10px;font-weight:700}.uw-problem-example dd{margin:0;color:var(--uw-muted);font:10px/1.45 var(--font-mono, monospace);overflow-wrap:anywhere}.uw-problem-apis{display:grid;gap:7px}.uw-problem-apis>div{display:grid;grid-template-columns:42px minmax(0,1fr);gap:3px 6px;align-items:center}.uw-problem-apis span{padding:3px 4px;border-radius:5px;color:#fff;background:#228be6;text-align:center;font:700 8px/1 var(--font-mono, monospace)}.uw-problem-apis span.is-post{background:#2f9e44}.uw-problem-apis span.is-delete{background:#e03131}.uw-problem-apis span.is-put,.uw-problem-apis span.is-patch{background:#f08c00}.uw-problem-apis code{min-width:0;color:var(--uw-ink);font:9.5px/1.4 var(--font-mono, monospace);overflow-wrap:anywhere}.uw-problem-apis p{grid-column:2;margin:0;color:var(--uw-muted);font-size:9.5px}.uw-test-cases{margin:10px 14px 0;padding:10px;border:1px solid var(--uw-line);border-radius:8px;background:color-mix(in srgb,var(--uw-editor) 92%,var(--uw-accent) 8%)}.uw-test-cases>strong{display:block;margin-bottom:7px;font-size:11px}.uw-test-cases>div{display:grid;grid-template-columns:20px 1fr;gap:6px;align-items:start;padding:5px 0;border-top:1px solid var(--uw-line)}.uw-test-cases>div>span{width:18px;height:18px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#6965db;font-size:9px}.uw-test-cases>div p,.uw-test-cases__empty{margin:0;color:var(--uw-muted);font-size:10px;line-height:1.4}.uw-test-cases>div p small{display:block;margin-top:2px;color:var(--uw-ink);font:9px/1.4 var(--font-mono, monospace)}.dc-theory-catalog .dc-theory-track-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:10px}.dc-theory-track-card{display:flex;flex-direction:column;align-items:stretch;gap:0;text-align:left;padding:12px 13px 11px;min-height:0;border:2px solid var(--border-light);border-radius:14px 16px 13px 15px/15px 13px 16px 14px;background:#fff;cursor:pointer;font-family:var(--font-hand, "Excalifont", cursive);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;min-width:0;overflow:hidden;transform:rotate(-.4deg)}html[data-theme=dark] .dc-theory-track-card{background:var(--bg-secondary)}.dc-theory-track-card:nth-child(2n){transform:rotate(.5deg);border-radius:16px 14px 17px 13px/14px 16px 13px 17px}.dc-theory-track-card:nth-child(3n){transform:rotate(-.2deg)}.dc-theory-track-card:hover:not(:disabled){transform:translateY(-2px) rotate(0);border-color:var(--card-accent, var(--brand-purple, #6965db));box-shadow:3px 3px color-mix(in srgb,var(--card-accent, var(--brand-purple, #6965db)) 28%,transparent)}.dc-theory-track-card--off{opacity:.5;cursor:not-allowed}.dc-theory-track-card--skeleton{pointer-events:none;cursor:default;min-height:118px}.dc-theory-track-card--skeleton:hover{transform:rotate(-.4deg);border-color:var(--border-light);box-shadow:none}.dc-theory-track-card--skeleton:nth-child(2n):hover{transform:rotate(.5deg)}.dc-theory-track-card--skeleton .dc-theory-track-card__skel-icon{margin-bottom:8px;flex-shrink:0}.dc-theory-track-card--skeleton .dc-theory-track-card__foot{border-top-color:transparent}.dc-theory-catalog .dc-theory-track-card--skeleton:nth-child(3n+2) .dc-skeleton{animation-delay:-.35s}.dc-theory-catalog .dc-theory-track-card--skeleton:nth-child(3n) .dc-skeleton{animation-delay:-.7s}.dc-theory-track-card__icon,.dc-theory-track-icon.dc-theory-track-card__icon{flex-shrink:0;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;color:var(--card-accent, var(--brand-purple, #6965db));border:1.5px solid color-mix(in srgb,var(--card-accent, var(--brand-purple)) 40%,transparent);border-radius:42% 58% 50% 48%/48% 42% 58% 50%;background:transparent;padding:5px;box-sizing:border-box;margin-bottom:8px}.dc-theory-track-icon svg{width:15px;height:15px;display:block}.dc-theory-track-card__title{margin:0 0 10px;width:100%;font-family:var(--font-hand, "Excalifont", cursive);font-size:14px;font-weight:700;letter-spacing:.02em;line-height:1.25;color:var(--theory-text, var(--text-primary));display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;word-break:break-word}.dc-theory-track-card__foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:8px;border-top:1px dashed color-mix(in srgb,var(--border-light) 90%,transparent)}.dc-theory-track-card__stats{font-size:10px;font-weight:600;letter-spacing:.02em;color:var(--theory-text-muted, var(--text-secondary));white-space:nowrap}.dc-theory-track-card__missing{font-size:10px;font-weight:600;color:var(--danger, #ef4444)}.dc-theory-track-card__likes{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:700;color:var(--theory-text-muted, var(--text-tertiary));flex-shrink:0}.dc-theory-track-card__likes--has{color:var(--card-accent, var(--brand-purple, #6965db))}.dc-theory-track-card__likes svg{width:11px;height:11px;opacity:.7}.dc-theory-track-card__likes--has svg{opacity:1}.dc-theory-search-hits{margin:0 0 20px;padding:12px 14px;border-radius:12px;border:1px solid var(--border-light);background:var(--bg-secondary)}.dc-theory-search-hits__status{margin:0;font-size:13px;color:var(--theory-text-muted)}.dc-theory-search-hits__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.dc-theory-search-hit{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:8px 10px;border:0;border-radius:8px;background:transparent;cursor:pointer;text-align:left;transition:background .12s}.dc-theory-search-hit:hover{background:var(--bg-hover)}.dc-theory-search-hit__track{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--theory-text-muted)}.dc-theory-search-hit__label{font-size:13px;font-weight:600;color:var(--theory-text);font-family:var(--font-ui)}.dc-theory-reader{--theory-accent: var(--brand-purple, #6965db);--theory-prose-width: 100%;--theory-text: var(--text-primary);--theory-text-muted: var(--text-secondary);display:flex;flex-direction:column;height:100%;min-height:0;background:var(--bg-primary);position:relative}html[data-theme=dark] .dc-theory-reader{--theory-text: #ffffff;--theory-text-muted: #f0f0f0}html[data-theme=light] .dc-theory-reader{--theory-text: #000000;--theory-text-muted: #111111}.dc-theory-catalog{--theory-text: var(--text-primary);--theory-text-muted: var(--text-secondary)}html[data-theme=dark] .dc-theory-catalog{--theory-text: #ffffff;--theory-text-muted: #f0f0f0}html[data-theme=light] .dc-theory-catalog{--theory-text: #000000;--theory-text-muted: #111111}.dc-theory-reader--loading{align-items:center;justify-content:center;min-height:360px}.dc-theory-reader__topbar{display:flex;align-items:center;gap:12px;flex-shrink:0;padding:10px 20px;border-bottom:1px solid var(--border-light);background:var(--bg-secondary);z-index:2}.dc-theory-reader__title-block{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.dc-theory-reader__track-icon{font-size:20px;flex-shrink:0}.dc-theory-reader__title-text{min-width:0}.dc-theory-reader__track-title{font-family:var(--font-ui);font-size:14px;font-weight:700;color:var(--theory-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dc-theory-reader__breadcrumb{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--theory-text-muted);margin-top:2px;font-family:var(--font-ui)}.dc-theory-reader__crumb-sep{opacity:.5}.dc-theory-reader__sidebar-toggle{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;border:1px solid var(--border-light);background:var(--bg-elevated);color:var(--theory-text-muted);cursor:pointer;transition:border-color .12s,color .12s}.dc-theory-reader__sidebar-toggle:hover{border-color:var(--theory-accent);color:var(--theory-accent)}.dc-theory-reader__body{display:flex;flex:1;min-height:0;overflow:hidden}.dc-theory-sidebar{width:268px;flex-shrink:0;display:flex;flex-direction:column;border-right:none;background:var(--bg-secondary);overflow:hidden}.dc-theory-sidebar--collapsed{width:0!important;opacity:0;pointer-events:none;border-right:0}.dc-theory-sidebar-splitter{flex-shrink:0;width:6px;margin:0 -3px;cursor:col-resize;background:transparent;position:relative;z-index:4;touch-action:none;transition:background .12s}.dc-theory-sidebar-splitter:after{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;transform:translate(-50%);background:var(--border-light);transition:background .12s,width .12s}.dc-theory-sidebar-splitter:hover:after,body.dc-theory-resizing .dc-theory-sidebar-splitter:after{width:3px;background:var(--theory-accent, var(--brand-purple, #6965db));opacity:.85}body.dc-theory-resizing{cursor:col-resize!important;-webkit-user-select:none;user-select:none}body.dc-theory-resizing *{cursor:col-resize!important}.dc-theory-sidebar__head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px;font-family:var(--font-ui);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--theory-text-muted)}.dc-theory-sidebar__count{padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--theory-accent) 12%,transparent);color:var(--theory-accent);font-size:10px}.dc-theory-sidebar__nav{flex:1;overflow-y:auto;padding:0 10px 16px;scrollbar-width:thin}.dc-theory-overview{display:block;width:100%;margin:0 0 10px;padding:8px 12px;border:1px solid var(--border-light);border-radius:8px;background:var(--bg-elevated);color:var(--theory-text-muted);font-family:var(--font-ui);font-size:13px;font-weight:600;cursor:pointer;text-align:left;transition:border-color .12s,color .12s,background .12s}.dc-theory-overview:hover,.dc-theory-overview--active{border-color:var(--theory-accent);background:color-mix(in srgb,var(--theory-accent) 8%,var(--bg-elevated));color:var(--theory-accent)}.dc-theory-mod{margin-bottom:2px}.dc-theory-mod--active>.dc-theory-mod__head{color:var(--theory-accent);font-weight:700}.dc-theory-mod__head{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:0;border-radius:8px;background:transparent;cursor:pointer;text-align:left;font-family:var(--font-ui);font-size:13px;font-weight:600;color:var(--theory-text);transition:background .12s,color .12s}.dc-theory-mod__head:hover{background:var(--bg-hover);color:var(--theory-text)}.dc-theory-mod__index{flex-shrink:0;font-size:10px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--theory-text-muted);opacity:1}.dc-theory-mod__title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}.dc-theory-mod__liked{flex-shrink:0;display:inline-flex;color:var(--theory-accent);margin-right:2px}.dc-theory-mod--liked>.dc-theory-mod__head .dc-theory-mod__title{color:var(--theory-text)}.dc-theory-mod__chev{flex-shrink:0;color:var(--theory-text-muted);opacity:1;transition:transform .15s}.dc-theory-mod__chev--open{transform:rotate(180deg)}.dc-theory-mod__lessons{list-style:none;margin:0 0 6px;padding:2px 0 4px 28px}.dc-theory-lesson{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;padding:6px 10px;border:0;border-radius:6px;background:transparent;cursor:pointer;text-align:left;font-family:var(--font-ui);font-size:12px;font-weight:500;color:var(--theory-text-muted);transition:background .12s,color .12s;line-height:1.35}.dc-theory-lesson__label{flex:1;min-width:0}.dc-theory-lesson__heart,.dc-theory-like-icon{flex-shrink:0;color:var(--theory-accent)}.dc-theory-lesson--liked:not(.dc-theory-lesson--active){color:var(--theory-text)}.dc-theory-lesson:hover{background:var(--bg-hover);color:var(--theory-text)}.dc-theory-lesson--active{background:color-mix(in srgb,var(--theory-accent) 12%,transparent);color:var(--theory-accent);font-weight:700}.dc-theory-main{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden;background:#fff}html[data-theme=dark] .dc-theory-main{background:var(--bg-primary)}.dc-theory-lesson-tabs{display:flex;gap:4px;padding:8px 28px;border-bottom:1px solid var(--border-light);background:#fff;flex-shrink:0;overflow-x:auto;scrollbar-width:none;z-index:2}html[data-theme=dark] .dc-theory-lesson-tabs{background:var(--bg-secondary)}.dc-theory-lesson-tab{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border:0;border-radius:6px;background:transparent;color:var(--theory-text-muted);font-family:var(--font-ui);font-size:12px;font-weight:500;cursor:pointer;transition:color .12s,background .12s;white-space:nowrap}.dc-theory-lesson-tab:hover{color:var(--theory-text);background:var(--bg-hover)}.dc-theory-lesson-tab--active{color:var(--theory-accent);background:color-mix(in srgb,var(--theory-accent) 10%,transparent);font-weight:700}.dc-theory-lesson-tab__heart{color:var(--theory-accent)}.dc-theory-like{position:relative;display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 8px;border:2px solid color-mix(in srgb,var(--theory-accent) 45%,transparent);border-radius:999px;background:transparent;color:var(--theory-accent);cursor:pointer;font-family:var(--font-hand, "Excalifont", cursive);font-size:13px;font-weight:700;letter-spacing:.02em;transform:rotate(-1.5deg);transition:background .15s,border-color .15s,transform .15s}.dc-theory-like:hover{background:color-mix(in srgb,var(--theory-accent) 8%,transparent);transform:rotate(0) scale(1.03)}.dc-theory-like--on{background:color-mix(in srgb,var(--theory-accent) 12%,transparent);border-color:var(--theory-accent)}.dc-theory-like--compact{padding:4px;border-radius:8px;gap:0}.dc-theory-like__svg{display:block;flex-shrink:0;transform:rotate(2deg)}.dc-theory-like__path{stroke-dasharray:1;stroke-dashoffset:0}.dc-theory-like--draw .dc-theory-like__path{animation:dc-theory-heart-draw .65s cubic-bezier(.4,0,.2,1) forwards}.dc-theory-like--draw .dc-theory-like__burst{animation:dc-theory-heart-burst .55s ease-out forwards}.dc-theory-like--draw .dc-theory-like__ring{animation:dc-theory-like-ring .6s cubic-bezier(.22,1,.36,1) forwards}.dc-theory-like__burst{position:absolute;left:50%;top:50%;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;border:2px solid var(--theory-accent);opacity:0;pointer-events:none}.dc-theory-like__ring{position:absolute;left:50%;top:50%;width:22px;height:22px;margin:-11px 0 0 -11px;border:1.5px dashed color-mix(in srgb,var(--theory-accent) 70%,transparent);border-radius:42% 58% 48% 52%/50% 42% 58% 48%;opacity:0;pointer-events:none}.dc-theory-like__text{line-height:1}@keyframes dc-theory-heart-draw{0%{stroke-dashoffset:1;fill:transparent}65%{stroke-dashoffset:0;fill:transparent}to{stroke-dashoffset:0;fill:currentColor}}@keyframes dc-theory-heart-burst{0%{opacity:.85;transform:scale(1)}to{opacity:0;transform:scale(3.2)}}@keyframes dc-theory-like-ring{0%{opacity:.9;transform:rotate(-8deg) scale(.7)}to{opacity:0;transform:rotate(6deg) scale(2.4)}}.dc-theory-like-pop{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9999;overflow:hidden}.dc-theory-like-pop__heart,.dc-theory-like-pop__spark{position:absolute;color:var(--brand-purple, #6965db);margin-left:-10px;margin-top:-10px;opacity:0;will-change:transform,opacity}.dc-theory-like-pop__heart{animation:dc-theory-like-pop-heart var(--lp-dur, .85s) cubic-bezier(.22,1,.36,1) var(--lp-delay, 0ms) forwards}.dc-theory-like-pop__spark{animation:dc-theory-like-pop-spark var(--lp-dur, .7s) cubic-bezier(.22,1,.36,1) var(--lp-delay, 0ms) forwards}.dc-theory-like-pop__heart svg,.dc-theory-like-pop__spark svg{display:block;filter:drop-shadow(1.5px 1.5px 0 color-mix(in srgb,var(--brand-purple, #6965db) 22%,transparent))}.dc-theory-like-pop__heart-path{stroke-dasharray:1;stroke-dashoffset:1;animation:dc-theory-like-pop-ink .45s cubic-bezier(.4,0,.2,1) var(--lp-delay, 0ms) forwards}.dc-theory-like-pop__spark-path{stroke-dasharray:1;stroke-dashoffset:1;animation:dc-theory-like-pop-ink .4s ease-out var(--lp-delay, 0ms) forwards}@keyframes dc-theory-like-pop-ink{to{stroke-dashoffset:0}}@keyframes dc-theory-like-pop-heart{0%{opacity:0;transform:translateZ(0) rotate(var(--lp-rot0, 0deg)) scale(.35)}22%{opacity:1}to{opacity:0;transform:translate3d(var(--lp-dx, 40px),var(--lp-dy, -40px),0) rotate(var(--lp-rot1, 8deg)) scale(1.05)}}@keyframes dc-theory-like-pop-spark{0%{opacity:0;transform:translateZ(0) rotate(var(--lp-rot0, 0deg)) scale(.5)}25%{opacity:.9}to{opacity:0;transform:translate3d(var(--lp-dx, 30px),var(--lp-dy, -30px),0) rotate(calc(var(--lp-rot0, 0deg) + 12deg)) scale(1)}}.dc-theory-main__scroll{flex:1;overflow-y:auto;scrollbar-width:thin;background:#fff;min-height:100%}html[data-theme=dark] .dc-theory-main__scroll{background:var(--bg-primary)}.dc-theory-main__scroll-shell{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.dc-theory-main__scroll-shell .dc-theory-main__scroll{flex:1;min-height:0;padding-right:32px;box-sizing:border-box;scroll-behavior:auto}.dc-theory-main__scroll--rail-anim{scroll-behavior:auto!important;overscroll-behavior:contain}.dc-theory-main__scroll--rail-anim~.dc-theory-read-rail .dc-theory-read-rail__fill,.dc-theory-main__scroll--rail-anim~.dc-theory-read-rail .dc-theory-read-rail__mark{transition:none!important}.dc-theory-read-rail{position:absolute;top:12px;right:4px;bottom:12px;width:28px;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none;z-index:4}.dc-theory-read-rail__track{position:relative;flex:1;width:8px;border-radius:999px;border:1.5px dashed color-mix(in srgb,var(--theory-accent, var(--brand-purple)) 38%,transparent);background:color-mix(in srgb,var(--theory-accent, var(--brand-purple)) 5%,transparent);overflow:visible;pointer-events:auto}.dc-theory-read-rail__stroke{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;color:var(--theory-accent, var(--brand-purple));opacity:0;pointer-events:none}.dc-theory-read-rail__stroke-path{stroke-dasharray:1;stroke-dashoffset:1}.dc-theory-read-rail--draw .dc-theory-read-rail__stroke{opacity:.9}.dc-theory-read-rail--draw .dc-theory-read-rail__stroke-path{animation:dc-theory-rail-ink .65s cubic-bezier(.4,0,.2,1) forwards}@keyframes dc-theory-rail-ink{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}.dc-theory-read-rail__fill{position:absolute;left:1px;right:1px;top:0;border-radius:inherit;background:linear-gradient(180deg,color-mix(in srgb,var(--theory-accent, var(--brand-purple)) 35%,transparent),color-mix(in srgb,var(--theory-accent, var(--brand-purple)) 70%,transparent));transition:none;will-change:height}.dc-theory-read-rail__mark{position:absolute;left:50%;width:26px;height:26px;margin-left:-13px;margin-top:-13px;display:flex;align-items:center;justify-content:center;color:var(--theory-accent, var(--brand-purple));background:var(--bg-primary, #fff);border:1.5px solid color-mix(in srgb,var(--theory-accent, var(--brand-purple)) 55%,transparent);border-radius:42% 58% 48% 52%/48% 42% 58% 50%;transform:rotate(-8deg);box-shadow:2px 2px color-mix(in srgb,var(--theory-accent, var(--brand-purple)) 22%,transparent);transition:transform .2s ease,background .2s ease,border-color .2s ease;cursor:pointer;padding:0;pointer-events:auto;z-index:2}.dc-theory-read-rail__mark:hover{transform:rotate(0) scale(1.08);background:color-mix(in srgb,var(--theory-accent, var(--brand-purple)) 12%,#fff)}.dc-theory-read-rail--draw .dc-theory-read-rail__mark{animation:dc-theory-rail-mark-pop .55s ease-out}@keyframes dc-theory-rail-mark-pop{0%{transform:rotate(-8deg) scale(.85)}45%{transform:rotate(4deg) scale(1.15)}to{transform:rotate(-8deg) scale(1)}}.dc-theory-read-rail--saved .dc-theory-read-rail__mark{background:color-mix(in srgb,var(--theory-accent, var(--brand-purple)) 16%,#fff);border-color:var(--theory-accent, var(--brand-purple))}.dc-theory-read-rail__label{font-family:var(--font-hand, "Excalifont", cursive);font-size:10px;font-weight:700;color:var(--theory-accent, var(--brand-purple));letter-spacing:.02em;transform:rotate(4deg);transition:transform .2s ease}.dc-theory-read-rail--draw .dc-theory-read-rail__label{transform:rotate(-2deg) scale(1.06)}.dc-theory-read-rail__toast{position:absolute;right:calc(100% + 10px);top:50%;transform:translateY(-50%) rotate(-1.5deg);padding:7px 11px;border:2px solid color-mix(in srgb,var(--theory-accent, var(--brand-purple)) 55%,transparent);border-radius:12px 14px 11px 13px/13px 11px 14px 12px;background:var(--bg-primary, #fff);color:var(--theory-accent, var(--brand-purple));font-family:var(--font-hand, "Excalifont", cursive);font-size:13px;font-weight:700;letter-spacing:.02em;white-space:nowrap;box-shadow:2px 2px color-mix(in srgb,var(--theory-accent, var(--brand-purple)) 22%,transparent);pointer-events:none;animation:dc-theory-rail-toast-in .35s cubic-bezier(.22,1,.36,1)}.dc-theory-read-rail--toast .dc-theory-read-rail__mark{background:color-mix(in srgb,var(--theory-accent, var(--brand-purple)) 16%,#fff);border-color:var(--theory-accent, var(--brand-purple))}@keyframes dc-theory-rail-toast-in{0%{opacity:0;transform:translateY(-50%) translate(8px) rotate(-4deg) scale(.9)}to{opacity:1;transform:translateY(-50%) rotate(-1.5deg) scale(1)}}html[data-theme=dark] .dc-theory-read-rail__toast,html[data-theme=dark] .dc-theory-read-rail__mark{background:var(--bg-secondary)}html[data-theme=dark] .dc-theory-read-rail__mark:hover,html[data-theme=dark] .dc-theory-read-rail--saved .dc-theory-read-rail__mark{background:color-mix(in srgb,var(--theory-accent, var(--brand-purple)) 18%,var(--bg-secondary))}.dc-theory-article{width:100%;max-width:none;margin:0;padding:24px 28px 48px;background:#fff;box-sizing:border-box}html[data-theme=dark] .dc-theory-article{background:var(--bg-primary)}.dc-theory-article__header{margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid var(--border-light)}.dc-theory-article__header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.dc-theory-article__header-main{flex:1;min-width:0}.dc-theory-article__like{flex-shrink:0;padding-top:4px}.dc-theory-article__actions{flex-shrink:0;padding-top:4px;display:flex;flex-wrap:wrap;align-items:center;gap:8px;justify-content:flex-end}.dc-theory-article__eyebrow{margin:0 0 8px;font-size:12px;font-weight:600;color:var(--theory-text-muted);font-family:var(--font-ui)}.dc-theory-article__title{margin:0;font-family:var(--font-hand, "Excalifont", cursive);font-size:clamp(1.5rem,2.2vw,1.85rem);font-weight:700;letter-spacing:.02em;color:var(--theory-text);line-height:1.25}.dc-theory-article__subtitle{margin:10px 0 0;font-size:14px;color:var(--theory-text-muted);font-family:var(--font-ui)}.dc-theory-article__content{padding:0}.dc-theory-md.markdown-viewer__content.sn-content{--sketch-stroke: var(--theory-accent, var(--brand-purple, #6965db));--glass-text: var(--theory-text, var(--text-primary));--glass-text-dim: var(--theory-text-muted, var(--text-secondary));width:100%;max-width:none;flex:none;margin:0;padding:0;background:#fff}.dc-theory-reader .markdown-viewer__content{max-width:none}.dc-theory-md .sn-table-wrapper table,.dc-theory-md .sn-prose table{background:#fff}html[data-theme=dark] .dc-theory-md.markdown-viewer__content.sn-content,html[data-theme=dark] .dc-theory-md .sn-table-wrapper table,html[data-theme=dark] .dc-theory-md .sn-prose table{background:var(--bg-primary)}.dc-theory-md .md-section.sn-prose{max-width:100%}.dc-theory-md .sn-prose h2:first-child,.dc-theory-md .sn-prose h3:first-child{margin-top:0}.dc-theory-md .callout{margin:18px 0}.dc-theory-md .sn-prose blockquote{border-left:none;background:#fff;font-style:normal;color:var(--theory-text);padding:8px 12px;margin:16px 0;border-radius:0}html[data-theme=dark] .dc-theory-md .sn-prose blockquote{background:var(--bg-primary)}.dc-theory-md .sn-prose blockquote p{margin:0 0 8px}.dc-theory-md .sn-prose blockquote p:last-child{margin-bottom:0}.dc-theory-callout{margin:18px 0;padding:0;background:#fff;border:none;border-left:none}html[data-theme=dark] .dc-theory-callout{background:var(--bg-primary)}.dc-theory-callout__header{display:flex;align-items:center;gap:6px;margin-bottom:6px}.dc-theory-callout__type{font-family:var(--font-hand, "Excalifont", cursive);font-size:13px;font-weight:700;letter-spacing:.02em;color:var(--theory-text)}.dc-theory-callout__header svg{fill:currentColor;color:var(--theory-text)}.dc-theory-callout__body{font-family:var(--font-hand, "Excalifont", cursive);font-size:15px;line-height:1.65;color:var(--theory-text)}.dc-theory-callout__body p{margin:0 0 8px}.dc-theory-callout__body p:last-child{margin-bottom:0}.dc-theory-md .sn-prose,.dc-theory-md .sn-prose p,.dc-theory-md .sn-prose li,.dc-theory-md .sn-prose td,.dc-theory-md .sn-table-wrapper td,.dc-theory-md .sn-prose h1,.dc-theory-md .sn-prose h2,.dc-theory-md .sn-prose h3,.dc-theory-md .sn-prose h4,.dc-theory-md .sn-prose th,.dc-theory-md .sn-table-wrapper th{color:var(--theory-text)}html[data-theme] .dc-theory-md .sn-prose strong,html[data-theme] .dc-theory-md .sn-prose b,html[data-theme] .dc-theory-md .dc-theory-callout__body strong,html[data-theme] .dc-theory-md .sn-prose em,html[data-theme] .dc-theory-md .sn-prose a{color:var(--theory-text)!important;font-weight:inherit}html[data-theme] .dc-theory-md .sn-prose strong,html[data-theme] .dc-theory-md .sn-prose b,html[data-theme] .dc-theory-md .dc-theory-callout__body strong{font-weight:700}html[data-theme] .dc-theory-md .sn-prose em{font-style:italic}html[data-theme] .dc-theory-md .sn-prose a{text-decoration:underline;text-underline-offset:2px;background-image:none!important;padding-bottom:0}html[data-theme] .dc-theory-md .sn-prose code:not(pre code){color:var(--theory-text)!important;background:color-mix(in srgb,var(--theory-text) 8%,transparent)!important;border:none!important}.dc-theory-md .sn-codeblock,.dc-theory-md .sn-codeblock pre,.dc-theory-md .sn-codeblock pre code,.dc-theory-md .sn-codeblock pre code *,.dc-theory-md .sn-codeblock .sn-codeblock__label{color:var(--theory-text)!important}.dc-theory-md .sn-codeblock__lang{color:var(--theory-text-muted)!important}html[data-theme] .dc-theory-md .sn-prose ol>li:before{color:var(--theory-accent, var(--brand-purple, #6965db))!important;border-color:var(--sketch-stroke, var(--theory-accent, var(--brand-purple, #6965db)))!important}html[data-theme] .dc-theory-md .sn-prose ul:not([data-type=taskList]):not(:has(>li>input[type=checkbox]))>li:before{border-color:var(--sketch-stroke, var(--theory-accent, var(--brand-purple, #6965db)))!important}html[data-theme] .dc-theory-md .sn-prose .task-check--checked{background:var(--theory-accent, var(--brand-purple, #6965db));border-color:var(--theory-accent, var(--brand-purple, #6965db))}.dc-theory-article__nav{display:flex;justify-content:space-between;gap:12px;margin-top:40px;padding-top:24px;border-top:1px solid var(--border-light)}.dc-theory-nav-btn{padding:8px 0;border:0;background:transparent;color:var(--theory-text-muted);font-family:var(--font-ui);font-size:13px;font-weight:500;cursor:pointer;transition:color .12s}.dc-theory-nav-btn:hover{color:var(--theory-accent)}.dc-theory-nav-btn--next{margin-left:auto;text-align:right}.dc-theory-start{max-width:440px;margin:64px auto;padding:32px;text-align:center;border-radius:16px;border:1px solid var(--border-light);background:var(--bg-secondary);box-shadow:0 8px 24px -12px #0000001a}.dc-theory-start h2{margin:0 0 10px;font-family:var(--font-ui);font-size:1.25rem;font-weight:700;color:var(--theory-text)}.dc-theory-start p{margin:0 0 20px;color:var(--theory-text-muted);font-size:14px;line-height:1.6;font-family:var(--font-ui)}.dc-theory-start__btn{padding:10px 18px;border-radius:10px;border:0;background:var(--theory-accent);color:#fff;font-family:var(--font-ui);font-size:13px;font-weight:600;cursor:pointer;transition:filter .12s,transform .12s}.dc-theory-start__btn:hover{filter:brightness(1.08);transform:translateY(-1px)}.dc-theory-main__loading{display:flex;align-items:center;justify-content:center;min-height:280px;background:#fff}html[data-theme=dark] .dc-theory-main__loading{background:var(--bg-primary)}@media (max-width: 768px){.dc-theory-sidebar{position:absolute;z-index:20;height:calc(100% - 52px);top:52px;left:0;box-shadow:8px 0 24px #00000026}.dc-theory-sidebar--collapsed{width:0!important}.dc-theory-sidebar-splitter{display:none}.dc-theory-article{padding:20px 16px 36px}}.dc-theory-places{display:flex;flex-direction:column;gap:22px;margin:0 0 28px}.dc-theory-places__block{min-width:0}.dc-theory-places__title{margin:0 0 12px;font-family:var(--font-hand, "Excalifont", cursive);font-size:15px;font-weight:700;letter-spacing:.02em;color:var(--theory-text, var(--text-primary))}.dc-theory-place-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:10px}.dc-theory-place-card-wrap{position:relative;min-width:0}.dc-theory-place-card{--card-accent: var(--brand-purple, #6965db);display:flex;flex-direction:column;align-items:stretch;text-align:left;padding:12px 13px 11px;border:2px solid var(--border-light);border-radius:14px 16px 13px 15px/15px 13px 16px 14px;background:#fff;cursor:pointer;font-family:var(--font-hand, "Excalifont", cursive);color:inherit;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;min-width:0;overflow:hidden;transform:rotate(-.4deg)}html[data-theme=dark] .dc-theory-place-card{background:var(--bg-secondary)}.dc-theory-place-card--r2{transform:rotate(.5deg);border-radius:16px 14px 17px 13px/14px 16px 13px 17px}.dc-theory-place-card--r3{transform:rotate(-.2deg)}.dc-theory-place-card:hover{transform:translateY(-2px) rotate(0);border-color:var(--card-accent);box-shadow:3px 3px color-mix(in srgb,var(--card-accent) 28%,transparent)}.dc-theory-place-card--hero{flex-direction:row;align-items:stretch;padding:0;gap:0;transform:rotate(-.35deg);width:100%;max-width:520px}.dc-theory-place-card--hero:hover{transform:translateY(-2px) rotate(0)}.dc-theory-place-card__main{flex:1;min-width:0;display:flex;align-items:center;gap:12px;padding:14px 14px 13px;border:0;background:transparent;cursor:pointer;text-align:left;font:inherit;color:inherit}.dc-theory-place-card__icon{flex-shrink:0;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;color:var(--card-accent);border:1.5px dashed color-mix(in srgb,var(--card-accent) 45%,transparent);border-radius:42% 58% 50% 48%/48% 42% 58% 50%;background:transparent;box-sizing:border-box}.dc-theory-place-card--tile .dc-theory-place-card__icon{margin-bottom:8px}.dc-theory-place-card__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.dc-theory-place-card__label{margin:0;width:100%;font-family:var(--font-hand, "Excalifont", cursive);font-size:14px;font-weight:700;letter-spacing:.02em;line-height:1.25;color:var(--theory-text, var(--text-primary));display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.dc-theory-place-card--tile .dc-theory-place-card__label{margin-bottom:10px}.dc-theory-place-card__meta{font-size:10px;font-weight:600;letter-spacing:.02em;color:var(--theory-text-muted, var(--text-secondary));font-family:var(--font-ui);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dc-theory-place-card__cta{flex-shrink:0;font-family:var(--font-hand, "Excalifont", cursive);font-size:13px;font-weight:700;color:var(--card-accent);white-space:nowrap;padding-right:4px}.dc-theory-place-card__foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:8px;border-top:1px dashed color-mix(in srgb,var(--border-light) 90%,transparent)}.dc-theory-place-card__x,.dc-theory-place-card__unpin{display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--theory-text-muted, var(--text-secondary));cursor:pointer;padding:0}.dc-theory-place-card__x{flex-shrink:0;width:40px;border-left:1px dashed color-mix(in srgb,var(--border-light) 90%,transparent)}.dc-theory-place-card__x:hover,.dc-theory-place-card__unpin:hover{color:var(--theory-text, var(--text-primary))}.dc-theory-place-card__unpin{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:8px;opacity:0;transition:opacity .12s,background .12s;z-index:1}.dc-theory-place-card-wrap:hover .dc-theory-place-card__unpin,.dc-theory-place-card__unpin:focus-visible{opacity:1;background:color-mix(in srgb,var(--card-accent, var(--brand-purple)) 10%,transparent)}.dc-theory-track-card--progress{box-shadow:inset 0 -3px color-mix(in srgb,var(--card-accent, var(--brand-purple)) 55%,transparent)}.dc-theory-continue-chip{flex-shrink:0;margin-left:8px;padding:6px 12px;border:2px solid color-mix(in srgb,var(--theory-accent, var(--brand-purple)) 45%,transparent);border-radius:999px;background:transparent;color:var(--theory-accent, var(--brand-purple));font-family:var(--font-hand, "Excalifont", cursive);font-size:12px;font-weight:700;cursor:pointer;transform:rotate(-1deg);transition:transform .15s,background .15s,border-color .15s}.dc-theory-continue-chip:hover{transform:rotate(0);background:color-mix(in srgb,var(--theory-accent, var(--brand-purple)) 10%,transparent);border-color:var(--theory-accent, var(--brand-purple))}@media (max-width: 640px){.dc-theory-place-card--hero{max-width:none}.dc-theory-place-card__cta{display:none}}html.sn-html-unlock,body.sn-body-unlock{overflow:auto!important;height:auto!important}body.sn-body-unlock #root{height:auto!important;overflow:visible!important}html.sn-html-unlock,.sn-page,.sn-comments-drawer{--sn-brand: var(--brand-purple, #6965db);--sn-brand-deep: color-mix(in srgb, var(--brand-purple, #6965db) 82%, #000);--sn-brand-soft: var(--brand-purple-light, #8b86ff);--sn-accent: var(--brand-accent, #f59e0b);--sketch-stroke: var(--sn-brand)}.sn-page{min-height:100dvh;position:relative;display:flex;flex-direction:column;font-family:var(--font-hand, "Excalifont", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);-webkit-font-smoothing:antialiased;transition:background .35s ease,color .35s ease}.sn-page--dark{--glass-bg: rgba(20,20,28,.75);--glass-border: rgba(255,255,255,.07);--glass-highlight: rgba(255,255,255,.04);--glass-shadow: rgba(0,0,0,.25);--glass-text: #e4e4e7;--glass-text-dim: #71717a;--glass-surface: rgba(12,12,18,.88);--page-bg: #0a0a0f;background:var(--page-bg);color:#e4e4e7}.sn-page--light{--glass-bg: rgba(255,255,255,.65);--glass-border: rgba(0,0,0,.06);--glass-highlight: rgba(255,255,255,.8);--glass-shadow: rgba(0,0,0,.05);--glass-text: #18181b;--glass-text-dim: #71717a;--glass-surface: rgba(255,255,255,.82);--page-bg: #fafafa;background:var(--page-bg);color:#18181b}.sn-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:18px;position:relative;z-index:1;padding:24px}.sn-loading .dc-spinner__label{font-family:var(--font-hand, "Excalifont", cursive);color:var(--glass-text-dim, #71717a)}.sn-codeblock__spin{color:inherit;flex-shrink:0}.sn-nav__pill{display:none;font-family:var(--font-hand, "Excalifont", cursive);font-size:11px;font-weight:700;letter-spacing:.04em;padding:4px 10px;border-radius:999px;color:var(--sn-brand);border:1.5px dashed color-mix(in srgb,var(--sn-brand) 45%,transparent);background:color-mix(in srgb,var(--sn-brand) 10%,transparent)}@media (min-width: 640px){.sn-nav__pill{display:inline-flex}}.sn-article__eyebrow{margin:0 0 8px;font-family:var(--font-hand, "Excalifont", cursive);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--sn-accent)}.sn-nav__brand .dc-brand-wordmark{font-family:var(--font-hand, "Excalifont", cursive);font-size:16px;font-weight:700}.sn-loading__scene{position:relative;width:80px;height:120px}.sn-loading__drop{position:absolute;left:50%;top:0;transform:translate(-50%);animation:sn-drop-fall 1.6s cubic-bezier(.4,0,.6,1) infinite}.sn-loading__drop svg{filter:drop-shadow(0 4px 12px rgba(99,102,241,.4))}.sn-loading__ripple-wrap{position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.sn-loading__ripple{position:absolute;left:50%;top:50%;width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;border:1.5px solid rgba(99,102,241,.5);animation:sn-ripple 1.6s cubic-bezier(0,.4,.6,1) infinite;opacity:0}.sn-loading__ripple--2{animation-delay:.15s}.sn-loading__ripple--3{animation-delay:.3s}.sn-loading__brand{font-size:15px;font-weight:600;letter-spacing:-.3px;color:var(--glass-text-dim, #71717a);animation:sn-brand-pulse 1.6s ease-in-out infinite}@keyframes sn-drop-fall{0%{top:0;opacity:0}15%{opacity:1}55%{top:70px;opacity:1}60%{top:70px;opacity:0;transform:translate(-50%) scale(.6)}to{top:70px;opacity:0}}@keyframes sn-ripple{0%,50%{transform:scale(0);opacity:0}55%{transform:scale(1);opacity:.7}to{transform:scale(8);opacity:0}}@keyframes sn-brand-pulse{0%,to{opacity:.5}55%{opacity:1}}.sn-error{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:0;text-align:center;padding:48px 24px 56px;overflow:hidden}.sn-error__glow{position:absolute;width:min(520px,90vw);height:min(520px,90vw);border-radius:50%;background:radial-gradient(circle at 40% 35%,color-mix(in srgb,var(--sn-brand) 22%,transparent),transparent 58%),radial-gradient(circle at 70% 70%,color-mix(in srgb,var(--sn-accent) 14%,transparent),transparent 50%);pointer-events:none;animation:sn-error-glow 5s ease-in-out infinite alternate}.sn-error__dots{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.35;background-image:radial-gradient(color-mix(in srgb,var(--sn-brand) 35%,transparent) 1px,transparent 1px);background-size:22px 22px;-webkit-mask-image:radial-gradient(circle at center,#000 20%,transparent 72%);mask-image:radial-gradient(circle at center,#000 20%,transparent 72%)}@keyframes sn-error-glow{0%{transform:scale(.94) translateY(6px);opacity:.75}to{transform:scale(1.06) translateY(-4px);opacity:1}}.sn-error__brand{position:relative;z-index:1;text-decoration:none;margin-bottom:28px;animation:sn-error-in .55s cubic-bezier(.22,1,.36,1) both}.sn-error__sketch{position:relative;z-index:1;width:min(180px,56vw);color:var(--sn-brand);margin-bottom:18px;animation:sn-error-in .6s cubic-bezier(.22,1,.36,1) .06s both}.sn-error__sketch svg{width:100%;height:auto;display:block}.sn-error__page{fill:color-mix(in srgb,var(--sn-brand) 6%,transparent);transform-origin:80px 60px;animation:sn-error-tilt 4.5s ease-in-out infinite}.sn-error__fold{opacity:.7}.sn-error__slash{animation:sn-error-slash .7s cubic-bezier(.22,1,.36,1) .35s both}.sn-error__spark--a{animation:sn-error-spark 2.4s ease-in-out infinite}.sn-error__spark--b{animation:sn-error-spark 2.8s ease-in-out .4s infinite}@keyframes sn-error-tilt{0%,to{transform:rotate(-1.5deg)}50%{transform:rotate(1.8deg)}}@keyframes sn-error-slash{0%{stroke-dasharray:90;stroke-dashoffset:90;opacity:0}to{stroke-dasharray:90;stroke-dashoffset:0;opacity:1}}@keyframes sn-error-spark{0%,to{transform:scale(.7);opacity:.45}50%{transform:scale(1.25);opacity:1}}@keyframes sn-error-in{0%{opacity:0;transform:translateY(14px) rotate(-1deg)}to{opacity:1;transform:translateY(0) rotate(0)}}.sn-error__eyebrow{position:relative;z-index:1;margin:0 0 8px;font-family:var(--font-hand, "Excalifont", cursive);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--sn-accent);animation:sn-error-in .55s cubic-bezier(.22,1,.36,1) .1s both}.sn-error__title{position:relative;z-index:1;margin:0 0 10px;max-width:18ch;font-family:var(--font-hand, "Excalifont", cursive);font-size:clamp(26px,5vw,34px);font-weight:700;line-height:1.2;letter-spacing:.02em;color:var(--glass-text, #18181b);transform:rotate(-.6deg);animation:sn-error-in .55s cubic-bezier(.22,1,.36,1) .14s both}.sn-error__detail{position:relative;z-index:1;margin:0 0 6px;max-width:34ch;font-family:var(--font-hand, "Excalifont", cursive);font-size:15px;font-weight:650;color:var(--sn-brand);animation:sn-error-in .55s cubic-bezier(.22,1,.36,1) .18s both}.sn-error__hint{position:relative;z-index:1;margin:0;max-width:36ch;font-size:13px;line-height:1.45;color:var(--glass-text-dim, #71717a);animation:sn-error-in .55s cubic-bezier(.22,1,.36,1) .22s both}.sn-error__actions{position:relative;z-index:1;margin-top:22px;display:flex;flex-wrap:wrap;gap:10px;justify-content:center;animation:sn-error-in .55s cubic-bezier(.22,1,.36,1) .28s both}.sn-error__home{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 20px;border:none;border-radius:999px;font-size:14px;font-weight:700;font-family:var(--font-hand, "Excalifont", cursive);text-decoration:none;color:#fff;background:var(--sn-brand);cursor:pointer;border:2px solid var(--sn-brand-deep);box-shadow:3px 4px color-mix(in srgb,var(--sn-brand) 35%,#000);transform:rotate(1deg);overflow:hidden;transition:transform .18s ease,filter .18s,box-shadow .18s}.sn-error__home-ink{position:absolute;top:-40%;right:-40%;bottom:-40%;left:-40%;background:radial-gradient(circle at 30% 20%,color-mix(in srgb,#fff 20%,transparent),transparent 45%);pointer-events:none}.sn-error__home>span:last-child{position:relative;z-index:1}.sn-error__home:hover{filter:brightness(1.06);transform:rotate(0) translateY(-2px);box-shadow:4px 6px color-mix(in srgb,var(--sn-brand) 30%,#000)}.sn-error__home:active{transform:translateY(1px);box-shadow:1px 2px color-mix(in srgb,var(--sn-brand) 35%,#000)}@media (prefers-reduced-motion: reduce){.sn-error__glow,.sn-error__page,.sn-error__slash,.sn-error__spark--a,.sn-error__spark--b,.sn-error__brand,.sn-error__sketch,.sn-error__eyebrow,.sn-error__title,.sn-error__detail,.sn-error__hint,.sn-error__actions{animation:none!important}}.sn-nav{display:flex;align-items:center;justify-content:space-between;padding:0 28px;height:48px;position:fixed;top:0;left:0;right:0;z-index:100;background:var(--glass-surface);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);border-bottom:1px solid var(--glass-border)}.sn-nav__spacer{height:48px;flex-shrink:0}.sn-nav__brand{display:flex;align-items:center;gap:7px;text-decoration:none;font-weight:700;font-size:15px;letter-spacing:-.3px;color:var(--glass-text)}.sn-nav__brand svg{stroke:var(--sn-brand)}.sn-nav__right{display:flex;align-items:center;gap:8px}.sn-nav__icon-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:1.5px solid var(--glass-border);border-radius:42% 58% 48% 52%/52% 42% 58% 48%;cursor:pointer;transition:background .15s,color .15s,border-color .15s,transform .15s;font-size:14px;background:transparent;color:var(--glass-text-dim);transform:rotate(-1deg)}.sn-nav__icon-btn:hover{background:color-mix(in srgb,var(--sn-brand) 10%,transparent);border-color:color-mix(in srgb,var(--sn-brand) 35%,transparent);color:var(--glass-text);transform:rotate(0)}.sn-nav__theme-toggle svg{display:block;transition:transform .25s cubic-bezier(.22,1,.36,1)}html.dc-theme-revealing .sn-nav__theme-toggle svg{animation:dc-theme-icon-sketch .52s cubic-bezier(.22,1,.36,1)}.sn-nav__share{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 12px 0 10px;border:2px solid color-mix(in srgb,var(--sn-brand) 55%,transparent);border-radius:999px;background:color-mix(in srgb,var(--sn-brand) 12%,transparent);color:var(--sn-brand);font-family:var(--font-hand, "Excalifont", cursive);font-size:13px;font-weight:700;cursor:pointer;transform:rotate(1deg);box-shadow:2px 2px color-mix(in srgb,var(--sn-brand) 18%,transparent);transition:transform .18s ease,background .18s,border-color .18s,color .18s,box-shadow .18s}.sn-nav__share:hover{transform:rotate(0) translateY(-1px);background:color-mix(in srgb,var(--sn-brand) 18%,transparent);box-shadow:3px 3px color-mix(in srgb,var(--sn-brand) 22%,transparent)}.sn-nav__share:active{transform:translateY(1px);box-shadow:1px 1px color-mix(in srgb,var(--sn-brand) 18%,transparent)}.sn-nav__share.is-copied{color:#fff;background:var(--sn-brand);border-color:var(--sn-brand-deep);animation:sn-share-pop .45s cubic-bezier(.22,1,.36,1)}.sn-nav__share-icon{display:inline-flex;align-items:center;justify-content:center}.sn-nav__share-label{line-height:1}@keyframes sn-share-pop{0%{transform:scale(.92) rotate(1deg)}55%{transform:scale(1.06) rotate(-1deg)}to{transform:scale(1) rotate(0)}}.sn-hero{width:100%;height:300px;background-size:cover;background-position:center;position:relative;z-index:1}.sn-hero__overlay{position:absolute;top:0;right:0;bottom:0;left:0}:is(.sn-page--dark,html[data-theme=dark]) .sn-hero__overlay{background:linear-gradient(to bottom,transparent 40%,var(--page-bg))}:is(.sn-page--light,html[data-theme=light]) .sn-hero__overlay{background:linear-gradient(to bottom,transparent 40%,var(--page-bg))}.sn-content-wrap{position:relative;z-index:1;flex:1 0 auto;display:block;width:100%;min-height:0}.sn-article{max-width:720px;margin:0 auto;padding:36px 24px 16px}.sn-article__title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px 18px;margin-bottom:10px}.sn-article__title{font-family:var(--font-hand, "Excalifont", cursive);font-size:34px;font-weight:700;line-height:1.28;letter-spacing:.03em;margin:0;color:var(--glass-text);flex:1;min-width:0;transition:color .35s cubic-bezier(.22,1,.36,1)}:is(.sn-page--light,html[data-theme=light]) .sn-article__title{color:#111827}.sn-article__title.is-liked{color:var(--sn-accent)}:is(.sn-page--light,html[data-theme=light]) .sn-article__title.is-liked{color:color-mix(in srgb,var(--sn-accent) 88%,#9a3412)}.sn-article__like{flex-shrink:0;padding-top:2px}.sn-sketch-tags{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 14px}.sn-tag,.sn-sketch-tag{display:inline-flex;align-items:center;font-family:var(--font-hand, "Excalifont", cursive);font-size:12px;font-weight:650;padding:3px 10px 4px;letter-spacing:.02em;color:var(--sn-brand);background:color-mix(in srgb,var(--sn-brand) 9%,transparent);border:2px solid color-mix(in srgb,var(--sn-brand) 45%,transparent);border-radius:46% 54% 50% 50%/50% 45% 55% 50%;transform:rotate(-1.2deg)}.sn-tag:nth-child(2n),.sn-sketch-tag:nth-child(2n){transform:rotate(1.4deg);border-radius:52% 48% 46% 54%/48% 52%}.sn-tag:nth-child(3n),.sn-sketch-tag:nth-child(3n){transform:rotate(-.6deg);border-radius:48% 52% 54% 46%/46% 48% 52% 54%}.sn-article__meta-sub{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:13px;color:var(--glass-text-dim);margin-bottom:0}.sn-article__author{display:inline-flex;align-items:center;gap:8px;min-width:0}.sn-article__avatar{width:26px;height:26px;border-radius:42% 58% 48% 52%/52% 42% 58% 48%;overflow:hidden;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-hand, "Excalifont", cursive);font-size:12px;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--sn-brand-soft),var(--sn-brand));border:1.5px solid color-mix(in srgb,var(--sn-brand) 35%,transparent);transform:rotate(-2deg)}.sn-article__avatar img{width:100%;height:100%;object-fit:cover;display:block}.sn-article__author-name{font-family:var(--font-hand, "Excalifont", cursive);font-weight:700;color:var(--glass-text);letter-spacing:.01em}.sn-article__meta-dot{opacity:.55;line-height:1}.sn-article__meta-chip{display:inline-flex;align-items:center;gap:5px;color:var(--glass-text-dim)}.sn-article__meta-chip svg{flex-shrink:0;opacity:.85;color:var(--sn-brand)}.sn-content{font-family:var(--font-hand, "Excalifont", cursive);font-size:15px;line-height:1.65;color:var(--glass-text);max-width:720px;margin:0 auto;padding:0 24px 8px;letter-spacing:.02em;width:100%;box-sizing:border-box}:is(.sn-page--light,html[data-theme=light]) .sn-content{color:#374151}.sn-prose h1,.sn-prose h2,.sn-prose h3,.sn-prose h4{font-family:var(--font-hand, "Excalifont", cursive)}.sn-prose h1{font-size:22px;font-weight:700;margin:28px 0 10px;letter-spacing:.02em;color:var(--glass-text)}.sn-prose h2{font-size:18px;font-weight:700;margin:24px 0 8px;letter-spacing:.02em;color:var(--glass-text)}.sn-prose h3{font-size:16px;font-weight:650;margin:20px 0 6px;color:var(--glass-text)}:is(.sn-page--light,html[data-theme=light]) .sn-prose h1,:is(.sn-page--light,html[data-theme=light]) .sn-prose h2,:is(.sn-page--light,html[data-theme=light]) .sn-prose h3{color:#111827}.sn-prose p{margin:0 0 16px}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) strong{font-family:var(--font-hand, "Excalifont", cursive);font-weight:700;color:var(--sn-brand);letter-spacing:.02em}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) em{font-family:var(--font-hand, "Excalifont", cursive);font-style:italic;letter-spacing:.03em}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) u{text-decoration:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='4' viewBox='0 0 14 4'%3E%3Cpath d='M0 2.6 Q3.5 0.4 7 2.6 T14 2.6' stroke='%236965db' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:repeat-x;background-position:0 calc(100% - 1px);background-size:14px 4px;padding-bottom:2px}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) s{text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--sn-brand) 55%,transparent);text-decoration-thickness:2px;color:var(--glass-text-dim, var(--text-tertiary))}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) a{color:var(--sn-brand);text-decoration:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='4' viewBox='0 0 14 4'%3E%3Cpath d='M0 2.6 Q3.5 0.4 7 2.6 T14 2.6' stroke='%23818cf8' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:repeat-x;background-position:0 calc(100% - 1px);background-size:14px 4px;padding-bottom:2px;transition:color .15s}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) a:hover{color:var(--sn-brand-soft)}.sn-prose a{color:var(--sn-brand);text-decoration:none}:is(.sn-page--dark,html[data-theme=dark]) .sn-prose strong{color:var(--sn-brand)}:is(.sn-page--light,html[data-theme=light]) .sn-prose strong{color:#5b21b6}.sn-prose blockquote{border-left:none;padding:12px 18px 12px 22px;margin:20px 0;border-radius:0 10px 10px 0;background:color-mix(in srgb,var(--sn-brand) 6%,transparent);font-style:italic;color:var(--glass-text-dim);position:relative}.sn-prose blockquote p:last-child{margin-bottom:0}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose){counter-reset:dc-sketch-ol}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) ul:not([data-type=taskList]):not(:has(>li>input[type=checkbox])){list-style:none;padding-left:0;margin:14px 0}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) ul:not([data-type=taskList]):not(:has(>li>input[type=checkbox]))>li{position:relative;padding-left:1.55em;margin:6px 0}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) ul:not([data-type=taskList]):not(:has(>li>input[type=checkbox]))>li:before{content:"";position:absolute;left:.1em;top:.52em;width:8px;height:8px;border:1.85px solid var(--sketch-stroke);border-radius:42% 58% 52% 48%/48% 42% 58% 52%;transform:rotate(-14deg);opacity:.9}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) ul:not([data-type=taskList]) ul>li:before{width:6px;height:6px;top:.58em;border-style:dashed;border-width:1.6px;transform:rotate(8deg)}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) ol{list-style:none;padding-left:0;margin:14px 0;counter-reset:dc-sketch-ol}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) ol>li{counter-increment:dc-sketch-ol;position:relative;padding-left:2.35em;margin:8px 0}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) ol>li:before{content:counter(dc-sketch-ol);position:absolute;left:0;top:.02em;width:1.55em;height:1.55em;display:flex;align-items:center;justify-content:center;font-family:var(--font-hand, "Excalifont", cursive);font-weight:700;font-size:.88em;line-height:1;color:var(--sn-brand);letter-spacing:0;border:2px solid var(--sketch-stroke);border-radius:46% 54% 50% 50%/50% 45% 55% 50%;transform:rotate(-5deg);box-sizing:border-box;opacity:.95}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) ol>li:nth-child(3n+2):before{transform:rotate(4deg);border-radius:52% 48% 46% 54%/48% 52%}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) ol>li:nth-child(3n):before{transform:rotate(-2deg);border-radius:48% 52% 54% 46%/46% 48% 52% 54%}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) ol ol>li:before{width:1.35em;height:1.35em;font-size:.82em;border-style:dashed;border-width:1.75px}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) li p{margin:0}:is(.sn-prose,.markdown-viewer__content.sn-prose) ul:has(>li>input[type=checkbox]){list-style:none;padding-left:2px;margin:14px 0}:is(.sn-prose,.markdown-viewer__content.sn-prose) ul:has(>li>input[type=checkbox])>li{display:flex;align-items:flex-start;gap:8px;margin:6px 0}:is(.sn-prose,.markdown-viewer__content.sn-prose) ul:has(>li>input[type=checkbox]) input[type=checkbox]{flex-shrink:0;margin-top:3px}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) ul[data-type=taskList] input[type=checkbox],:is(.sn-prose,.markdown-viewer__content.sn-prose) ul:has(>li>input[type=checkbox]) input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:16px;height:16px;margin:0;border:2px solid var(--sketch-stroke);border-radius:42% 58% 50% 50%/50% 45% 55% 50%;background:transparent;cursor:pointer;flex-shrink:0;position:relative}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) ul[data-type=taskList] input[type=checkbox]:checked,:is(.sn-prose,.markdown-viewer__content.sn-prose) ul:has(>li>input[type=checkbox]) input[type=checkbox]:checked{background:color-mix(in srgb,var(--sn-brand) 18%,transparent)}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) ul[data-type=taskList] input[type=checkbox]:checked:after,:is(.sn-prose,.markdown-viewer__content.sn-prose) ul:has(>li>input[type=checkbox]) input[type=checkbox]:checked:after{content:"✓";position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-hand, "Excalifont", cursive);font-size:11px;font-weight:700;color:var(--sn-brand);line-height:1}.sn-prose ul,.sn-prose ol{padding-left:0;margin:14px 0}.sn-prose li{margin:6px 0}.sn-prose li::marker{content:none}.sn-prose code:not(pre code){font-family:JetBrains Mono,monospace;padding:2px 6px;border-radius:5px;font-size:.85em;background:var(--glass-bg);border:1px solid var(--glass-border);color:#c084fc}:is(.sn-page--light,html[data-theme=light]) .sn-prose code:not(pre code){color:#7c3aed}.sn-prose img{max-width:100%;border-radius:10px;margin:0;display:block}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) hr{border:none;height:18px;margin:28px 0;padding:0;background:transparent;position:relative;overflow:visible}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) hr:after{content:"";display:block;position:absolute;left:0;right:0;top:50%;height:2px;transform:translateY(-50%) rotate(-.35deg);background:repeating-linear-gradient(90deg,var(--sketch-stroke) 0 5px,transparent 5px 12px);opacity:.78}.sketch-hr-wrap{position:relative;height:18px;margin:28px 0;border:none;background:transparent}.sketch-hr-wrap hr{visibility:hidden;height:0;margin:0;padding:0}.sketch-hr-wrap hr:after{display:none}.sketch-img-wrap{display:block;width:fit-content;max-width:100%;margin:20px 0;padding:4px}.sketch-img-wrap img{margin:0;border-radius:8px;display:block;max-width:100%}.sn-table-wrapper,.ne-tiptap .tiptap.sn-prose .tableWrapper{position:relative;overflow-x:auto;margin:16px 0;padding:2px;border:none;border-radius:0;background:transparent;--sketch-radius: 10;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}.sn-table-wrapper::-webkit-scrollbar,.ne-tiptap .tiptap.sn-prose .tableWrapper::-webkit-scrollbar{height:6px}.sn-table-wrapper::-webkit-scrollbar-thumb,.ne-tiptap .tiptap.sn-prose .tableWrapper::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:999px}.sn-prose table,.sn-table-wrapper table,.ne-tiptap .tiptap.sn-prose table{width:100%;border-collapse:collapse;border-spacing:0;margin:0;font-family:var(--font-hand, "Excalifont", cursive);font-size:13px;line-height:1.55;border:none;border-radius:0;overflow:hidden;background:color-mix(in srgb,var(--bg-tertiary) 40%,transparent)}.sn-prose th,.sn-prose td,.sn-table-wrapper th,.sn-table-wrapper td,.ne-tiptap .tiptap.sn-prose th,.ne-tiptap .tiptap.sn-prose td{padding:8px 12px;text-align:left;vertical-align:top;border:none;font-family:var(--font-hand, "Excalifont", cursive);font-size:13px}.sketch-frame--table th,.sketch-frame--table td{border:none!important}.sn-prose th,.sn-table-wrapper th,.ne-tiptap .tiptap.sn-prose th{background:color-mix(in srgb,var(--sn-brand) 8%,transparent);color:var(--text-primary);font-family:var(--font-hand, "Excalifont", cursive);font-weight:600;text-transform:none;letter-spacing:.02em;white-space:normal}.sn-prose td,.sn-table-wrapper td,.ne-tiptap .tiptap.sn-prose td{color:var(--text-secondary)}.sn-prose tr:hover td,.sn-table-wrapper tr:hover td,.ne-tiptap .tiptap.sn-prose tbody tr:hover td{background:var(--bg-hover)}.ne-tiptap .tiptap.sn-prose th,.ne-tiptap .tiptap.sn-prose td{min-width:80px;border:none!important}.sketch-frame--table.ne-tiptap .tiptap.sn-prose th,.sketch-frame--table.ne-tiptap .tiptap.sn-prose td,.ne-tiptap .tiptap.sn-prose .sketch-frame--table th,.ne-tiptap .tiptap.sn-prose .sketch-frame--table td{border:none!important}.ne-tiptap .tiptap.sn-prose .selectedCell{background:color-mix(in srgb,var(--sn-brand) 12%,transparent)!important}.ne-tiptap .tiptap.sn-prose .selectedCell:after{background:color-mix(in srgb,var(--sn-brand) 16%,transparent)!important}.sn-prose input[type=checkbox]{margin-right:0}.sn-mermaid{margin:24px 0;border-radius:12px;padding:16px;overflow-x:auto;text-align:center;background:var(--glass-bg);border:none}.sn-mermaid.sketch-frame--media{border:none}.sn-mermaid svg{max-width:100%}.sn-mermaid-err{color:#ef4444;font-size:12px}.sn-codeblock{position:relative;margin:20px 0;padding:0;border:none;border-radius:0;overflow:visible;background:var(--md-code-surface, var(--bg-tertiary));box-shadow:none;--sketch-radius: 12}html[data-theme=dark]{--md-code-surface: #1a1a1a;--md-code-label: #e8957a}html[data-theme=light]{--md-code-surface: #ffffff;--md-code-label: #c2410c}.sn-page--dark{--md-code-surface: #1a1a1a;--md-code-label: #e8957a}.sn-page--light{--md-code-surface: #ffffff;--md-code-label: #c2410c}.sn-codeblock__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:none;background:transparent}.sketch-frame--code .sn-codeblock__header{border-bottom:none!important}.sketch-frame--code .sn-codeblock__output{border-top:none!important}.sketch-frame--code .sn-codeblock__lang{background:transparent;border:none}.sn-codeblock__lang{display:inline-flex;align-items:center;min-height:22px;padding:2px 10px;border-radius:0;font-family:var(--font-hand, "Excalifont", cursive);font-size:11px;text-transform:uppercase;font-weight:600;letter-spacing:.06em;color:var(--text-secondary);background:transparent}.sn-codeblock__actions{display:flex;gap:6px;align-items:center}.sn-codeblock__btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:28px;padding:0 10px;border:none;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;transition:opacity .15s,background .15s,color .15s;background:transparent;color:var(--text-tertiary)}.sn-codeblock__btn:hover{color:var(--text-secondary);background:var(--bg-hover)}.sn-codeblock__btn--icon{width:30px;min-width:30px;height:30px;padding:0;opacity:.65}.sn-codeblock__btn--icon:hover{opacity:1}.sn-codeblock__btn--success{color:var(--accent)!important;opacity:1}.sn-codeblock__btn-icon{font-size:12px;line-height:1}.sn-sketch-copy{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:8px;background:transparent;color:var(--text-tertiary);cursor:pointer;transition:color .15s,background .15s}.sn-sketch-copy:hover{color:var(--text-secondary);background:color-mix(in srgb,var(--sketch-stroke, var(--text-primary)) 8%,transparent)}.sn-sketch-copy--done{color:var(--accent)!important}.sn-sketch-copy__icon{display:block;opacity:.92}.sn-sketch-copy__check{font-family:var(--font-hand, "Excalifont", cursive);font-size:14px;font-weight:650;line-height:1}.sn-codeblock__btn--run{color:var(--accent)!important;border:1px solid color-mix(in srgb,var(--accent) 25%,transparent)!important;background:color-mix(in srgb,var(--accent) 8%,transparent)!important;opacity:1}.sn-codeblock__btn--run:hover{background:color-mix(in srgb,var(--accent) 14%,transparent)!important}.sn-codeblock__btn:disabled{opacity:.4;cursor:not-allowed}.sn-codeblock pre{margin:0;padding:18px 20px 20px;overflow-x:auto;font-size:13px;line-height:1.75;font-family:var(--font-mono, "JetBrains Mono", monospace);background:transparent;color:var(--text-primary);scrollbar-width:thin}.sn-codeblock pre::-webkit-scrollbar{height:6px}.sn-codeblock pre::-webkit-scrollbar-track{background:transparent}.sn-codeblock pre::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:999px}.sn-codeblock code{background:none!important;padding:0!important;border:none!important;font-family:inherit!important}.sn-codeblock__label{color:var(--md-code-label, #e8957a);font-weight:500}.sn-codeblock__output{border-top:none;background:color-mix(in srgb,var(--bg-primary) 40%,transparent)}.sn-codeblock__output--error{background:var(--danger-bg)!important}.sn-codeblock__output-header{padding:8px 14px 0;font-family:var(--font-ui);font-size:10px;color:var(--text-tertiary);font-weight:700;text-transform:uppercase;letter-spacing:.08em}.sn-codeblock__output--error .sn-codeblock__output-header{color:var(--danger)}.sn-codeblock__output pre{margin:0;padding:10px 14px 14px;font-size:12px;color:var(--text-secondary);white-space:pre-wrap;max-height:200px;overflow-y:auto}.sn-codeblock__output--error pre{color:var(--danger)}html[data-theme=dark] .sn-codeblock .hljs,.sn-page--dark .sn-codeblock .hljs{background:transparent!important;color:#d4d4d8!important}html[data-theme=dark] .sn-codeblock .hljs-keyword,.sn-page--dark .sn-codeblock .hljs-keyword{color:#c084fc}html[data-theme=dark] .sn-codeblock .hljs-string,.sn-page--dark .sn-codeblock .hljs-string{color:#86efac}html[data-theme=light] .sn-codeblock .hljs,.sn-page--light .sn-codeblock .hljs{background:transparent!important;color:#1f2937!important}html[data-theme=light] .sn-codeblock .hljs-keyword{color:#7c3aed}html[data-theme=light] .sn-codeblock .hljs-built_in,html[data-theme=light] .sn-codeblock .hljs-type{color:#0891b2}html[data-theme=light] .sn-codeblock .hljs-literal{color:#dc2626}html[data-theme=light] .sn-codeblock .hljs-number,html[data-theme=light] .sn-codeblock .hljs-string,html[data-theme=light] .sn-codeblock .hljs-regexp,html[data-theme=light] .sn-codeblock .hljs-symbol{color:#059669}html[data-theme=light] .sn-codeblock .hljs-title{color:#2563eb}html[data-theme=light] .sn-codeblock .hljs-comment,html[data-theme=light] .sn-codeblock .hljs-doctag,html[data-theme=light] .sn-codeblock .hljs-meta{color:#9ca3af;font-style:italic}html[data-theme=light] .sn-codeblock .hljs-tag,html[data-theme=light] .sn-codeblock .hljs-name{color:#dc2626}html[data-theme=light] .sn-codeblock .hljs-attr{color:#d97706}html[data-theme=light] .sn-codeblock .hljs-variable{color:#dc2626}.sn-section{animation:sn-section-in .4s ease-out both}@keyframes sn-section-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.sn-load-more{text-align:center;padding:16px 0}.sn-load-more__sentinel{height:1px;width:100%}.sn-engage{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px}.sn-engage__comments{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;border:1px solid var(--glass-border);background:transparent;color:var(--glass-text);font-family:var(--font-hand, "Excalifont", cursive);font-size:13px;font-weight:700;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.sn-engage__comments:hover{border-color:color-mix(in srgb,var(--sn-brand) 50%,transparent);background:color-mix(in srgb,var(--sn-brand) 8%,transparent);color:var(--sn-brand)}.sn-article-like{position:relative;display:inline-flex;align-items:center;gap:7px;padding:4px 2px;border:none;border-radius:0;background:transparent;color:var(--glass-text-dim);font-family:var(--font-hand, "Excalifont", cursive);font-size:14px;font-weight:700;cursor:pointer;overflow:visible;box-shadow:none;transform:none;transition:color .35s cubic-bezier(.22,1,.36,1),transform .35s cubic-bezier(.22,1,.36,1)}.sn-article-like:hover{color:var(--sn-accent);background:transparent;border:none;box-shadow:none;transform:translateY(-1px)}.sn-article-like.is-liked{color:var(--sn-accent);background:transparent;border:none;box-shadow:none;transform:none}.sn-article-like.is-animating{animation:sn-article-like-btn-bounce .62s cubic-bezier(.22,1,.36,1)}.sn-article-like.is-unliking{animation:sn-article-like-btn-settle .42s cubic-bezier(.22,1,.36,1)}@keyframes sn-article-like-btn-bounce{0%{transform:scale(.92)}40%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes sn-article-like-btn-settle{0%{transform:scale(1.08)}to{transform:scale(1)}}.sn-article-like__hand{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:auto;height:auto;border:none;border-radius:0;background:transparent;overflow:visible;color:inherit}.sn-article-like.is-liked .sn-article-like__hand{background:transparent;border:none;color:var(--sn-accent)}.sn-article-like__hand svg,.sn-thumb-icon{position:relative;z-index:1;display:block;width:22px;height:22px;color:inherit;transition:transform .4s cubic-bezier(.22,1,.36,1),color .35s ease}.sn-thumb-icon__outline{transition:opacity .35s ease}.sn-thumb-icon__fill{opacity:0;transform-origin:50% 60%;transform:scale(.55);transition:opacity .38s cubic-bezier(.22,1,.36,1),transform .45s cubic-bezier(.22,1,.36,1)}.sn-thumb-icon.is-filled .sn-thumb-icon__fill{opacity:1;transform:scale(1)}.sn-thumb-icon.is-filled .sn-thumb-icon__outline{opacity:.35}.sn-article-like.is-animating .sn-article-like__hand svg{animation:sn-article-like-hand-pop .72s cubic-bezier(.22,1,.36,1)}.sn-article-like.is-unliking .sn-article-like__hand svg{animation:sn-article-like-hand-settle .42s cubic-bezier(.22,1,.36,1)}@keyframes sn-article-like-hand-pop{0%{transform:scale(.55) rotate(-14deg)}38%{transform:scale(1.42) rotate(10deg)}62%{transform:scale(.94) rotate(-3deg)}to{transform:scale(1.08) rotate(0)}}@keyframes sn-article-like-hand-settle{0%{transform:scale(1.12) rotate(0)}to{transform:scale(1) rotate(0)}}.sn-article-like.is-liked .sn-article-like__hand svg{transform:scale(1.08);color:var(--sn-accent)}.sn-article-like__label{position:relative;z-index:1;font-variant-numeric:tabular-nums;transition:color .35s ease}.sn-article-like__ring{position:absolute;left:10px;top:50%;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;border:2px solid var(--sn-accent);opacity:0;pointer-events:none}.sn-article-like.is-animating .sn-article-like__ring{animation:sn-article-like-ring .7s ease-out}@keyframes sn-article-like-ring{0%{transform:scale(.4);opacity:.9}to{transform:scale(4.8);opacity:0}}.sn-article-like__burst{position:absolute;left:12px;top:50%;width:0;height:0;pointer-events:none;z-index:0}.sn-article-like__burst span{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--sn-accent);animation:sn-article-like-spark .7s ease-out forwards}.sn-article-like__burst span:nth-child(1){--dx: 22px;--dy: -20px;background:var(--sn-accent)}.sn-article-like__burst span:nth-child(2){--dx: -18px;--dy: -22px;background:var(--sn-brand);animation-delay:.02s}.sn-article-like__burst span:nth-child(3){--dx: 26px;--dy: 8px;background:color-mix(in srgb,var(--sn-accent) 70%,#ea580c);animation-delay:.04s}.sn-article-like__burst span:nth-child(4){--dx: -24px;--dy: 10px;background:var(--sn-brand-soft);animation-delay:.03s}.sn-article-like__burst span:nth-child(5){--dx: 10px;--dy: 24px;background:color-mix(in srgb,var(--sn-accent) 55%,#fff);animation-delay:.05s}.sn-article-like__burst span:nth-child(6){--dx: -8px;--dy: -26px;background:color-mix(in srgb,var(--sn-accent) 65%,#fb923c);animation-delay:.01s}@keyframes sn-article-like-spark{0%{transform:translate(0) scale(.4);opacity:1}to{transform:translate(var(--dx),var(--dy)) scale(0);opacity:0}}@media (prefers-reduced-motion: reduce){.sn-article-like.is-animating,.sn-article-like.is-unliking,.sn-article-like.is-animating .sn-article-like__hand svg,.sn-article-like.is-unliking .sn-article-like__hand svg,.sn-article-like.is-animating .sn-article-like__ring,.sn-article-like__burst span,.sn-article__title,.sn-thumb-icon__fill,.sn-thumb-icon__outline{animation:none;transition:none}.sn-thumb-icon.is-filled .sn-thumb-icon__fill{transform:none}}.sn-comments-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10040;border:none;padding:0;margin:0;background:color-mix(in srgb,#0a0a0f 42%,transparent);backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px);opacity:0;pointer-events:none;transition:opacity .55s cubic-bezier(.22,1,.36,1),backdrop-filter .55s cubic-bezier(.22,1,.36,1),-webkit-backdrop-filter .55s cubic-bezier(.22,1,.36,1);cursor:pointer}.sn-comments-backdrop.is-open{opacity:1;pointer-events:auto;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.sn-comments-drawer{position:fixed;top:0;right:0;z-index:10050;width:min(420px,100vw);height:100dvh;max-height:100dvh;display:flex;flex-direction:column;background:var(--page-bg, #0a0a0f);border-left:2px solid color-mix(in srgb,var(--sn-brand) 35%,var(--glass-border));box-shadow:-18px 0 50px color-mix(in srgb,#000 24%,transparent);transform:translate3d(100%,0,0);opacity:.92;border-radius:0;transition:transform .58s cubic-bezier(.16,1,.3,1),opacity .45s cubic-bezier(.22,1,.36,1),box-shadow .45s ease;pointer-events:none;padding:0;will-change:transform,opacity}.sn-comments-drawer.is-open{transform:translateZ(0);opacity:1;pointer-events:auto;box-shadow:-22px 0 60px color-mix(in srgb,#000 28%,transparent)}.sn-comments-drawer.is-open .sn-comments-drawer__head{animation:sn-drawer-fade .5s cubic-bezier(.16,1,.3,1) .08s both}.sn-comments-drawer.is-open .sn-comments__composer{animation:sn-drawer-fade .52s cubic-bezier(.16,1,.3,1) .14s both}.sn-comments-drawer.is-open .sn-comments__list{animation:sn-drawer-fade .55s cubic-bezier(.16,1,.3,1) .2s both}@keyframes sn-drawer-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.sn-comments-backdrop,.sn-comments-drawer{transition-duration:.01ms!important}.sn-comments-drawer.is-open .sn-comments-drawer__head,.sn-comments-drawer.is-open .sn-comments__composer,.sn-comments-drawer.is-open .sn-comments__list{animation:none}}.sn-comments-drawer__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(14px + env(safe-area-inset-top,0px)) 14px 14px 16px;border-bottom:2px dashed color-mix(in srgb,var(--sn-brand) 22%,transparent);flex-shrink:0;position:relative;z-index:2;background:var(--page-bg, #0a0a0f)}.sn-comments-drawer__close{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1.5px solid color-mix(in srgb,var(--sn-brand) 30%,var(--glass-border));border-radius:40% 60% 45% 55%/55% 40% 60% 45%;background:color-mix(in srgb,var(--sn-brand) 8%,transparent);color:var(--glass-text);cursor:pointer;flex-shrink:0;transform:rotate(2deg);transition:color .15s,border-color .15s,background .15s,transform .15s}.sn-comments-drawer__close:hover{background:color-mix(in srgb,var(--sn-brand) 16%,transparent);border-color:color-mix(in srgb,var(--sn-brand) 50%,transparent);color:var(--sn-brand);transform:rotate(0)}.sn-comments-drawer .sn-comments__composer{margin:0;padding:12px 16px;border-bottom:1px solid var(--glass-border);flex-shrink:0}.sn-comments-drawer .sn-comments__list{flex:1;overflow-y:auto;padding:4px 16px 24px;overscroll-behavior:contain;scrollbar-width:thin}.sn-comments-fab{position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:max(20px,calc(12px + env(safe-area-inset-bottom,0px)));z-index:10030;display:inline-flex;align-items:center;gap:8px;padding:11px 16px 11px 14px;border:2px solid var(--sn-brand-deep);border-radius:48% 52% 50% 50%/52% 48%;background:var(--sn-brand);color:#fff;font-family:var(--font-hand, "Excalifont", cursive);font-size:14px;font-weight:700;letter-spacing:.01em;cursor:pointer;box-shadow:3px 4px color-mix(in srgb,var(--sn-brand) 35%,#000);transform:rotate(-1.5deg);transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .3s,opacity .35s cubic-bezier(.22,1,.36,1),filter .2s;overflow:hidden;isolation:isolate;--sn-brand: var(--brand-purple, #6965db);--sn-brand-deep: color-mix(in srgb, var(--brand-purple, #6965db) 82%, #000)}.sn-comments-fab:hover{transform:rotate(0) translateY(-3px);filter:brightness(1.05);box-shadow:4px 6px color-mix(in srgb,var(--sn-brand) 30%,#000)}.sn-comments-fab:active{transform:rotate(-1deg) translateY(1px);box-shadow:1px 2px color-mix(in srgb,var(--sn-brand) 35%,#000)}.sn-comments-fab.is-open{opacity:0;pointer-events:none;transform:rotate(-4deg) scale(.82) translateY(6px)}.sn-comments-fab__label{line-height:1}.sn-comments-fab__count{min-width:1.35em;padding:2px 7px;border-radius:999px;border:1.5px dashed color-mix(in srgb,#fff 55%,transparent);background:color-mix(in srgb,#000 18%,transparent);font-variant-numeric:tabular-nums;font-size:12px;line-height:1.2}.sn-comments__title-wrap{display:flex;align-items:center;gap:10px}.sn-comments__mark{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;color:var(--sn-brand);background:color-mix(in srgb,var(--sn-brand) 10%,transparent);border-radius:10px}.sn-comments__eyebrow{margin:0;font-family:var(--font-hand, "Excalifont", cursive);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--sn-accent)}.sn-comments__title{margin:2px 0 0;font-family:var(--font-hand, "Excalifont", cursive);font-size:17px;font-weight:700;color:var(--glass-text)}.sn-comments__hint{margin:0;max-width:240px;font-size:12px;line-height:1.4;color:var(--glass-text-dim);text-align:right}.sn-comments__composer{margin-bottom:18px;padding:12px 0 14px;border-bottom:1px solid var(--glass-border)}.sn-comments__composer--flash{animation:sn-comment-post .55s cubic-bezier(.22,1,.36,1)}@keyframes sn-comment-post{0%{opacity:.85}to{opacity:1}}.sn-comments__composer-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.sn-comment__name-wrap{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.sn-comment__name-label{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--glass-text-dim)}.sn-comment__name-field{width:100%;max-width:240px;padding:2px 0 4px;border:none;border-bottom:2px dashed color-mix(in srgb,var(--sn-brand) 35%,transparent);border-radius:0;background:transparent;color:var(--glass-text, #18181b);font-family:var(--font-hand, "Excalifont", cursive);font-size:15px;font-weight:700;outline:none;caret-color:var(--sn-brand)}.sn-comment__name-field::placeholder{color:var(--glass-text-dim);font-weight:600;opacity:.75}.sn-comment__name-field:focus{border-bottom-style:solid;border-bottom-color:var(--sn-brand)}.sn-comment__name-field--static{border-bottom-style:solid;border-bottom-color:transparent;cursor:default;display:block}.sn-comments__signin{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:4px 0 8px}.sn-comments__signin-title{margin:0;font-family:var(--font-hand, "Excalifont", cursive);font-size:15px;font-weight:700;color:var(--glass-text)}.sn-comments__signin-copy{margin:0;font-size:13px;line-height:1.45;color:var(--glass-text-dim)}.sn-comments__error{margin:0;font-size:12px;color:#ef4444}.sn-comments__composer-body{display:flex;flex-direction:column;gap:8px}.sn-comment__textarea{width:100%;min-height:64px;resize:vertical;padding:10px 12px;border-radius:12px 14px 11px 13px/13px 11px 14px 12px;border:1.5px solid color-mix(in srgb,var(--sn-brand) 28%,var(--glass-border));background:transparent;color:var(--glass-text);font-family:var(--font-hand, "Excalifont", cursive);font-size:14px;line-height:1.45;outline:none;transition:border-color .15s}.sn-comment__textarea:focus{border-color:var(--sn-brand)}.sn-comment__textarea::placeholder{color:var(--glass-text-dim);opacity:.85}.sn-comment__input{flex:1;padding:6px 10px;border-radius:8px;font-size:13px;font-family:var(--font-hand, "Excalifont", cursive);outline:none;background:transparent;border:1px solid var(--glass-border);color:var(--glass-text)}.sn-comment__input:focus{border-color:color-mix(in srgb,var(--sn-brand) 55%,transparent)}.sn-comment__input--name{margin:0;max-width:180px;font-weight:700}.sn-comments__reply-chip{display:inline-flex;align-items:center;gap:10px;align-self:flex-start;font-size:12px;color:var(--glass-text-dim)}.sn-comments__reply-chip strong{color:var(--sn-brand)}.sn-comments__reply-chip button{border:none;background:transparent;color:var(--glass-text-dim);font-size:12px;font-weight:700;cursor:pointer;font-family:inherit;text-decoration:underline;text-underline-offset:2px}.sn-comments__reply-chip button:hover{color:var(--glass-text)}.sn-comments__composer-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.sn-comments__shortcut{font-size:11px;color:var(--glass-text-dim);font-family:JetBrains Mono,ui-monospace,monospace}.sn-comment__post{display:inline-flex;align-items:center;gap:6px;min-width:5.75rem;justify-content:center;padding:7px 14px;border-radius:999px;border:2px solid var(--sn-brand-deep);background:var(--sn-brand);color:#fff;font-family:var(--font-hand, "Excalifont", cursive);font-size:13px;font-weight:700;cursor:pointer;box-shadow:2px 2px color-mix(in srgb,var(--sn-brand) 40%,#000);transform:rotate(1deg);transition:filter .15s,opacity .15s,transform .15s}.sn-comment__post:hover:not(:disabled){filter:brightness(1.06);transform:rotate(0) translateY(-1px)}.sn-comment__post:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.sn-comment__post.is-posting,.sn-comment__post.is-posting:disabled{opacity:1;cursor:wait;box-shadow:2px 2px color-mix(in srgb,var(--sn-brand) 40%,#000);transform:rotate(0);filter:none}.sn-comment__post-spin{color:#fff!important;flex-shrink:0;line-height:0}.sn-comment__post-spin .dc-spinner__svg{display:block}.sn-comment__post-spin .dc-spinner__slash{stroke:color-mix(in srgb,#fff 70%,var(--brand-accent, #f59e0b))}.sn-comment__textarea:disabled{opacity:.72;cursor:wait}.sn-comments__list{display:flex;flex-direction:column;gap:0}.sn-comments__empty{text-align:center;padding:24px 8px;color:var(--glass-text-dim)}.sn-comments__empty-sketch{width:100px;height:54px;margin:0 auto 8px;color:var(--sn-brand);display:block}.sn-comments__empty-title{margin:0 0 4px;font-family:var(--font-hand, "Excalifont", cursive);font-size:15px;font-weight:700;color:var(--glass-text)}.sn-comments__empty p{margin:0;font-size:13px}.sn-thread{padding:12px 0;border-bottom:1px solid color-mix(in srgb,var(--glass-border) 70%,transparent)}.sn-thread:last-child{border-bottom:none}.sn-comment{display:flex;gap:10px;padding:2px 0}.sn-comment--reply{padding-left:0}.sn-comment__avatar{width:30px;height:30px;flex-shrink:0;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,var(--sn-brand-soft),var(--sn-brand));color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-hand, "Excalifont", cursive);font-weight:700;font-size:12px;border:1.5px solid color-mix(in srgb,var(--sn-brand) 28%,transparent)}.sn-comment__avatar img{width:100%;height:100%;object-fit:cover;display:block}.sn-comment__avatar--reply,.sn-comment--reply .sn-comment__avatar{width:24px;height:24px;font-size:11px}.sn-comment__avatar--you{background:linear-gradient(135deg,var(--sn-accent),color-mix(in srgb,var(--sn-accent) 55%,#ea580c));border-color:color-mix(in srgb,var(--sn-accent) 40%,transparent)}.sn-comment__main{flex:1;min-width:0}.sn-comment__header{display:flex;align-items:baseline;gap:8px;margin-bottom:2px}.sn-comment__name{font-family:var(--font-hand, "Excalifont", cursive);font-weight:700;font-size:14px;color:var(--glass-text, #18181b)}:is(.sn-page--light,html[data-theme=light]) .sn-comment__name{color:#111827}.sn-comment__time{font-size:11px;color:var(--glass-text-dim)}.sn-comment__text{font-size:14px;line-height:1.45;margin:0 0 6px;word-wrap:break-word;color:var(--glass-text)}:is(.sn-page--light,html[data-theme=light]) .sn-comment__text{color:#374151}.sn-comment__mention{color:var(--sn-brand);font-weight:700;margin-right:4px}.sn-comment__actions{display:flex;align-items:center;gap:12px}.sn-comment__like{display:inline-flex;align-items:center;gap:5px;padding:0;border:none;background:transparent;color:var(--glass-text-dim);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;cursor:pointer;transition:color .3s ease}.sn-comment__like:hover{color:var(--sn-brand)}.sn-comment__like .sn-thumb-icon{width:15px;height:15px;flex-shrink:0}.sn-comment__like-count{line-height:1}.sn-comment__like--liked,.sn-comment__like--liked .sn-thumb-icon{color:var(--sn-accent)}.sn-comment__reply-btn{border:none;background:transparent;padding:0;color:var(--glass-text-dim);font-size:12px;font-weight:600;cursor:pointer;font-family:inherit}.sn-comment__reply-btn:hover{color:var(--sn-brand)}.sn-thread__replies-section{padding-left:40px;margin-top:4px}.sn-thread__toggle{display:inline-flex;align-items:center;gap:5px;padding:2px 0;border:none;font-size:12px;font-weight:600;cursor:pointer;color:var(--sn-brand);background:transparent}.sn-thread__toggle:hover{text-decoration:underline;text-underline-offset:2px}.sn-thread__replies{display:flex;flex-direction:column;gap:10px;margin-top:8px;padding-left:10px;border-left:2px solid color-mix(in srgb,var(--sn-brand) 18%,transparent)}@media (max-width: 640px){.sn-nav__share-label{display:none}.sn-nav__share{padding:0 10px}.sn-comments-drawer{width:100vw;height:min(92dvh,100dvh);max-height:min(92dvh,100dvh);top:auto;bottom:0;right:0;border-left:none;border-top:2px solid color-mix(in srgb,var(--sn-brand) 35%,var(--glass-border));transform:translate3d(0,100%,0);border-radius:18px 18px 0 0;box-shadow:0 -16px 48px color-mix(in srgb,#000 22%,transparent);transition:transform .56s cubic-bezier(.16,1,.3,1),opacity .42s cubic-bezier(.22,1,.36,1),box-shadow .42s ease}.sn-comments-drawer.is-open{transform:translateZ(0);opacity:1}.sn-comments-drawer__head{padding-top:14px}}.sn-footer{flex-shrink:0;margin-top:0;padding:0;position:relative;z-index:1;width:100%;box-sizing:border-box;background:var(--page-bg, #0a0a0f)}.sn-footer:before{content:"";display:block;width:100%;height:1px;background:var(--glass-border)}.sn-footer__inner{max-width:720px;margin:0 auto;padding:10px 24px max(10px,env(safe-area-inset-bottom,0px));display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;box-sizing:border-box;text-align:center;font-size:12px;line-height:1.35;color:var(--glass-text-dim)}.sn-footer a{color:var(--sn-brand);text-decoration:none;font-weight:600}.sn-footer a:hover{text-decoration:underline;text-underline-offset:2px}.sn-page .sn-comments-fab,body>.sn-comments-fab{bottom:max(20px,calc(12px + env(safe-area-inset-bottom,0px)))}.ne-preview{width:100%;box-sizing:border-box;padding:24px 32px;max-width:760px;margin:0 auto}.ne-preview--embedded{max-width:none;margin:0;padding:8px 48px 60px}.ne-preview--embedded .sn-content{max-width:none;margin:0;padding:0}[data-theme=light] .ne-preview--embedded .sn-content{color:#18181b}.sn-codeblock-nodeview{position:relative;margin:20px 0;padding:0;border:none;border-radius:0;overflow:visible;background:var(--md-code-surface, var(--bg-tertiary));--sketch-radius: 12}.sn-codeblock-nodeview .sn-codeblock__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:none;background:transparent;-webkit-user-select:none;user-select:none}.sn-codeblock-nodeview .sn-codeblock__lang{display:inline-flex;align-items:center;min-height:22px;padding:2px 10px;border-radius:0;font-family:var(--font-hand, "Excalifont", cursive);font-size:11px;text-transform:uppercase;font-weight:600;letter-spacing:.06em;color:var(--text-secondary);background:transparent}.sn-codeblock-nodeview .sn-codeblock__actions{display:flex;gap:6px}.sn-codeblock-nodeview .sn-codeblock__btn{display:inline-flex;align-items:center;justify-content:center;width:30px;min-width:30px;height:30px;padding:0;border:none;border-radius:6px;cursor:pointer;transition:opacity .15s,background .15s;background:transparent;color:var(--text-tertiary);opacity:.65}.sn-codeblock-nodeview .sn-codeblock__btn:hover{opacity:1;background:var(--bg-hover);color:var(--text-secondary)}.sn-codeblock-nodeview .sn-codeblock__btn--success{color:var(--accent)!important;opacity:1}.sn-codeblock-nodeview__code{margin:0!important;padding:18px 20px 20px!important;font-family:var(--font-mono, "JetBrains Mono", monospace)!important;font-size:13px!important;line-height:1.75!important;overflow-x:auto;background:transparent!important;color:var(--text-primary)!important;border:none!important;border-radius:0!important;box-shadow:none!important}.sn-codeblock-nodeview__code code{background:none!important;padding:0!important;border:none!important;color:inherit!important;font-family:inherit!important;font-size:inherit!important}.sn-codeblock-nodeview__code::-webkit-scrollbar{height:6px}.sn-codeblock-nodeview__code::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:999px}.ne-tiptap.sn-content{max-width:none;margin:0;padding:0}.ne-tiptap .tiptap.sn-prose{--glass-text: var(--text-primary);--glass-text-dim: var(--text-secondary);--glass-bg: var(--bg-tertiary);--glass-border: var(--border);color:var(--text-primary);font-family:var(--font-hand, "Excalifont", cursive);font-size:15px;line-height:1.65;letter-spacing:.02em}.ne-tiptap .tiptap.sn-prose h1,.ne-tiptap .tiptap.sn-prose h2,.ne-tiptap .tiptap.sn-prose h3,.ne-tiptap .tiptap.sn-prose h4{font-family:var(--font-hand, "Excalifont", cursive);color:var(--text-primary)}.ne-tiptap .tiptap.sn-prose h1{font-size:22px;font-weight:700;margin:28px 0 10px}.ne-tiptap .tiptap.sn-prose h2{font-size:18px;font-weight:700;margin:24px 0 8px}.ne-tiptap .tiptap.sn-prose h3{font-size:16px;font-weight:650;margin:20px 0 6px}.ne-tiptap .tiptap.sn-prose p{margin:0 0 10px}.ne-tiptap .tiptap.sn-prose blockquote{border-left:none;padding:8px 16px 8px 22px;margin:12px 0;border-radius:0 10px 10px 0;background:color-mix(in srgb,var(--sn-brand) 6%,transparent);font-style:normal;color:var(--text-secondary);position:relative}.ne-tiptap .tiptap.sn-prose blockquote:not(.sketch-frame):before{content:"";position:absolute;left:7px;top:10px;bottom:10px;width:3px;border-radius:2px;background:repeating-linear-gradient(180deg,var(--sn-brand) 0 4px,transparent 4px 8px);opacity:.85;transform:rotate(-1deg)}.ne-tiptap .tiptap.sn-prose blockquote p:last-child{margin-bottom:0}.ne-tiptap .tiptap.sn-prose ul[data-type=taskList]{list-style:none;padding-left:2px}.ne-tiptap .tiptap.sn-prose ul[data-type=taskList] li{display:flex;align-items:flex-start;gap:8px;margin-bottom:4px}.ne-tiptap .tiptap.sn-prose ul[data-type=taskList] li>label{flex-shrink:0;margin-top:3px}.ne-tiptap .tiptap.sn-prose ul[data-type=taskList] li>div{flex:1;min-width:0}.ne-tiptap .tiptap.sn-prose ul[data-type=taskList] li[data-checked=true]>div{text-decoration:line-through;color:var(--glass-text-dim)}.ne-tiptap .tiptap.sn-prose code:not(pre code){font-family:var(--font-mono, "JetBrains Mono", monospace)!important;padding:2px 6px;border-radius:6px;font-size:12px;background:color-mix(in srgb,var(--sn-brand) 8%,transparent);border:none;color:var(--sn-brand)}.ne-tiptap .tiptap.sn-prose img{max-width:100%;border-radius:10px;margin:0;cursor:default}.ne-tiptap .tiptap.sn-prose img.ProseMirror-selectednode{outline:2px solid var(--accent-secondary, var(--sn-brand));outline-offset:2px}[data-theme=light] .ne-tiptap .tiptap.sn-prose{color:var(--text-primary)}[data-theme=light] .ne-tiptap .tiptap.sn-prose s{color:var(--text-tertiary)}[data-theme=light] .ne-preview .sn-mermaid{background:#fafafa}[data-theme=light] .ne-preview .sn-prose{color:var(--text-primary)}[data-theme=light] .ne-preview .sn-table-wrapper th{color:#64748b}[data-theme=light] .ne-preview .sn-table-wrapper td{color:var(--text-primary)}[data-theme=light] .ne-preview .sn-table-wrapper tr:hover td{background:#0f172a05}.share-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,#000 45%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:1000}.share-dialog,.share-dialog--themed{--sn-brand: var(--brand-purple, #6965db);--sn-brand-deep: color-mix(in srgb, var(--brand-purple, #6965db) 82%, #000);--sn-brand-soft: var(--brand-purple-light, #8b86ff);background:var(--bg-elevated, var(--bg-secondary, #fff));border:1.5px solid var(--border-light, var(--border));border-radius:14px;width:400px;max-width:90vw;box-shadow:0 16px 48px color-mix(in srgb,#000 18%,transparent),4px 5px color-mix(in srgb,var(--brand-purple, #6965db) 14%,transparent);color:var(--text-primary)}.share-dialog__header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px 10px;border-bottom:1px solid var(--border-light, var(--border))}.share-dialog__title{font-size:15px;font-weight:700;font-family:var(--font-hand, "Excalifont", cursive);color:var(--text-primary)}.share-dialog__close{width:28px;height:28px;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center}.share-dialog__close:hover{background:var(--bg-hover);color:var(--text-primary)}.share-dialog__body{padding:14px 18px 18px}.share-dialog .sd-tabs{padding:0 18px}.share-dialog__hint{margin:0 0 14px;font-size:13px;line-height:1.45;color:var(--text-secondary)}.share-dialog__option{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:10px;margin-bottom:12px}.share-dialog__option label{font-size:12px;font-weight:600;color:var(--text-secondary)}.share-dialog__option .dc-dd,.share-dialog__option .dc-dd--full{min-width:0}.share-dialog__link-row{display:flex;gap:6px;margin-top:10px;align-items:center}.share-dialog__link-input{flex:1;min-width:0;padding:7px 10px;background:var(--bg-tertiary, var(--bg-secondary));border:1.5px solid var(--border);color:var(--text-primary);border-radius:8px;font-size:11.5px;font-family:JetBrains Mono,ui-monospace,monospace}.share-dialog__btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:5px 10px;min-height:30px;border:1.5px solid transparent;border-radius:8px 10px 8px 9px/9px 8px 10px;font-size:12px;font-weight:700;font-family:var(--font-hand, "Excalifont", cursive);letter-spacing:.01em;cursor:pointer;transition:background .15s,border-color .15s,color .15s,transform .15s,filter .15s}.share-dialog__btn:active:not(:disabled){transform:scale(.97)}.share-dialog__btn:disabled{opacity:.55;cursor:not-allowed}.share-dialog__btn--primary{width:100%;margin-top:12px;min-height:36px;background:#6965db!important;color:#fff!important;border:2px solid #5a56c7!important;box-shadow:2px 3px color-mix(in srgb,#6965db 35%,#000)!important}.share-dialog__btn--primary:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px);background:#5a56c7!important}.share-dialog__btn--copy{flex-shrink:0;min-width:64px;padding:5px 11px;background:color-mix(in srgb,var(--sn-brand) 14%,transparent);color:var(--sn-brand);border-color:color-mix(in srgb,var(--sn-brand) 45%,transparent)}.share-dialog__btn--copy:hover:not(:disabled){background:color-mix(in srgb,var(--sn-brand) 22%,transparent)}.share-dialog__btn--copy.is-copied{background:color-mix(in srgb,#22c55e 16%,transparent);color:#16a34a;border-color:color-mix(in srgb,#22c55e 40%,transparent)}.share-dialog__btn--danger{background:transparent;color:#dc2626;border-color:color-mix(in srgb,#ef4444 40%,transparent);min-height:28px;padding:4px 9px;font-size:11.5px}.share-dialog__btn--danger:hover:not(:disabled){background:color-mix(in srgb,#ef4444 12%,transparent)}.share-dialog__btn--ghost{background:transparent;color:var(--text-secondary);border-color:var(--border);min-height:28px;padding:4px 9px;font-size:11.5px}.share-dialog__btn--ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary);border-color:color-mix(in srgb,var(--sn-brand) 35%,var(--border))}.share-dialog__success{margin-top:10px;padding:7px 10px;background:color-mix(in srgb,var(--sn-brand) 10%,transparent);border:1.5px dashed color-mix(in srgb,var(--sn-brand) 40%,transparent);border-radius:8px;color:var(--sn-brand);font-size:12px;font-family:var(--font-hand, "Excalifont", cursive);font-weight:600}.share-dialog__error{color:#dc2626;font-size:12px;margin:8px 0}.share-dialog__existing{margin-top:16px;padding-top:12px;border-top:1px solid var(--border-light, var(--border))}.share-dialog__existing-title{font-size:11px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;font-weight:700}.share-dialog__existing-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.share-dialog__existing-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid var(--border-light, var(--border));border-radius:10px;background:var(--bg-secondary)}.share-dialog__existing-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.share-dialog__existing-status{font-size:12px;font-weight:600;color:var(--text-primary)}.share-dialog__existing-date{font-size:11px;color:var(--text-tertiary)}.share-dialog__existing-actions{display:flex;gap:6px;flex-shrink:0}.share-dialog__vault-id{margin:12px 0 0;font-size:11px;color:var(--text-tertiary);font-family:JetBrains Mono,ui-monospace,monospace}[data-theme=dark] .share-dialog__success{color:var(--sn-brand-soft)}[data-theme=dark] .share-dialog__btn--danger{color:#f87171}[data-theme=light] .share-dialog-overlay{background:color-mix(in srgb,#0f172a 28%,transparent)}.share-dialog__spin{color:inherit;flex-shrink:0}.share-dialog__btn--primary .share-dialog__spin{color:#fff}.share-dialog__btn--primary .share-dialog__spin .dc-spinner__slash{stroke:#fbbf24}.share-dialog__btn--danger .share-dialog__spin{color:currentColor}.share-dialog__list-loading{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:12.5px;color:var(--text-secondary)}.share-dialog__list-loading .share-dialog__spin{color:var(--sn-brand)}.ne-title-row{display:flex;align-items:flex-start;gap:8px;flex-wrap:wrap}.ne-title-row .ne-title{flex:1;min-width:0}.ne-publish-btn{position:relative;flex-shrink:0;margin-top:4px;display:inline-flex;align-items:center;gap:7px;padding:5px 12px 5px 8px;border:2px solid color-mix(in srgb,var(--sn-brand) 45%,transparent);border-radius:999px;background:color-mix(in srgb,var(--sn-brand) 10%,transparent);color:var(--sn-brand);cursor:pointer;font-family:var(--font-hand, "Excalifont", cursive);font-size:12.5px;font-weight:700;letter-spacing:.02em;transform:rotate(1.2deg);transition:background .15s,border-color .15s,transform .15s}.ne-publish-btn:hover{background:color-mix(in srgb,var(--sn-brand) 18%,transparent);transform:rotate(0) scale(1.03)}.ne-publish-btn__icon{display:flex;width:15px;height:15px}.ne-publish-btn__text{line-height:1}.ne-action-spin{color:inherit}.ne-share-btn{flex-shrink:0;margin-top:4px;width:34px;height:34px;border:1.5px solid var(--border-light, #e4e4e7);border-radius:10px 12px 9px 11px/11px 9px 12px 10px;background:transparent;color:var(--text-secondary, #71717a);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:color .15s,border-color .15s,transform .15s,background .15s}.ne-share-btn:hover{color:var(--sn-brand);border-color:color-mix(in srgb,var(--brand-purple) 45%,transparent);transform:rotate(-2deg) scale(1.04)}.ne-published-actions{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;flex-shrink:0}.ne-published-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 11px 5px 8px;border:2px solid color-mix(in srgb,var(--sn-brand) 42%,transparent);border-radius:999px;background:color-mix(in srgb,var(--sn-brand) 9%,transparent);color:var(--sn-brand);cursor:pointer;font-family:var(--font-hand, "Excalifont", cursive);font-size:12.5px;font-weight:700;letter-spacing:.02em;transition:background .15s,border-color .15s,transform .15s,color .15s}.ne-published-btn--view{transform:rotate(-1.2deg)}.ne-published-btn--copy{transform:rotate(1deg)}.ne-published-btn:hover{background:color-mix(in srgb,var(--sn-brand) 16%,transparent);transform:rotate(0) scale(1.03)}.ne-published-btn.is-copied{color:#fff;background:var(--sn-brand);border-color:color-mix(in srgb,var(--sn-brand) 80%,#000)}.ne-published-btn__icon{display:flex;width:15px;height:15px}.ne-published-btn__text{line-height:1}.ne-unpublish-btn{position:relative;flex-shrink:0;margin-top:4px;display:inline-flex;align-items:center;gap:7px;padding:5px 11px 5px 8px;border:2px solid color-mix(in srgb,var(--sn-brand) 45%,transparent);border-radius:999px;background:transparent;color:var(--sn-brand);cursor:pointer;font-family:var(--font-hand, "Excalifont", cursive);font-size:12.5px;font-weight:700;letter-spacing:.02em;transform:rotate(-1.5deg);transition:background .15s,border-color .15s,transform .15s}.ne-unpublish-btn:hover:not(:disabled){background:color-mix(in srgb,var(--sn-brand) 10%,transparent);transform:rotate(0) scale(1.03)}.ne-unpublish-btn:disabled{opacity:.6;cursor:wait}.ne-unpublish-btn--draw .ne-unpublish-btn__ring{animation:ne-unpublish-ring .55s cubic-bezier(.22,1,.36,1) forwards}.ne-unpublish-btn--draw .ne-unpublish-btn__icon{animation:ne-unpublish-icon .5s ease-out}.ne-unpublish-btn__ring{position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:1.5px dashed color-mix(in srgb,var(--sn-brand) 55%,transparent);border-radius:999px;opacity:0;pointer-events:none}.ne-unpublish-btn__icon{display:flex;width:16px;height:16px}.ne-unpublish-btn__text{line-height:1}@keyframes ne-unpublish-ring{0%{opacity:0;transform:scale(.7)}40%{opacity:1}to{opacity:0;transform:scale(1.25)}}@keyframes ne-unpublish-icon{0%{transform:scale(1) rotate(0)}40%{transform:scale(.85) rotate(-12deg)}to{transform:scale(1) rotate(0)}}@media (prefers-reduced-motion: reduce){.ne-unpublish-btn--draw .ne-unpublish-btn__ring,.ne-unpublish-btn--draw .ne-unpublish-btn__icon{animation:none}}@media (prefers-reduced-motion: reduce){.sn-loading__drop,.sn-loading__ripple,.sn-loading__brand{animation:none!important}.sn-loading__drop{top:70px!important;opacity:1!important}.sn-section{animation:none}}@media (max-width: 768px){.sn-nav{padding:0 16px;backdrop-filter:blur(12px) saturate(140%);-webkit-backdrop-filter:blur(12px) saturate(140%)}.sn-article{padding:20px 16px 16px}.sn-article__title-row{gap:10px;align-items:center}.sn-article__title{font-size:24px}.sn-article__like{padding-top:0}.sn-content{font-size:15px;line-height:1.7;padding:0 16px 8px}.sn-footer__inner{padding-left:16px;padding-right:16px}.sn-hero{height:180px}.sn-comments-fab{right:max(14px,env(safe-area-inset-right,0px));bottom:max(16px,calc(10px + env(safe-area-inset-bottom,0px)))}.sn-thread__replies-section{padding-left:28px}.sn-comment__avatar{width:26px;height:26px;font-size:11px}.sn-comment--reply .sn-comment__avatar{width:22px;height:22px;font-size:10px}.sn-comment__name-field{max-width:none}.sn-codeblock pre{font-size:12px;padding:10px 12px}}@media (max-width: 480px){.sn-article__title{font-size:22px}.sn-article__like .sn-article-like{padding:7px 10px 7px 8px;gap:6px;font-size:12px}.sn-nav__brand span{display:none}.sn-thread__replies-section{padding-left:18px}.sn-comments__shortcut{display:none}}@media (max-width: 700px){.ne-preview--embedded{padding:8px 20px 60px}}html[data-theme=dark] .sn-content,html[data-theme=light] .sn-content,.ne-preview .sn-content,.markdown-viewer__content.sn-content,.dc-theory-md.sn-content{--glass-text: var(--text-primary);--glass-text-dim: var(--text-secondary);--glass-bg: var(--bg-tertiary);--glass-border: var(--border);font-family:var(--font-hand, "Excalifont", cursive);font-size:15px;line-height:1.65;letter-spacing:.02em;color:var(--text-primary)}html[data-theme] .sn-content .sn-prose,html[data-theme] .markdown-viewer__content .md-section.sn-prose,html[data-theme] .markdown-viewer__content .sn-prose{font-family:var(--font-hand, "Excalifont", cursive)}html[data-theme] .sn-content .sn-prose h1,html[data-theme] .sn-content .sn-prose h2,html[data-theme] .sn-content .sn-prose h3,html[data-theme] .sn-content .sn-prose h4,html[data-theme] .markdown-viewer__content.sn-prose h1,html[data-theme] .markdown-viewer__content.sn-prose h2,html[data-theme] .markdown-viewer__content.sn-prose h3,html[data-theme] .markdown-viewer__content.sn-prose h4{font-family:var(--font-hand, "Excalifont", cursive);color:var(--text-primary)}html[data-theme] .sn-content .sn-prose h1,html[data-theme] .markdown-viewer__content.sn-prose h1{font-size:22px;font-weight:700;margin:28px 0 10px}html[data-theme] .sn-content .sn-prose h2,html[data-theme] .markdown-viewer__content.sn-prose h2{font-size:18px;font-weight:700;margin:24px 0 8px}html[data-theme] .sn-content .sn-prose h3,html[data-theme] .markdown-viewer__content.sn-prose h3{font-size:16px;font-weight:650;margin:20px 0 6px}html[data-theme] .sn-content .sn-prose p,html[data-theme] .markdown-viewer__content.sn-prose p{margin:0 0 10px}html[data-theme] .sn-content .sn-prose strong,html[data-theme] .markdown-viewer__content.sn-prose strong{color:var(--sn-brand);font-weight:700}html[data-theme] .sn-content .sn-prose li,html[data-theme] .sn-content .sn-prose td,html[data-theme] .markdown-viewer__content.sn-prose li,html[data-theme] .markdown-viewer__content.sn-prose td{font-family:var(--font-hand, "Excalifont", cursive)}html[data-theme] .sn-content .sn-prose code:not(pre code),html[data-theme] .markdown-viewer__content.sn-prose code:not(pre code){font-family:var(--font-mono, "JetBrains Mono", monospace)!important;font-size:12px;padding:2px 6px;border-radius:6px;background:color-mix(in srgb,var(--sn-brand) 8%,transparent);color:var(--sn-brand);border:none}.sn-codeblock,.sn-codeblock pre,.sn-codeblock pre code,.sn-codeblock-nodeview,.sn-codeblock-nodeview__code,.sn-codeblock .code-diff,.sn-codeblock .ascii-block__pre{font-family:var(--font-mono, "JetBrains Mono", monospace)!important}.markdown-viewer__content.sn-content{padding:8px 0 60px}.sn-prose .task-item{list-style:none;display:flex;align-items:flex-start;gap:8px;margin-left:0;padding:2px 0}.sn-prose .task-item--done .task-text{text-decoration:line-through;color:var(--text-secondary)}.sn-prose .task-check{width:16px;height:16px;flex-shrink:0;margin-top:3px;border-radius:3px;border:1.5px solid var(--border-light);display:flex;align-items:center;justify-content:center;accent-color:var(--sn-brand)}.sn-prose .task-check--checked{background:var(--sn-brand);border-color:var(--sn-brand);color:#fff}.sn-codeblock .code-diff{margin:0;padding:12px 0;font-family:JetBrains Mono,monospace;font-size:13px;line-height:1.7;overflow-x:auto;background:transparent}.sn-codeblock .diff-line{padding:0 16px;min-height:1.7em;white-space:pre}html[data-theme=dark] .sn-codeblock .diff-add{background:#10b9811f;color:#4ade80}html[data-theme=dark] .sn-codeblock .diff-del{background:#ef44441f;color:#f87171}html[data-theme=light] .sn-codeblock .diff-add{background:#10b9811a;color:#16a34a}html[data-theme=light] .sn-codeblock .diff-del{background:#ef44441a;color:#dc2626}.sn-codeblock .ascii-block__pre{margin:0;padding:14px 16px 16px;font-family:JetBrains Mono,monospace;font-size:13px;line-height:1.5;overflow-x:auto;white-space:pre;background:transparent;color:inherit;border:none}.sn-codeblock-wrap{margin:20px 0;border:none;border-radius:0;overflow:visible;background:transparent}.sn-codeblock-wrap>.sn-codeblock{margin:0}.sn-codeblock__collapse{display:flex;justify-content:center;padding:8px 12px 10px;border-top:1px solid var(--border);background:var(--md-code-surface, var(--bg-tertiary))}.sn-codeblock__collapse-btn{font-size:11px;font-weight:600;color:var(--sn-brand-soft);background:transparent;border:1px solid rgba(129,140,248,.25);border-radius:4px;padding:4px 12px;cursor:pointer;transition:background .15s,border-color .15s}.sn-codeblock__collapse-btn:hover{background:#6366f114;border-color:#818cf873}.sketch-frame{position:relative;isolation:isolate}.sketch-frame__border{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:2;overflow:visible}.sketch-frame--table{overflow:auto}.sketch-frame--table .sketch-frame__border{min-width:100%;min-height:100%}.sketch-frame__border path{stroke-linecap:round;stroke-linejoin:round}.sketch-frame>*:not(.sketch-frame__border){position:relative;z-index:1}@media (prefers-reduced-motion: reduce){.sketch-frame__border{display:none}.sn-codeblock,.sn-codeblock-nodeview,.sn-table-wrapper,.tableWrapper,.sn-mermaid,.sketch-img-wrap{border:1.5px solid var(--border-light)!important;border-radius:var(--sketch-radius, 12px)}.sketch-hr-wrap{height:18px;margin:28px 0}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) hr:after{background:var(--glass-border);opacity:1;transform:none}:is(.sn-prose,.ne-tiptap .tiptap.sn-prose,.markdown-viewer__content.sn-prose) blockquote{border-left:3px solid var(--sn-brand)!important}.sketch-frame--table th,.sketch-frame--table td{border:1px solid var(--border)!important}.sketch-frame--code .sn-codeblock__header{border-bottom:1px solid var(--border)!important}}.markdown-viewer__content .sn-mermaid{margin:24px 0}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#79c0ff}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-code,.hljs-comment,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}.dc-snack-stack{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:10060;display:flex;flex-direction:column-reverse;align-items:center;gap:10px;width:min(440px,calc(100vw - 24px));pointer-events:none}.dc-snack{pointer-events:auto;display:flex;align-items:flex-start;gap:10px;width:100%;padding:12px 14px;border-radius:16px 18px 14px 17px/17px 14px 18px 16px;border:2px solid color-mix(in srgb,var(--brand-purple, #6965db) 38%,transparent);background:var(--bg-elevated, #1e1e1e);color:var(--text-primary, #e4e4e7);box-shadow:3px 4px color-mix(in srgb,var(--brand-purple, #6965db) 16%,transparent),0 14px 36px color-mix(in srgb,#000 28%,transparent);transform:rotate(-.3deg);animation:dc-snack-in .32s cubic-bezier(.22,1,.36,1) both}.dc-snack--error{border-color:color-mix(in srgb,var(--brand-accent, #f59e0b) 50%,transparent)}.dc-snack--offline{border-color:color-mix(in srgb,#71717a 55%,transparent);background:color-mix(in srgb,#18181b 92%,#6965db)}.dc-snack--success{border-color:color-mix(in srgb,#3ba974 55%,transparent)}.dc-snack__mark{flex-shrink:0;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:42% 58% 48% 52%/52% 42% 58% 48%;color:var(--brand-purple, #6965db);background:color-mix(in srgb,var(--brand-purple, #6965db) 12%,transparent);border:1.5px dashed color-mix(in srgb,var(--brand-purple, #6965db) 40%,transparent)}.dc-snack--error .dc-snack__mark{color:var(--brand-accent, #f59e0b);background:color-mix(in srgb,var(--brand-accent, #f59e0b) 14%,transparent);border-color:color-mix(in srgb,var(--brand-accent, #f59e0b) 45%,transparent)}.dc-snack--offline .dc-snack__mark{color:#a1a1aa;background:color-mix(in srgb,#71717a 16%,transparent);border-color:color-mix(in srgb,#a1a1aa 40%,transparent)}.dc-snack--success .dc-snack__mark{color:#3ba974;background:color-mix(in srgb,#3ba974 14%,transparent);border-color:color-mix(in srgb,#3ba974 45%,transparent)}.dc-snack__body{flex:1;min-width:0;text-align:left}.dc-snack__title{margin:0 0 2px;font-family:var(--font-hand, "Excalifont", cursive);font-size:14px;font-weight:700;letter-spacing:.01em;color:var(--text-primary, #e4e4e7)}.dc-snack__message{margin:0;font-size:13px;line-height:1.4;color:var(--text-secondary, #a1a1aa)}.dc-snack__action{flex-shrink:0;align-self:center;padding:7px 12px;border-radius:999px;border:2px solid #5a56c7;background:#6965db;color:#fff;font-family:var(--font-hand, "Excalifont", cursive);font-size:12px;font-weight:700;cursor:pointer;box-shadow:1px 2px color-mix(in srgb,#6965db 35%,#000);transform:rotate(1deg)}.dc-snack__action:hover{filter:brightness(1.06)}.dc-snack__dismiss{flex-shrink:0;width:28px;height:28px;border:none;border-radius:999px;background:transparent;color:var(--text-secondary, #a1a1aa);font-size:18px;line-height:1;cursor:pointer}.dc-snack__dismiss:hover{color:var(--text-primary, #e4e4e7);background:color-mix(in srgb,var(--brand-purple, #6965db) 10%,transparent)}@keyframes dc-snack-in{0%{opacity:0;transform:translateY(14px) scale(.96) rotate(-1deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(-.3deg)}}@media (prefers-reduced-motion: reduce){.dc-snack{animation:none}}[data-theme=light] .dc-snack{background:#fff;color:#18181b}[data-theme=light] .dc-snack__title{color:#18181b}[data-theme=light] .dc-snack__message{color:#71717a}[data-theme=light] .dc-snack--offline{background:#f4f4f5}.np .dc-catalog__search-row.np__search-row,.np__search-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px;max-width:720px;margin-left:auto;margin-right:auto;width:100%}.np .np__search.dc-search-wrap,.np__search{flex:0 1 200px;width:200px;max-width:100%;min-width:140px;height:32px;padding:0 10px 0 32px}.np__search .dc-search-wrap__icon{left:10px;width:14px;height:14px}.np__search .dc-search-input{font-size:13px}.np__filters{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0;flex:1 1 auto;min-width:0}.np__filters .dc-tag-pill{min-height:32px}.np__toolbar{display:flex;align-items:center;gap:2px;margin-left:auto;flex-shrink:0}.np__text-btn{border:1px solid transparent;background:transparent;color:var(--brand-purple, #6965db);font-size:12px;font-weight:600;font-family:var(--font-hand, "Excalifont", cursive);cursor:pointer;padding:6px 10px;border-radius:8px;white-space:nowrap}.np__text-btn:hover:not(:disabled){background:var(--bg-hover)}.np__text-btn:disabled{opacity:.5;cursor:not-allowed}.np__content{width:100%;max-width:720px;margin:0 auto}.np__desktop-banner{width:100%;max-width:720px;margin:0 auto 14px;display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:12px 14px;border-radius:12px;border:1.5px dashed color-mix(in srgb,var(--brand-purple, #6965db) 40%,var(--border));background:color-mix(in srgb,var(--brand-purple, #6965db) 8%,var(--bg-secondary))}.np__desktop-banner__text{flex:1 1 220px;min-width:0;font-family:var(--font-hand, "Excalifont", cursive);font-size:13px;line-height:1.45;color:var(--text-secondary)}.np__content .dc-async-state{min-height:280px;padding:28px 16px}.np__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0;border-top:none}.np__list--more{margin-top:0;border-top:none}.np__item{position:relative;width:100%;display:grid;grid-template-columns:36px minmax(0,1fr) 10px;align-items:start;gap:12px;padding:16px 2px 18px;border:none;border-radius:0;background:transparent;color:inherit;text-align:left;cursor:pointer;font:inherit;transition:background .14s ease}.np__item:after{content:"";position:absolute;left:2px;right:2px;bottom:0;height:2px;border-radius:40% 60% 55% 45%/100% 100% 0 0;background:color-mix(in srgb,var(--brand-purple, #6965db) 28%,transparent);transform:rotate(-.35deg) skew(-.8deg);pointer-events:none;opacity:.85}.np__item:last-child:after{opacity:.55}.np__item:hover:not(.np__item--skeleton){background:color-mix(in srgb,var(--bg-hover) 70%,transparent)}.np__item--skeleton{pointer-events:none;cursor:default;background:transparent;opacity:.55}.np__item--action{cursor:default}.np__item--unread{background:transparent}.np__item--unread .np__item-title{font-weight:700}.np__item--flash{animation:np-flash 1.4s ease}@keyframes np-flash{0%,to{background:transparent}30%{background:color-mix(in srgb,var(--brand-purple, #6965db) 10%,transparent)}}.np__item-icon{width:36px;height:36px;border-radius:11px 13px 10px 12px/12px 10px 13px 11px;display:grid;place-items:center;color:var(--brand-purple, #6965db);background:color-mix(in srgb,var(--brand-purple, #6965db) 10%,transparent);border:1.5px dashed color-mix(in srgb,var(--brand-purple, #6965db) 32%,transparent);transform:rotate(-.6deg)}.np__item-icon--invite{color:#f59e0b;background:color-mix(in srgb,#f59e0b 12%,transparent);border-color:color-mix(in srgb,#f59e0b 36%,transparent)}.np__item-icon--share{color:var(--brand-purple, #6965db);background:color-mix(in srgb,var(--brand-purple, #6965db) 10%,transparent);border-color:color-mix(in srgb,var(--brand-purple, #6965db) 32%,transparent)}.np__item-icon--note{color:#10b981;background:color-mix(in srgb,#10b981 12%,transparent);border-color:color-mix(in srgb,#10b981 36%,transparent)}.np__item-icon--declined{color:#ef4444;background:color-mix(in srgb,#ef4444 10%,transparent);border-color:color-mix(in srgb,#ef4444 34%,transparent)}.np__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.np__btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:0 14px;border-radius:8px;border:1px solid transparent;font-family:var(--font-hand, "Excalifont", cursive);font-size:12px;font-weight:700;cursor:pointer}.np__btn:disabled{opacity:.6;cursor:not-allowed}.np__btn--primary{background:var(--brand-purple, #6965db);color:#fff}.np__btn--primary:hover:not(:disabled){filter:brightness(1.06)}.np__btn--ghost{background:transparent;border-color:var(--border-light, var(--border));color:var(--text-secondary)}.np__btn--ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.np__status{display:inline-flex;margin-top:8px;font-family:var(--font-hand, "Excalifont", cursive);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary)}.np__status--accepted{color:#10b981}.np__status--declined,.np__status--revoked,.np__status--expired{color:#ef4444}.np__sentinel{height:1px;width:100%}.np__item-main{min-width:0;display:flex;flex-direction:column;gap:4px}.np__item-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.np__item-title{font-family:var(--font-hand, "Excalifont", cursive);font-size:15px;font-weight:700;color:var(--text-primary);line-height:1.3}.np__item-body{font-size:13px;color:var(--text-secondary);line-height:1.4}.np__item-time{flex-shrink:0;font-family:var(--font-hand, "Excalifont", cursive);font-size:11px;color:var(--text-tertiary)}.np__dot{width:8px;height:8px;margin-top:8px;border-radius:999px;background:var(--brand-purple, #6965db);justify-self:end}.np__footer-loading{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:16px;font-size:12px;color:var(--text-tertiary)}@media (max-width: 640px){.np__search-row{gap:8px}.np .np__search.dc-search-wrap,.np__search{flex:1 1 100%;width:100%}.np__filters{flex:1 1 auto}.np__toolbar{width:100%;margin-left:0;justify-content:flex-end}}.pp.dc-catalog--wide{max-width:1120px;margin:0 auto;width:100%}.pp .dc-catalog__header{margin-bottom:28px}.pp .dc-catalog__title{font-family:var(--font-hand, "Excalifont", cursive)}.pp .dc-catalog__desc{font-family:var(--font-hand, "Excalifont", cursive);max-width:520px}.pp__layout{display:flex;flex-direction:column;gap:0;width:100%}.pp__hero{display:grid;grid-template-columns:minmax(220px,.9fr) minmax(0,1.4fr);gap:28px 40px;align-items:start;padding:8px 0 28px;position:relative;margin-bottom:8px}.pp__hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:40% 60% 55% 45%/100% 100% 0 0;background:color-mix(in srgb,var(--brand-purple, #6965db) 32%,transparent);transform:rotate(-.35deg) skew(-.8deg);pointer-events:none}.pp__photo-row{display:flex;align-items:center;gap:16px;margin:0;text-align:left}.pp__photo-meta{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px}.pp__photo-name{margin:0;font-size:20px;font-weight:600;font-family:var(--font-hand, "Excalifont", cursive);color:var(--text-primary)}.pp__handle{margin:0 0 4px;font-size:13px;font-family:var(--font-hand, "Excalifont", cursive);color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:min(280px,100%)}.pp__link{border:none;background:transparent;padding:0;font-size:13px;font-weight:600;color:var(--brand-purple, #6965db);font-family:var(--font-hand, "Excalifont", cursive);cursor:pointer;display:inline-flex;align-items:center;gap:6px}.pp__link:hover:not(:disabled){text-decoration:underline}.pp__link:disabled{opacity:.7;cursor:wait}.pp__spinner{flex-shrink:0;animation:pp-spin .7s linear infinite}@keyframes pp-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.pp__spinner{animation:none;opacity:.7}}.pp__avatar-btn{border:none;background:transparent;cursor:pointer;padding:0;flex-shrink:0}.pp__avatar-btn:disabled{opacity:.85;cursor:wait}.pp__avatar{position:relative;width:84px;height:84px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--accent-gradient, linear-gradient(135deg, #6366F1, #10B981));border:2px dashed color-mix(in srgb,var(--brand-purple, #6965db) 55%,transparent)}.pp__avatar-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--bg-primary) 45%,transparent);color:var(--brand-purple, #6965db)}.pp__avatar img{width:100%;height:100%;object-fit:cover}.pp__initials{font-family:var(--font-hand, "Excalifont", cursive);font-size:24px;font-weight:600;color:#fff}.pp__cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 48px;align-items:start;width:100%;position:relative}.pp__cols:before{content:"";position:absolute;top:18px;bottom:18px;left:50%;width:2px;margin-left:-1px;border-radius:100% 0/40% 60%;background:color-mix(in srgb,var(--brand-purple, #6965db) 26%,transparent);transform:rotate(.5deg) skewY(-.4deg);pointer-events:none;opacity:.85}.pp__col{min-width:0;display:flex;flex-direction:column;gap:0}.pp__group{position:relative;display:flex;flex-direction:column;gap:12px;padding:22px 4px 24px}.pp__group:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:40% 60% 55% 45%/100% 100% 0 0;background:color-mix(in srgb,var(--brand-purple, #6965db) 28%,transparent);transform:rotate(-.4deg) skew(-.9deg);pointer-events:none;opacity:.85}.pp__group--last:after,.pp__col>.pp__group:last-child:after{display:none}.pp__group-title{margin:0;font-size:18px;font-weight:600;font-family:var(--font-hand, "Excalifont", cursive);color:var(--text-primary);transform:rotate(-.3deg)}.pp__group-title--sub{margin-top:8px;font-size:15px;transform:none}.pp__section-desc{margin:0;font-size:12px;line-height:1.4;font-family:var(--font-hand, "Excalifont", cursive);color:var(--text-secondary);max-width:none}.pp__opt-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;min-height:34px}.pp__opt-row>.pp__label{flex:0 0 6.5rem;margin:0;line-height:1.2}.pp__opt-row>.pp__fonts,.pp__opt-row>.pp__swatches,.pp__opt-row>.pp__muted,.pp__opt-row>.pp__status{flex:1 1 auto;min-width:0}.pp__account-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:2px}.pp__field-shell--delete{max-width:100%;margin-bottom:0}.pp__delete-confirm,.pp__delete-pending{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:4px}.pp__delete-confirm .pp__field-shell--delete{width:min(100%,360px)}.pp__delete-confirm .pp__logout{margin-top:2px}.pp__delete-confirm .pp__msg,.pp__delete-pending .pp__msg{max-width:min(100%,360px);line-height:1.35}.pp__delete-pending__status{margin:0;font-size:13px;font-weight:600;font-family:var(--font-hand, "Excalifont", cursive);color:#e11d48}.pp__usage-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.pp__usage-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:2px 0 8px;border-bottom:none;position:relative}.pp__usage-row:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1.5px;border-radius:40% 60% 55% 45%/100% 100% 0 0;background:color-mix(in srgb,var(--brand-purple, #6965db) 22%,transparent);transform:rotate(-.3deg);opacity:.75}.pp__usage-row:last-child:after{display:none}.pp__usage-label{font-size:13px;font-family:var(--font-hand, "Excalifont", cursive);color:var(--text-secondary)}.pp__usage-count{font-size:13px;font-weight:700;font-family:var(--font-hand, "Excalifont", cursive);color:var(--text-primary);font-variant-numeric:tabular-nums}.pp__usage-row--full .pp__usage-count{color:#e11d48}.pp__form{display:flex;flex-direction:column;gap:12px;max-width:none;width:100%}.pp__form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 18px}.pp__field--span{grid-column:1 / -1}.pp__field{display:flex;flex-direction:column;gap:6px}.pp__label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary, var(--text-secondary));font-family:var(--font-hand, "Excalifont", cursive)}.pp__field-shell{position:relative;display:flex;align-items:center;min-height:36px;padding:2px 2px 10px;border:none;border-radius:0;background:transparent;box-shadow:none}.pp__field-shell:after{content:"";position:absolute;left:0;right:0;bottom:1px;height:2px;border-radius:40% 60% 50% 50%/100% 100% 0 0;background:color-mix(in srgb,var(--brand-purple, #6965db) 42%,transparent);transform:rotate(-.4deg) skew(-1deg);pointer-events:none;transition:background .15s ease,height .15s ease,transform .15s ease}.pp__field-shell:focus-within:after{height:3px;background:var(--brand-purple, #6965db);transform:rotate(0) skew(0);box-shadow:0 2px color-mix(in srgb,var(--brand-purple, #6965db) 18%,transparent)}.pp__field-shell--muted{opacity:.72}.pp__field-shell--muted:after{background:color-mix(in srgb,var(--text-secondary) 45%,transparent)}.pp__field-shell--username{gap:2px;padding-left:0}.pp__at{color:var(--text-secondary);font-weight:600;font-size:14px;font-family:var(--font-hand, "Excalifont", cursive);flex-shrink:0}.pp__input{flex:1;min-width:0;height:34px;border:none;background:transparent;color:var(--text-primary);font-size:15px;font-family:var(--font-hand, "Excalifont", cursive);outline:none;padding:0}.pp__input:disabled{cursor:default;color:var(--text-secondary)}.pp__input::placeholder{color:var(--text-tertiary);opacity:.7}.pp__hint{font-size:11px;color:var(--text-secondary);font-family:var(--font-hand, "Excalifont", cursive);opacity:.85}.pp__form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px}.pp__save{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 18px;border-radius:14px 16px 13px 15px/15px 13px 16px 14px;border:2px solid var(--brand-purple, #6965db);background:var(--brand-purple, #6965db);color:#fff;font-size:14px;font-weight:600;font-family:var(--font-hand, "Excalifont", cursive);cursor:pointer;width:fit-content;transform:rotate(-.5deg);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,filter .16s ease}.pp__save:disabled{opacity:.55;cursor:not-allowed;transform:none}.pp__save:hover:not(:disabled){transform:translateY(-2px) rotate(0);filter:brightness(1.05);box-shadow:3px 3px color-mix(in srgb,var(--brand-purple, #6965db) 28%,transparent)}.pp__save:active:not(:disabled){transform:translateY(0) rotate(0);box-shadow:1px 1px color-mix(in srgb,var(--brand-purple, #6965db) 22%,transparent)}@media (prefers-reduced-motion: reduce){.pp__save{transition:none;transform:none}.pp__save:hover:not(:disabled),.pp__save:active:not(:disabled){transform:none;box-shadow:none}}.pp__logout{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 18px 0 14px;border-radius:14px 16px 13px 15px/15px 13px 16px 14px;border:2px solid color-mix(in srgb,#e11d48 40%,var(--border));background:color-mix(in srgb,#e11d48 6%,transparent);color:#e11d48;font-size:14px;font-weight:600;font-family:var(--font-hand, "Excalifont", cursive);cursor:pointer;width:fit-content;transform:rotate(-.6deg);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}.pp__logout__icon{display:inline-flex}.pp__logout:hover{transform:translateY(-2px) rotate(0);border-color:#e11d48;background:color-mix(in srgb,#e11d48 12%,transparent);box-shadow:3px 3px color-mix(in srgb,#e11d48 28%,transparent)}.pp__logout:active{transform:translateY(0) rotate(0);box-shadow:1px 1px color-mix(in srgb,#e11d48 22%,transparent)}@media (prefers-reduced-motion: reduce){.pp__logout{transition:none;transform:none}.pp__logout:hover,.pp__logout:active{transform:none;box-shadow:none}}.pp__msg{font-size:12px;font-family:var(--font-hand, "Excalifont", cursive)}.pp__msg--ok{color:#0d9488}.pp__msg--error{color:#e11d48}.pp__muted{margin:0;font-size:13px;font-family:var(--font-hand, "Excalifont", cursive);color:var(--text-secondary)}.pp__row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.pp__row .dc-tag-pill{display:inline-flex;align-items:center;gap:6px}.pp__status{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-family:var(--font-hand, "Excalifont", cursive);color:var(--text-secondary)}.pp__status--on{color:#0d9488}.pp__swatches{display:flex;flex-wrap:wrap;gap:10px}.pp__swatch{width:30px;height:30px;border-radius:50%;border:2px solid transparent;background:var(--pp-swatch);cursor:pointer;box-shadow:inset 0 0 0 1px color-mix(in srgb,#000 10%,transparent);transition:transform .12s ease,box-shadow .12s ease}.pp__swatch:hover{transform:scale(1.08)}.pp__swatch--active{box-shadow:0 0 0 2px var(--bg-primary),0 0 0 4px var(--pp-swatch)}.pp__fonts{display:flex;flex-wrap:wrap;gap:8px}@media (max-width: 900px){.pp__hero{grid-template-columns:1fr;gap:18px}.pp__cols{grid-template-columns:1fr;gap:0}.pp__cols:before{display:none}.pp__form-grid{grid-template-columns:1fr}}@media (max-width: 560px){.pp__photo-row{gap:14px}.pp__avatar{width:72px;height:72px}.pp__opt-row{flex-direction:column;align-items:flex-start}.pp__opt-row>.pp__label{flex-basis:auto}}.cv-app{display:flex;flex-direction:column;height:100vh;background:var(--bg-primary);overflow:hidden;position:relative}.cv-body{flex:1;display:flex;min-height:0;overflow:hidden}.cv-main{flex:1;position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden}.excalidraw-page{display:flex;flex-direction:column;width:100vw;height:100vh;overflow:hidden;background:var(--bg-primary, #121212);--obs-chrome: var(--bg-secondary, #1e1e2e);--obs-border: color-mix(in srgb, var(--border, #45475a) 42%, transparent);--obs-divider: color-mix(in srgb, var(--border, #45475a) 28%, transparent);--obs-hover: var(--bg-hover, rgba(255, 255, 255, .06));--obs-surface: var(--bg-primary, #121212);--obs-muted: var(--text-secondary, #a6adc8);--obs-muted-weak: var(--text-tertiary, #6c7086);--obs-strong: var(--text-primary, #cdd6f4);--obs-input-bg: var(--bg-tertiary, #1a1a1a);--obs-input-border: var(--border-light, rgba(255, 255, 255, .12));--border-focus: var(--accent-secondary, #6366f1);--xc-island-shadow: 0 8px 24px rgba(0, 0, 0, .34), 0 2px 6px rgba(0, 0, 0, .2)}.excalidraw-page[data-theme=light]{--obs-muted: var(--text-secondary, #64748b);--obs-strong: var(--text-primary, #1a1a1a);--xc-island-shadow: 0 8px 22px rgba(15, 23, 42, .14), 0 2px 5px rgba(15, 23, 42, .08)}.excalidraw-page__stage{flex:1;min-height:0;position:relative;overflow:hidden}.excalidraw-page__body{flex:1;display:flex;min-height:0;min-width:0;overflow:hidden}.excalidraw-page .obs-app__body[data-loading=true]>*:not(.obs-skeleton-overlay){pointer-events:none}.excalidraw-page .cv-main--loading{flex:1 1 auto;min-height:0}.excalidraw-page--with-sidebar .ft-tree-sidebar{flex-shrink:0}.excalidraw-page .ft-sidebar .ft-search{display:flex;align-items:center;gap:6px;position:relative;padding:8px 10px;border-bottom:none;background:transparent}.excalidraw-page .ft-sidebar .ft-search__icon{position:absolute;left:18px;color:var(--obs-muted);pointer-events:none}.excalidraw-page .ft-sidebar .ft-search__input{width:100%;height:28px;border-radius:999px;border:1px solid color-mix(in srgb,var(--obs-input-border) 70%,transparent);background:color-mix(in srgb,var(--obs-input-bg) 45%,transparent);color:var(--obs-strong);font-family:var(--font-hand)!important;letter-spacing:.1px;font-size:12px;padding:0 28px 0 30px;outline:none}.excalidraw-page .ft-sidebar .ft-search__input::placeholder{color:var(--obs-muted);font-family:var(--font-hand)!important;letter-spacing:.1px}.excalidraw-page .ft-sidebar .ft-search__input:focus{border-color:color-mix(in srgb,var(--border-focus) 80%,transparent);background:color-mix(in srgb,var(--obs-input-bg) 65%,transparent)}.excalidraw-page .ft-sidebar .ft-search__clear{position:absolute;right:14px;width:18px;height:18px;border:none;border-radius:5px;background:transparent;color:var(--obs-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.excalidraw-page .ft-sidebar .ft-search__clear:hover{background:var(--obs-hover);color:var(--obs-strong)}.excalidraw-stage-wrap{position:relative;flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-primary)}.excalidraw-stage-wrap .cv-excalidraw-root{flex:1;min-height:0}.obs-main.is-agent-working{position:relative}.obs-main.is-agent-working .obs-tabbar,.obs-main.is-agent-working .obs-tabs{overflow:visible}.obs-main.is-agent-working .obs-tabbar{position:relative;z-index:42}.obs-main.is-agent-working>.excalidraw-stage-wrap{position:relative;isolation:isolate}.obs-main.is-agent-working>.excalidraw-stage-wrap:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:18;pointer-events:none;padding:2px;background:linear-gradient(120deg,#6965db,#22c55e,#f4a261,#e8590c,#228be6,#6965db);background-size:300% 300%;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;box-shadow:0 0 16px color-mix(in srgb,#6965db 32%,transparent),0 0 28px color-mix(in srgb,#22c55e 16%,transparent);animation:dc-canvas-agent-rainbow 2.4s linear infinite,dc-canvas-agent-glow 1.7s ease-in-out infinite}.obs-main.is-agent-working .obs-tab--active{position:relative;z-index:43;margin-bottom:-2px;background:var(--obs-surface, var(--bg-primary, #121212))}.obs-main.is-agent-working .obs-tab--active:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;border-radius:8px 8px 0 0;padding:2px 2px 0;background:linear-gradient(120deg,#6965db,#22c55e,#f4a261,#e8590c,#228be6,#6965db);background-size:300% 300%;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;box-shadow:0 -2px 12px color-mix(in srgb,#6965db 36%,transparent),0 0 18px color-mix(in srgb,#22c55e 14%,transparent);animation:dc-canvas-agent-rainbow 2.4s linear infinite}.obs-main.is-agent-working .obs-tab--active>*{position:relative;z-index:1}.obs-main.is-agent-working:before,.obs-main.is-agent-working>.excalidraw-stage-wrap:after,.obs-main.is-agent-working .obs-tab--active:after{content:none!important;display:none!important}@keyframes dc-canvas-agent-glow{0%,to{opacity:.72}50%{opacity:1}}@keyframes dc-canvas-agent-rainbow{0%{background-position:0% 50%}to{background-position:300% 50%}}@media (prefers-reduced-motion: reduce){.obs-main.is-agent-working>.excalidraw-stage-wrap:before,.obs-main.is-agent-working .obs-tab--active:before{animation:none}}.excalidraw-page .nc-agentbar{position:absolute;left:50%;bottom:12px;transform:translate(-50%);z-index:20;width:min(560px,calc(100% - 80px));gap:6px;pointer-events:none}.excalidraw-page .nc-agentbar.nc-agentbar--island .nc-agentbar__shell{width:100%}.excalidraw-page .nc-agentbar.nc-agentbar--island .chat-input-container{padding:0;margin:0;background:transparent;border:none}.excalidraw-page .nc-agentbar.nc-agentbar--island .chat-input-wrapper{max-width:none;width:100%;border:none;box-shadow:none}.excalidraw-page .nc-agentbar.nc-agentbar--island .chat-input-box{display:flex;align-items:center;min-height:38px;padding:5px 8px;gap:3px;border:1px solid var(--obs-border);border-radius:10px;background:var(--obs-surface);box-shadow:var(--xc-island-shadow);transform:none;overflow:hidden;position:relative}.excalidraw-page .nc-agentbar.nc-agentbar--island .chat-input-box:focus-within{border-color:color-mix(in srgb,var(--accent-primary, #6965db) 55%,var(--obs-border));transform:none;box-shadow:var(--xc-island-shadow)}.excalidraw-page .nc-agentbar.nc-agentbar--island .chat-input-box.processing{border:1px solid transparent;background-image:linear-gradient(var(--obs-surface),var(--obs-surface)),linear-gradient(90deg,#6965db,#7bc86c,#f4a261,#6965db);background-origin:border-box;background-clip:padding-box,border-box;background-size:100% 100%,220% 100%;animation:nc-island-agent-border 2.2s linear infinite;box-shadow:var(--xc-island-shadow)}@keyframes nc-island-agent-border{0%{background-position:0 0,0% 50%}to{background-position:0 0,220% 50%}}.excalidraw-page .nc-agentbar.nc-agentbar--island .nc-agentbar__avatar{width:28px;height:28px;border:none;border-radius:6px;background:transparent;box-shadow:none;color:var(--obs-muted);cursor:pointer;transition:background .15s,color .15s;flex-shrink:0;padding:0}.excalidraw-page .nc-agentbar.nc-agentbar--island .nc-agentbar__avatar .nc-agentbar__agent-icon{display:block;flex-shrink:0}.excalidraw-page .nc-agentbar.nc-agentbar--island .nc-agentbar__avatar:hover,.excalidraw-page .nc-agentbar.nc-agentbar--island .nc-agentbar__avatar.is-active{background:var(--obs-hover);color:var(--obs-strong);box-shadow:none}.excalidraw-page .nc-agentbar.nc-agentbar--island .nc-agentbar__voice-btn,.excalidraw-page .nc-agentbar.nc-agentbar--island .send-btn{width:24px;height:24px;min-width:24px;flex-shrink:0;border:none;border-radius:6px;background:transparent;box-shadow:none;color:var(--obs-muted);transition:background .15s,color .15s}.excalidraw-page .nc-agentbar.nc-agentbar--island .nc-agentbar__voice-btn:hover:not(:disabled),.excalidraw-page .nc-agentbar.nc-agentbar--island .send-btn:hover:not(:disabled){background:var(--obs-hover);color:var(--obs-strong);transform:none;box-shadow:none}.excalidraw-page .nc-agentbar.nc-agentbar--island .send-btn{color:var(--accent-primary, #6965db)}.excalidraw-page .nc-agentbar.nc-agentbar--island .send-btn:disabled{opacity:.4;color:var(--obs-muted)}.excalidraw-page .nc-agentbar.nc-agentbar--island .send-btn.stop-btn{color:#ef4444}.excalidraw-page .nc-agentbar.nc-agentbar--island .nc-agentbar__voice-btn.is-recording{color:#ef4444;background:color-mix(in srgb,#ef4444 12%,transparent)}.excalidraw-page .nc-agentbar.nc-agentbar--island .chat-input{padding:4px 2px;font-size:13px;line-height:1.35;min-height:20px}.excalidraw-page .nc-agentbar.nc-agentbar--island .nc-agentbar__feedback{min-height:22px;max-width:100%;padding:4px 10px;font-size:11px;border-radius:8px;border:1px solid var(--obs-border);background:var(--obs-surface);box-shadow:var(--xc-island-shadow);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.excalidraw-page .nc-agentbar.nc-agentbar--island .nc-agentbar__history{max-height:96px;padding:8px 10px;border-radius:10px;border:1px solid var(--obs-border);background:var(--obs-surface);box-shadow:var(--xc-island-shadow);font-size:11px}.excalidraw-page .nc-agentbar.nc-agentbar--island .nc-agentbar__message{margin-bottom:6px;padding:6px 8px}.excalidraw-page .nc-agentbar.nc-agentbar--island .nc-agentbar__message-head{font-size:10px}.excalidraw-page .nc-agentbar.nc-agentbar--island .nc-agentbar__message-body{font-size:11px;line-height:1.35}.excalidraw-page[data-theme=dark] .nc-agentbar.nc-agentbar--island .chat-input-box.processing{background-image:linear-gradient(var(--obs-surface),var(--obs-surface)),linear-gradient(90deg,#6965db,#7bc86c,#f4a261,#6965db)}.excalidraw-page[data-theme=dark] .nc-agentbar.nc-agentbar--island .chat-input{color:var(--obs-strong)}.excalidraw-page[data-theme=dark] .nc-agentbar.nc-agentbar--island .chat-input::placeholder{color:var(--obs-muted)}.excalidraw-page[data-theme=light] .nc-agentbar.nc-agentbar--island .chat-input-box.processing{background-image:linear-gradient(var(--obs-surface),var(--obs-surface)),linear-gradient(90deg,#6965db,#7bc86c,#f4a261,#6965db)}.excalidraw-page[data-theme=dark] .excalidraw .excalidraw__canvas-wrapper{background:var(--bg-primary)!important}.excalidraw-page .excalidraw canvas.excalidraw__canvas,.excalidraw-page .excalidraw svg.excalidraw__canvas{background:transparent!important}.excalidraw-page .excalidraw .layer-ui__wrapper,.excalidraw-page .excalidraw .excalidraw-container,.excalidraw-page .excalidraw .App{background:transparent!important}.excalidraw-page .cv-main{flex:1;min-height:0;display:flex;flex-direction:column;position:relative;overflow:hidden}.excalidraw-page .cv-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--obs-muted);padding:40px;text-align:center}.excalidraw-page .cv-empty__title{font-size:15px;font-weight:600;color:var(--obs-strong)}.excalidraw-page .cv-empty__copy{font-size:13px;max-width:320px}.excalidraw-page .cv-empty__btn{margin-top:12px;padding:8px 16px;border-radius:8px;border:1px solid var(--obs-border);background:var(--obs-chrome);color:var(--obs-strong);font-size:13px;font-weight:500;cursor:pointer}.excalidraw-page .cv-empty__btn:hover{background:var(--obs-hover);border-color:color-mix(in srgb,var(--obs-strong) 24%,var(--obs-border))}.excalidraw-page .obs-tabbar__right{gap:3px;padding-bottom:3px;position:relative;align-items:center}.excalidraw-page .excalidraw .welcome-screen-center,.excalidraw-page .excalidraw .welcome-screen-menu-hints,.excalidraw-page .excalidraw [class*=welcome-screen]{display:none!important}.excalidraw-page .excalidraw .layer-ui__wrapper{z-index:10!important}.excalidraw-page .excalidraw .main-menu-trigger,.excalidraw-page .excalidraw button.main-menu-trigger,.excalidraw-page .excalidraw .dropdown-menu-button.main-menu-trigger,.excalidraw-page .excalidraw .App-menu_top__left>div:has(.main-menu-trigger){display:none!important;width:0!important;min-width:0!important;overflow:hidden!important;pointer-events:none!important}.excalidraw-page .excalidraw .App-menu_top{grid-template-columns:1fr auto 1fr!important;grid-gap:8px!important;align-items:start!important}.excalidraw-page .excalidraw .App-menu_top>*:first-child{grid-column:1!important;width:0!important;min-width:0!important;max-width:0!important;overflow:visible!important;padding:0!important;margin:0!important;position:static!important;transform:none!important}.excalidraw-page .excalidraw .App-menu_top>*:nth-child(2){grid-column:2!important;justify-self:center!important;min-width:0!important;max-width:100%!important;pointer-events:var(--ui-pointerEvents, all)!important}.excalidraw-page .excalidraw .App-menu_top>*:nth-child(3){grid-column:3!important;justify-self:end!important;pointer-events:var(--ui-pointerEvents, all)!important}.excalidraw-page .excalidraw .App-menu_top__left{display:block!important;width:0!important;min-width:0!important;max-width:0!important;overflow:visible!important;position:static!important}.excalidraw-page .excalidraw .App-menu_top__left>div:has(.main-menu-trigger){pointer-events:none!important}.excalidraw-page{--xc-props-width: 11rem}.excalidraw-page .excalidraw{--xc-props-max-height: min(520px, calc(100dvh - 72px) , calc(100vh - 72px) )}.excalidraw-page .excalidraw .App-menu_top__left>section.selected-shape-actions,.excalidraw-page .excalidraw .App-menu_top section.selected-shape-actions{position:absolute!important;left:0!important;top:50%!important;transform:translateY(-50%)!important;width:var(--xc-props-width)!important;min-width:var(--xc-props-width)!important;max-width:var(--xc-props-width)!important;max-height:var(--xc-props-max-height)!important;height:auto!important;z-index:15!important;margin:0!important;padding:0!important;border:none!important;overflow:hidden!important;pointer-events:none!important}.excalidraw-page .excalidraw .App-menu_top__left>section.selected-shape-actions>h2.visually-hidden,.excalidraw-page .excalidraw .App-menu_top section.selected-shape-actions>h2.visually-hidden{display:none!important}.excalidraw-page .excalidraw .Island.App-menu__left,.excalidraw-page .excalidraw .FixedSideContainer_side_top .Island.App-menu__left{position:absolute!important;left:0!important;top:50%!important;transform:translateY(-50%)!important;width:var(--xc-props-width)!important;min-width:var(--xc-props-width)!important;max-width:var(--xc-props-width)!important;max-height:var(--xc-props-max-height)!important;height:auto!important;min-height:0!important;z-index:15!important;display:flex!important;flex-direction:column!important;visibility:visible!important;pointer-events:all!important;box-sizing:border-box!important;padding:.55rem .75rem!important;border-radius:10px!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important;box-shadow:0 4px 14px #0003!important;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}.excalidraw-page .excalidraw section.selected-shape-actions>.Island.App-menu__left{position:relative!important;top:auto!important;left:auto!important;transform:none!important;width:var(--xc-props-width)!important;min-width:var(--xc-props-width)!important;max-width:var(--xc-props-width)!important;max-height:var(--xc-props-max-height)!important;flex:1 1 auto!important;min-height:0!important}.excalidraw-page .excalidraw .Island.App-menu__left>.selected-shape-actions,.excalidraw-page .excalidraw .Island.App-menu__left>.panelColumn{position:static!important;transform:none!important;display:flex!important;flex-direction:column!important;flex:0 0 auto!important;gap:.5rem!important;width:100%!important;height:auto!important;min-height:min-content!important;overflow:visible!important;pointer-events:auto!important}.excalidraw-page .excalidraw .Island.App-menu__left::-webkit-scrollbar{width:6px!important}.excalidraw-page .excalidraw .Island.App-menu__left::-webkit-scrollbar-track{background:transparent!important}.excalidraw-page .excalidraw .Island.App-menu__left::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--obs-muted) 65%,transparent)!important;border-radius:6px!important;min-height:32px!important}.excalidraw-page .excalidraw .Island.App-menu__left::-webkit-scrollbar-thumb:hover{background:var(--obs-muted)!important}.excalidraw-page .excalidraw .Island.App-menu__left{scrollbar-width:thin!important;scrollbar-color:color-mix(in srgb,var(--obs-muted) 65%,transparent) transparent!important}.excalidraw-page .excalidraw .Island.App-menu__left .panelColumn{display:flex!important;flex-direction:column!important;gap:.45rem!important;row-gap:.45rem!important;min-width:0!important;min-height:min-content!important;height:auto!important;width:100%!important}.excalidraw-page .excalidraw .Island.App-menu__left h3,.excalidraw-page .excalidraw .Island.App-menu__left legend,.excalidraw-page .excalidraw .Island.App-menu__left .control-label{font-size:.6875rem!important;margin:0 0 .1rem!important;line-height:1.2!important;min-width:0!important;max-width:100%!important}.excalidraw-page .excalidraw .Island.App-menu__left fieldset{margin:0!important;padding:0!important;min-width:0!important;max-width:100%!important}.excalidraw-page .excalidraw .Island.App-menu__left .buttonList{flex-wrap:wrap!important;max-width:100%!important;column-gap:.2rem!important;row-gap:.2rem!important;padding:0!important}.excalidraw-page .excalidraw .Island.App-menu__left .buttonList label,.excalidraw-page .excalidraw .Island.App-menu__left .buttonList .ToolIcon,.excalidraw-page .excalidraw .Island.App-menu__left .buttonList .zIndexButton{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;padding:0!important;margin:0!important}.excalidraw-page .excalidraw .Island.App-menu__left .buttonList svg{width:13px!important;height:13px!important}.excalidraw-page .excalidraw .Island.App-menu__left .color-picker-container{display:flex!important;align-items:center!important;flex-wrap:wrap!important;gap:.2rem!important;max-width:100%!important}.excalidraw-page .excalidraw .Island.App-menu__left .color-picker__top-picks{display:flex!important;flex-wrap:wrap!important;justify-content:flex-start!important;gap:.15rem!important}.excalidraw-page .excalidraw .Island.App-menu__left .color-picker__button{width:1.15rem!important;height:1.15rem!important;--radius: .22rem}.excalidraw-page .excalidraw .Island.App-menu__left .color-picker__button.active-color{width:1.3rem!important;height:1.3rem!important}.excalidraw-page .excalidraw .Island.App-menu__left .range-wrapper{padding-top:.25rem!important;padding-bottom:1rem!important}.excalidraw-page .excalidraw .Island.App-menu__left .range-input{height:3px!important}.excalidraw-page .excalidraw .Island.App-menu__left .range-input::-webkit-slider-thumb,.excalidraw-page .excalidraw .Island.App-menu__left .range-input::-moz-range-thumb{width:11px!important;height:11px!important}.excalidraw-page .excalidraw .Island.App-menu__left .value-bubble,.excalidraw-page .excalidraw .Island.App-menu__left .zero-label{font-size:.625rem!important}.excalidraw-page .excalidraw .help-icon,.excalidraw-page .excalidraw button.help-icon,.excalidraw-page .excalidraw [class*=help-icon]{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:0!important;opacity:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;border:none!important;pointer-events:none!important}.excalidraw-page .excalidraw .Island{box-shadow:var(--xc-island-shadow)!important;border:1px solid var(--obs-border)!important;border-radius:10px!important;background:var(--obs-surface)!important;padding:4px 6px!important}.excalidraw-page .excalidraw .Island.App-toolbar{padding:5px 8px!important;display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;gap:3px!important;max-width:100%!important;width:auto!important;box-sizing:border-box!important}.excalidraw-page .excalidraw .App-toolbar-container{min-width:0!important;max-width:100%!important;flex-wrap:wrap!important;justify-content:center!important;display:flex!important;align-items:center!important;gap:3px!important}.excalidraw-page .excalidraw .App-toolbar .HintViewer,.excalidraw-page .excalidraw .App-toolbar [class*=HintViewer],.excalidraw-page .excalidraw .HintViewer,.excalidraw-page .excalidraw .App-toolbar__divider,.excalidraw-page .excalidraw .shapes-section__header,.excalidraw-page .excalidraw [class*=shapes-section__header],.excalidraw-page .excalidraw .App-toolbar .ToolIcon__keybinding,.excalidraw-page .excalidraw .ToolIcon__keybinding,.excalidraw-page .excalidraw .shapes-section .ToolIcon__label,.excalidraw-page .excalidraw .App-toolbar .ToolIcon__label,.excalidraw-page .excalidraw .ToolIcon__label{display:none!important}.excalidraw-page .excalidraw .App-toolbar .shapes-section,.excalidraw-page .excalidraw .App-toolbar section,.excalidraw-page .excalidraw .App-toolbar .Stack,.excalidraw-page .excalidraw .App-toolbar .Stack_horizontal,.excalidraw-page .excalidraw .App-toolbar .Stack_vertical,.excalidraw-page .excalidraw .shapes-section{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;gap:3px!important;min-width:0!important;max-width:100%!important}.excalidraw-page .excalidraw .ToolIcon__icon,.excalidraw-page .excalidraw .ToolIcon_type_button,.excalidraw-page .excalidraw .ToolIcon_type_radio,.excalidraw-page .excalidraw .ToolIcon{width:28px!important;height:28px!important;min-width:28px!important;padding:0!important;margin:0!important;border:none!important;border-radius:6px!important;background:transparent!important;color:var(--obs-muted)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;transition:background .15s,color .15s!important;box-shadow:none!important;box-sizing:border-box!important}.excalidraw-page .excalidraw .ToolIcon_type_button:hover,.excalidraw-page .excalidraw .ToolIcon_type_radio:hover,.excalidraw-page .excalidraw .ToolIcon__icon:hover,.excalidraw-page .excalidraw .ToolIcon:hover,.excalidraw-page .excalidraw .ToolIcon_type_button.ToolIcon_type_button--selected,.excalidraw-page .excalidraw .ToolIcon_type_radio.ToolIcon_type_radio--selected,.excalidraw-page .excalidraw .ToolIcon__icon--selected,.excalidraw-page .excalidraw .ToolIcon--selected,.excalidraw-page .excalidraw .ToolIcon.ToolIcon--selected{background:var(--obs-hover)!important;color:var(--obs-strong)!important}.excalidraw-page .excalidraw .ToolIcon__icon svg,.excalidraw-page .excalidraw .ToolIcon_type_button svg,.excalidraw-page .excalidraw .ToolIcon_type_radio svg,.excalidraw-page .excalidraw .ToolIcon svg{width:16px!important;height:16px!important}.excalidraw-page .excalidraw .zoom-actions,.excalidraw-page .excalidraw .zoom-action{background:transparent!important;border:none!important;box-shadow:none!important}.excalidraw-page .excalidraw .layer-ui__wrapper__footer-left .Island{background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important}.excalidraw-page .excalidraw .zoom-button,.excalidraw-page .excalidraw .zoom-in-button,.excalidraw-page .excalidraw .zoom-out-button,.excalidraw-page .excalidraw .reset-zoom-button{width:24px!important;height:24px!important;min-width:24px!important;padding:0!important;margin:0 1px!important;border:none!important;border-radius:6px!important;background:transparent!important;color:var(--obs-muted)!important;box-shadow:none!important;transition:background .15s,color .15s!important}.excalidraw-page .excalidraw .reset-zoom-button{width:auto!important;min-width:32px!important;padding:0 6px!important;font-size:11px!important}.excalidraw-page .excalidraw .zoom-button:hover,.excalidraw-page .excalidraw .zoom-in-button:hover,.excalidraw-page .excalidraw .zoom-out-button:hover,.excalidraw-page .excalidraw .reset-zoom-button:hover{background:var(--obs-hover)!important;color:var(--obs-strong)!important}.excalidraw-page .excalidraw .dropdown-menu-button,.excalidraw-page .excalidraw button.dropdown-menu-button{width:28px!important;height:28px!important;min-width:28px!important;padding:0!important;border:none!important;border-radius:6px!important;background:transparent!important;color:var(--obs-muted)!important;box-shadow:none!important;transition:background .15s,color .15s!important}.excalidraw-page .excalidraw .dropdown-menu-button:hover,.excalidraw-page .excalidraw button.dropdown-menu-button:hover{background:var(--obs-hover)!important;color:var(--obs-strong)!important}.excalidraw-page .nc-agentbar__feedback,.excalidraw-page .nc-agentbar__history,.excalidraw-page .nc-agentbar__shell,.excalidraw-page .nc-agentbar .chat-input-box,.excalidraw-page .nc-agentbar .model-dropdown{pointer-events:auto}.excalidraw-page .cv-excalidraw-root{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:var(--bg-primary)}.excalidraw-page .cv-excalidraw-root .excalidraw,.excalidraw-page .cv-excalidraw-root .excalidraw .excalidraw-container,.excalidraw-page .cv-excalidraw-root .excalidraw .App,.cv-excalidraw-root,.cv-excalidraw-root .excalidraw{width:100%;height:100%}.cv-canvas-wrap{flex:1;position:relative;overflow:hidden}.cv-sidebar{width:220px;background:var(--bg-secondary);display:flex;flex-direction:column;flex-shrink:0;z-index:5;border-right:1px solid var(--border)}.cv-sidebar__header{display:flex;align-items:center;gap:6px;padding:10px 10px 6px}.cv-sidebar__title{flex:1;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary)}.cv-sidebar__btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast)}.cv-sidebar__btn:hover{background:var(--bg-hover);color:var(--text-primary)}.cv-sidebar__list{flex:1;overflow-y:auto;padding:6px 8px}.cv-sidebar__empty{padding:24px 16px;text-align:center;font-size:12px;color:var(--text-secondary)}.cv-sidebar__item{display:flex;align-items:center;gap:8px;padding:7px 10px;cursor:pointer;font-size:13px;color:var(--text-primary);transition:background .15s ease,color .15s ease;position:relative;border-radius:var(--radius-md);margin:1px 0}.cv-sidebar__item:hover{background:var(--bg-hover)}.cv-sidebar__item--active{background:transparent;color:var(--text-primary)}.cv-sidebar__item--active:hover{background:var(--bg-hover)}.cv-sidebar__item--active svg{opacity:1}.cv-sidebar__item--active .cv-sidebar__item-name{font-weight:600}.cv-sidebar__item-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.cv-sidebar__item-actions{display:flex;gap:2px;flex-shrink:0;opacity:0;visibility:hidden;transition:opacity .12s ease,visibility .12s ease}.cv-sidebar__item:hover .cv-sidebar__item-actions,.cv-sidebar__item--active .cv-sidebar__item-actions{opacity:1;visibility:visible}.cv-sidebar__item-actions button{width:22px;height:22px;border:none;background:transparent;color:inherit;border-radius:var(--radius-sm, 6px);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.5;transition:opacity .12s ease,background .12s ease}.cv-sidebar__item-actions button:hover{opacity:1;background:var(--bg-hover)}.cv-sidebar__rename{flex:1;border:1px solid var(--accent-secondary);background:var(--bg-elevated);border-radius:var(--radius-md);padding:4px 8px;font-size:12px;outline:none;color:var(--text-primary)}.cv-sidebar__ds-section{padding:4px 8px 0;border-top:1px solid var(--border)}.cv-sidebar__ds-toggle{display:flex;align-items:center;gap:6px;width:100%;padding:7px 4px;border:none;background:transparent;color:var(--text-secondary);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;cursor:pointer;border-radius:var(--radius-md);transition:var(--transition-fast)}.cv-sidebar__ds-toggle:hover{background:var(--bg-hover)}.cv-sidebar__ds-config{padding:4px 4px 8px}.cv-sidebar__ds-label{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--text-primary);gap:8px}.cv-sidebar__ds-input{width:52px;border:1px solid var(--border);border-radius:var(--radius-md);padding:4px 6px;font-size:12px;text-align:center;outline:none;background:var(--bg-elevated);color:var(--text-primary);transition:var(--transition-fast)}.cv-sidebar__ds-input:focus{border-color:var(--accent-secondary);box-shadow:0 0 0 3px #6366f126}.cv-sidebar__ds-presets{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.cv-sidebar__ds-preset-tag{font-size:10px;padding:2px 6px;border-radius:var(--radius-sm, 6px);background:var(--bg-tertiary);color:var(--text-secondary);white-space:nowrap}.cv-sidebar__footer{padding:8px 10px;border-top:1px solid var(--border)}.cv-sidebar__footer-btn{display:flex;align-items:center;gap:6px;width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-elevated);color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:var(--transition-fast)}.cv-sidebar__footer-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-light)}.cv-sidebar-toggle{position:absolute;left:0;top:50%;transform:translateY(-50%);z-index:15;width:20px;height:40px;border:1px solid var(--border);border-left:none;border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--bg-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:var(--transition-fast)}.cv-sidebar-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.cv-ds-slot{display:flex;align-items:center;gap:2px;margin-left:2px}.cv-ds-divider{width:1px;height:20px;background:var(--border);margin:0 4px;flex-shrink:0}.cv-ds-tool__btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);background:transparent;color:var(--text-primary);padding:0}.cv-ds-tool__btn:hover{background:var(--bg-hover)}.cv-ds-tool__btn:not(.cv-widget-tool__btn):active{background:var(--accent-secondary)!important;color:#fff!important}.cv-ds-tool__btn:not(.cv-widget-tool__btn):active svg{stroke:#fff}.cv-ds-overlay{position:absolute;z-index:100;display:flex;flex-direction:column;gap:4px;pointer-events:none}.cv-ds-overlay__btn{pointer-events:auto;display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:50%;cursor:pointer;transition:var(--transition-fast);box-shadow:var(--glass-shadow)}.cv-ds-overlay__btn:hover{transform:scale(1.12);box-shadow:var(--glass-shadow-hover)}.cv-ds-overlay__btn--add{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff}.cv-ds-overlay__btn--remove{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.cv-ds-overlay--array{gap:6px}.cv-ds-overlay--array .cv-ds-overlay__btn{width:24px;height:24px;box-shadow:0 4px 14px #00000024}.cv-status-bar{display:flex;align-items:center;gap:12px;padding:5px 14px;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-top:1px solid var(--border);font-size:11px;color:var(--text-secondary);z-index:10;flex-shrink:0}.cv-status-bar__item{font-variant-numeric:tabular-nums}.cv-status-bar__sync{margin-left:auto}.cv-status-bar__sync--saved{color:var(--accent)}.cv-status-bar__sync--syncing{color:var(--accent-secondary)}.cv-status-bar__sync--pending{color:var(--accent-warm)}.cv-status-bar__sync--error{color:var(--danger)}.cv-main .excalidraw .sidebar-trigger,.cv-main .excalidraw .default-sidebar-trigger,.cv-main .excalidraw [class*=sidebar-trigger],.cv-main .excalidraw .layer-ui__library,.cv-main .excalidraw [class*=library-menu],.cv-main .excalidraw .library-button,.cv-main .excalidraw [class*=Library],.cv-main .excalidraw button[title=Library]{display:none!important;visibility:hidden!important;width:0!important;height:0!important;overflow:hidden!important;pointer-events:none!important;position:absolute!important;left:-9999px!important}.cv-main .excalidraw .welcome-screen-center,.cv-main .excalidraw .welcome-screen-menu-hints,.cv-main .excalidraw [class*=welcome-screen],.excalidraw-page .excalidraw .ExcalidrawLogo,.excalidraw-page .excalidraw [class*=ExcalidrawLogo],.cv-main .excalidraw .ExcalidrawLogo,.cv-main .excalidraw [class*=ExcalidrawLogo],.excalidraw-page .HelpDialog__header,.cv-main .HelpDialog__header,.excalidraw .HelpDialog__header{display:none!important}.cv-main .excalidraw{--color-primary: var(--accent-secondary)}.cv-main .excalidraw .layer-ui__wrapper{z-index:10!important}.cv-widget-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none!important;overflow:visible}.cv-main .cw-overlay,.cv-main .nw-overlay,.cv-main .aw-overlay{pointer-events:none}.obs-app.cv-app .excalidraw canvas.excalidraw__canvas{touch-action:none;z-index:2}.dcw-shell,.nw-overlay,.aw-overlay,.uw-overlay{mix-blend-mode:multiply}[data-theme=dark] .dcw-shell,[data-theme=dark] .nw-overlay,[data-theme=dark] .aw-overlay,[data-theme=dark] .uw-overlay{mix-blend-mode:screen}.cw-drag-ghost{background:#6366f114;border:1.5px dashed rgba(99,102,241,.4);border-radius:8px;padding:8px;display:flex;align-items:center;justify-content:center}.cv-ds-tool__btn[draggable=true]{cursor:grab}.cv-ds-tool__btn[draggable=true]:active{cursor:grabbing}.cv-widget-menu{position:relative;display:flex;align-items:center}.cv-widget-menu__popover{position:absolute;top:calc(100% + 10px);left:50%;width:310px;transform:translate(-50%);padding:10px;z-index:30;color:var(--obs-strong, var(--text-primary));background:var(--obs-surface, var(--island-bg-color, var(--bg-elevated)));border:1px solid var(--obs-border, var(--default-border-color, var(--border)));border-radius:8px;box-shadow:0 12px 30px #0003}.excalidraw-page .excalidraw .App-toolbar .cv-widget-menu__popover{color:var(--obs-strong)!important;background:var(--obs-surface)!important;border-color:var(--obs-border)!important}.cv-widget-menu__title{padding:2px 4px 8px;color:var(--obs-muted, var(--text-secondary));font-size:11px;font-weight:700;text-transform:uppercase}.cv-widget-menu__title--section{margin-top:8px;padding-top:9px;border-top:1px solid var(--obs-border, var(--border))}.cv-widget-menu__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.cv-widget-menu__item{min-width:0;height:36px;display:flex;align-items:center;gap:8px;padding:0 9px;border:0;border-radius:6px;color:inherit;background:transparent;cursor:pointer;font:inherit;font-size:12px;text-align:left}.cv-widget-menu__item:hover,.cv-widget-menu__item--active{background:var(--obs-hover, var(--bg-hover))}.cv-widget-menu__item--active{color:var(--color-primary, #6965db);font-weight:700}.cv-widget-menu__item>span{width:20px;height:20px;display:grid;place-items:center;flex:0 0 auto}.cv-widget-menu__item svg{width:17px;height:17px;fill:none;stroke:currentColor}.cv-main .excalidraw .cw-overlay{border-radius:var(--border-radius-lg, 12px);overflow:visible;background:var(--island-bg-color, color-mix(in srgb, var(--bg-primary, #1e1e2e) 94%, transparent));border:1px solid var(--default-border-color, var(--border, #45475a));box-shadow:0 0 0 1px color-mix(in srgb,var(--border, #45475a) 35%,transparent),0 6px 20px #0000002e;display:flex;flex-direction:column;font-family:var(--ui-font, var(--font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif));transition:box-shadow .18s ease,border-color .18s ease;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.cw-overlay{border-radius:12px;overflow:visible;background:color-mix(in srgb,var(--bg-primary, #ffffff) 88%,transparent);border:1px solid var(--border, #45475a);box-shadow:0 6px 20px #0000001f;display:flex;flex-direction:column;font-family:var(--font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);transition:box-shadow .18s ease;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.cw-overlay--selected{outline:2px solid var(--accent-secondary, #6366f1);outline-offset:2px}.cw-overlay--dragging{box-shadow:none;opacity:.92}.cw-overlay--resizing{box-shadow:none;opacity:.96}.cw-overlay--dragging *,.cw-overlay--resizing *{transition:none!important}.cv-main .excalidraw .cw-header{border-radius:var(--border-radius-lg, 12px) var(--border-radius-lg, 12px) 0 0}.cw-header{display:flex;align-items:center;gap:6px;padding:6px 10px;background:color-mix(in srgb,var(--island-bg-color, var(--bg-primary)) 65%,transparent);border-bottom:1px solid color-mix(in srgb,var(--default-border-color, var(--border, #45475a)) 70%,transparent);min-height:32px;flex-shrink:0;cursor:grab;border-radius:12px 12px 0 0;-webkit-user-select:none;user-select:none}.cw-overlay--dragging .cw-header{cursor:grabbing}.cw-header--ft{gap:4px;padding:5px 8px 5px 10px}.cw-header--ft .ft-actions__btn{flex-shrink:0}.cw-toolbar-spacer{flex:1;min-width:2px}.cw-overlay--drawcode{border:2px solid color-mix(in srgb,var(--text-primary, #1e293b) 85%,transparent);border-radius:14px;box-shadow:0 8px 24px #0f172a1f,0 1px #fff9 inset;background:color-mix(in srgb,var(--bg-primary, #ffffff) 96%,transparent)}[data-theme=dark] .cw-overlay--drawcode{border-color:color-mix(in srgb,var(--border, #45475a) 90%,transparent);box-shadow:0 8px 24px #00000059}.cw-overlay--drawcode .cw-editor-area{background:color-mix(in srgb,#ffffff 92%,var(--bg-primary))}[data-theme=dark] .cw-overlay--drawcode .cw-editor-area{background:color-mix(in srgb,var(--bg-primary) 88%,#0f0f0f)}.cw-overlay--drawcode .cw-output-text{color:#16a34a}.cw-toolbar__run{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;border:none;font-size:12px;font-weight:600;cursor:pointer;background:#22c55e;color:#fff!important;transition:background .15s ease,transform .1s ease}.cw-toolbar__run:hover{background:#16a34a;color:#fff!important}.cw-toolbar__run--stop{background:#ef4444!important;color:#fff!important}.cw-toolbar__run--stop:hover{background:#dc2626!important;color:#fff!important}.excalidraw-page .cv-ds-slot .cv-widget-tool__btn{width:28px!important;height:28px!important;min-width:28px!important;padding:0!important;border:none!important;border-radius:6px!important;background:transparent!important;color:var(--obs-muted)!important;box-shadow:none!important;filter:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.excalidraw-page .cv-ds-slot .cv-widget-tool__btn svg{width:16px!important;height:16px!important;stroke:currentColor;fill:none}.excalidraw-page .cv-ds-slot .cv-widget-tool__btn:hover:not(.cv-widget-tool__btn--active){background:var(--obs-hover)!important;color:var(--obs-strong)!important}.excalidraw-page .cv-ds-slot .cv-widget-tool__btn--active{background:var(--color-primary, #6965db)!important;color:#fff!important}.excalidraw-page .cv-ds-slot .cv-widget-tool__btn--active svg{stroke:currentColor}.excalidraw-page .cv-ds-slot .cv-widget-tool__btn:not(.cv-widget-tool__btn--active):active{background:var(--obs-hover)!important;color:var(--obs-strong)!important}.excalidraw-page .cv-ds-slot .cv-widget-tool__btn:focus,.excalidraw-page .cv-ds-slot .cv-widget-tool__btn:focus-visible{outline:none!important;box-shadow:none!important}.cw-status-inline{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:500;color:var(--obs-muted, var(--text-tertiary, #6c7086));white-space:nowrap;max-width:120px;overflow:hidden;text-overflow:ellipsis}.cw-status-inline__dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.cw-toolbar__close:hover{color:#fff!important;background:#ef4444!important}.cw-lang-select{font-size:11px;min-height:28px;padding:4px 10px;border-radius:var(--border-radius-md, 8px);border:1px solid color-mix(in srgb,var(--border, #45475a) 80%,transparent);background:color-mix(in srgb,var(--bg-primary, #111) 40%,transparent);color:var(--text-primary, #cdd6f4);cursor:pointer;outline:none;transition:border-color .15s ease,background .15s ease}.cw-lang-select:hover{border-color:color-mix(in srgb,var(--accent-secondary, #6366f1) 45%,var(--border))}.cw-lang-select:focus{border-color:var(--accent-secondary, #6366f1)}.cw-lang-select--ft{height:28px;min-height:28px;padding:0 12px 0 10px;border-radius:999px;font-size:12px;font-weight:500;max-width:120px;border:1px solid color-mix(in srgb,var(--obs-input-border, var(--border, #45475a)) 70%,transparent);background:color-mix(in srgb,var(--obs-input-bg, var(--bg-primary)) 45%,transparent);color:var(--obs-strong, var(--text-primary, #cdd6f4))}.cw-lang-select--ft:focus{border-color:color-mix(in srgb,var(--border-focus, var(--accent-secondary)) 80%,transparent);background:color-mix(in srgb,var(--obs-input-bg, var(--bg-primary)) 60%,transparent)}.cw-lang-picker{position:relative;flex-shrink:0;z-index:1}.cw-lang-picker--open{z-index:30}.cw-lang-picker__trigger{display:inline-flex;align-items:center;justify-content:space-between;gap:6px;height:28px;min-height:28px;padding:0 8px 0 12px;max-width:132px;border-radius:999px;font-size:12px;font-weight:500;font-family:inherit;line-height:1;border:1px solid color-mix(in srgb,var(--obs-input-border, var(--border, #45475a)) 70%,transparent);background:color-mix(in srgb,var(--obs-input-bg, var(--bg-primary)) 45%,transparent);color:var(--obs-strong, var(--text-primary, #cdd6f4));cursor:pointer;outline:none;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.cw-lang-picker__trigger:hover{border-color:color-mix(in srgb,var(--border-focus, var(--accent-secondary)) 55%,transparent);background:color-mix(in srgb,var(--obs-input-bg, var(--bg-primary)) 58%,transparent)}.cw-lang-picker__trigger--open{border-color:color-mix(in srgb,var(--border-focus, var(--accent-secondary)) 80%,transparent);background:color-mix(in srgb,var(--obs-input-bg, var(--bg-primary)) 65%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent-secondary, #6366f1) 25%,transparent)}.cw-lang-picker__value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;text-align:left}.cw-lang-picker__caret{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--obs-muted, var(--text-tertiary));transition:transform .18s ease}.cw-lang-picker__trigger--open .cw-lang-picker__caret{transform:rotate(180deg)}.cw-lang-picker__caret svg{width:12px;height:12px;stroke-linecap:round;stroke-linejoin:round}.cw-lang-picker__menu{position:absolute;top:calc(100% + 5px);left:0;min-width:100%;width:max-content;max-width:min(220px,70vw);margin:0;padding:6px;list-style:none;border-radius:10px;border:1px solid color-mix(in srgb,var(--obs-border, var(--border, #45475a)) 85%,transparent);background:var(--obs-chrome, color-mix(in srgb, var(--bg-primary, #1e1e2e) 96%, #fff));box-shadow:0 0 0 1px color-mix(in srgb,var(--obs-border, var(--border)) 40%,transparent),0 10px 28px #00000047;z-index:40}.cw-lang-picker__menu li{margin:0;padding:0}.cw-lang-picker__option{display:block;width:100%;text-align:left;padding:7px 10px;margin:0;border:none;border-radius:6px;font-size:12px;font-weight:400;font-family:inherit;line-height:1.35;color:var(--obs-strong, var(--text-primary));background:transparent;cursor:pointer;transition:background .12s ease,color .12s ease}.cw-lang-picker__option:hover{background:color-mix(in srgb,var(--obs-hover, rgba(255, 255, 255, .06)) 55%,transparent);color:var(--obs-strong, var(--text-primary))}.cw-lang-picker__option--active{font-weight:600;background:color-mix(in srgb,var(--bg-active, rgba(99, 102, 241, .18)) 76%,transparent);color:var(--obs-strong, var(--text-primary))}.cw-lang-picker__option--active:hover{background:color-mix(in srgb,var(--bg-active, rgba(99, 102, 241, .22)) 80%,transparent)}.cw-editor-area{flex:1;min-height:0;overflow:hidden;border-radius:0 0 8px 8px;background:transparent}.cw-zoom-hint{display:flex;align-items:center;justify-content:center;height:100%;font-size:12px;color:var(--text-tertiary, #6c7086)}.cw-output{height:100px;overflow-y:auto;border-top:1px solid color-mix(in srgb,var(--border, #45475a) 78%,transparent);background:color-mix(in srgb,var(--bg-primary) 40%,transparent);flex-shrink:0;border-radius:0 0 12px 12px;display:flex;flex-direction:column}.cw-output__bar{display:flex;align-items:center;justify-content:space-between;padding:4px 10px 2px;flex-shrink:0}.cw-output__label{font-size:11px;font-weight:600;color:var(--text-secondary, #64748b);text-transform:uppercase;letter-spacing:.04em}.cw-output__clear{border:none;background:transparent;font-size:11px;color:var(--text-tertiary, #94a3b8);cursor:pointer;padding:2px 6px;border-radius:4px}.cw-output__clear:hover{color:var(--text-primary);background:color-mix(in srgb,var(--bg-hover, rgba(0,0,0,.06)) 80%,transparent)}.cw-output-text{margin:0;padding:6px 10px;font-size:11px;font-family:var(--font-mono, "JetBrains Mono", "Fira Code", monospace);color:var(--text-primary, #cdd6f4);white-space:pre-wrap;word-break:break-all;line-height:1.5}.cw-overlay .monaco-editor,.cw-overlay .monaco-editor-background,.cw-overlay .monaco-editor .margin,.cw-overlay .monaco-editor .monaco-editor-background,.cw-overlay .monaco-editor .inputarea.ime-input,.cw-overlay .monaco-editor .glyph-margin{background:transparent!important}.cw-overlay .monaco-editor .current-line,.cw-overlay .monaco-editor .view-overlays .current-line{border:none!important;background:color-mix(in srgb,var(--border, #45475a) 28%,transparent)!important}.cw-overlay .monaco-editor .line-numbers{color:var(--text-tertiary, #6c7086)!important}.monaco-editor .suggest-widget,.monaco-editor .parameter-hints-widget{border:1px solid color-mix(in srgb,var(--accent-secondary, #6366f1) 20%,var(--border, #45475a))!important;border-radius:10px!important;box-shadow:0 14px 34px #00000038!important;overflow:hidden!important}.monaco-editor .suggest-widget{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.monaco-editor .suggest-widget .monaco-list-row{border-radius:6px!important;margin:2px 6px!important}.monaco-editor .suggest-widget .monaco-list-row.focused,.monaco-editor .suggest-widget .monaco-list-row.selected{background:color-mix(in srgb,var(--accent-secondary, #6366f1) 18%,transparent)!important}.monaco-editor .suggest-widget .details-label,.monaco-editor .suggest-widget .readMore{opacity:.9}.monaco-editor .parameter-hints-widget{padding:6px 8px!important}.cw-status-dot{display:inline-flex;align-items:center;gap:4px;font-weight:600;margin-left:2px;-webkit-user-select:none;user-select:none}.cw-output::-webkit-scrollbar{width:4px}.cw-output::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb, #585b70);border-radius:4px}.cw-resize{position:absolute;z-index:2;opacity:0;transition:opacity .12s}.cw-overlay:hover .cw-resize,.nw-overlay:hover .cw-resize,.aw-overlay:hover .cw-resize{opacity:1}.cw-resize--e{top:8px;right:-3px;width:6px;height:calc(100% - 16px);cursor:e-resize}.cw-resize--w{top:8px;left:-3px;width:6px;height:calc(100% - 16px);cursor:w-resize}.cw-resize--s{left:8px;bottom:-3px;width:calc(100% - 16px);height:6px;cursor:s-resize}.cw-resize--n{left:8px;top:-3px;width:calc(100% - 16px);height:6px;cursor:n-resize}.cw-resize--se{right:-4px;bottom:-4px;width:10px;height:10px;cursor:se-resize;border-radius:2px;background:var(--accent-secondary, #6366f1)}.cw-resize--sw{left:-4px;bottom:-4px;width:10px;height:10px;cursor:sw-resize;border-radius:2px;background:var(--accent-secondary, #6366f1)}.cw-resize--ne{right:-4px;top:-4px;width:10px;height:10px;cursor:ne-resize;border-radius:2px;background:var(--accent-secondary, #6366f1)}.cw-resize--nw{left:-4px;top:-4px;width:10px;height:10px;cursor:nw-resize;border-radius:2px;background:var(--accent-secondary, #6366f1)}.nw-overlay{border-radius:10px;overflow:visible;background:var(--nw-bg, #fff);border:1.5px solid var(--nw-border, #d1d5db);box-shadow:0 6px 18px #0f172a14;display:flex;flex-direction:column;font-family:var(--font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);transition:box-shadow .15s ease}.nw-overlay--selected{outline:2px solid var(--accent-secondary, #6366f1);outline-offset:2px}.nw-overlay--dragging{box-shadow:0 16px 48px #0000004d;opacity:.92}.nw-overlay--resizing{box-shadow:0 12px 40px #00000040;opacity:.96}.nw-overlay--canvas-tool .nw-header,.nw-overlay--canvas-tool .nw-textarea,.nw-overlay--canvas-tool .cw-resize{pointer-events:none!important}.nw-overlay--dragging *,.nw-overlay--resizing *{transition:none!important}.nw-header{display:flex;align-items:center;padding:4px 10px;gap:3px;background:color-mix(in srgb,var(--nw-bg, #fff) 92%,var(--nw-border, #d1d5db));border-bottom:1px solid color-mix(in srgb,var(--nw-border, #d1d5db) 42%,transparent);height:32px;flex-shrink:0;cursor:grab;border-radius:8px 8px 0 0;-webkit-user-select:none;user-select:none}.nw-overlay--dragging .nw-header{cursor:grabbing}.nw-title{margin-right:auto;font-size:12px;font-weight:600;color:var(--nw-ink, #1f2937)}.nw-close-btn{margin-left:0;font-size:13px;padding:2px 6px;border:none;background:transparent;color:var(--nw-muted, #6b7280);cursor:pointer;border-radius:4px;line-height:1;opacity:.5;transition:opacity .12s,color .12s,background .12s}.nw-open-btn:hover{color:currentColor;background:color-mix(in srgb,currentColor 10%,transparent)}.nw-header:hover .nw-close-btn{opacity:1}.nw-close-btn:hover{color:#fff;background:#ef4444;opacity:1}.nw-close-btn.nw-open-btn:hover{color:inherit;background:color-mix(in srgb,currentColor 10%,transparent)}.nw-textarea{flex:1;border:none;outline:none;resize:none;padding:10px 12px;font-size:13px;font-family:var(--font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);line-height:1.6;background:transparent;color:var(--nw-ink, #1f2937);border-radius:0 0 8px 8px}.nw-textarea::placeholder{color:var(--nw-muted, #6b7280);opacity:.7}.nw-mode-btn svg{width:14px;height:14px}.nw-full-body{min-height:0;display:grid;grid-template-rows:34px 30px minmax(0,1fr);overflow:hidden}.nw-title-input{min-width:0;border:0;border-bottom:1px solid color-mix(in srgb,var(--nw-border) 30%,transparent);outline:0;padding:5px 11px;color:var(--nw-ink);background:transparent;font:700 13px/1.2 var(--font-hand, inherit)}.nw-title-input::placeholder{color:var(--nw-muted);font-weight:500}.nw-formatbar{display:flex;align-items:center;gap:3px;padding:3px 8px;border-bottom:1px solid color-mix(in srgb,var(--nw-border) 25%,transparent)}.nw-formatbar button{width:24px;height:23px;display:grid;place-items:center;border:0;border-radius:5px;color:var(--nw-muted);background:transparent;font:700 11px/1 var(--font-hand, inherit);cursor:pointer}.nw-formatbar button:hover{color:var(--nw-ink);background:color-mix(in srgb,var(--nw-border) 12%,transparent)}.nw-full-body .nw-textarea{min-height:0;height:100%;border-radius:0 0 8px 8px}.cv-main .excalidraw .aw-overlay{border-radius:8px;overflow:hidden;background:color-mix(in srgb,var(--island-bg-color, var(--bg-primary, #1e1e2e)) 96%,transparent);border:1px solid color-mix(in srgb,var(--default-border-color, var(--border, #45475a)) 55%,transparent);box-shadow:0 4px 14px #0000001f;display:flex;flex-direction:column;font-family:var(--ui-font, var(--font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif));transition:box-shadow .18s ease,border-color .18s ease,opacity .15s ease;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.aw-overlay{--aw-surface: color-mix(in srgb, var(--bg-primary, #ffffff) 97%, transparent);--aw-surface-strong: var(--bg-primary, #ffffff);--aw-cell-bg: color-mix(in srgb, var(--bg-primary, #ffffff) 92%, transparent);--aw-cell-bg-hover: color-mix(in srgb, var(--accent-secondary, #6366f1) 6%, var(--bg-primary, #ffffff));--aw-index-bg: color-mix(in srgb, var(--accent-secondary, #6366f1) 8%, transparent);--aw-index-fg: color-mix(in srgb, var(--accent-secondary, #6366f1) 65%, var(--text-secondary, #475569));--aw-divider-soft: color-mix(in srgb, var(--border, #e2e8f0) 70%, transparent);--aw-accent: var(--accent-secondary, #6366f1);border-radius:10px;overflow:hidden;background:var(--aw-surface);border:1px solid color-mix(in srgb,var(--border, #e2e8f0) 80%,#64748b 20%);box-shadow:0 4px 16px -4px #0f172a14,0 1px 2px #0f172a0a;display:flex;flex-direction:column;font-family:var(--font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);transition:box-shadow .18s ease,opacity .15s ease;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}[data-theme=dark] .aw-overlay,.dark .aw-overlay{--aw-surface: color-mix(in srgb, var(--bg-primary, #1e1e2e) 96%, transparent);--aw-surface-strong: var(--bg-primary, #1e1e2e);--aw-cell-bg: color-mix(in srgb, var(--bg-secondary, #313244) 65%, transparent);--aw-cell-bg-hover: color-mix(in srgb, var(--accent-secondary, #818cf8) 14%, var(--bg-secondary, #313244));--aw-index-bg: color-mix(in srgb, var(--accent-secondary, #818cf8) 14%, transparent);--aw-index-fg: color-mix(in srgb, var(--accent-secondary, #a5b4fc) 78%, var(--text-secondary, #cbd5e1));--aw-divider-soft: color-mix(in srgb, var(--border, #45475a) 65%, transparent);box-shadow:0 4px 16px -4px #00000073,0 1px 2px #0000004d}.aw-overlay:hover{box-shadow:0 6px 20px -4px #0f172a1f,0 1px 2px #0f172a0d}[data-theme=dark] .aw-overlay:hover,.dark .aw-overlay:hover{box-shadow:0 6px 22px -4px #0000008c,0 1px 2px #00000059}.aw-panel__header.cw-header--ft{flex-shrink:0;cursor:grab;border-bottom:1px solid var(--aw-divider-soft);background:color-mix(in srgb,var(--island-bg-color, var(--bg-primary)) 92%,transparent);border-radius:0;gap:8px}.aw-overlay--dragging .aw-panel__header{cursor:grabbing}.aw-panel__body{flex:1 1 auto;min-height:0;overflow:hidden;display:flex;flex-direction:column;background:transparent;padding:0}.aw-overlay .aw-panel__body{overflow:visible;justify-content:flex-start;align-items:stretch;padding-bottom:1px}.aw-panel__brand{display:inline-flex;align-items:center;gap:7px;flex-shrink:0}.aw-panel__brand-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:5px;color:var(--aw-accent);background:color-mix(in srgb,var(--aw-accent) 12%,transparent)}.aw-panel__title{font-weight:600;font-size:12px;color:var(--obs-strong, var(--text-primary, #0f172a));letter-spacing:.01em}[data-theme=dark] .aw-panel__title,.dark .aw-panel__title{color:var(--obs-strong, var(--text-primary, #e2e8f0))}.aw-panel__meta{display:inline-flex;align-items:center;height:18px;padding:0 7px;font-size:10.5px;font-weight:600;letter-spacing:.02em;color:var(--aw-index-fg);background:var(--aw-index-bg);border-radius:999px;white-space:nowrap;font-variant-numeric:tabular-nums}.aw-toolbar__append{color:var(--aw-accent)}.aw-toolbar__append:hover{color:color-mix(in srgb,var(--aw-accent) 80%,#fff);background:color-mix(in srgb,var(--aw-accent) 10%,transparent)}.aw-overlay--selected{outline:1.5px solid color-mix(in srgb,var(--aw-accent) 70%,transparent);outline-offset:1px}.aw-overlay--dragging{opacity:.92}.aw-overlay--resizing{opacity:.96}.aw-overlay--dragging *,.aw-overlay--resizing *{transition:none!important}.aw-content{display:flex;flex-direction:column;gap:0;padding:6px 8px 8px;min-height:0;will-change:transform;opacity:var(--aw-opacity, 1);backface-visibility:hidden;-webkit-backface-visibility:hidden}.aw-array-stage{display:flex;flex-direction:column;align-items:stretch;gap:0;min-height:0;flex:0 0 auto;width:100%}.aw-track{flex:0 0 auto;overflow:visible;padding:0;cursor:default;display:flex;flex-direction:column;align-items:stretch;width:100%}.aw-overlay--dragging .aw-track{cursor:default}.aw-track-inner{position:relative;display:flex;flex-direction:row;align-items:stretch;gap:4px;width:100%;min-width:0;border:none;border-radius:0;overflow:visible;background:transparent}.aw-cell{position:relative;flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:0;transform-origin:left center;margin:0;padding:0;box-sizing:border-box;border-radius:8px;background:var(--aw-cell-bg);border:1px solid var(--aw-divider-soft);overflow:hidden;transition:background .14s ease,border-color .14s ease,transform .14s ease,box-shadow .14s ease}.aw-cell:hover{background:var(--aw-cell-bg-hover);border-color:color-mix(in srgb,var(--aw-accent) 35%,var(--aw-divider-soft))}.aw-cell:focus-within{border-color:color-mix(in srgb,var(--aw-accent) 65%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--aw-accent) 20%,transparent)}.aw-cell--new{animation:aw-cell-in .36s cubic-bezier(.22,1,.36,1)}.aw-cell__box{position:relative;height:44px;border:none;border-radius:0;box-shadow:none;background:transparent;display:flex;align-items:center;justify-content:center}.aw-cell__input{width:100%;height:100%;border:none;border-radius:0;background:transparent;color:var(--aw-value, var(--text-primary, #0f172a));caret-color:var(--aw-accent);text-align:center;font-size:16px;font-weight:600;letter-spacing:-.01em;font-variant-numeric:tabular-nums;outline:none;padding:0 6px;transition:color .12s}.aw-cell__input::placeholder{color:color-mix(in srgb,var(--aw-muted, var(--text-tertiary, #64748b)) 70%,transparent);font-weight:500}.aw-cell__input::selection{background:var(--aw-selection-bg, color-mix(in srgb, var(--aw-accent) 28%, transparent));color:var(--aw-value, inherit)}.aw-cell__input::-moz-selection{background:var(--aw-selection-bg, color-mix(in srgb, var(--aw-accent) 28%, transparent));color:var(--aw-value, inherit)}[data-theme=dark] .aw-cell__input,.dark .aw-cell__input{color:var(--aw-value, var(--text-primary, #f1f5f9))}.aw-cell__remove{position:absolute;top:3px;right:3px;width:16px;height:16px;border:none;border-radius:999px;background:color-mix(in srgb,var(--aw-surface-strong, #fff) 90%,transparent);color:var(--text-tertiary, #94a3b8);display:inline-flex;align-items:center;justify-content:center;opacity:0;transform:scale(.85);box-shadow:0 1px 3px #0f172a2e;transition:opacity .12s ease,color .12s ease,background .12s ease,transform .12s ease}.aw-cell:hover .aw-cell__remove{opacity:1;transform:scale(1)}.aw-cell__remove:hover{color:#fff;background:#ef4444;box-shadow:0 2px 6px #ef444466}[data-theme=dark] .aw-cell__remove,.dark .aw-cell__remove{background:color-mix(in srgb,var(--bg-secondary, #313244) 92%,transparent)}.aw-cell__index{display:flex;align-items:center;justify-content:center;width:100%;min-height:18px;flex-shrink:0;line-height:1;overflow:visible;border:none;border-top:1px solid var(--aw-divider-soft);background:var(--aw-index-bg);color:var(--aw-index-fg);font-size:10px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.06em}.aw-insert-btn{position:absolute;top:0;left:-10px;width:18px;height:44px;border:none;background:transparent;color:var(--text-secondary, #64748b);display:inline-flex;align-items:center;justify-content:center;transition:transform .14s ease,opacity .14s ease;pointer-events:auto;opacity:1;z-index:4}.aw-insert-btn--start{left:-11px}.aw-insert-btn--end{left:auto;right:-11px}.aw-insert-btn__icon{width:16px;height:16px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--aw-accent) 35%,var(--aw-divider-soft));background:var(--aw-surface-strong, #ffffff);color:var(--aw-accent);box-shadow:0 2px 8px -2px #0f172a2e;opacity:0;transform:scale(.82);transition:opacity .12s ease,transform .12s ease,background .12s ease,color .12s ease,border-color .12s ease}.aw-overlay:hover .aw-insert-btn__icon{opacity:.55;transform:scale(.92)}.aw-insert-btn:hover .aw-insert-btn__icon,.aw-insert-btn:focus-visible .aw-insert-btn__icon{opacity:1;transform:scale(1.08);background:var(--aw-accent);color:#fff;border-color:var(--aw-accent);box-shadow:0 3px 10px -2px color-mix(in srgb,var(--aw-accent) 50%,transparent)}[data-theme=dark] .aw-insert-btn__icon,.dark .aw-insert-btn__icon{background:var(--bg-secondary, #313244);border-color:color-mix(in srgb,var(--aw-accent) 40%,var(--aw-divider-soft))}.aw-border-handle{position:absolute;top:-2px;width:14px;height:100%;opacity:0;transition:opacity .12s ease,background .12s ease;z-index:5;border-radius:8px}.aw-border-handle--w{left:-6px;cursor:w-resize}.aw-border-handle--e{right:-6px;cursor:e-resize}.aw-border-handle--visible{opacity:.22}.aw-border-handle:hover{opacity:.32;background:color-mix(in srgb,var(--accent-secondary, #6366f1) 20%,transparent)}@keyframes aw-cell-in{0%{opacity:0;transform:translate(8px) scaleX(.82)}to{opacity:1;transform:translate(0) scaleX(1)}}.cv-excalidraw-root--enter{animation:cv-canvas-enter .18s ease-out both}@keyframes cv-canvas-enter{0%{opacity:0;transform:scale(.995)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion: reduce){.cv-excalidraw-root--enter{animation:none}}@font-face{font-family:Excalifont;src:url(/fonts/Excalifont.woff2) format("woff2");font-display:swap;font-style:normal;font-weight:400 700}:root{--font-hand: "Excalifont", "Comic Sans MS", "Segoe UI", cursive;--font-sans: "Excalifont", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-ui: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--brand-purple: #6965db;--brand-purple-light: #8b86ff;--brand-accent: #f59e0b;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 22px;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.22, 1, .36, 1);--transition-normal: .25s cubic-bezier(.22, 1, .36, 1);--transition-slow: .4s cubic-bezier(.22, 1, .36, 1)}h1,h2,h3,h4,h5,h6,.dc-navbar,.dc-navbar__link,.dc-navbar__brand,.dc-brand-wordmark,.dc-brand,button.dc-navbar__link,.dc-theory-card h3,.ft-tree-sidebar,.ft-tree,.ft-tree__empty-title,.ft-actions,.ft-search,.ft-bottom,.obs-tab,.obs-tab__title,.dc-showcase__headline,.dc-showcase__scene-title,.auth__submit,.auth__oauth-btn,.dc-auth-card__title{font-family:var(--font-hand)!important;letter-spacing:.1px}code,pre,kbd,samp,.cm-editor,.cm-content,.monaco-editor,.monaco-editor .view-lines,input,textarea,select,.auth__email-input{font-family:var(--font-mono),monospace}input[type=email],input[type=text],input[type=password],textarea,.auth__email-input{font-family:var(--font-ui)}[data-theme=dark]{--bg-primary: #0d0d0d;--bg-secondary: #141414;--bg-tertiary: #1a1a1a;--bg-elevated: #1e1e1e;--bg-hover: #252525;--bg-active: #2e2e2e;--border: rgba(255,255,255,.08);--border-light: rgba(255,255,255,.12);--border-focus: rgba(105,101,219,.4);--text-primary: #e8e8e8;--text-secondary: #999;--text-tertiary: #5a5a5a;--text-inverse: #0d0d0d;--accent: #10B981;--accent-hover: #059669;--accent-secondary: #6366F1;--accent-tertiary: #7bc86c;--accent-warm: #f4a261;--accent-gradient: linear-gradient(135deg, #6366F1, #10B981);--glass-bg: rgba(22,22,22,.75);--glass-bg-strong: rgba(28,28,28,.85);--glass-blur: blur(20px) saturate(1.6);--glass-border: rgba(255,255,255,.06);--glass-highlight: inset 0 1px 0 0 rgba(255,255,255,.04);--glass-shadow: 0 4px 24px rgba(0,0,0,.3);--glass-shadow-hover: 0 8px 32px rgba(0,0,0,.4);--chat-user-bg: transparent;--chat-assistant-bg: rgba(28,28,28,.6);--scrollbar-thumb: #2a2a2a;--danger: #ef4444;--danger-bg: rgba(239,68,68,.1);--code-content-bg: #1f2329;--code-header-bg: rgba(255,255,255,.02);--code-line-num: rgba(255,255,255,.2);--sketch-stroke: rgba(232, 232, 232, .88);--sketch-radius: 12}[data-theme=light]{--bg-primary: #f9fafb;--bg-secondary: #ffffff;--bg-tertiary: #f0f1f3;--bg-elevated: #ffffff;--bg-hover: #f0f0f2;--bg-active: #e5e5ea;--border: rgba(0,0,0,.08);--border-light: rgba(0,0,0,.12);--border-focus: rgba(99,102,241,.4);--text-primary: #1a1a1a;--text-secondary: #6b6b6b;--text-tertiary: #999;--text-inverse: #fff;--accent: #10B981;--accent-hover: #059669;--accent-secondary: #6366F1;--accent-tertiary: #7bc86c;--accent-warm: #f4a261;--accent-gradient: linear-gradient(135deg, #6366F1, #10B981);--glass-bg: rgba(255,255,255,.7);--glass-bg-strong: rgba(255,255,255,.82);--glass-blur: blur(20px) saturate(1.6);--glass-border: rgba(255,255,255,.5);--glass-highlight: inset 0 1px 0 0 rgba(255,255,255,.7);--glass-shadow: 0 4px 24px rgba(0,0,0,.05);--glass-shadow-hover: 0 8px 32px rgba(0,0,0,.08);--chat-user-bg: transparent;--chat-assistant-bg: rgba(0,0,0,.02);--scrollbar-thumb: #d0d0d0;--danger: #ef4444;--danger-bg: rgba(239,68,68,.08);--code-content-bg: #f8fafc;--code-header-bg: #f1f5f9;--code-line-num: rgba(0,0,0,.25);--sketch-stroke: rgba(26, 26, 26, .9);--sketch-radius: 12}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;height:100%}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);line-height:1.5;overflow:hidden;height:100%}#root{height:100%}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:3px}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px;min-height:40px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--bg-tertiary)}button{cursor:pointer;border:none;background:none;font-family:inherit;color:inherit}input,textarea,select{font-family:inherit;color:inherit}::view-transition-old(root),::view-transition-new(root){animation-duration:.5s;animation-timing-function:cubic-bezier(.22,1,.36,1)}::view-transition-old(root){z-index:9999;animation-name:vtFadeOut}::view-transition-new(root){animation-name:vtFadeIn}@keyframes vtFadeOut{0%{opacity:1}to{opacity:0}}@keyframes vtFadeIn{0%{opacity:0}to{opacity:1}}html.dc-theme-revealing::view-transition-old(root){animation:dc-theme-ink-away .5s ease-out both;z-index:0}html.dc-theme-revealing::view-transition-new(root){z-index:1;animation:dc-theme-button-reveal .52s cubic-bezier(.22,1,.36,1) both}html.dc-theme-revealing:after{display:none}@keyframes dc-theme-button-reveal{0%{clip-path:circle(0 at var(--dc-theme-reveal-x, 50%) var(--dc-theme-reveal-y, 50%))}to{clip-path:circle(150vmax at var(--dc-theme-reveal-x, 50%) var(--dc-theme-reveal-y, 50%))}}@keyframes dc-theme-ink-away{0%{opacity:1;filter:saturate(1) brightness(1)}to{opacity:.98;filter:saturate(.94) brightness(.98)}}html.dc-theme-transition-fallback:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483647;pointer-events:none;background:color-mix(in srgb,var(--brand-purple, #6965db) 22%,transparent);animation:dc-theme-fallback .36s ease-out both}@keyframes dc-theme-fallback{0%{opacity:.8}to{opacity:0}}@media (prefers-reduced-motion: reduce){html.dc-theme-revealing::view-transition-new(root),html.dc-theme-revealing::view-transition-old(root),html.dc-theme-transition-fallback:after{animation-duration:.01ms}}.app{display:flex;height:100vh;overflow:hidden}.overlay{display:none}.main-area{flex:1 1 0%;display:flex;flex-direction:column;min-width:0;height:100vh;max-height:100vh;overflow:hidden}.content-wrapper{flex:1 1 0%;display:flex;overflow:hidden;position:relative;min-height:0}.content{flex:1 1 0%;min-width:0;display:flex;flex-direction:column;overflow:hidden;min-height:0}.content--with-chat{flex:1}.content__scroll{flex:1 1 0%;min-height:0;overflow-y:auto;overflow-x:hidden;position:relative}.view-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;transition:opacity .35s ease,visibility 0s linear 0s}.view-layer--hidden{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease,visibility 0s linear .3s}.content__scroll::-webkit-scrollbar{width:7px}.content__scroll::-webkit-scrollbar-track{background:var(--bg-primary);border-radius:4px}.content__scroll::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px;min-height:40px}.content__scroll::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.header{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--border);box-shadow:var(--glass-highlight);flex-shrink:0;gap:8px;z-index:10}.header__left{display:flex;align-items:center;gap:8px}.header__menu-btn{display:none;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);color:var(--text-secondary);transition:all var(--transition-fast)}.header__menu-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.header__brand{display:flex;align-items:center;gap:6px}.header__logo{flex-shrink:0;filter:drop-shadow(0 1px 4px rgba(99,102,241,.2))}.header__title{font-size:13px;font-weight:700;letter-spacing:-.01em}.header__center{flex:1;display:flex;justify-content:center}.header__breadcrumb{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-secondary)}.header__breadcrumb-folder{opacity:.6}.header__breadcrumb-file{color:var(--text-primary);font-weight:500}.header__right{display:flex;align-items:center;gap:4px}.header__btn{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--radius-md);font-size:12px;font-weight:500;color:var(--text-secondary);transition:all var(--transition-fast)}.header__btn:hover{background:var(--bg-hover);color:var(--text-primary)}.header__btn--active{background:var(--accent);color:#fff}.header__btn--active:hover{background:var(--accent-hover);color:#fff}.header__theme-btn{padding:4px 8px}.header__profile{position:relative}.header__avatar-btn{width:32px;height:32px;border-radius:50%;padding:2px;border:2px solid transparent;background:var(--accent-gradient);cursor:pointer;overflow:hidden;display:flex;align-items:center;justify-content:center;transition:border-color .2s ease,box-shadow .2s ease}.header__avatar-btn:hover{box-shadow:0 0 0 3px #6366f12e}.header__avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.header__avatar-fallback{font-size:10px;font-weight:700;color:#fff;line-height:1}.header__dropdown{position:absolute;top:calc(100% + 6px);right:0;z-index:100;min-width:220px;background:var(--bg-elevated);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:0 8px 32px #0003;overflow:hidden;animation:profileDropIn .15s cubic-bezier(.22,1,.36,1)}@keyframes profileDropIn{0%{opacity:0;transform:translateY(-6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.header__dropdown-header{display:flex;align-items:center;gap:10px;padding:14px 14px 10px}.header__dropdown-avatar-wrap{width:40px;height:40px;border-radius:50%;flex-shrink:0;padding:2px;background:var(--accent-gradient);display:flex;align-items:center;justify-content:center}.header__dropdown-avatar{width:100%;height:100%;border-radius:50%;object-fit:cover}.header__dropdown-avatar-fallback{width:100%;height:100%;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);color:var(--text-primary);font-size:14px;font-weight:700}.header__dropdown-info{display:flex;flex-direction:column;min-width:0}.header__dropdown-name{font-size:13px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header__dropdown-email{font-size:11px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header__dropdown-divider{height:1px;background:var(--border);margin:0 10px}.header__dropdown-item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 14px;font-size:12px;font-weight:500;color:var(--text-secondary);background:none;border:none;cursor:pointer;transition:all var(--transition-fast)}.header__dropdown-item:hover{background:var(--bg-hover);color:var(--text-primary)}.header__dropdown-item--danger{color:var(--danger)}.header__dropdown-item--danger:hover{background:var(--danger-bg);color:var(--danger)}.sidebar{width:230px;flex-shrink:0;display:flex;flex-direction:column;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-right:1px solid var(--border);box-shadow:var(--glass-highlight);height:100vh;max-height:100vh;overflow:hidden;transition:transform var(--transition-normal)}.sidebar__header{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-bottom:1px solid var(--border);flex-shrink:0}.sidebar__logo{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;letter-spacing:-.01em;color:var(--text-primary);background:none;border:none;cursor:pointer;padding:0}.sidebar__logo:hover{opacity:.85}.sidebar__logo svg{filter:drop-shadow(0 1px 3px rgba(99,102,241,.2));flex-shrink:0}.sidebar__header-icons{display:flex;align-items:center;gap:2px}.sidebar__icon-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--text-secondary);background:none;border:none;cursor:pointer;transition:all var(--transition-fast)}.sidebar__icon-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar__icon-btn--active{background:var(--accent);color:#fff}.sidebar__icon-btn--active:hover{background:var(--accent-hover);color:#fff}.sidebar__icon-btn--locked{position:relative}.sidebar__lock-badge{position:absolute;top:-4px;right:-6px;font-size:7px;font-weight:800;letter-spacing:.02em;background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff;padding:1px 4px;border-radius:4px;line-height:1.3;pointer-events:none}.sidebar__close{display:none;width:24px;height:24px;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--text-secondary)}.sidebar__close:hover{background:var(--bg-hover)}.sidebar__footer{flex-shrink:0;border-top:1px solid var(--border);position:relative}.sidebar__profile-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background:none;border:none;cursor:pointer;color:var(--text-primary);transition:background var(--transition-fast);font-size:12px;font-weight:500}.sidebar__profile-btn:hover{background:var(--bg-hover)}.sidebar__avatar{width:28px;height:28px;border-radius:50%;flex-shrink:0;overflow:hidden;background:var(--accent-gradient);display:flex;align-items:center;justify-content:center}.sidebar__avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.sidebar__avatar-fallback{font-size:10px;font-weight:700;color:#fff}.sidebar__profile-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar__pro-badge{font-size:9px;font-weight:700;padding:1px 5px;border-radius:3px;background:var(--accent);color:#fff;letter-spacing:.05em}.sidebar__profile-dropdown{position:absolute;bottom:calc(100% + 4px);left:6px;right:6px;z-index:200;background:var(--bg-elevated);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:0 -4px 24px #00000026;overflow:hidden;animation:profileDropUp .15s cubic-bezier(.22,1,.36,1)}@keyframes profileDropUp{0%{opacity:0;transform:translateY(6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.sidebar__profile-item{display:flex;align-items:center;gap:8px;width:100%;padding:9px 12px;font-size:12px;font-weight:500;color:var(--text-secondary);background:none;border:none;cursor:pointer;transition:all var(--transition-fast)}.sidebar__profile-item:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar__profile-item--upgrade{color:var(--accent)}.sidebar__profile-item--upgrade:hover{background:#6366f114;color:var(--accent)}.sidebar__profile-item--danger{color:var(--danger)}.sidebar__profile-item--danger:hover{background:var(--danger-bg);color:var(--danger)}.sidebar__profile-divider{height:1px;background:var(--border);margin:2px 10px}.mobile-menu-btn{display:none;position:fixed;top:8px;left:8px;z-index:50;width:34px;height:34px;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;box-shadow:0 2px 8px #00000014;transition:all var(--transition-fast)}.mobile-menu-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar__back{flex-shrink:0;padding:4px 6px 0}.sidebar__back-btn{display:flex;align-items:center;gap:4px;width:100%;padding:5px 8px;border-radius:var(--radius-sm);font-size:11px;font-weight:600;color:var(--accent);background:none;border:none;cursor:pointer;transition:all var(--transition-fast)}.sidebar__back-btn:hover{background:var(--bg-hover)}.sidebar__back-btn svg{flex-shrink:0;color:var(--accent)}.sidebar__back-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.sidebar__back-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary);font-weight:500}.sidebar__search{display:flex;align-items:center;gap:6px;margin:6px 6px 4px;padding:5px 8px;background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid transparent;transition:border-color var(--transition-fast);flex-shrink:0}.sidebar__search:focus-within{border-color:var(--border-focus)}.sidebar__search svg{flex-shrink:0;color:var(--text-tertiary)}.sidebar__search input{flex:1;border:none;background:none;outline:none;font-size:12px}.sidebar__search input::placeholder{color:var(--text-tertiary)}.sidebar__actions{display:flex;gap:3px;padding:0 6px;margin-bottom:4px;flex-shrink:0}.sidebar__action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:2px;padding:4px 2px;font-size:10px;font-weight:500;border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text-secondary);transition:all var(--transition-fast)}.sidebar__action-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-light)}.sidebar__action-btn--primary{background:var(--accent);color:#fff;border-color:var(--accent)}.sidebar__action-btn--primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff}.sidebar__new-folder{display:flex;gap:3px;padding:0 6px 4px;flex-shrink:0}.sidebar__new-folder input{flex:1;padding:4px 8px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-tertiary);font-size:12px;outline:none}.sidebar__new-folder input:focus{border-color:var(--border-focus)}.sidebar__new-folder-ok,.sidebar__new-folder-cancel{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.sidebar__new-folder-ok{color:var(--accent)}.sidebar__new-folder-ok:hover{background:#10a37f1f}.sidebar__new-folder-cancel{color:var(--text-tertiary)}.sidebar__new-folder-cancel:hover{background:var(--bg-hover)}.sidebar__nav{flex:1 1 0%;min-height:0;overflow-y:auto;overflow-x:hidden;padding:0 4px;transition:background var(--transition-fast)}.sidebar__nav::-webkit-scrollbar{width:6px}.sidebar__nav::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:3px}.sidebar__nav::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px;min-height:30px}.sidebar__nav::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.sidebar__nav--dragover{background:#10a37f0a;outline:2px dashed var(--accent);outline-offset:-4px;border-radius:var(--radius-md)}.sidebar__skeletons{padding:8px 6px}.sidebar__skeleton-item{padding:4px 0}.sidebar__empty{display:flex;flex-direction:column;align-items:center;gap:4px;padding:28px 14px;text-align:center;color:var(--text-tertiary)}.sidebar__empty p{font-size:12px;font-weight:500}.sidebar__empty-hint{font-size:11px}.sidebar__folder{position:relative;transition:background .15s ease}.sidebar__folder--dragover{background:var(--bg-hover);border-radius:var(--radius-sm)}.sidebar__folder--drop-target{outline:2px solid var(--accent);outline-offset:-2px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--accent) 8%,transparent)}.sidebar__folder--dragover>.sidebar__folder-btn,.sidebar__folder--drop-target>.sidebar__folder-btn{color:var(--accent)}.sidebar__root-drop-zone{display:flex;align-items:center;gap:6px;justify-content:center;padding:8px 10px;margin:4px 6px;border-radius:var(--radius-sm);border:2px dashed var(--accent);color:var(--accent);font-size:10px;font-weight:600;opacity:.8;animation:dropPulse 1.2s ease-in-out infinite}@keyframes dropPulse{0%,to{opacity:.6}50%{opacity:1}}.sidebar__bulk-actions{padding:6px 8px;margin-top:4px;border-top:1px solid var(--border)}.sidebar__bulk-btn{display:flex;align-items:center;gap:5px;width:100%;padding:5px 8px;border-radius:var(--radius-sm);font-size:10px;font-weight:500;cursor:pointer;background:none;border:none;color:var(--text-tertiary);transition:all var(--transition-fast)}.sidebar__bulk-btn:hover{background:var(--bg-hover);color:var(--text-secondary)}.sidebar__bulk-btn--danger:hover{background:var(--danger-bg);color:var(--danger)}.sidebar__confirm-bar{display:flex;align-items:center;gap:6px;padding:4px 6px;font-size:10px;color:var(--text-secondary)}.sidebar__confirm-bar span{flex:1}.sidebar__confirm-yes{padding:2px 10px;border-radius:var(--radius-sm);font-size:10px;font-weight:600;background:var(--danger);color:#fff;border:none;cursor:pointer}.sidebar__confirm-yes:hover{opacity:.9}.sidebar__confirm-no{padding:2px 10px;border-radius:var(--radius-sm);font-size:10px;font-weight:500;background:var(--bg-tertiary);color:var(--text-secondary);border:none;cursor:pointer}.sidebar__confirm-no:hover{background:var(--bg-hover)}.sidebar__select-toolbar{display:flex;align-items:center;gap:4px;padding:5px 6px;margin:2px 4px 4px;background:var(--bg-tertiary);border-radius:var(--radius-sm);border:1px solid var(--border)}.sidebar__select-action{display:flex;align-items:center;gap:3px;padding:3px 8px;border-radius:var(--radius-sm);font-size:10px;font-weight:500;cursor:pointer;background:none;border:none;color:var(--text-secondary);transition:all var(--transition-fast)}.sidebar__select-action:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar__select-action--danger{color:var(--danger)}.sidebar__select-action--danger:hover{background:var(--danger-bg)}.sidebar__select-action:disabled{opacity:.4;cursor:default}.sidebar__select-action:disabled:hover{background:none}.sidebar__checkbox{display:flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:3px;flex-shrink:0;border:1.5px solid var(--border);background:var(--bg-primary);transition:all .15s ease}.sidebar__checkbox--checked{background:var(--accent);border-color:var(--accent);color:#fff}.sidebar__folder-btn--selected{background:color-mix(in srgb,var(--accent) 10%,transparent)}.sidebar__folder-btn{display:flex;align-items:center;gap:5px;width:100%;padding:5px 6px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;color:var(--text-secondary);transition:background .15s ease,color .15s ease}.sidebar__folder-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar__folder-btn--active{background:var(--bg-active);color:var(--text-primary);font-weight:600}.sidebar__folder-btn--dragging{opacity:.35;transform:scale(.97);transition:opacity .15s ease,transform .15s ease}.sidebar__color-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;box-shadow:0 0 5px color-mix(in srgb,currentColor 25%,transparent)}.sidebar__folder-name{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar__folder-count{font-size:10px;color:var(--text-tertiary);background:var(--bg-tertiary);padding:0 5px;border-radius:var(--radius-full);line-height:1.6}.sidebar__subfolder-badge{display:flex;align-items:center;margin-left:-2px}.sidebar__children{margin-left:10px;padding-left:12px;border-left:1px solid var(--border)}.sidebar__menu-btn{opacity:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:4px;color:var(--text-tertiary);transition:all var(--transition-fast);flex-shrink:0}.sidebar__folder-btn:hover .sidebar__menu-btn{opacity:1}.sidebar__menu-btn:hover{background:var(--bg-active);color:var(--text-primary)}.sidebar__dropdown{position:absolute;left:10px;top:100%;z-index:20;min-width:140px;background:var(--bg-elevated);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:0 8px 24px #00000040;padding:4px;animation:dropIn .12s ease}@keyframes dropIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sidebar__dropdown button{display:flex;align-items:center;gap:6px;width:100%;padding:6px 8px;font-size:12px;border-radius:var(--radius-sm);color:var(--text-secondary);transition:all var(--transition-fast)}.sidebar__dropdown button:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar__dropdown-danger{color:var(--danger)!important}.sidebar__dropdown-danger:hover{background:var(--danger-bg)!important;color:var(--danger)!important}.sidebar__rename{display:flex;gap:3px;padding:3px 5px}.sidebar__rename input{flex:1;padding:3px 6px;border-radius:var(--radius-sm);border:1px solid var(--border-focus);background:var(--bg-tertiary);font-size:12px;outline:none;min-width:0}.sidebar__note-edit{padding:4px 8px 6px}.sidebar__note-edit textarea{width:100%;padding:5px 8px;border-radius:var(--radius-sm);border:1px solid var(--border-focus);background:var(--bg-tertiary);font-size:11px;line-height:1.4;outline:none;resize:vertical;min-height:36px;max-height:80px}.sidebar__note-actions{display:flex;gap:4px;margin-top:3px;justify-content:flex-end}.sidebar__note-actions button{padding:2px 8px;font-size:10px;font-weight:600;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.sidebar__note-actions button:first-child{color:var(--accent)}.sidebar__note-actions button:first-child:hover{background:#10a37f1f}.sidebar__note-actions button:last-child{color:var(--text-tertiary)}.sidebar__note-actions button:last-child:hover{background:var(--bg-hover)}.sidebar__note{display:flex;align-items:flex-start;gap:4px;padding:2px 8px 4px;cursor:pointer;transition:background var(--transition-fast);border-radius:var(--radius-sm);margin:0 4px}.sidebar__note:hover{background:var(--bg-hover)}.sidebar__note svg{flex-shrink:0;margin-top:2px;color:var(--accent-warm)}.sidebar__note span{font-size:10px;color:var(--text-tertiary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.sidebar__delete-btn{opacity:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:3px;color:var(--text-tertiary);transition:all var(--transition-fast)}.sidebar__folder-btn:hover .sidebar__delete-btn,.sidebar__file-btn:hover .sidebar__delete-btn{opacity:1}.sidebar__delete-btn:hover{background:var(--danger-bg);color:var(--danger)}.sidebar__files{margin:1px 0}.sidebar__file-btn{display:flex;align-items:center;gap:5px;width:100%;padding:4px 6px 4px 8px;border-radius:var(--radius-sm);font-size:11px;color:var(--text-secondary);transition:background .15s ease,color .15s ease,opacity .15s ease;cursor:grab;position:relative}.sidebar__file-btn:active{cursor:grabbing}.sidebar__file-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar__file-btn--active{color:var(--text-primary);font-weight:500}.sidebar__file-btn svg{flex-shrink:0;color:var(--text-tertiary)}.sidebar__file-btn--active svg{color:var(--text-primary);opacity:.65}.sidebar__file-btn--active .sidebar__file-name{text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:currentColor;opacity:.85}.sidebar__file-name{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar__upload-progress{display:flex;align-items:center;gap:8px;padding:8px 10px;margin:4px 6px;border-radius:var(--radius-md);background:#10a37f0f;border:1px solid rgba(16,163,127,.15);animation:fadeInUp .2s ease}.sidebar__upload-progress-icon{color:var(--accent);flex-shrink:0;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.sidebar__upload-progress-info{flex:1;min-width:0}.sidebar__upload-progress-text{font-size:10px;font-weight:500;color:var(--text-secondary);display:block;margin-bottom:4px}.sidebar__upload-progress-bar{height:3px;border-radius:2px;background:var(--bg-tertiary);overflow:hidden}.sidebar__upload-progress-fill{height:100%;border-radius:2px;background:var(--accent-gradient);transition:width .3s ease}.sidebar__upload-done{display:flex;align-items:center;gap:6px;padding:6px 10px;margin:4px 6px;border-radius:var(--radius-md);background:#10a37f0f;font-size:10px;font-weight:500;color:var(--accent);animation:fadeInUp .2s ease}.chat-premium-gate{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;margin:0;border-top:1px solid var(--border);background:var(--bg-primary);font-size:12px;color:var(--text-tertiary);cursor:pointer;transition:color .15s ease;flex-shrink:0}.chat-premium-gate:hover{color:var(--accent)}.chat-premium-gate svg{opacity:.6}.chat-input-container{padding:8px 16px 12px;background:var(--bg-primary);border-top:1px solid var(--border);width:100%;display:flex;justify-content:center;flex-shrink:0}.chat-input-wrapper{width:100%;max-width:680px;position:relative}.chat-input-box{display:flex;align-items:flex-end;gap:8px;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-xl);padding:6px 6px 6px 14px;transition:all var(--transition-normal);box-shadow:var(--glass-highlight),var(--glass-shadow)}.chat-input-box:focus-within{border-color:var(--border-focus);box-shadow:var(--glass-highlight),var(--glass-shadow-hover),0 0 0 3px #6965db14}.chat-input-box.processing{border:1px solid transparent;background-image:linear-gradient(var(--glass-bg-strong),var(--glass-bg-strong)),linear-gradient(90deg,#6965db80,#10a37f80,#f4a26166,#6965db80);background-origin:border-box;background-clip:padding-box,border-box;background-size:100% 100%,300% 100%;animation:rainbow-border 3s linear infinite}@keyframes rainbow-border{0%{background-position:0 0,0% 0}to{background-position:0 0,300% 0}}.chat-input-box__scope{display:flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-full);background:var(--bg-tertiary);font-size:10px;font-weight:500;color:var(--text-secondary);white-space:nowrap;flex-shrink:0;margin-bottom:3px}.chat-input-box__scope svg{color:var(--accent)}.chat-input-textarea{flex:1;background:transparent;border:none;color:var(--text-primary);font-size:13px;font-family:var(--font-sans);resize:none;outline:none;padding:4px 0;line-height:1.45;max-height:120px;overflow-y:auto}.chat-input-textarea::placeholder{color:var(--text-tertiary)}.chat-input-send{width:32px;height:32px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--accent-gradient);color:#fff;border-radius:var(--radius-full);transition:all var(--transition-fast);box-shadow:0 2px 8px #6965db33}.chat-input-send:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 14px #6965db4d}.chat-input-send:disabled{opacity:.3;cursor:not-allowed}.chat-input-footer{display:flex;justify-content:center;padding-top:4px;font-size:10px;color:var(--text-tertiary)}.chat-panel{width:360px;flex-shrink:0;display:flex;flex-direction:column;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-left:1px solid var(--border);box-shadow:var(--glass-highlight);height:100%;animation:slideInRight .2s ease}@keyframes slideInRight{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}.chat-panel__header{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-bottom:1px solid var(--border)}.chat-panel__header-left{display:flex;align-items:center;gap:6px}.chat-panel__header-left svg{color:var(--accent);width:14px;height:14px}.chat-panel__header-left h3{font-size:12px;font-weight:600}.chat-panel__scope{font-size:10px;color:var(--text-tertiary);display:block}.chat-panel__header-right{display:flex;align-items:center;gap:4px}.chat-panel__clear{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--text-tertiary);transition:all var(--transition-fast)}.chat-panel__clear:hover{background:var(--danger-bg);color:var(--danger)}.chat-panel__close{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--text-secondary);transition:all var(--transition-fast)}.chat-panel__close:hover{background:var(--bg-hover)}.chat-panel__messages{flex:1;overflow-y:auto;padding:10px}.chat-panel__skeleton{padding:12px 0;display:flex;flex-direction:column;gap:12px}.chat-skeleton-bubble{padding:8px 12px;border-radius:var(--radius-md)}.chat-skeleton-bubble--right{align-self:flex-end;background:var(--bg-tertiary);width:70%}.chat-skeleton-bubble--left{align-self:flex-start;background:var(--chat-assistant-bg);width:85%}.chat-panel__empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:28px 10px;gap:6px}.chat-panel__empty-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border-radius:50%;color:var(--text-tertiary)}.chat-panel__empty p{font-size:12px;color:var(--text-secondary)}.chat-panel__suggestions{display:flex;flex-direction:column;gap:3px;margin-top:4px;width:100%}.chat-panel__suggestion{padding:6px 10px;font-size:11px;text-align:left;border-radius:var(--radius-sm);border:1px solid var(--border);color:var(--text-secondary);transition:all var(--transition-fast)}.chat-panel__suggestion:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-light)}.chat-msg{display:flex;gap:8px;padding:8px 0}.chat-msg--assistant{background:var(--chat-assistant-bg);margin:0 -10px;padding:8px 10px;border-radius:var(--radius-md)}.chat-msg__avatar{width:22px;height:22px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--bg-tertiary);font-size:10px}.chat-msg--assistant .chat-msg__avatar{background:var(--accent);color:#fff}.chat-msg__content{flex:1;min-width:0;font-size:12px;line-height:1.6}.chat-msg__content p{margin:0 0 4px}.chat-msg__content p:last-child{margin:0}.chat-msg__content h3{font-size:12px;font-weight:600;margin-bottom:3px}.chat-msg__content hr{border:none;height:1px;background:var(--border);margin:6px 0}.chat-msg__content strong{font-weight:600}.chat-msg__content em{color:var(--text-secondary)}.chat-msg__content code{font-family:var(--font-mono);font-size:.85em;padding:1px 4px;border-radius:3px;background:var(--bg-tertiary)}.chat-msg__content pre{margin:4px 0;padding:6px;border-radius:var(--radius-sm);background:var(--bg-tertiary);overflow-x:auto;font-size:11px}.chat-msg__sources{display:flex;flex-wrap:wrap;gap:3px;margin-top:4px;font-size:10px;color:var(--text-tertiary);align-items:center}.chat-msg__source-tag{padding:1px 5px;background:var(--bg-tertiary);border-radius:3px;font-family:var(--font-mono);font-size:10px}.chat-msg__typing{display:flex;gap:4px;padding:4px 0}.chat-msg__typing span{width:5px;height:5px;border-radius:50%;background:var(--text-tertiary);animation:typingBounce 1.4s infinite ease-in-out}.chat-msg__typing span:nth-child(1){animation-delay:0s}.chat-msg__typing span:nth-child(2){animation-delay:.2s}.chat-msg__typing span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.chat-panel__input-area{padding:8px 10px;border-top:1px solid var(--border)}.chat-panel__input-wrapper{display:flex;align-items:flex-end;gap:4px;background:var(--glass-bg-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:3px 3px 3px 10px;transition:all var(--transition-fast)}.chat-panel__input-wrapper:focus-within{border-color:var(--border-focus);box-shadow:0 0 0 2px #6965db14}.chat-panel__input{flex:1;border:none;background:none;outline:none;resize:none;padding:5px 0;font-size:12px;line-height:1.4;max-height:80px;color:var(--text-primary);overflow-y:auto}.chat-panel__input::placeholder{color:var(--text-tertiary)}.chat-panel__send{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);background:var(--accent-gradient);color:#fff;flex-shrink:0;transition:all var(--transition-fast)}.chat-panel__send:hover:not(:disabled){transform:scale(1.05)}.chat-panel__send:disabled{opacity:.3;cursor:not-allowed}.welcome{display:flex;align-items:center;justify-content:center;height:100%;min-height:0;flex:1 1 0%;position:relative;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none}.welcome--scatter .tree{opacity:0;transition:opacity .3s ease}.welcome--gather .tree{animation:treeGather .5s cubic-bezier(.22,1,.36,1) both}@keyframes treeGather{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.tree--diving{pointer-events:none;transition:filter .3s ease,opacity .25s ease}.tree--surfacing{animation:treeSurface .5s cubic-bezier(.22,1,.36,1) both}@keyframes treeSurface{0%{opacity:0;filter:blur(3px)}to{opacity:1;filter:blur(0)}}.zoom-ctrl{position:absolute;top:12px;right:16px;z-index:20;display:flex;align-items:center;gap:2px;background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-radius:var(--radius-md);padding:3px 4px;box-shadow:var(--glass-shadow)}.zoom-ctrl button{width:26px;height:26px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:var(--text-secondary);background:none;border:none;cursor:pointer;transition:all var(--transition-fast)}.zoom-ctrl button:hover{background:var(--bg-hover);color:var(--text-primary)}.zoom-ctrl__level{font-size:10px;font-weight:600;color:var(--text-tertiary);min-width:36px;text-align:center}.zoom-ctrl__reset{font-size:13px}.tree{display:flex;flex-direction:column;align-items:center;padding:32px 40px 60px;transform-origin:center center;transition:transform .38s cubic-bezier(.22,1,.36,1),opacity .35s ease,filter .35s ease;min-width:max-content}.tree__root{display:flex;flex-direction:column;align-items:center;gap:4px}.tree__logo{display:flex;align-items:center;justify-content:center;position:relative}.tree__logo svg{filter:drop-shadow(0 4px 16px rgba(99,102,241,.3)) drop-shadow(0 2px 6px rgba(16,185,129,.2));transition:filter .3s ease}.tree__logo:hover svg{filter:drop-shadow(0 6px 24px rgba(99,102,241,.4)) drop-shadow(0 3px 10px rgba(16,185,129,.25))}.tree__root-label{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(135deg,#6366f1,#10b981);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tree__trunk{width:1px;height:28px;background:var(--border-light);margin:0 auto}.tree__rail{height:1px;background:var(--border-light);align-self:stretch;margin:0 60px}.tree__grid{display:flex;gap:0;align-items:flex-start}.tree__branch{display:flex;flex-direction:column;align-items:center;min-width:130px;padding:0 6px;animation:branchIn .4s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--i) * 35ms);transition:min-width .3s ease}.tree__branch--expanded{min-width:260px;align-items:center}@keyframes branchIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.tree__stem{width:1px;height:20px;background:var(--color);opacity:.25;margin-bottom:0}.tree__empty{font-size:13px;color:var(--text-tertiary);margin-top:24px;letter-spacing:.02em;opacity:.7}.tree__features{display:flex;gap:12px;margin-top:32px;justify-content:center;flex-wrap:wrap;pointer-events:auto}.tree__feature-card{display:flex;align-items:center;gap:14px;padding:14px 20px;min-width:240px;max-width:320px;border-radius:var(--radius-md, 12px);background:var(--glass-bg, rgba(255,255,255,.06));border:1px solid var(--border, rgba(255,255,255,.08));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);cursor:pointer;transition:all .25s ease;text-align:left;color:var(--text-primary);box-shadow:0 2px 12px #00000014}.tree__feature-card:hover{border-color:var(--accent, #6965db);background:var(--bg-hover, rgba(255,255,255,.1));transform:translateY(-2px);box-shadow:0 6px 24px #6965db2e}.tree__feature-card--algo .tree__feature-icon{color:#10b981}.tree__feature-card--problems .tree__feature-icon{color:#6366f1}.tree__feature-card--canvas .tree__feature-icon{color:#3b82f6}.tree__feature-card:hover .tree__feature-icon{transform:scale(1.1)}.tree__feature-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:var(--bg-secondary, rgba(255,255,255,.05));flex-shrink:0;transition:transform .25s ease}.tree__feature-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.tree__feature-title{font-size:14px;font-weight:600;letter-spacing:-.01em;color:var(--text-primary)}.tree__feature-desc{font-size:11px;color:var(--text-secondary);line-height:1.4;opacity:.8}.tree__feature-arrow{color:var(--text-tertiary);flex-shrink:0;transition:transform .2s ease,color .2s ease}.tree__feature-card:hover .tree__feature-arrow{color:var(--accent, #6965db);transform:translate(3px)}.sidebar__sections{display:flex;flex-direction:column;gap:1px;padding:0 6px;margin-bottom:8px}.sidebar__sections-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:var(--text-tertiary);padding:8px 8px 5px;margin:0;-webkit-user-select:none;user-select:none}.sidebar__nav-link{display:flex;align-items:center;gap:8px;padding:7px 10px;font-size:12px;font-weight:500;border-radius:var(--radius-sm);border:none;border-left:2px solid transparent;color:var(--text-secondary);background:transparent;transition:all .15s ease;cursor:pointer;white-space:nowrap;width:100%}.sidebar__nav-link:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar__nav-link--active{border-left-color:var(--accent, #6965db);background:color-mix(in srgb,var(--accent, #6965db) 10%,transparent);color:var(--text-primary);font-weight:600}.sidebar__nav-link--active svg{opacity:1;color:var(--accent, #6965db)}.sidebar__nav-link svg{opacity:.55;flex-shrink:0;transition:opacity .15s,color .15s}.sidebar__nav-link:hover svg{opacity:.85}.sidebar__nav-link__arrow{margin-left:auto;opacity:0;transition:opacity .15s,transform .15s;color:var(--text-tertiary);flex-shrink:0}.sidebar__nav-link:hover .sidebar__nav-link__arrow{opacity:.6;transform:translate(2px)}.tnode{display:flex;align-items:center;gap:5px;padding:5px 8px 5px 6px;border-radius:var(--radius-sm);background:none;border:1px solid transparent;cursor:pointer;transition:all .25s ease;white-space:nowrap}.tnode:hover{background:var(--bg-hover);border-color:var(--border)}.tnode--open{background:color-mix(in srgb,var(--color) 8%,transparent);border-color:color-mix(in srgb,var(--color) 20%,transparent)}.tnode__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--color);box-shadow:0 0 6px color-mix(in srgb,var(--color) 30%,transparent);transition:box-shadow .2s ease,transform .2s ease}.tnode:hover .tnode__dot{transform:scale(1.25);box-shadow:0 0 10px color-mix(in srgb,var(--color) 45%,transparent)}.tnode__name{font-size:11px;font-weight:600;color:var(--text-primary);max-width:160px;overflow:hidden;text-overflow:ellipsis;transition:color .2s ease}.tnode:hover .tnode__name{color:var(--color)}.tnode__badge{font-size:9px;font-weight:500;color:var(--text-tertiary);background:var(--bg-tertiary);border-radius:var(--radius-full);padding:0 4px;line-height:1.5}.tnode__chevron{color:var(--text-tertiary);transition:transform .25s ease,color .2s ease}.tnode--open .tnode__chevron{transform:rotate(180deg);color:var(--color)}.subtree{display:flex;flex-direction:column;align-items:center;width:100%;margin-top:2px;animation:subtreeIn .3s cubic-bezier(.22,1,.36,1) both}@keyframes subtreeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.subtree__trunk{width:1px;height:20px;opacity:.3}.subtree__rail{height:1px;background:var(--border-light);align-self:stretch;margin:0 50px}.subtree__grid{display:flex;gap:0;align-items:flex-start}.subtree__branch{display:flex;flex-direction:column;align-items:center;min-width:130px;padding:0 4px}.subtree__branch--expanded{min-width:200px}.subtree__stem{width:1px;height:16px;opacity:.2}.snode{display:flex;align-items:center;gap:5px;padding:5px 8px;border-radius:var(--radius-sm);background:none;border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:all .2s ease}.snode:hover{background:var(--bg-hover);border-color:var(--border)}.snode--open{background:color-mix(in srgb,var(--scolor) 6%,transparent);border-color:color-mix(in srgb,var(--scolor) 15%,transparent)}.snode__name{font-size:11px;font-weight:600;color:var(--text-primary);max-width:140px;overflow:hidden;text-overflow:ellipsis}.snode:hover .snode__name{color:var(--scolor)}.snode__badge{font-size:9px;font-weight:500;color:var(--text-tertiary);background:var(--bg-tertiary);border-radius:var(--radius-full);padding:0 4px;line-height:1.5}.snode__chevron{color:var(--text-tertiary);transition:transform .2s ease,color .2s ease}.snode--open .snode__chevron{transform:rotate(180deg);color:var(--scolor)}.subtree__filelist{display:flex;flex-direction:column;gap:1px;margin-top:4px;margin-left:14px;padding-left:14px;border-left:1px solid var(--border-light);animation:subtreeIn .25s cubic-bezier(.22,1,.36,1) both}.subtree__filelist--root{margin-top:10px}.fnode{display:flex;align-items:center;gap:6px;padding:3px 8px 3px 6px;border-radius:var(--radius-sm);background:none;cursor:pointer;color:var(--text-secondary);white-space:nowrap;transition:background .15s ease,color .15s ease;animation:fnodeIn .2s cubic-bezier(.22,1,.36,1) both;animation-delay:var(--d, 0s)}@keyframes fnodeIn{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}.fnode:hover{background:var(--bg-hover);color:var(--text-primary)}.fnode__dot{width:5px;height:5px;border-radius:50%;flex-shrink:0;background:var(--color);opacity:.4;transition:opacity .15s ease}.fnode:hover .fnode__dot{opacity:1}.fnode__name{font-size:11px;font-weight:500;max-width:180px;overflow:hidden;text-overflow:ellipsis}.content__scroll--scatter-out{animation:viewDiveOut .4s cubic-bezier(.4,0,1,1) both}.content__scroll--content-in{animation:viewDiveIn .42s cubic-bezier(.22,1,.36,1) both}.content__scroll--content-out{animation:viewSurfaceOut .3s cubic-bezier(.4,0,1,1) both}.content__scroll--gather-in{animation:viewSurfaceIn .45s cubic-bezier(.22,1,.36,1) both}@keyframes viewDiveOut{0%{opacity:1;transform:scale(1);filter:blur(0)}to{opacity:0;transform:scale(1.03);filter:blur(3px)}}@keyframes viewDiveIn{0%{opacity:0;transform:translateY(12px) scale(.98);filter:blur(1px)}50%{filter:blur(0)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes viewSurfaceOut{0%{opacity:1;transform:scale(1);filter:blur(0)}to{opacity:0;transform:scale(.94);filter:blur(3px)}}@keyframes viewSurfaceIn{0%{opacity:0;transform:scale(1.04);filter:blur(2px)}60%{filter:blur(0)}to{opacity:1;transform:scale(1);filter:blur(0)}}.hero-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;pointer-events:none}.hero-card{position:absolute;top:var(--src-top);left:var(--src-left);width:var(--src-w);height:var(--src-h);display:flex;flex-direction:column;padding:0;background:var(--bg-elevated);border:1px solid var(--hero-color, var(--border-light));border-radius:8px;box-shadow:0 4px 24px #0000001f,0 0 0 1px var(--hero-color, transparent);will-change:top,left,width,height,border-radius,box-shadow,opacity;transition:top .48s cubic-bezier(.22,1,.36,1),left .48s cubic-bezier(.22,1,.36,1),width .48s cubic-bezier(.22,1,.36,1),height .48s cubic-bezier(.22,1,.36,1),border-radius .48s cubic-bezier(.22,1,.36,1),box-shadow .48s cubic-bezier(.22,1,.36,1),background .48s cubic-bezier(.22,1,.36,1),opacity .35s ease;overflow:hidden}.hero-card--flying{top:var(--dst-top);left:var(--dst-left);width:var(--dst-w);height:var(--dst-h);border-radius:12px;box-shadow:0 8px 40px #0000002e,0 0 0 1px var(--border-light);border-color:var(--border-light);background:var(--bg-primary)}.hero-card--expanding{top:var(--exp-top);left:var(--exp-left);width:var(--exp-w);height:var(--exp-h);border-radius:0;border-color:transparent;box-shadow:none;background:var(--bg-primary);overflow-y:auto}.hero-card--done{opacity:0;transition:opacity .3s ease}.hero-card__header{display:flex;align-items:center;gap:8px;padding:8px 16px;flex-shrink:0}.hero-card__icon{flex-shrink:0;color:var(--hero-color, var(--accent));transition:transform .48s cubic-bezier(.22,1,.36,1),color .48s ease}.hero-card--flying .hero-card__icon,.hero-card--expanding .hero-card__icon{transform:scale(1.3);color:var(--text-primary)}.hero-card__label{font-size:12px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:font-size .48s cubic-bezier(.22,1,.36,1)}.hero-card--flying .hero-card__label{font-size:20px}.hero-card--expanding .hero-card__header{display:none}.hero-card__skeleton{display:flex;flex-direction:column;gap:10px;padding:16px 40px 32px;opacity:0;transition:opacity .35s ease .1s;max-width:780px}.hero-card--expanding .hero-card__skeleton{opacity:1}.hero-card--done .hero-card__skeleton{opacity:0;transition:opacity .2s ease}.skel-topbar{display:flex;align-items:center;gap:10px;padding-bottom:10px;margin-bottom:6px;border-bottom:1px solid var(--border)}.skel-topbar .skeleton-line{margin-bottom:0}.skel-code{display:flex;flex-direction:column;gap:8px;background:var(--bg-tertiary);border-radius:8px;padding:14px 16px;margin:4px 0}.skel-code .skeleton-line{margin-bottom:0;height:10px;background:linear-gradient(90deg,var(--bg-hover) 25%,var(--border) 50%,var(--bg-hover) 75%);background-size:200% 100%;animation:skeletonShimmer 1.6s ease-in-out infinite}.markdown-viewer{max-width:100%;margin:0 auto;padding:16px 40px 32px;width:100%;position:relative;display:flex;flex-direction:column;min-height:0}.markdown-viewer--draw{padding:0;max-width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0}.reading-progress{position:sticky;top:0;left:0;height:2px;z-index:10;background:var(--accent-gradient);border-radius:0 1px 1px 0;transition:width .15s ease}.viewer-topbar{display:flex;align-items:center;justify-content:space-between;padding:6px 16px 10px;margin-bottom:16px;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20;background:var(--bg-primary)}.viewer-topbar__breadcrumb{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text-tertiary);min-width:0;overflow:hidden}.viewer-topbar__breadcrumb svg{flex-shrink:0;opacity:.5}.viewer-topbar__folder{white-space:nowrap}.viewer-topbar__file{color:var(--text-primary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.viewer-topbar__meta{display:flex;align-items:center;gap:10px;flex-shrink:0}.viewer-topbar__stat{font-size:10px;color:var(--text-tertiary);white-space:nowrap}.viewer-topbar__highlight-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);color:var(--text-tertiary);transition:all .15s ease;border:1px solid transparent;flex-shrink:0}.viewer-topbar__highlight-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.viewer-topbar__highlight-btn--active{color:#f59e0b;background:#f59e0b1a;border-color:#f59e0b4d}.viewer-topbar__download{display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:var(--radius-sm);font-size:11px;font-weight:500;color:var(--text-secondary);text-decoration:none;transition:all var(--transition-fast);border:1px solid var(--border);flex-shrink:0}.viewer-topbar__download:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-light)}.markdown-viewer__content--highlighting{cursor:text}.markdown-viewer__content--highlighting ::selection{background:#f59e0b4d}.markdown-viewer__layout{position:relative}.markdown-viewer__layout--annotating{cursor:crosshair}.annotation-canvas{position:absolute;top:0;left:0;z-index:15;pointer-events:auto;touch-action:none}.annot-toolbar{position:fixed;bottom:80px;left:50%;transform:translate(-50%);z-index:30;display:flex;align-items:center;gap:2px;background:color-mix(in srgb,var(--bg-primary) 90%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:14px;padding:5px;box-shadow:0 4px 24px #00000026}.annot-toolbar__btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;color:var(--text-secondary);transition:all .12s ease}.annot-toolbar__btn:hover{color:var(--text-primary);background:var(--bg-hover)}.annot-toolbar__btn--active{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.annot-toolbar__btn--close{color:var(--text-tertiary)}.annot-toolbar__btn--close:hover{color:#ef4444;background:#ef44441a}.annot-toolbar__btn:disabled{opacity:.3;pointer-events:none}.annot-toolbar__sep{width:1px;height:22px;background:var(--border);margin:0 3px}.annot-toolbar__color-wrap{position:relative}.annot-toolbar__color-btn{width:20px;height:20px;border-radius:50%;border:2px solid var(--border);cursor:pointer;transition:transform .12s ease}.annot-toolbar__color-btn:hover{transform:scale(1.15)}.annot-toolbar__colors{position:absolute;bottom:44px;left:50%;transform:translate(-50%);display:flex;gap:4px;padding:6px 8px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;box-shadow:0 4px 16px #00000026}.annot-toolbar__color-dot{width:18px;height:18px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all .12s ease}.annot-toolbar__color-dot:hover{transform:scale(1.2)}.annot-toolbar__color-dot--active{border-color:var(--text-primary);transform:scale(1.15)}.viewer-topbar__tabs{display:flex;gap:2px;background:var(--bg-tertiary);border-radius:8px;padding:2px;flex-shrink:0}.viewer-topbar__tab{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:500;color:var(--text-tertiary);transition:all .15s ease;cursor:pointer}.viewer-topbar__tab:hover{color:var(--text-primary)}.viewer-topbar__tab--active{background:var(--bg-primary);color:var(--text-primary);box-shadow:0 1px 3px #00000014}.viewer-topbar__tab svg{opacity:.6}.viewer-topbar__tab--active svg{opacity:1}.draw-canvas-wrap{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden}.draw-canvas-wrap .excalidraw-container,.draw-canvas-wrap .excalidraw{width:100%!important;height:100%!important}.draw-canvas-wrap--custom-ui .excalidraw .Island,.draw-canvas-wrap--custom-ui .excalidraw .App-toolbar,.draw-canvas-wrap--custom-ui .excalidraw .App-menu,.draw-canvas-wrap--custom-ui .excalidraw .layer-ui__wrapper__top-right,.draw-canvas-wrap--custom-ui .excalidraw .layer-ui__wrapper__footer,.draw-canvas-wrap--custom-ui .excalidraw .App-bottom-bar,.draw-canvas-wrap--custom-ui .excalidraw .HintViewer,.draw-canvas-wrap--custom-ui .excalidraw .FixedSideContainer,.draw-canvas-wrap--custom-ui .excalidraw .shapes-section{display:none!important}.draw-canvas-wrap--loading{display:flex;align-items:center;justify-content:center;position:absolute;top:0;right:0;bottom:0;left:0}.draw-canvas-loader{display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--text-tertiary);font-size:12px}.draw-canvas-loader svg{animation:spin 1.2s linear infinite}.draw-canvas-saving{position:absolute;top:12px;right:12px;z-index:30;font-size:10px;font-weight:600;color:var(--text-tertiary);background:var(--bg-elevated);padding:3px 8px;border-radius:4px;border:1px solid var(--border);opacity:.8}.draw-toolbar{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:25;display:flex;align-items:center;gap:2px;background:color-mix(in srgb,var(--bg-primary) 85%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:12px;padding:4px;box-shadow:0 2px 16px #0000001f}.draw-toolbar__btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;color:var(--text-secondary);transition:all .12s ease}.draw-toolbar__btn:hover{color:var(--text-primary);background:var(--bg-hover)}.draw-toolbar__btn--active{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.draw-toolbar__sep{width:1px;height:20px;background:var(--border);margin:0 4px}.draw-toolbar__read-btn{display:flex;align-items:center;gap:4px;padding:5px 10px;border-radius:8px;font-size:11px;font-weight:600;color:var(--text-secondary);background:var(--bg-tertiary);transition:all .15s ease;white-space:nowrap}.draw-toolbar__read-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.draw-toolbar__filename{font-size:11px;color:var(--text-tertiary);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draw-toolbar__shapes-wrap{position:relative}.draw-toolbar__shapes-menu{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:2px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;padding:4px;box-shadow:0 4px 20px #00000026;min-width:140px;z-index:30}.draw-toolbar__shapes-item{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:7px;font-size:12px;font-weight:500;color:var(--text-secondary);white-space:nowrap;transition:all .1s ease}.draw-toolbar__shapes-item:hover{background:var(--bg-hover);color:var(--text-primary)}.draw-toolbar__shapes-icon{width:22px;text-align:center;font-size:14px;font-weight:700;color:var(--accent)}.ds-panel{position:fixed;z-index:30;background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;padding:0;box-shadow:0 4px 24px #0000002e;min-width:160px;overflow:hidden}.ds-panel__header{display:flex;align-items:center;gap:6px;padding:8px 10px;border-bottom:1px solid var(--border);background:var(--bg-tertiary)}.ds-panel__title{font-size:12px;font-weight:700;color:var(--text-primary)}.ds-panel__count{font-size:10px;color:var(--text-tertiary);background:var(--bg-hover);padding:1px 6px;border-radius:8px;margin-left:auto}.ds-panel__close{width:20px;height:20px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--text-tertiary);margin-left:4px}.ds-panel__close:hover{background:var(--bg-hover);color:var(--text-primary)}.ds-panel__ops{display:flex;flex-direction:column;gap:1px;padding:4px}.ds-panel__op-btn{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:7px;font-size:12px;font-weight:500;color:var(--text-secondary);transition:all .1s ease;white-space:nowrap}.ds-panel__op-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.ds-panel__op-icon{width:22px;text-align:center;font-size:12px;font-weight:700;color:var(--accent)}.markdown-viewer__layout{display:flex;gap:24px;align-items:flex-start}.markdown-viewer__content{flex:1;min-width:0;max-width:760px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.markdown-viewer__content a.icon-link{border:none}.markdown-viewer__content pre{margin:0;border-radius:0;overflow:hidden}.markdown-viewer__content pre code{background:none;padding:0;color:inherit;border:none}.md-heading{position:relative;display:flex;align-items:center;gap:6px}.md-heading__link{opacity:0;display:inline-flex;align-items:center;padding:2px;color:var(--text-tertiary);transition:opacity .15s ease,color .15s ease;border:none!important;flex-shrink:0}.md-heading:hover .md-heading__link{opacity:1}.md-heading__link:hover{color:var(--accent)}.callout{margin:0 0 14px;padding:10px 14px;border-radius:var(--radius-md);border-left:3px solid var(--callout-color, var(--accent));background:color-mix(in srgb,var(--callout-color, var(--accent)) 6%,transparent)}.callout__header{display:flex;align-items:center;gap:6px;margin-bottom:4px}.callout__type{font-size:11px;font-weight:700;text-transform:capitalize;color:var(--callout-color, var(--accent))}.callout__body{font-size:13px}.callout__body p{margin:0 0 4px}.callout__body p:last-child{margin:0}.md-figure{margin:16px 0;text-align:center}.md-figure__img{max-width:100%;border-radius:var(--radius-md);cursor:zoom-in;transition:transform .2s ease,box-shadow .2s ease}.md-figure__img:hover{transform:scale(1.01);box-shadow:0 4px 20px #00000026}.md-figure figcaption{font-size:11px;color:var(--text-secondary);margin-top:4px}.mermaid-container{display:flex;justify-content:center;margin:14px 0;padding:14px;background:var(--glass-bg-strong);border-radius:var(--radius-md);border:1px solid var(--glass-border);overflow-x:auto}.mermaid-container svg{max-width:100%}.task-item{list-style:none;display:flex;align-items:flex-start;gap:8px;margin-left:-18px;padding:2px 0}.task-item--done .task-text{text-decoration:line-through;color:var(--text-tertiary)}.task-check{width:16px;height:16px;flex-shrink:0;margin-top:2px;border-radius:3px;border:1.5px solid var(--border-light);display:flex;align-items:center;justify-content:center;transition:all .15s ease}.task-check--checked{background:var(--accent);border-color:var(--accent);color:#fff}.katex-display{margin:12px 0;overflow-x:auto;overflow-y:hidden;padding:4px 0}.katex{font-size:1em}.toc-sidebar{width:190px;flex-shrink:0;position:sticky;top:20px;max-height:calc(100vh - 140px);display:flex;flex-direction:column}.toc-sidebar__label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);padding:0 0 8px;margin:0 12px;border-bottom:1px solid var(--border)}.toc-sidebar__nav{display:flex;flex-direction:column;position:relative;overflow-y:auto;scrollbar-width:none;padding:6px 0;margin-left:2px;border-left:1.5px solid var(--border)}.toc-sidebar__nav::-webkit-scrollbar{display:none}.toc-sidebar__pill{position:absolute;left:-1.5px;z-index:2;width:2px;border-radius:1px;top:var(--pill-top, 0);height:var(--pill-h, 0);background:var(--accent);opacity:0;transition:top .3s cubic-bezier(.22,1,.36,1),height .3s cubic-bezier(.22,1,.36,1),opacity .2s ease}.toc-sidebar__pill--visible{opacity:1}.toc-sidebar__item{display:flex;align-items:center;padding:5px 12px 5px calc(var(--depth, 0) * 10px + 12px);font-size:12px;line-height:1.4;color:var(--text-tertiary);text-decoration:none;transition:color .15s ease;position:relative;z-index:1}.toc-sidebar__item:hover{color:var(--text-primary)}.toc-sidebar__item--active{color:var(--accent);font-weight:600}.toc-sidebar__text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.code-wrapper{border-radius:6px;overflow:hidden;border:1px solid var(--border-light);margin:0 0 16px;position:relative;background:var(--bg-secondary)}.code-wrapper__header{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;background:var(--code-header-bg);border-bottom:1px solid var(--border-light)}.code-wrapper__lang{font-size:11px;font-weight:700;font-family:var(--font-mono);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.code-wrapper__actions{display:flex;align-items:center;gap:6px}.code-toggle-btn{font-size:11px;font-weight:500;color:var(--accent);background:var(--bg-secondary);border:1px solid var(--border);cursor:pointer;padding:3px 10px;border-radius:4px;transition:all .2s}.code-toggle-btn:hover{background:var(--bg-hover);border-color:var(--border-light)}.code-copy-btn{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:500;border-radius:4px;border:1px solid var(--border);color:var(--text-secondary);transition:all .2s;background:var(--bg-secondary);cursor:pointer;white-space:nowrap}.code-copy-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-light)}.code-plain{padding:14px 16px;margin:0;font-family:var(--font-mono);font-size:13px;line-height:1.6;overflow-x:auto;background:var(--code-content-bg);color:var(--text-primary)}.code-fade{position:absolute;bottom:0;left:0;right:0;height:48px;background:linear-gradient(transparent,var(--code-content-bg));pointer-events:none}.code-diff{padding:12px 0;margin:0;font-family:var(--font-mono);font-size:13px;line-height:1.6;overflow-x:auto;background:var(--code-content-bg)}.diff-line{padding:0 16px;min-height:1.6em;white-space:pre}[data-theme=dark] .diff-add{background:#10a37f1f;color:#4ade80}[data-theme=dark] .diff-del{background:#ef44441f;color:#f87171}[data-theme=light] .diff-add{background:#10a37f1a;color:#16a34a}[data-theme=light] .diff-del{background:#ef44441a;color:#dc2626}.ascii-block{border-radius:6px;overflow:hidden;border:1px solid var(--border-light);margin:0 0 16px;background:var(--bg-secondary)}.ascii-block__header{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;background:var(--code-header-bg);border-bottom:1px solid var(--border-light)}.ascii-block__label{font-size:11px;font-weight:700;color:var(--accent-secondary);text-transform:uppercase;letter-spacing:.04em;display:flex;align-items:center;gap:6px}.ascii-block__label:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent-secondary);display:inline-block}.ascii-block__pre{padding:14px 16px;margin:0;font-family:var(--font-mono);font-size:13px;line-height:1.5;overflow-x:auto;white-space:pre;color:var(--text-primary);background:var(--code-content-bg)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;cursor:zoom-out;animation:fadeIn .2s ease}.lightbox__img{max-width:90vw;max-height:90vh;border-radius:var(--radius-md);box-shadow:0 8px 40px #00000080;cursor:default;animation:scaleIn .25s cubic-bezier(.22,1,.36,1)}.lightbox__close{position:absolute;top:16px;right:16px;width:36px;height:36px;border-radius:50%;background:#ffffff1a;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;transition:background .15s ease}.lightbox__close:hover{background:#fff3}.back-to-top{position:fixed;bottom:80px;right:24px;z-index:30;width:36px;height:36px;border-radius:50%;background:var(--glass-bg-strong);border:1px solid var(--glass-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;animation:fadeInUp .25s ease}.back-to-top:hover{background:var(--bg-hover);color:var(--text-primary);transform:translateY(-2px)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:100;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{width:460px;max-height:70vh;background:var(--glass-bg-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--glass-shadow);overflow:hidden;display:flex;flex-direction:column;animation:scaleIn .2s ease}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.modal__header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--border)}.modal__header h2{font-size:13px;font-weight:600}.modal__close{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--text-secondary);transition:all var(--transition-fast)}.modal__close:hover{background:var(--bg-hover)}.modal__body{padding:14px;overflow-y:auto}.modal__folder-select{margin-bottom:10px}.modal__folder-select>label{display:block;font-size:10px;font-weight:600;color:var(--text-secondary);margin-bottom:4px;text-transform:uppercase;letter-spacing:.04em}.modal__folder-options{display:flex;flex-direction:column;gap:4px}.modal__radio{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:12px}.modal__radio input[type=radio]{accent-color:var(--accent)}.modal__radio select,.modal__folder-input{flex:1;padding:5px 8px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-tertiary);font-size:12px;outline:none}.modal__radio select:focus,.modal__folder-input:focus{border-color:var(--border-focus)}.modal__dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:20px;border:2px dashed var(--border);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s;color:var(--text-secondary);margin-bottom:10px}.modal__dropzone:hover,.modal__dropzone--active{border-color:var(--accent);background:#10a37f08}.modal__dropzone svg{width:28px;height:28px}.modal__dropzone p{font-size:12px;font-weight:500}.modal__dropzone span{font-size:10px;color:var(--text-tertiary)}.modal__file-list{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.modal__file-list h4{padding:6px 10px;font-size:10px;font-weight:600;background:var(--bg-tertiary);color:var(--text-secondary)}.modal__file-item{display:flex;align-items:center;gap:4px;padding:5px 10px;border-top:1px solid var(--border);font-size:11px}.modal__file-item svg{flex-shrink:0;color:var(--text-tertiary)}.modal__file-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal__file-size{font-size:10px;color:var(--text-tertiary)}.modal__file-remove{width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:3px;color:var(--text-tertiary);transition:all var(--transition-fast)}.modal__file-remove:hover{background:var(--danger-bg);color:var(--danger)}.modal__footer{display:flex;justify-content:flex-end;gap:6px;padding:8px 14px;border-top:1px solid var(--border)}.modal__btn{padding:5px 12px;font-size:12px;font-weight:600;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.modal__btn--secondary{color:var(--text-secondary);border:1px solid var(--border)}.modal__btn--secondary:hover{background:var(--bg-hover)}.modal__btn--primary{background:var(--accent-gradient);color:#fff}.modal__btn--primary:hover:not(:disabled){transform:translateY(-1px)}.modal__btn--primary:disabled{opacity:.4;cursor:not-allowed}.md-section{animation:sectionSlideIn .4s cubic-bezier(.22,1,.36,1) both}@keyframes sectionSlideIn{0%{opacity:0;transform:translateY(12px);filter:blur(2px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.md-section-loader{padding:20px 0;min-height:80px}.md-section-loader__spinner{display:flex;flex-direction:column;gap:10px}.md-section-end{text-align:center;padding:20px 0 8px;font-size:10px;color:var(--text-tertiary);border-top:1px solid var(--border);margin-top:20px}.loading-skeleton{max-width:100%;margin:0 auto;padding:20px 40px}.skeleton-line{height:12px;border-radius:var(--radius-sm);margin-bottom:10px;width:100%;background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-hover) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:skeletonShimmer 1.6s ease-in-out infinite}.skeleton-title{height:20px;width:50%;margin-bottom:18px}.skeleton-w80{width:80%}.skeleton-w65{width:65%}.skeleton-w50{width:50%}.skeleton-w40,.skeleton-short{width:40%}.skeleton-medium{width:65%}@keyframes skeletonShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.timeline{max-width:460px;margin:0 auto;padding:0 20px 20px;animation:fadeInUp .3s ease .1s both}.timeline__title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);margin-bottom:8px}.timeline__list{display:flex;flex-direction:column;gap:0}.timeline__item{display:flex;align-items:flex-start;gap:8px;padding:4px 0;position:relative}.timeline__item:before{content:"";position:absolute;left:8px;top:20px;width:1px;height:calc(100% - 8px);background:var(--border)}.timeline__item:last-child:before{display:none}.timeline__dot{width:18px;height:18px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--bg-tertiary);color:var(--text-secondary);position:relative;z-index:1}.timeline__item--open .timeline__dot{color:var(--accent)}.timeline__item--upload .timeline__dot{color:var(--accent-tertiary)}.timeline__item--delete .timeline__dot{color:var(--danger)}.timeline__item--create .timeline__dot{color:var(--accent-secondary)}.timeline__item--chat .timeline__dot{color:var(--accent-warm)}.timeline__content{flex:1;min-width:0;padding-top:1px}.timeline__text{font-size:11px;color:var(--text-secondary);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timeline__time{font-size:10px;color:var(--text-tertiary)}@media (max-width: 1024px){.chat-panel{width:300px}.toc-sidebar{display:none}}@media (max-width: 768px){.sidebar{position:fixed;left:0;top:0;z-index:50;transform:translate(-100%)}.sidebar--open{transform:translate(0)}.overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:40}.mobile-menu-btn,.sidebar__close{display:flex}.chat-panel{position:fixed;right:0;top:0;z-index:50;width:100%;max-width:360px;height:100vh}.markdown-viewer{padding:16px 14px 80px}.welcome__greeting{font-size:32px}.modal{width:calc(100% - 24px)}.toc-sidebar{display:none}.back-to-top{bottom:100px;right:16px}.auth__card{width:calc(100% - 32px);padding:28px 20px}.auth__oauth-row{flex-direction:column;gap:8px}}.auth{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px;background:var(--bg-primary);position:relative;overflow:hidden}.auth__bg-orbs{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}.auth__orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.18;animation:authOrbFloat 12s ease-in-out infinite alternate}.auth__orb--1{width:340px;height:340px;background:#6366f1;top:-60px;left:-80px;animation-delay:0s}.auth__orb--2{width:280px;height:280px;background:#10b981;bottom:-40px;right:-60px;animation-delay:-4s}.auth__orb--3{width:200px;height:200px;background:#8b5cf6;top:40%;left:60%;animation-delay:-8s}@keyframes authOrbFloat{0%{transform:translate(0) scale(1)}33%{transform:translate(30px,-20px) scale(1.05)}66%{transform:translate(-20px,15px) scale(.95)}to{transform:translate(10px,-10px) scale(1.02)}}[data-theme=light] .auth__orb{opacity:.1}.auth__card{display:flex;flex-direction:column;align-items:center;gap:18px;max-width:360px;width:100%;padding:36px 30px 32px;background:color-mix(in srgb,var(--bg-secondary) 80%,transparent);backdrop-filter:blur(24px) saturate(1.4);-webkit-backdrop-filter:blur(24px) saturate(1.4);border:1px solid color-mix(in srgb,var(--border-light) 60%,transparent);border-radius:16px;box-shadow:0 4px 32px #0000001f,0 0 0 1px #ffffff08 inset;position:relative;z-index:1}.auth__card--shake{animation:authShake .4s ease}@keyframes authShake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.auth__logo{filter:drop-shadow(0 2px 12px rgba(99,102,241,.25))}.auth__header-text{display:flex;flex-direction:column;align-items:center;gap:4px}.auth__title{font-size:21px;font-weight:700;color:var(--text-primary);margin:0;letter-spacing:-.025em}.auth__subtitle{font-size:13px;color:var(--text-tertiary);margin:0;text-align:center;font-weight:400}.auth__oauth-row{display:flex;gap:10px;width:100%}.auth__oauth-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;padding:9px 0;border-radius:10px;border:1px solid var(--border-light);background:var(--bg-primary);color:var(--text-primary);font-size:13px;font-weight:550;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.auth__oauth-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.04),transparent);opacity:0;transition:opacity .2s}.auth__oauth-btn:hover:not(:disabled):before{opacity:1}.auth__oauth-btn:hover:not(:disabled){border-color:color-mix(in srgb,var(--text-tertiary) 50%,transparent);box-shadow:0 2px 8px #0000000f;transform:translateY(-1px)}.auth__oauth-btn:active:not(:disabled){transform:translateY(0) scale(.98)}.auth__oauth-btn:disabled{opacity:.45;cursor:not-allowed}.auth__oauth-btn--github svg{opacity:.85}.auth__oauth-spinner{width:14px;height:14px;border:2px solid var(--border-light);border-top-color:var(--accent);border-radius:50%;animation:spin .6s linear infinite}.auth__divider{display:flex;align-items:center;gap:14px;width:100%}.auth__divider-line{flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent)}.auth__divider-text{font-size:11px;font-weight:500;color:var(--text-tertiary);text-transform:lowercase;letter-spacing:.02em;white-space:nowrap}.auth__form{display:flex;flex-direction:column;gap:10px;width:100%}.auth__input-wrap{position:relative;width:100%}.auth__input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-tertiary);pointer-events:none;transition:color .15s}.auth__input-wrap:focus-within .auth__input-icon{color:var(--accent)}.auth__email-input{width:100%;padding:10px 14px 10px 36px;border-radius:10px;border:1px solid var(--border-light);background:var(--bg-tertiary);color:var(--text-primary);font-size:13px;outline:none;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.auth__email-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent);background:var(--bg-primary)}.auth__email-input::placeholder{color:var(--text-tertiary)}.auth__submit{width:100%;padding:10px;border-radius:10px;border:none;background:var(--accent-gradient);color:#fff;font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:opacity .15s ease,transform .15s ease,box-shadow .15s ease}.auth__submit:hover:not(:disabled){opacity:.92;transform:translateY(-1px);box-shadow:0 4px 16px color-mix(in srgb,var(--accent) 30%,transparent)}.auth__submit:active:not(:disabled){transform:translateY(0)}.auth__submit:disabled{opacity:.35;cursor:default;transform:none}.auth__info-msg{font-size:12px;color:#10b981;margin:0;font-weight:500;text-align:center;line-height:1.5;padding:8px 12px;border-radius:8px;background:color-mix(in srgb,#10B981 8%,transparent);width:100%}.auth__error{font-size:12px;color:var(--danger);margin:0;font-weight:500;text-align:center;line-height:1.5;padding:8px 12px;border-radius:8px;background:color-mix(in srgb,var(--danger) 8%,transparent);width:100%}.auth__hint{font-size:11px;color:var(--text-tertiary);margin:0;text-align:center;line-height:1.5;max-width:280px}.auth__spinner{width:24px;height:24px;border:2.5px solid var(--border-light);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes authFadeIn{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.auth__card{animation:authFadeIn .5s cubic-bezier(.22,1,.36,1)}.auth__name-input{width:100%;padding:10px 14px;border-radius:10px;border:1px solid var(--border-light);background:var(--bg-tertiary);color:var(--text-primary);font-size:13px;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.auth__name-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--border-focus)}.auth__name-input::placeholder{color:var(--text-tertiary)}.auth__pin-group{display:flex;flex-direction:column;gap:10px;align-items:center;width:100%}.auth__pin-label{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.auth__pin-inputs{display:flex;gap:8px}.auth__pin-digit{width:42px;height:50px;text-align:center;font-size:22px;font-weight:700;border:2px solid var(--border-light);border-radius:8px;background:var(--bg-tertiary);color:var(--text-primary);outline:none;caret-color:var(--accent);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.auth__pin-digit:focus{border-color:var(--accent);background:var(--bg-primary);box-shadow:0 0 0 3px var(--border-focus)}.auth__pin-digit--filled{border-color:var(--accent);background:var(--bg-primary)}.auth__pin-digit::-webkit-inner-spin-button,.auth__pin-digit::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.auth__pin-digit{-moz-appearance:textfield}[data-theme=light] .auth__pin-digit{border-color:#0000002e;background:#f0f1f3}[data-theme=light] .auth__pin-digit:focus{border-color:#6366f1;background:#fff}[data-theme=light] .auth__pin-digit--filled{border-color:#6366f1;background:#fff}[data-theme=light] .auth__name-input{border-color:#00000026;background:#f0f1f3}[data-theme=light] .auth__name-input:focus{border-color:#6366f1;background:#fff}[data-theme=light] .auth__email-input{border-color:#0000001f;background:#f4f5f7}[data-theme=light] .auth__email-input:focus{border-color:#6366f1;background:#fff}[data-theme=light] .auth__oauth-btn{border-color:#0000001a;background:#fff}[data-theme=light] .auth__oauth-btn:hover:not(:disabled){border-color:#0000002e;box-shadow:0 2px 12px #0000000f}[data-theme=light] .auth__card{background:#ffffffd1;box-shadow:0 4px 24px #0000000f,0 1px 3px #0000000a;border-color:#0000000f}.share-dialog{max-width:480px;width:100%}.share-dialog__header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--border)}.share-dialog__header-left{display:flex;align-items:center;gap:10px}.share-dialog__title{font-size:15px;font-weight:700;color:var(--text-primary);margin:0;line-height:1.2}.share-dialog__folder-name{font-size:11px;color:var(--text-tertiary);margin:0;line-height:1.2}.share-dialog__tabs{display:flex;border-bottom:1px solid var(--border)}.share-dialog__tab{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;padding:10px;font-size:12px;font-weight:600;color:var(--text-tertiary);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all var(--transition-fast)}.share-dialog__tab:hover{color:var(--text-primary)}.share-dialog__tab--active{color:var(--accent);border-bottom-color:var(--accent)}.share-dialog__tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;border-radius:8px;font-size:9px;font-weight:700;background:var(--accent);color:#fff}.share-dialog__body{padding:16px 18px;max-height:480px;overflow-y:auto}.share__create-panel{display:flex;flex-direction:column;gap:14px}.share__field{display:flex;flex-direction:column;gap:5px}.share__field--flex{flex:1}.share__row{display:flex;gap:12px}.share__label{font-size:11px;color:var(--text-secondary);font-weight:600}.share__input{padding:8px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-primary);font-size:12px;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.share__input:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 15%,transparent)}.share__input::placeholder{color:var(--text-tertiary)}.share__input--indent{margin-left:24px}.share__perm-btns{display:flex;gap:4px;flex-wrap:wrap}.share__perm-btn{display:flex;align-items:center;gap:4px;padding:6px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-primary);color:var(--text-secondary);font-size:11px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.share__perm-btn:hover{border-color:var(--text-tertiary)}.share__perm-btn--active{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}.share__expiry-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.share__expiry-btn{padding:6px 4px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-primary);color:var(--text-secondary);font-size:10px;font-weight:500;cursor:pointer;text-align:center;transition:all var(--transition-fast)}.share__expiry-btn:hover{border-color:var(--text-tertiary)}.share__expiry-btn--active{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent);font-weight:600}.share__advanced-toggle{display:flex;align-items:center;gap:5px;padding:0;border:none;background:none;color:var(--text-tertiary);font-size:11px;font-weight:500;cursor:pointer;transition:color var(--transition-fast)}.share__advanced-toggle:hover{color:var(--text-primary)}.share__advanced{display:flex;flex-direction:column;gap:10px;padding:10px 0}.share__toggle-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.share__toggle-info{display:flex;align-items:flex-start;gap:8px;flex:1}.share__toggle-info>svg{margin-top:2px;flex-shrink:0;color:var(--text-tertiary)}.share__toggle-label{display:block;font-size:12px;font-weight:600;color:var(--text-primary)}.share__toggle-desc{display:block;font-size:10px;color:var(--text-tertiary);line-height:1.3}.share__switch{position:relative;width:36px;height:20px;border-radius:10px;background:var(--border);border:none;cursor:pointer;transition:background .2s ease;flex-shrink:0}.share__switch--on{background:var(--accent)}.share__switch-knob{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .2s ease}.share__switch--on .share__switch-knob{transform:translate(16px)}.share__create-btn{display:flex;align-items:center;gap:6px;justify-content:center;width:100%;padding:10px;border-radius:var(--radius-sm);border:none;background:var(--accent-gradient);color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:opacity var(--transition-fast),transform .1s}.share__create-btn:hover{opacity:.92}.share__create-btn:active{transform:scale(.98)}.share__create-btn:disabled{opacity:.5;cursor:default;transform:none}.share__links-panel{display:flex;flex-direction:column;gap:8px}.share__loading{font-size:12px;color:var(--text-tertiary);text-align:center;padding:24px 0}.share__empty-state{display:flex;flex-direction:column;align-items:center;gap:8px;padding:32px 16px;text-align:center}.share__empty-state p{font-size:12px;color:var(--text-tertiary);margin:0}.share__empty-btn{padding:6px 14px;border-radius:var(--radius-sm);border:1px solid var(--accent);background:none;color:var(--accent);font-size:11px;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.share__empty-btn:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}.share__link-card{padding:12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-tertiary);transition:border-color var(--transition-fast)}.share__link-card:hover{border-color:var(--text-tertiary)}.share__link-card--expired{opacity:.55}.share__link-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.share__link-label{font-size:13px;font-weight:600;color:var(--text-primary)}.share__link-badges{display:flex;gap:4px;align-items:center}.share__badge{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:8px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.share__badge--active{background:color-mix(in srgb,#10b981 12%,transparent);color:#10b981}.share__badge--paused{background:color-mix(in srgb,#f59e0b 12%,transparent);color:#f59e0b}.share__badge--expired{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger)}.share__badge--lock{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);padding:3px 5px}.share__link-meta{display:flex;align-items:center;gap:4px;flex-wrap:wrap;font-size:10px;color:var(--text-tertiary);margin-bottom:8px}.share__link-dot{color:var(--border)}.share__link-actions{display:flex;gap:4px}.share__action-btn{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-primary);color:var(--text-secondary);font-size:10px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.share__action-btn:hover{border-color:var(--accent);color:var(--accent)}.share__action-btn--copy{font-weight:600}.share__action-btn--copied{border-color:#10b981;color:#10b981;background:color-mix(in srgb,#10b981 6%,transparent)}.share__action-btn--danger:hover{border-color:var(--danger);color:var(--danger)}.share__section-divider{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:10px;color:var(--text-tertiary);font-weight:600;text-transform:uppercase}.share__section-divider:after{content:"";flex:1;height:1px;background:var(--border)}.share-view{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px;background:var(--bg-primary)}.share-view--reading{flex-direction:column;align-items:stretch;min-height:100vh}.share-view__loading{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--text-tertiary);font-size:13px}.share-view__error{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.share-view__error h2{font-size:18px;font-weight:700;color:var(--text-primary);margin:0}.share-view__error p{font-size:13px;color:var(--text-tertiary);margin:0}.share-view__home-link{padding:8px 16px;border-radius:var(--radius-sm);background:var(--accent-gradient);color:#fff;text-decoration:none;font-size:12px;font-weight:600}.share-view__pw-card{max-width:380px;width:100%;padding:32px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 8px 32px #0000001f;display:flex;flex-direction:column;align-items:center;text-align:center;animation:authFadeIn .3s ease}.share-view__pw-icon{width:56px;height:56px;border-radius:16px;background:color-mix(in srgb,var(--accent) 10%,transparent);display:flex;align-items:center;justify-content:center;margin-bottom:16px}.share-view__pw-title{font-size:18px;font-weight:700;color:var(--text-primary);margin:0 0 4px}.share-view__pw-label{font-size:13px;color:var(--accent);margin:0 0 4px;font-weight:600}.share-view__pw-desc{font-size:12px;color:var(--text-tertiary);margin:0 0 20px}.share-view__pw-form{display:flex;gap:6px;width:100%}.share-view__pw-input{flex:1;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-primary);font-size:13px;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.share-view__pw-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 15%,transparent)}.share-view__pw-btn{width:40px;height:40px;border-radius:var(--radius-sm);border:none;background:var(--accent-gradient);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity var(--transition-fast)}.share-view__pw-btn:hover{opacity:.88}.share-view__pw-btn:disabled{opacity:.5;cursor:default}.share-view__pw-error{font-size:12px;color:var(--danger);margin:8px 0 0}.share-view__pw-footer{display:flex;align-items:center;gap:6px;justify-content:center;margin-top:24px;padding-top:12px;border-top:1px solid var(--border);font-size:10px;color:var(--text-tertiary);width:100%}.share-view__card{max-width:500px;width:100%;padding:28px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 8px 32px #0000001f;animation:authFadeIn .3s ease}.share-view__card-header{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px}.share-view__card-title-group{flex:1}.share-view__card-title-group h2{font-size:20px;font-weight:700;color:var(--text-primary);margin:0;line-height:1.2}.share-view__card-label{font-size:12px;color:var(--text-tertiary);margin:2px 0 0}.share-view__badge{padding:3px 9px;border-radius:10px;font-size:9px;font-weight:700;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.share-view__info-bar{display:flex;flex-wrap:wrap;gap:12px;padding:10px 12px;background:var(--bg-tertiary);border-radius:var(--radius-sm);margin-bottom:16px}.share-view__info-item{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text-secondary)}.share-view__info-item svg{color:var(--text-tertiary);flex-shrink:0}.share-view__files{display:flex;flex-direction:column;gap:3px}.share-view__file{display:flex;align-items:center;gap:8px;padding:11px 12px;border-radius:var(--radius-sm);border:none;background:var(--bg-tertiary);color:var(--text-secondary);font-size:13px;cursor:pointer;width:100%;text-align:left;transition:all var(--transition-fast)}.share-view__file:hover{background:var(--bg-hover);color:var(--text-primary)}.share-view__file span{flex:1}.share-view__footer{display:flex;align-items:center;gap:6px;justify-content:center;margin-top:20px;padding-top:14px;border-top:1px solid var(--border);font-size:10px;color:var(--text-tertiary)}.share-view__header{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--border)}.share-view__header-actions{display:flex;align-items:center;gap:8px}.share-view__download-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-primary);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.share-view__download-btn:hover{border-color:var(--accent);color:var(--accent)}.share-view__back{display:flex;align-items:center;gap:4px;padding:5px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-primary);color:var(--text-secondary);font-size:12px;cursor:pointer;transition:all var(--transition-fast)}.share-view__back:hover{border-color:var(--accent);color:var(--accent)}.share-view__file-title{flex:1;font-size:14px;font-weight:600;color:var(--text-primary)}.share-view__content{flex:1;overflow-y:auto;padding:20px}.header__upgrade-btn{background:linear-gradient(135deg,#f59e0b,#ef4444)!important;color:#fff!important;font-weight:600!important;border-radius:var(--radius-full)!important;padding:3px 10px!important;font-size:11px!important;animation:upgradeGlow 2s ease-in-out infinite}.header__upgrade-btn:hover{transform:scale(1.05);opacity:.95!important}@keyframes upgradeGlow{0%,to{box-shadow:0 0 4px #f59e0b4d}50%{box-shadow:0 0 12px #f59e0b80}}.header__pro-dot{position:absolute;bottom:-1px;right:-1px;width:8px;height:8px;border-radius:50%;background:#f59e0b;border:1.5px solid var(--bg-primary)}.header__dropdown-pro-badge{display:inline-block;padding:1px 5px;border-radius:3px;background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff;font-size:8px;font-weight:800;letter-spacing:.05em;margin-left:6px;vertical-align:middle}.header__dropdown-item--upgrade{color:#f59e0b!important}.header__dropdown-item--upgrade:hover{background:#f59e0b14!important}.ad-banner{position:relative}.ad-banner__label{position:absolute;top:2px;right:6px;font-size:8px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em}.ad-content{padding:6px 16px;flex-shrink:0;border-bottom:1px solid var(--border)}.ad-content__inner{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--bg-tertiary) 0%,var(--bg-hover) 100%);border:1px solid var(--border)}.ad-content__badge{font-size:7px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);padding:2px 6px;border-radius:3px;background:var(--bg-hover);flex-shrink:0}.ad-content__body{flex:1;min-width:0;position:relative}.ad-content__body .adsbygoogle{min-height:50px}.ad-content__fallback{display:flex;align-items:center;gap:10px;color:var(--text-tertiary);font-size:12px}.ad-content__fallback svg{flex-shrink:0;opacity:.5}.ad-content__fallback-text{display:flex;flex-direction:column;gap:2px}.ad-content__fallback-text strong{font-size:12px;color:var(--text-secondary)}.ad-content__fallback-text span{font-size:10px}.ad-content__upgrade{padding:6px 14px;border-radius:var(--radius-full);background:linear-gradient(135deg,#f59e0b,#ef4444);flex-shrink:0;color:#fff;font-size:10px;font-weight:600;border:none;cursor:pointer;white-space:nowrap;transition:all var(--transition-fast)}.ad-content__upgrade:hover{opacity:.9;transform:scale(1.02)}.ad-sidebar{margin:4px 6px 6px;padding:0;border-radius:var(--radius-sm);overflow:hidden;position:relative}.ad-sidebar .adsbygoogle{min-height:100px}.ad-sidebar__fallback{background:linear-gradient(160deg,#6366f114,#10b9810f);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px;text-align:center}.ad-sidebar__promo{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--text-tertiary)}.ad-sidebar__promo svg{color:#f59e0b;margin-bottom:4px}.ad-sidebar__promo strong{font-size:13px;color:var(--text-primary);background:linear-gradient(135deg,#f59e0b,#ef4444);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.ad-sidebar__promo span{font-size:10px;line-height:1.4}.ad-sidebar__cta{margin-top:8px;padding:5px 16px;border-radius:var(--radius-full);background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff;border:none;font-size:10px;font-weight:600;cursor:pointer;transition:all var(--transition-fast);letter-spacing:.02em}.ad-sidebar__cta:hover{opacity:.9;transform:scale(1.03)}.ad-article{margin:24px 0;padding:0 24px;position:relative}.ad-article__label{font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);margin-bottom:6px}.ad-article .adsbygoogle{min-height:90px}.ad-article__card{display:flex;align-items:center;gap:16px;padding:16px 20px;border-radius:var(--radius-md);background:linear-gradient(135deg,#6366f10f,#f59e0b0f);border:1px solid var(--border)}.ad-article__icon{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,#f59e0b22,#ef444422);color:#f59e0b}.ad-article__text{flex:1}.ad-article__text strong{display:block;font-size:14px;color:var(--text-primary);margin-bottom:4px}.ad-article__text p{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.5}.ad-article__btn{flex-shrink:0;padding:8px 20px;border-radius:var(--radius-full);background:linear-gradient(135deg,#6366f1,#10b981);color:#fff;border:none;font-size:12px;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.ad-article__btn:hover{opacity:.9;transform:scale(1.03)}.ad-footer{margin:0;padding:12px 24px;border-top:1px solid var(--border);background:var(--bg-secondary)}.ad-footer .adsbygoogle{min-height:60px}.ad-footer__fallback{display:flex;align-items:center;gap:10px}.ad-footer__tag{font-size:7px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);padding:2px 6px;border-radius:3px;background:var(--bg-hover);flex-shrink:0}.ad-footer__content{flex:1;font-size:12px;color:var(--text-secondary)}.ad-footer__content strong{color:var(--text-primary)}.ad-footer__link{background:none;border:none;color:#6366f1;font-size:12px;font-weight:600;cursor:pointer;margin-left:8px;text-decoration:underline;transition:color var(--transition-fast)}.ad-footer__link:hover{color:#4f46e5}@media (max-width: 768px){.ad-article__card{flex-direction:column;text-align:center;gap:10px}.ad-content__inner{flex-direction:column;gap:8px}.ad-content__fallback{justify-content:center}.ad-footer__fallback{flex-direction:column;text-align:center;gap:6px}}.premium-modal{width:600px;max-width:calc(100% - 24px);max-height:90vh;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:0 16px 64px #0000004d;overflow-y:auto;position:relative;animation:scaleIn .25s ease}.premium-modal__close{position:absolute;top:12px;right:12px;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);background:var(--bg-tertiary);border:none;cursor:pointer;z-index:1;transition:all var(--transition-fast)}.premium-modal__close:hover{background:var(--bg-hover);color:var(--text-primary)}.premium-modal__header{display:flex;flex-direction:column;align-items:center;gap:8px;padding:28px 24px 16px;text-align:center}.premium-modal__badge{display:inline-block;padding:3px 10px;border-radius:var(--radius-full);background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff;font-size:10px;font-weight:800;letter-spacing:.08em}.premium-modal__title{font-size:20px;font-weight:700;color:var(--text-primary);margin:0}.premium-modal__subtitle{font-size:13px;color:var(--text-secondary);margin:0}.premium-modal__plans{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:0 20px}.premium-plan{display:flex;flex-direction:column;gap:10px;padding:16px 12px;border-radius:var(--radius-md);border:2px solid var(--border);background:var(--bg-primary);cursor:pointer;text-align:center;position:relative;transition:all .2s ease}.premium-plan:hover{border-color:var(--border-light)}.premium-plan--selected{border-color:var(--accent)!important;background:color-mix(in srgb,var(--accent) 4%,transparent)}.premium-plan--popular{border-color:#f59e0b}.premium-plan__tag{position:absolute;top:-8px;left:50%;transform:translate(-50%);padding:2px 8px;border-radius:var(--radius-full);background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.premium-plan__name{font-size:12px;font-weight:600;color:var(--text-primary)}.premium-plan__price{display:flex;align-items:baseline;justify-content:center;gap:2px}.premium-plan__original{font-size:13px;color:var(--text-tertiary);text-decoration:line-through;margin-right:4px}.premium-plan__amount{font-size:24px;font-weight:800;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.premium-plan__period{font-size:11px;color:var(--text-tertiary)}.premium-plan__features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px;text-align:left}.premium-plan__features li{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--text-secondary)}.premium-plan__features li svg{color:var(--accent);flex-shrink:0}.premium-modal__referral{padding:12px 20px;display:flex;flex-direction:column;gap:6px}.premium-modal__referral label{font-size:11px;font-weight:600;color:var(--text-secondary)}.premium-modal__referral-input{display:flex;gap:6px}.premium-modal__referral-input input{flex:1;padding:7px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-tertiary);font-size:12px;outline:none;color:var(--text-primary)}.premium-modal__referral-input input:focus{border-color:var(--accent)}.premium-modal__referral-input button{padding:7px 14px;border-radius:var(--radius-sm);background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);font-size:11px;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.premium-modal__referral-input button:hover{border-color:var(--accent);color:var(--accent)}.premium-modal__referral-input button:disabled{opacity:.4;cursor:default}.premium-modal__referral-applied{padding:7px 14px;border-radius:var(--radius-sm);background:#10b9811a;color:var(--accent);font-size:11px;font-weight:600}.premium-modal__error{padding:0 20px;font-size:12px;color:var(--danger);font-weight:500;margin:0}.premium-modal__pay{display:flex;align-items:center;justify-content:center;gap:8px;margin:8px 20px;padding:12px;border-radius:var(--radius-sm);background:var(--accent-gradient);color:#fff;font-size:14px;font-weight:700;border:none;cursor:pointer;transition:all .2s ease}.premium-modal__pay:hover:not(:disabled){opacity:.92;transform:translateY(-1px)}.premium-modal__pay:disabled{opacity:.5;cursor:default}.premium-modal__secure{display:flex;align-items:center;justify-content:center;gap:4px;padding:8px 20px 20px;font-size:10px;color:var(--text-tertiary);margin:0}.referral-panel{width:440px;max-width:calc(100% - 24px);background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:0 16px 64px #0000004d;overflow:hidden;animation:scaleIn .25s ease}.referral-panel__header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border)}.referral-panel__header h2{font-size:15px;font-weight:700;margin:0}.referral-panel__hero{display:flex;flex-direction:column;align-items:center;gap:6px;padding:20px 18px 12px;text-align:center}.referral-panel__icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ef44441a,#f59e0b1a);color:#ef4444}.referral-panel__hero h3{font-size:16px;font-weight:700;margin:0;color:var(--text-primary)}.referral-panel__hero p{font-size:12px;color:var(--text-secondary);margin:0}.referral-panel__code-section{padding:0 18px 12px}.referral-panel__code-section label{font-size:10px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;display:block;margin-bottom:6px}.referral-panel__code-box{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:var(--radius-sm);background:var(--bg-tertiary);border:1px dashed var(--border-light)}.referral-panel__code{flex:1;font-size:16px;font-weight:800;font-family:var(--font-mono);letter-spacing:.06em;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.referral-panel__copy{padding:5px 12px;border-radius:var(--radius-sm);background:var(--accent-gradient);color:#fff;font-size:11px;font-weight:600;border:none;cursor:pointer;transition:all var(--transition-fast)}.referral-panel__copy:hover{opacity:.9}.referral-panel__copy--done{background:#10b981!important}.referral-panel__stats{display:flex;gap:12px;padding:0 18px 12px}.referral-panel__stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px;border-radius:var(--radius-sm);background:var(--bg-tertiary);border:1px solid var(--border)}.referral-panel__stat-value{font-size:20px;font-weight:800;color:var(--text-primary)}.referral-panel__stat-label{font-size:10px;font-weight:500;color:var(--text-tertiary)}.referral-panel__share{padding:0 18px 12px}.referral-panel__share label{font-size:10px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;display:block;margin-bottom:6px}.referral-panel__share-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.referral-panel__share-btn{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 4px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-primary);text-decoration:none;color:var(--text-secondary);font-size:10px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.referral-panel__share-btn:hover{border-color:var(--accent);background:var(--bg-hover);color:var(--text-primary)}.referral-panel__share-btn span:first-child{font-size:18px}.referral-panel__link-section{padding:0 18px 18px}.referral-panel__link-section label{font-size:10px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;display:block;margin-bottom:6px}.referral-panel__link-box{display:flex;gap:4px}.referral-panel__link-box input{flex:1;padding:7px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-tertiary);font-size:11px;font-family:var(--font-mono);color:var(--text-secondary);outline:none;min-width:0}.referral-panel__link-box button{padding:7px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.referral-panel__link-box button:hover{border-color:var(--accent);color:var(--accent)}@media (max-width: 640px){.premium-modal__plans{grid-template-columns:1fr}.premium-modal{max-height:85vh}.referral-panel__share-grid{grid-template-columns:repeat(2,1fr)}}.dc-navbar{position:sticky;top:0;z-index:50;background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--border);box-shadow:var(--glass-shadow)}.dc-navbar__inner{display:flex;align-items:center;justify-content:space-between;padding:0 12px 0 24px;height:50px;width:100%}.dc-navbar__brand{display:inline-flex;align-items:center;gap:8px;border:none;background:transparent;cursor:pointer;padding:4px 8px;border-radius:var(--radius-md, 8px);color:inherit}.dc-navbar__brand:hover{background:var(--bg-hover)}.dc-brand{display:inline-flex;align-items:center;gap:8px;transition:gap .22s ease}.dc-brand__label{display:inline-grid;align-items:center;min-width:0}.dc-brand__label-full,.dc-brand__label-short{grid-area:1 / 1;white-space:nowrap;transition:opacity .28s cubic-bezier(.4,0,.2,1),transform .28s cubic-bezier(.4,0,.2,1),max-width .28s cubic-bezier(.4,0,.2,1)}.dc-brand--compact .dc-brand__label-full{opacity:0;max-width:0;overflow:hidden;transform:translate(-8px);pointer-events:none}.dc-brand--compact .dc-brand__label-short{opacity:1;transform:none}.dc-brand--expanded{gap:9px}.dc-brand--expanded .dc-brand__label-short{opacity:0;max-width:0;overflow:hidden;transform:scale(.88);pointer-events:none}.dc-brand--expanded .dc-brand__label-full{opacity:1;max-width:12rem;transform:none}@media (prefers-reduced-motion: reduce){.dc-brand__label-full,.dc-brand__label-short{transition:none}}.dc-brand-wordmark{font-family:Excalifont,Comic Sans MS,Segoe UI,cursive;font-size:1.15rem;font-weight:700;letter-spacing:-.02em;color:var(--text-primary)}.dc-brand-wordmark__accent{color:var(--brand-purple, #6965db)}.auth__logo .dc-brand-wordmark{font-size:1.35rem}.dc-navbar__title{font-size:16px;font-weight:700;color:var(--text-primary)}.dc-navbar__links{display:flex;align-items:center;justify-content:center;gap:6px;flex:1}.dc-navbar__sep{display:inline-flex;align-items:center;justify-content:center;padding:0 4px;color:var(--text-tertiary, #888);font-size:14px;font-weight:400;opacity:.55;-webkit-user-select:none;user-select:none;line-height:1}.dc-navbar__ephemeral-tab{display:inline-flex;align-items:center;gap:2px;max-width:180px;padding:2px 4px 2px 10px;border-radius:var(--radius-md);color:var(--text-secondary);transition:var(--transition-fast);position:relative}.dc-navbar__ephemeral-tab:hover{color:var(--text-primary);background:var(--bg-hover)}.dc-navbar__ephemeral-tab--active{color:var(--brand-purple, #6965db);background:color-mix(in srgb,var(--brand-purple, #6965db) 12%,transparent)}.dc-navbar__ephemeral-tab--active:after{content:"";position:absolute;left:10px;right:28px;bottom:2px;height:2px;border-radius:2px;background:var(--brand-purple, #6965db);opacity:.85}.dc-navbar__ephemeral-tab__label{border:none;background:transparent;color:inherit;font-size:14px;font-weight:500;font-family:inherit;padding:4px 2px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.dc-navbar__ephemeral-tab--profile{max-width:220px;padding-left:6px}.dc-navbar__ephemeral-tab__label--profile{display:inline-flex;align-items:center;gap:7px;max-width:170px;padding-left:0}.dc-navbar__ephemeral-tab__avatar{width:18px;height:18px;border-radius:50%;overflow:hidden;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:var(--accent-gradient, linear-gradient(135deg, #6366F1, #10B981));font-size:8px;font-weight:700;color:#fff;line-height:1}.dc-navbar__ephemeral-tab__avatar img{width:100%;height:100%;object-fit:cover}.dc-navbar__ephemeral-tab__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.dc-navbar__ephemeral-tab--profile.dc-navbar__ephemeral-tab--active:after{left:28px}.dc-navbar__ephemeral-tab__close{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;border-radius:5px;background:transparent;color:inherit;opacity:.55;cursor:pointer;flex-shrink:0}.dc-navbar__ephemeral-tab:hover .dc-navbar__ephemeral-tab__close,.dc-navbar__ephemeral-tab--active .dc-navbar__ephemeral-tab__close{opacity:.85}.dc-navbar__ephemeral-tab__close:hover{opacity:1;background:color-mix(in srgb,var(--text-primary) 10%,transparent);color:var(--text-primary)}.dc-navbar__link{font-size:14px;font-weight:500;padding:6px 18px;border-radius:var(--radius-md);color:var(--text-secondary);transition:var(--transition-fast);white-space:nowrap;position:relative}.dc-navbar__link:hover{color:var(--text-primary);background:var(--bg-hover)}.dc-navbar__link--active{color:var(--brand-purple, #6965db);background:color-mix(in srgb,var(--brand-purple, #6965db) 12%,transparent)}.dc-navbar__link--active:after{content:"";position:absolute;left:18px;right:18px;bottom:2px;height:2px;border-radius:2px;background:var(--brand-purple, #6965db);opacity:.85}@media (prefers-reduced-motion: reduce){.dc-navbar__link--active:after{animation:none}}.dc-navbar__theme-btn{padding:6px;border-radius:var(--radius-sm);color:var(--text-secondary);transition:var(--transition-fast);flex-shrink:0}.dc-navbar__theme-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.dc-navbar__actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.dc-navbar__icon-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast)}.dc-navbar__icon-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.dc-navbar__icon-btn:focus-visible{border-color:var(--accent-secondary);outline:none}.dc-navbar__theme-toggle svg{transition:transform .25s cubic-bezier(.22,1,.36,1)}html.dc-theme-revealing .dc-navbar__theme-toggle svg{animation:dc-theme-icon-sketch .52s cubic-bezier(.22,1,.36,1)}@keyframes dc-theme-icon-sketch{0%{transform:rotate(0) scale(1)}42%{transform:rotate(-18deg) scale(.82)}72%{transform:rotate(9deg) scale(1.12)}to{transform:rotate(0) scale(1)}}.dc-mobile-nav,.dc-mobile-sheet,.dc-mobile-sheet-backdrop,.dc-mobile-workspace-backdrop,.dc-mobile-workspace-trigger{display:none}@media (max-width: 768px){.dc-navbar{position:sticky}.dc-navbar__inner{height:52px;padding:0 max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left))}.dc-navbar__links{display:none}.dc-navbar__brand{padding-left:0}.dc-navbar__brand .dc-brand--expanded .dc-brand__label-full{max-width:9rem}.dc-navbar__actions>.dc-navbar__icon-btn:not(.dc-navbar__theme-toggle):not(.nc__trigger){display:none}.dc-navbar__actions .nc{display:inline-flex}.dc-navbar__actions .user-profile-menu,.dc-navbar__actions [class*=profile]{display:none}.dc-navbar__icon-btn{width:40px;height:40px}.dc-mobile-nav{position:fixed;z-index:120;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;left:10px;right:10px;bottom:max(8px,env(safe-area-inset-bottom));min-height:60px;padding:4px;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:16px;background:color-mix(in srgb,var(--bg-secondary) 92%,transparent);box-shadow:0 10px 28px #0000002e;backdrop-filter:blur(16px) saturate(145%);-webkit-backdrop-filter:blur(16px) saturate(145%)}.dc-mobile-nav__item{min-width:0;min-height:52px;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:12px;color:var(--text-tertiary);font-family:var(--font-hand, "Excalifont", cursive);font-size:10px;font-weight:600;transition:color .18s ease,background .18s ease,transform .18s ease}.dc-mobile-nav__item svg{flex:0 0 auto}.dc-mobile-nav__item--active{color:var(--brand-purple, #6965db);background:color-mix(in srgb,var(--brand-purple, #6965db) 13%,transparent)}.dc-mobile-nav__item:active{transform:scale(.94)}.dc-mobile-sheet-backdrop{display:block;position:fixed;z-index:125;top:0;right:0;bottom:0;left:0;border:0;background:#0c0c1247;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dc-mobile-sheet{display:block;position:fixed;z-index:130;left:0;right:0;bottom:0;padding:8px 16px calc(18px + env(safe-area-inset-bottom));border:1px solid var(--border);border-bottom:0;border-radius:20px 20px 0 0;background:var(--bg-secondary);box-shadow:0 -16px 44px #0003;transform:translateY(105%);transition:transform .28s cubic-bezier(.22,1,.36,1);visibility:hidden}.dc-mobile-sheet--open{transform:translateY(0);visibility:visible}.dc-mobile-sheet__grabber{width:36px;height:4px;margin:0 auto 10px;border-radius:999px;background:var(--border)}.dc-mobile-sheet__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-family:var(--font-hand, "Excalifont", cursive);font-size:18px;font-weight:700}.dc-mobile-sheet__head button{width:40px;height:40px;border-radius:10px;color:var(--text-secondary);font-size:26px;line-height:1}.dc-mobile-sheet__links,.dc-mobile-sheet__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.dc-mobile-sheet__links button,.dc-mobile-sheet__actions button{min-height:46px;display:flex;align-items:center;justify-content:space-between;padding:0 13px;border:1px solid var(--border);border-radius:10px;background:var(--bg-primary);color:var(--text-primary);font-size:13px;text-align:left}.dc-mobile-sheet__links button.is-active{border-color:color-mix(in srgb,var(--brand-purple, #6965db) 65%,var(--border));color:var(--brand-purple, #6965db);background:color-mix(in srgb,var(--brand-purple, #6965db) 10%,var(--bg-primary))}.dc-mobile-sheet__actions{grid-template-columns:1fr;margin-top:14px}.dc-mobile-sheet__actions button{justify-content:center}.dc-mobile-sheet__profile{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.dc-mobile-sheet__profile .upm{width:100%}.dc-mobile-sheet__profile .upm__trigger{width:100%;min-height:48px;justify-content:flex-start}@media (prefers-reduced-motion: reduce){.dc-mobile-nav__item,.dc-mobile-sheet,.ft-sidebar{transition:none!important}.dc-mobile-nav__item:active{transform:none}}.obs-app__body,.dc-theory-reader__body,.dc-catalog,.dc-detail__content--unified{padding-bottom:calc(78px + env(safe-area-inset-bottom))}.obs-app.cv-app .obs-app__body,.excalidraw-page .obs-app__body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}.dc-mobile-workspace-backdrop{display:block;position:fixed;z-index:92;top:52px;right:0;bottom:0;left:0;border:0;background:#080a124d;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.ft-sidebar{position:fixed!important;z-index:100;top:52px;bottom:0;left:0;width:min(86vw,340px)!important;max-width:min(86vw,340px)!important;transform:translate(-105%);transition:transform .25s cubic-bezier(.22,1,.36,1);box-shadow:12px 0 30px #0003}.ft-sidebar.ft-sidebar--mobile-open{transform:translate(0)}.ft-sidebar .sidebar-resizer,.ft-sidebar .sidebar-resize-handle,.ft-actions__btn--sidebar-collapse{display:none!important}.dc-mobile-workspace-trigger{display:inline-flex;align-items:center;gap:6px;min-height:40px;margin:6px 8px -2px;padding:0 9px;border:1px solid var(--obs-border, var(--border));border-radius:9px;background:var(--obs-chrome, var(--bg-secondary));color:var(--obs-strong, var(--text-primary));font-size:12px;font-weight:600}.dc-mobile-workspace-trigger--canvas{min-height:32px;width:32px;margin:0 4px 0 0;padding:0;justify-content:center}.dc-catalog,.dc-problems-page{padding:24px 16px calc(92px + env(safe-area-inset-bottom))}.dc-catalog__header{margin-bottom:20px}.dc-catalog__title{font-size:clamp(30px,9vw,42px);line-height:1.04}.dc-catalog__desc{font-size:15px;line-height:1.5}.dc-tag-cloud__wrap,.dc-problems-toolbar__diff{flex-wrap:nowrap;overflow-x:auto;padding:2px 1px 8px;margin-bottom:-8px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.dc-tag-cloud__wrap::-webkit-scrollbar{display:none}.dc-tag-pill{min-height:38px;padding:5px 13px}.dc-card-grid,.dc-catalog--wide .dc-card-grid{grid-template-columns:1fr;gap:10px}.dc-algo-card{padding:15px;min-height:120px}.dc-problems-page{width:100%;max-width:100%;margin:0 auto;box-sizing:border-box}.dc-problems-page__body{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:16px;width:100%}.dc-problems-page__main{position:relative;z-index:2;flex:0 0 auto;width:100%;max-width:100%;margin:0;padding-top:4px;background:var(--bg-primary);order:unset}.dc-problems-profile--full{display:none!important}.dc-problems-profile--highlights,.dc-problems-profile--details{display:flex!important;flex-direction:column!important;position:static!important;top:auto!important;width:100%!important;max-width:100%!important;flex:0 0 auto!important;height:auto!important;min-height:0;overflow:visible!important;margin:0;gap:12px;order:unset;z-index:1}.dc-problems-profile--highlights{margin-bottom:4px}.dc-problems-profile--details{margin-top:8px;margin-bottom:calc(12px + env(safe-area-inset-bottom))}.dc-problems-profile--highlights .dc-profile-activity,.dc-problems-profile--highlights .dc-profile-heatmap{position:relative!important;display:flex;flex-direction:column;width:100%;height:auto!important;overflow:visible}.dc-problems-profile--highlights .dc-profile-heatmap{flex-direction:row;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:8px;margin-bottom:4px}.dc-problems-profile__user{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:4px}.dc-problems-profile__avatar-wrap{--dc-avatar-size: 96px;--dc-avatar-gap: 8px;transform:none;transform-origin:center center}.dc-problems-profile__name{font-size:16px;margin:0}.dc-problems-profile__block{margin-top:4px;width:100%}.dc-problems-profile__card-body{justify-content:center;gap:12px}.dc-problems-profile__ring-wrap{transform:scale(.85);transform-origin:center center}.dc-problems-profile__status-grid{margin-top:4px;width:100%}.dc-problems-profile .dc-profile-activity,.dc-problems-profile .dc-profile-daily,.dc-problems-profile .dc-profile-calendar{display:block;width:100%;max-width:100%;box-sizing:border-box;position:relative;height:auto;overflow:visible}.dc-problems-profile .dc-profile-heatmap,.dc-problems-profile .dc-profile-heatmap__grid-wrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.dc-problems-profile .dc-profile-heatmap__grid{min-width:max-content}.dc-problems-profile .dc-profile-calendar{overflow:visible}.dc-problems-profile .dc-profile-calendar__grid,.dc-problems-profile .dc-profile-daily__body{width:100%}.dc-catalog--problems .dc-catalog__search-row,.dc-catalog--problems .dc-tag-cloud,.dc-catalog--problems .dc-problems-toolbar,.dc-catalog--problems .dc-problem-list,.dc-catalog--problems .dc-pagination{width:100%;max-width:100%;margin-left:auto;margin-right:auto}.dc-catalog--problems .dc-problem-list{border:1px solid color-mix(in srgb,var(--border) 85%,transparent);border-radius:var(--radius-md, 8px);overflow:hidden;background:var(--bg-primary);box-sizing:border-box}.dc-catalog--problems .dc-problem-list__header{display:flex;position:sticky;top:0;z-index:1;padding:7px 10px 7px 12px;font-size:10px;width:100%;box-sizing:border-box}.dc-catalog--problems .dc-problem-list__col--cat,.dc-catalog--problems .dc-problem-list__col--icon,.dc-catalog--problems .dc-problem-row__cat,.dc-catalog--problems .dc-problem-row__icon-wrap,.dc-catalog--problems .dc-problem-sort-head--cat{display:none!important;width:0!important;min-width:0!important;margin:0!important;padding:0!important;overflow:hidden}.dc-catalog--problems .dc-problem-list__col--status,.dc-catalog--problems .dc-problem-row__status{width:72px;flex-shrink:0;font-size:11px}.dc-catalog--problems .dc-problem-list__col--diff,.dc-catalog--problems .dc-problem-row__diff,.dc-catalog--problems .dc-problem-sort-head--diff{width:72px;flex-shrink:0;font-size:11px;font-weight:700}.dc-catalog--problems .dc-problem-sort-head--title{flex:1;min-width:0}.dc-catalog--problems .dc-problem-row{display:flex;align-items:center;width:100%;min-height:46px;margin:0;padding:8px 10px 8px 12px;border:none;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:0;background:transparent;text-align:left;gap:0;box-sizing:border-box}.dc-catalog--problems .dc-problem-row:last-child{border-bottom:none}.dc-catalog--problems .dc-problem-row__title{flex:1;min-width:0;font-size:13px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dc-catalog--problems .dc-problem-row__num{width:36px;font-size:12px}.dc-pagination{padding-bottom:8px}.dc-theory-reader__topbar{padding:8px 12px;gap:8px}.dc-theory-reader__title-block{min-width:0}.dc-theory-reader__track-title{font-size:13px}.dc-theory-reader__breadcrumb{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.dc-theory-sidebar{width:min(86vw,336px)!important;max-width:min(86vw,336px);height:100%!important;top:0!important;box-shadow:10px 0 28px #0000002e}.dc-theory-sidebar--collapsed{transform:translate(-105%);opacity:1;pointer-events:none}.dc-theory-mobile-backdrop{display:block;z-index:95;top:0;right:0;bottom:0;left:0}.dc-theory-sidebar{z-index:100;position:fixed!important}.dc-theory-reader__main,.dc-theory-main{min-width:0}.dc-theory-article{padding:20px 16px calc(96px + env(safe-area-inset-bottom))}.dc-theory-article__title{font-size:clamp(26px,8vw,34px)}.dc-theory-reader .markdown-viewer__content{font-size:16px;line-height:1.72}.obs-tabs{overflow-x:auto;scrollbar-width:none}.obs-tabs::-webkit-scrollbar{display:none}.obs-tab{min-height:36px;flex:0 0 auto}.obs-app.ce-app .ce-main{min-height:0}.obs-app.ce-app .ce-editor-area{min-height:52vh}.obs-app.ce-app .ce-terminal-area{min-height:32vh;max-height:42vh}.obs-app.ce-app .ce-main--side{flex-direction:column}.obs-app.cv-app .obs-tabbar{min-height:42px}.obs-app.cv-app .obs-tabs{max-width:calc(100vw - 136px)}.obs-app.cv-app .cv-main{min-height:0}.obs-app.cv-app .excalidraw .App-toolbar{max-width:calc(100vw - 24px)!important;overflow-x:auto!important;flex-wrap:nowrap!important;justify-content:flex-start!important;-webkit-overflow-scrolling:touch}.obs-app.cv-app .excalidraw .App-toolbar .shapes-section,.obs-app.cv-app .excalidraw .App-toolbar section,.obs-app.cv-app .excalidraw .App-toolbar .Stack.Stack_horizontal{flex-wrap:nowrap!important}.obs-app.cv-app .nc-agentbar,.excalidraw-page .nc-agentbar{bottom:calc(78px + env(safe-area-inset-bottom));width:calc(100% - 24px)}.obs-app.cv-app .excalidraw .layer-ui__wrapper__footer-left{bottom:calc(82px + env(safe-area-inset-bottom))!important}}.dc-section-label{font-family:var(--font-mono);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);margin-bottom:6px}.dc-badge{display:inline-block;font-size:11px;font-weight:600;padding:2px 10px;border-radius:var(--radius-full);white-space:nowrap}.dc-btn{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:6px 14px;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--bg-elevated);color:var(--text-primary);transition:var(--transition-fast);cursor:pointer;white-space:nowrap}.dc-btn:hover{background:var(--bg-hover);transform:translateY(-1px)}.dc-btn--primary{background:var(--accent-secondary);color:#fff;border-color:var(--accent-secondary)}.dc-btn--primary:hover{opacity:.9}.dc-btn--secondary{background:#6366f126;color:var(--accent-secondary);border-color:#6366f14d}.dc-btn--success{background:var(--accent);color:#fff;border-color:var(--accent)}.dc-btn--danger{background:transparent;color:var(--danger);border-color:var(--danger)}.dc-btn--danger:hover{background:var(--danger-bg)}.dc-btn--outline{background:transparent;color:var(--text-secondary)}.dc-btn--xs{font-size:11px;padding:3px 10px}.dc-catalog{max-width:1000px;margin:0 auto;padding:40px 24px;--obs-chrome: var(--bg-secondary);--obs-border: color-mix(in srgb, var(--border) 42%, transparent);--obs-hover: var(--bg-hover);--obs-muted: var(--text-secondary);--obs-strong: var(--text-primary);--obs-input-bg: var(--bg-tertiary);--obs-input-border: var(--border-light);--border-focus: var(--accent-secondary)}.dc-catalog--wide{width:100%;max-width:none;padding:24px clamp(16px,3vw,36px) 48px}.dc-catalog--wide .dc-catalog__header{text-align:left}.dc-catalog--wide .dc-catalog__desc{max-width:640px;margin:0}.dc-catalog__header{text-align:center;margin-bottom:20px}.dc-catalog__title{font-size:28px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.dc-catalog__desc{font-size:14px;color:var(--text-secondary);max-width:500px;margin:0 auto}.dc-catalog__eyebrow{margin:0 0 6px;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary)}.dc-catalog--wide .dc-catalog__eyebrow{text-align:left}.dc-problem-tracks{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.dc-problem-tracks__tab{border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-secondary);border-radius:999px;padding:7px 16px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.dc-problem-tracks__tab:hover{background:var(--bg-hover);color:var(--text-primary)}.dc-problem-tracks__tab--active{background:color-mix(in srgb,var(--brand-purple, #6965db) 14%,var(--bg-secondary));border-color:color-mix(in srgb,var(--brand-purple, #6965db) 45%,var(--border));color:var(--brand-purple, #6965db)}.dc-problem-tracks__tab--spark.dc-problem-tracks__tab--active{background:color-mix(in srgb,#d97706 12%,var(--bg-secondary));border-color:color-mix(in srgb,#d97706 45%,var(--border));color:#d97706}.dc-catalog--split .dc-catalog__desc{max-width:720px}.dc-problems-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,2.5vw,28px);align-items:start;min-height:0}.dc-problems-split__col{display:flex;flex-direction:column;min-width:0;min-height:0}.dc-problems-split__col-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}.dc-problems-split__col-title{margin:0;font-size:15px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.dc-problems-split__col--spark .dc-problems-split__col-title{color:#d97706}.dc-problems-split__col-count{flex-shrink:0;min-width:24px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;font-family:var(--font-mono);color:var(--text-tertiary);background:color-mix(in srgb,var(--bg-tertiary) 90%,transparent);border:1px solid color-mix(in srgb,var(--border) 80%,transparent);text-align:center}.dc-problems-split__col-desc{margin:0 0 12px;font-size:12px;line-height:1.45;color:var(--text-secondary)}.dc-problems-split__list{display:flex;flex-direction:column;min-height:0;max-height:min(68vh,720px)}.dc-problems-split__list-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.dc-problems-split__empty{padding:28px 16px;text-align:center;font-size:13px;color:var(--text-tertiary)}.dc-pagination--compact{margin-top:10px;gap:8px}.dc-pagination--compact .dc-pagination__btn{padding:4px 10px;font-size:12px}.dc-pagination--compact .dc-pagination__info{font-size:12px}@media (max-width: 960px){.dc-problems-split{grid-template-columns:1fr}.dc-problems-split__list{max-height:none}}.dc-catalog__search-row{display:flex;align-items:center;gap:0;width:100%;margin-bottom:18px}.dc-catalog__search-shell{position:relative;flex:1;min-width:0;display:flex;align-items:center;min-height:30px;border-radius:999px;border:1px solid color-mix(in srgb,var(--obs-input-border) 70%,transparent);background:color-mix(in srgb,var(--obs-input-bg) 45%,transparent);padding:0 2px 0 0;transition:border-color .15s,background .15s,box-shadow .15s}.dc-catalog__search-shell:has(.dc-catalog__search-input:focus){border-color:color-mix(in srgb,var(--border-focus) 80%,transparent);background:color-mix(in srgb,var(--obs-input-bg) 65%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--border-focus) 25%,transparent)}.dc-catalog__search-icon{position:absolute;left:12px;top:50%;margin-top:-7px;z-index:0;color:var(--obs-muted);pointer-events:none;flex-shrink:0}.dc-catalog__search-hint{position:absolute;left:30px;right:34px;top:50%;transform:translateY(-50%);z-index:0;pointer-events:none;font-size:12px;line-height:1.25;color:var(--obs-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dc-catalog__search-hint__prefix{opacity:.8;font-weight:500}.dc-catalog__search-hint__typed{font-weight:400}.dc-catalog__search-input{position:relative;z-index:1;width:100%;min-width:0;height:30px;box-sizing:border-box;padding:0 30px;border:none;background:transparent;border-radius:999px;color:var(--obs-strong);font-size:12px;outline:none}.dc-catalog__search-input--ghost{color:transparent;caret-color:var(--border-focus, var(--accent-secondary));text-shadow:none}.dc-catalog__search-input::placeholder{color:var(--obs-muted);opacity:.9}.dc-catalog__search-input:not(.dc-catalog__search-input--ghost)::placeholder{color:var(--obs-muted)}.dc-catalog__search-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);z-index:2;width:22px;height:22px;border:none;border-radius:6px;background:transparent;color:var(--obs-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,color .15s;padding:0}.dc-catalog__search-clear:hover{background:var(--obs-hover);color:var(--obs-strong)}.dc-catalog__search-input[type=search]::-webkit-search-decoration,.dc-catalog__search-input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.dc-catalog__search-input[type=search]{-webkit-appearance:none;-moz-appearance:none;appearance:none}.dc-search-wrap{position:relative;display:flex;align-items:center;flex:1;min-width:0}.dc-search-wrap__icon{position:absolute;left:14px;color:var(--text-tertiary);pointer-events:none}.dc-search-wrap__clear{position:absolute;right:10px;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:999px;background:transparent;color:var(--text-tertiary);cursor:pointer;transition:var(--transition-fast)}.dc-search-wrap__clear:hover{background:var(--bg-hover);color:var(--text-primary)}.dc-catalog__count{flex-shrink:0;font-size:13px;font-weight:600;color:var(--text-secondary)}.dc-catalog__filters{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:24px}.dc-search-input{width:100%;flex:1;min-width:180px;padding:10px 40px 10px 38px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-primary);font-size:13px;outline:none;transition:var(--transition-fast)}.dc-search-input:focus{border-color:var(--accent-secondary);box-shadow:0 0 0 3px #6366f126}.dc-search-input::placeholder{color:var(--text-tertiary)}.dc-filter-tabs{display:flex;gap:4px}.dc-filter-tab{font-size:12px;font-weight:500;padding:6px 14px;border-radius:var(--radius-full);border:1px solid var(--border);background:transparent;color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast)}.dc-filter-tab:hover{background:var(--bg-hover)}.dc-filter-tab--active{background:var(--accent-secondary);color:#fff;border-color:var(--accent-secondary)}.dc-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}.dc-catalog--wide .dc-card-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.dc-algo-card{text-align:left;padding:18px;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow);cursor:pointer;transition:var(--transition-normal)}.dc-algo-card:hover{transform:translateY(-2px);border-color:var(--accent-secondary);box-shadow:var(--glass-shadow-hover)}.dc-algo-card__top{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px}.dc-algo-card__icon{font-size:28px}.dc-algo-card__title{font-size:15px;font-weight:600;color:var(--text-primary)}.dc-algo-card__cat{font-size:11px;color:var(--text-tertiary);margin-top:2px}.dc-algo-card__desc{font-size:13px;color:var(--text-secondary);line-height:1.5;margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.dc-algo-card__langs{display:flex;gap:6px;flex-wrap:wrap}.dc-lang-badge{font-family:var(--font-mono);font-size:10px;font-weight:600;padding:2px 8px;border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-secondary)}.dc-tag-cloud{margin-bottom:20px;display:flex;flex-direction:column;gap:8px}.dc-tag-cloud__wrap{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.dc-tag-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:var(--radius-full);border:1px solid var(--border);background:var(--bg-secondary);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap}.dc-tag-pill:hover{background:var(--bg-hover);border-color:var(--accent-secondary);color:var(--text-primary)}.dc-tag-pill--active{background:var(--accent-secondary);color:#fff;border-color:var(--accent-secondary)}.dc-tag-pill--active:hover{background:var(--accent-secondary);color:#fff;opacity:.9}.dc-tag-pill__count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:var(--radius-full);background:#ffffff26;font-size:11px;font-weight:700;line-height:1}.dc-tag-pill:not(.dc-tag-pill--active) .dc-tag-pill__count{background:var(--bg-tertiary);color:var(--text-tertiary)}.dc-tag-cloud__toggle{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;border-radius:var(--radius-full);border:1px dashed var(--border);background:transparent;color:var(--text-tertiary);font-size:12px;cursor:pointer;transition:all .15s ease}.dc-tag-cloud__toggle:hover{color:var(--accent-secondary);border-color:var(--accent-secondary)}.dc-tag-cloud__clear{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--radius-full);border:none;background:#e031311a;color:var(--danger, #e03131);font-size:11px;cursor:pointer;align-self:flex-start;transition:background .15s}.dc-tag-cloud__clear:hover{background:#e0313133}.dc-algo-card__tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:8px}.dc-algo-tag{font-size:10px;font-weight:500;padding:2px 8px;border-radius:var(--radius-full);background:var(--bg-tertiary);color:var(--text-tertiary)}.dc-empty{text-align:center;padding:40px;color:var(--text-tertiary);font-size:14px}.dc-async-state{min-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:36px 24px;color:var(--text-primary)}.dc-async-state--compact{min-height:min(440px,calc(100vh - 96px))}.dc-async-state__sketch{position:relative;width:90px;height:70px;display:grid;place-items:center;margin-bottom:10px;color:var(--brand-purple, #6965db);animation:dc-async-float 2.6s ease-in-out infinite}.dc-async-state__sketch:before{content:"";position:absolute;top:7px;right:3px;bottom:1px;left:3px;border:1.5px dashed color-mix(in srgb,var(--brand-purple, #6965db) 42%,transparent);border-radius:50%;transform:rotate(-7deg)}.dc-async-state__sketch svg{position:relative;z-index:1;width:72px;filter:drop-shadow(0 4px 0 color-mix(in srgb,var(--brand-purple, #6965db) 12%,transparent))}.dc-async-state__spark{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--accent-warm, #f59f00);animation:dc-async-spark 1.8s ease-in-out infinite}.dc-async-state__spark--one{top:5px;right:5px}.dc-async-state__spark--two{bottom:7px;left:4px;width:5px;height:5px;animation-delay:-.8s}.dc-async-state__eyebrow{margin:0 0 7px;color:var(--brand-purple, #6965db);font-family:var(--font-hand, "Excalifont", cursive);font-size:11px;font-weight:700;letter-spacing:.08em}.dc-async-state h2{max-width:420px;margin:0;font-family:var(--font-hand, "Excalifont", cursive);font-size:22px;line-height:1.25}.dc-async-state__message{max-width:500px;margin:10px 0 18px;color:var(--text-secondary);font-size:13px;line-height:1.6}.dc-async-state__action{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:7px 14px;border:1.5px solid var(--brand-purple, #6965db);border-radius:9px;background:color-mix(in srgb,var(--brand-purple, #6965db) 12%,var(--bg-secondary));color:var(--brand-purple, #6965db);font-family:var(--font-hand, "Excalifont", cursive);font-size:13px;font-weight:700;cursor:pointer;transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.dc-async-state__action:hover{transform:translateY(-1px) rotate(-.4deg);background:color-mix(in srgb,var(--brand-purple, #6965db) 19%,var(--bg-secondary));box-shadow:0 7px 14px -10px color-mix(in srgb,var(--brand-purple, #6965db) 70%,transparent)}.dc-async-state__action:focus-visible{outline:3px solid color-mix(in srgb,var(--brand-purple, #6965db) 32%,transparent);outline-offset:3px}@keyframes dc-async-float{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-5px) rotate(1deg)}}@keyframes dc-async-spark{0%,to{transform:scale(.7);opacity:.4}50%{transform:scale(1.15);opacity:1}}.dc-problem-list__header{display:flex;align-items:center;padding:8px 12px 8px 14px;background:color-mix(in srgb,var(--bg-tertiary) 88%,transparent);border-bottom:1px solid color-mix(in srgb,var(--border) 80%,transparent);font-size:11px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;gap:0}.dc-problem-list__col--num{width:40px;flex-shrink:0}.dc-problem-list__col--icon{width:32px;flex-shrink:0}.dc-problem-list__col--title{flex:1;min-width:0}.dc-problem-list__col--cat{width:108px;flex-shrink:0;text-align:left}.dc-problem-list__col--status{width:96px;flex-shrink:0;text-align:left}.dc-problem-list__col--diff{width:92px;text-align:right;flex-shrink:0}.dc-problem-list{border:1px solid color-mix(in srgb,var(--border) 85%,transparent);border-radius:var(--radius-md);overflow:hidden;background:var(--bg-primary)}.dc-problem-row{display:flex;align-items:center;width:100%;min-height:40px;padding:6px 12px 6px 14px;gap:0;border:none;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent);background:transparent;cursor:pointer;transition:background .15s,border-color .15s;text-align:left}.dc-problem-row:last-child{border-bottom:none}.dc-problem-row:hover{background:color-mix(in srgb,var(--obs-hover) 50%,transparent)}.dc-problem-row__num{width:40px;font-family:var(--font-mono);font-size:12px;font-weight:600;color:var(--text-tertiary);flex-shrink:0}.dc-problem-row__icon-wrap{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;margin-right:10px;border-radius:6px;border:1px solid color-mix(in srgb,var(--obs-border) 80%,var(--border));background:color-mix(in srgb,var(--obs-input-bg) 75%,var(--bg-primary));line-height:0;transition:border-color .15s,background .15s}.dc-problem-row:hover .dc-problem-row__icon-wrap{border-color:color-mix(in srgb,var(--accent-secondary) 28%,var(--border));background:var(--obs-hover)}.dc-problem-row__icon-emoji{font-size:15px;line-height:1;display:block}.dc-problem-row__title{flex:1;min-width:0;font-size:13px;font-weight:500;color:var(--text-primary);text-align:left}.dc-problem-row__cat{width:108px;flex-shrink:0;font-size:11px;font-weight:600;letter-spacing:.01em}.dc-problem-row__status{width:96px;flex-shrink:0;font-size:11px;font-weight:600;letter-spacing:.01em}.dc-problem-row__status--todo{color:var(--text-tertiary)}.dc-problem-row__status--attempted{color:#6366f1}.dc-problem-row__diff{width:92px;text-align:right;font-size:12px;font-weight:600;flex-shrink:0}.dc-problem-row--skeleton{pointer-events:none}.dc-detail{display:flex;flex-direction:column;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;background:var(--bg-primary)}.dc-detail__topbar{display:flex;align-items:center;padding:10px 20px;border-bottom:1.5px solid var(--border);background:var(--bg-secondary);position:relative;min-height:48px}.dc-detail__back{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;border:1.5px solid var(--border-light);background:var(--bg-secondary);color:var(--text-primary);font-family:var(--font-hand, "Excalifont", cursive);font-size:13px;font-weight:500;cursor:pointer;transition:var(--transition-fast);flex-shrink:0}.dc-detail__back:hover{background:var(--bg-hover);border-color:var(--brand-purple, #6965db);color:var(--brand-purple, #6965db)}.dc-detail__center-tabs{position:absolute;left:50%;transform:translate(-50%);display:flex;gap:2px;background:var(--bg-tertiary);border-radius:999px;padding:3px;border:1.5px solid var(--border-light)}.dc-detail__tab{display:inline-flex;align-items:center;gap:6px;padding:6px 18px;font-family:var(--font-hand, "Excalifont", cursive);font-size:13px;font-weight:500;color:var(--text-secondary);border:none;background:none;cursor:pointer;border-radius:999px;transition:var(--transition-fast)}.dc-detail__tab:hover{color:var(--text-primary);background:var(--bg-hover)}.dc-detail__tab--active{background:color-mix(in srgb,var(--brand-purple, #6965db) 16%,transparent);color:var(--brand-purple, #6965db)}.dc-detail__meta{margin-left:auto;display:flex;align-items:center;gap:8px;flex-shrink:0}.dc-detail__icon{font-size:18px}.dc-detail__name{font-family:var(--font-hand, "Excalifont", cursive);font-size:14px;font-weight:600;color:var(--text-secondary)}.dc-detail__content{flex:1;min-width:0;min-height:0;overflow-y:auto}.dc-detail__content--unified{width:100%;overflow:hidden;background:var(--bg-primary)}.dc-algorithm-workbench{width:100%;height:100%;min-width:0;min-height:0;display:grid;grid-template-columns:minmax(520px,1.35fr) minmax(360px,.9fr)}.dc-intro--workbench{max-width:none;height:100%;margin:0;min-width:0;overflow:auto;border-right:0}.dc-intro__language-content{animation:dc-language-content-in .22s ease-out}@keyframes dc-language-content-in{0%{opacity:.35;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.dc-detail__playground{width:100%;height:100%;min-width:0;min-height:0;display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--bg-secondary);border-right:1px solid var(--border)}.dc-detail__playground>.dc-playground,.dc-detail__playground>.dc-visualizer,.dc-detail__playground>[class*=Visualizer],.dc-detail__playground .dc-playground{width:100%;height:auto;min-width:0;min-height:min-content;flex:1 0 auto;overflow:visible}.dc-visualizer{display:flex;flex-direction:column;width:100%;height:auto;min-height:0;overflow:visible}.dc-detail__section-heading{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 16px;border-bottom:1px solid var(--border);background:var(--bg-secondary);font-family:var(--font-hand, "Excalifont", cursive)}.dc-detail__section-heading span{font-size:14px;font-weight:700;color:var(--text-primary)}.dc-detail__section-heading small{color:var(--text-tertiary);font-size:11px}.dc-intro{max-width:800px;margin:0 auto;padding:28px 24px}.dc-intro__lang-tabs{position:relative;display:grid;grid-template-columns:1fr 1fr;width:min(100%,300px);padding:0 0 7px;margin-bottom:24px}.dc-intro__lang-tabs:before{content:"";position:absolute;bottom:0;left:0;width:50%;height:3px;border-radius:999px;background:var(--brand-purple, #6965db);transform:translate(0);transition:transform .32s cubic-bezier(.22,1,.36,1),width .2s ease}.dc-intro__lang-tabs--hinglish:before{transform:translate(100%)}.dc-intro__lang-tab{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:3px 8px;background:transparent;color:var(--text-secondary);font-family:var(--font-hand, "Excalifont", cursive);font-size:13px;font-weight:600;cursor:pointer;transition:color .2s ease,transform .2s ease,letter-spacing .2s ease}.dc-intro__lang-tab:hover{color:var(--brand-purple, #6965db)}.dc-intro__lang-tab--active{color:var(--brand-purple, #6965db);transform:translateY(-1px);letter-spacing:.15px}.dc-intro__lang-flag{font-family:var(--font-ui, sans-serif);font-size:10px;font-weight:800;color:var(--text-tertiary);transition:color .2s ease,transform .28s cubic-bezier(.22,1,.36,1)}.dc-intro__lang-tab--active .dc-intro__lang-flag{color:var(--brand-purple, #6965db);transform:rotate(-3deg) scale(1.08)}.dc-intro__body{line-height:1.75;color:var(--text-primary);font-family:var(--font-hand, "Excalifont", cursive);font-size:15px}.dc-intro__body h2{font-family:var(--font-hand, "Excalifont", cursive);font-size:22px;font-weight:700;margin:0 0 14px;color:var(--text-primary)}.dc-intro__body h3{font-family:var(--font-hand, "Excalifont", cursive);font-size:17px;font-weight:600;margin:24px 0 10px;color:var(--text-primary)}.dc-intro__body p{margin:0 0 12px;font-size:14px;line-height:1.7}.dc-intro__body ul,.dc-intro__body ol{margin:0 0 12px;padding-left:24px;font-size:14px}.dc-intro__body li{margin-bottom:5px}.dc-intro__body strong{color:var(--brand-purple, #6965db)}.dc-intro__body table{width:100%;border-collapse:collapse;margin:14px 0;font-size:13px;border:1.5px solid var(--border-light);border-radius:10px;overflow:hidden}.dc-intro__body th{text-align:left;padding:8px 12px;background:color-mix(in srgb,var(--brand-purple, #6965db) 8%,transparent);border:1px solid var(--border);font-family:var(--font-hand, "Excalifont", cursive);font-weight:600;color:var(--text-primary);font-size:13px}.dc-intro__body td{padding:8px 12px;border:1px solid var(--border);color:var(--text-secondary);font-size:13px}.dc-intro__body code{background:color-mix(in srgb,var(--brand-purple, #6965db) 8%,transparent);padding:2px 6px;border-radius:6px;font-family:var(--font-mono);font-size:12px;color:var(--brand-purple, #6965db)}.dc-intro__body pre{background:var(--bg-tertiary);border:1.5px solid var(--border-light);border-radius:10px;padding:14px 16px;overflow-x:auto;margin:12px 0}.dc-intro__body pre code{background:none;padding:0;color:var(--text-primary);font-size:13px}.dc-intro__body blockquote{border-left:3px solid var(--brand-purple, #6965db);margin:12px 0;padding:8px 16px;color:var(--text-secondary);background:color-mix(in srgb,var(--brand-purple, #6965db) 5%,transparent);border-radius:0 8px 8px 0;font-size:14px}.dc-visualizer__stats-bar{border-bottom:1px solid var(--border);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);padding:10px 16px;max-width:1140px;margin:0 auto}.dc-visualizer__bottom{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:0;min-height:0;width:100%;border-top:1px solid var(--border);flex:0 0 auto}.dc-visualizer__explain-col{padding:14px 16px;border-right:1px solid var(--border);display:flex;flex-direction:column;gap:10px;min-width:0;min-height:0;overflow:visible}.dc-visualizer__log-col{padding:14px 16px;display:flex;flex-direction:column;gap:0;min-width:0;min-height:0;overflow:visible}.dc-visualizer__code-wrap{min-height:0;overflow:visible;animation:dc-code-wrap-in .2s ease-out}@keyframes dc-code-wrap-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.dc-code-toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:var(--transition-fast);align-self:flex-start}.dc-code-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.dc-visualizer__shortcuts{max-width:1140px;margin:0 auto;width:100%;flex:0 0 auto;text-align:center;padding:10px;font-family:var(--font-mono);font-size:11px;color:var(--text-tertiary);border-top:1px solid var(--border)}.dc-visualizer__shortcuts kbd{display:inline-block;padding:2px 6px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-tertiary);font-size:10px;margin:0 2px;font-family:var(--font-mono)}.dc-canvas-wrap{width:100%;max-width:960px;margin:0 auto;padding:4px 8px}.dc-canvas{width:100%;display:block;border-radius:var(--radius-md);cursor:default;background:var(--bg-secondary)}.dc-control-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;border-bottom:1px solid var(--border);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);padding:10px 16px;max-width:1140px;margin:0 auto}.dc-control-bar__sep{width:1px;height:24px;background:var(--border);margin:0 4px}.dc-slider-group{display:flex;align-items:center;gap:6px;font-size:12px}.dc-slider-group label{color:var(--text-secondary);font-weight:500;white-space:nowrap;font-size:11px}.dc-slider-group input[type=range]{width:64px;height:4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--border);border-radius:4px;cursor:pointer;outline:none}.dc-slider-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:var(--accent-secondary);border:2px solid var(--bg-secondary);cursor:pointer}.dc-slider-val{font-family:var(--font-mono);font-size:11px;font-weight:700;color:var(--accent-secondary);min-width:28px;text-align:right}.dc-code-panel{display:flex;flex-direction:column;height:100%}.dc-code-panel__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.dc-lang-tabs{display:flex;gap:4px}.dc-lang-tab{font-size:13px;font-weight:500;padding:6px 16px;border:none;cursor:pointer;background:transparent;color:var(--text-secondary);border-radius:var(--radius-md);transition:var(--transition-fast)}.dc-lang-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.dc-lang-tab--active{background:#6366f11a;color:var(--accent-secondary)}.dc-code-block{background:var(--code-content-bg);border:1px solid var(--border);border-radius:var(--radius-md);padding:8px 0;font-family:var(--font-mono);font-size:11px;line-height:1.75;overflow-x:auto;max-height:340px;min-height:120px;overflow-y:auto;overscroll-behavior:contain}.dc-code-line{display:flex;padding:0 12px;transition:background .12s}.dc-code-line--active{background:#6366f126}.dc-code-line--green{background:#10b98126}.dc-code-line--red{background:#ef444426}.dc-code-line__num{color:var(--code-line-num);min-width:22px;text-align:right;padding-right:10px;-webkit-user-select:none;user-select:none;font-size:10px;flex-shrink:0}.dc-code-line__text{flex:1}.dc-kw{color:var(--accent-secondary);font-weight:600}.dc-kw-comment{color:var(--text-tertiary);font-style:italic}.dc-stats-inline{display:flex;align-items:center;gap:16px}.dc-stat-chip{display:flex;align-items:baseline;gap:5px}.dc-stat-chip__value{font-family:var(--font-mono);font-size:18px;font-weight:800}.dc-stat-chip__label{font-family:var(--font-mono);font-size:10px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.3px}.dc-stats-inline__bar{flex:1;height:6px;background:var(--bg-tertiary);border-radius:var(--radius-full);overflow:hidden;border:1px solid var(--border);min-width:60px}.dc-stats-inline__bar-fill{height:100%;border-radius:var(--radius-full);transition:width .4s cubic-bezier(.22,1,.36,1)}.dc-event-log{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);max-height:min(220px,32vh);overflow-y:auto;font-family:var(--font-mono);font-size:11px;line-height:1.6}.dc-event-log__empty{padding:12px;text-align:center;color:var(--text-tertiary);font-size:12px}.dc-event-log__row{display:flex;gap:8px;padding:2px 12px;border-bottom:1px solid var(--border)}.dc-event-log__time{color:var(--text-tertiary);flex-shrink:0}.dc-event-log__msg--allow{color:var(--accent)}.dc-event-log__msg--deny{color:var(--danger)}.dc-event-log__msg--refill{color:var(--accent-secondary)}.dc-explanation{background:var(--bg-elevated);border:1.5px solid var(--border);border-radius:var(--radius-md);padding:12px;min-height:56px;display:flex;gap:10px;align-items:flex-start;transition:border-color .3s}.dc-explanation__icon{font-size:18px;flex-shrink:0;margin-top:2px}.dc-explanation__body{flex:1;min-width:0}.dc-explanation__text{font-size:13px;line-height:1.45;color:var(--text-primary)}.dc-explanation__live{margin-top:6px;font-family:var(--font-mono);font-size:11px;color:var(--accent-secondary);line-height:1.5;background:#6366f114;border-radius:var(--radius-sm);padding:4px 10px}.dc-playground{display:flex;height:calc(100vh - 50px);overflow:hidden}.dc-playground__center{flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative}.dc-config-panel{position:absolute;top:12px;left:12px;z-index:20;width:220px;max-height:calc(100% - 24px);display:flex;flex-direction:column;gap:8px;pointer-events:none}.dc-config-panel__section{pointer-events:auto;background:var(--glass-bg, rgba(255,255,255,.06));border:1.5px solid var(--border);border-radius:var(--radius-md, 10px);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:10px 8px;box-shadow:0 4px 20px #0000001f;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;animation:dc-config-slide-in .2s ease-out}@keyframes dc-config-slide-in{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.dc-config-panel__section::-webkit-scrollbar{width:3px}.dc-config-panel__section::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:3px}.dc-config-panel__stats{padding:6px 4px}.dc-config-panel__stats-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);padding:0 8px 4px;border-bottom:1px solid var(--border);margin-bottom:2px}.dc-question-panel{display:flex;flex-direction:column;width:300px;flex-shrink:0;border-right:2px solid var(--border);background:var(--bg-secondary);overflow:hidden}.dc-question-panel__select-wrap{display:flex;flex-direction:column;gap:8px;padding:8px;border-bottom:2px solid var(--border)}.dc-question-panel__back{align-self:flex-start}.dc-question-panel__tabs{display:flex;border-bottom:2px solid var(--border)}.dc-question-panel__tab{flex:1;padding:8px;font-size:12px;font-weight:600;border-bottom:2px solid transparent;margin-bottom:-2px;color:var(--text-tertiary);cursor:pointer;transition:var(--transition-fast)}.dc-question-panel__tab:hover{color:var(--text-primary)}.dc-question-panel__tab--active{color:var(--text-primary);border-color:var(--accent-secondary)}.dc-question-panel__body{flex:1;overflow-y:auto;padding:12px;font-size:12px;line-height:1.6}.dc-question-panel__title-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.dc-question-panel__title{font-size:15px;font-weight:700;color:var(--text-primary)}.dc-question-panel__text{color:var(--text-primary);margin-bottom:12px}.dc-req-list{margin-left:16px;margin-bottom:12px;font-size:11px;color:var(--text-primary);list-style:disc}.dc-req-list li{margin-bottom:3px}.dc-hint-card{display:flex;gap:8px;padding:8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-tertiary);font-size:11px;margin-bottom:8px}.dc-hint-card__num{display:flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;border-radius:50%;background:var(--accent-secondary);font-family:var(--font-mono);font-size:9px;font-weight:700;color:#fff}.dc-comp-sidebar{display:flex;flex-direction:column;width:170px;flex-shrink:0;border-left:2px solid var(--border);background:var(--bg-secondary);overflow-y:auto}.dc-comp-sidebar__search{display:flex;align-items:center;gap:5px;padding:6px 8px;border-bottom:1.5px solid var(--border)}.dc-comp-sidebar__search svg{flex-shrink:0;color:var(--text-tertiary)}.dc-comp-sidebar__search input{flex:1;border:none;background:transparent;outline:none;font-size:11px;color:var(--text-primary);font-family:inherit}.dc-comp-sidebar__search input::placeholder{color:var(--text-tertiary)}.dc-comp-sidebar__grid{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:6px;flex:1;overflow-y:auto;align-content:start}.dc-comp-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 4px;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);cursor:grab;-webkit-user-select:none;user-select:none;transition:all .15s ease}.dc-comp-tile:hover{transform:translateY(-2px);box-shadow:0 3px 10px #0000001f;border-color:var(--accent)}.dc-comp-tile:active{cursor:grabbing;transform:scale(.95)}.dc-comp-tile__icon{font-size:18px;line-height:1}.dc-comp-tile__name{font-size:8px;font-weight:700;text-align:center;color:var(--text-secondary);letter-spacing:.02em;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.dc-comp-sidebar__no-results{grid-column:1 / -1;text-align:center;padding:12px;font-size:10px;color:var(--text-tertiary)}.dc-comp-sidebar__tools{display:flex;gap:4px;padding:6px;border-top:1.5px solid var(--border)}.dc-design-canvas{position:relative;flex:1;overflow:hidden}.dc-design-canvas__el{display:block;width:100%;height:100%;cursor:default;background:#282828}[data-theme=light] .dc-design-canvas__el{background:#fff}.dc-design-canvas__mode{pointer-events:none;position:absolute;left:50%;top:8px;z-index:10;transform:translate(-50%);border-radius:var(--radius-sm);padding:4px 12px;background:var(--text-primary);color:var(--bg-primary);font-family:var(--font-mono);font-size:10px;font-weight:700;opacity:0;transition:opacity .25s}.dc-design-canvas__shortcuts{pointer-events:none;position:absolute;bottom:6px;left:50%;transform:translate(-50%);white-space:nowrap;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--glass-bg-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);padding:3px 10px;font-family:var(--font-mono);font-size:8px;color:var(--text-tertiary)}.dc-design-canvas__shortcuts kbd{display:inline-block;padding:1px 4px;margin:0 1px;border:1px solid var(--border);border-radius:3px;background:var(--bg-tertiary);font-size:7px;font-family:var(--font-mono)}.dc-top-bar{display:flex;align-items:center;justify-content:space-between;padding:4px 8px;gap:8px;flex-shrink:0;background:var(--bg-secondary);border-bottom:1px solid var(--border);z-index:25;min-height:36px}.dc-sim-toolbar{display:flex;align-items:center;gap:4px;padding:3px 8px;flex-shrink:0;background:var(--glass-bg, rgba(255,255,255,.06));border:1.5px solid var(--border);border-radius:10px}.dc-sim-toolbar__btn{display:flex;align-items:center;justify-content:center;width:30px;height:28px;border-radius:7px;border:1.5px solid var(--border);background:var(--bg-elevated);color:var(--text-primary);cursor:pointer;transition:all .15s ease}.dc-sim-toolbar__btn:hover{border-color:var(--accent)}.dc-sim-toolbar__btn--play{background:var(--accent);color:#fff;border-color:var(--accent)}.dc-sim-toolbar__btn--play:hover{background:var(--accent-hover)}.dc-sim-toolbar__btn--pause{background:#f59e0b;color:#fff;border-color:#f59e0b}.dc-sim-toolbar__btn--pause:hover{background:#d97706}.dc-sim-toolbar__btn--reset{color:var(--text-secondary)}.dc-sim-toolbar__btn--reset:hover{color:var(--danger);border-color:var(--danger)}.dc-sim-toolbar__divider{width:1px;height:18px;background:var(--border);margin:0 2px}.dc-sim-toolbar__speed{display:flex;align-items:center;gap:4px}.dc-sim-toolbar__slider{width:50px;height:4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--border);border-radius:3px;cursor:pointer;outline:none}.dc-sim-toolbar__slider::-webkit-slider-thumb{-webkit-appearance:none;width:10px;height:10px;border-radius:50%;background:var(--accent-secondary);border:2px solid var(--bg-secondary);cursor:pointer}.dc-sim-toolbar__speed-val{font-family:var(--font-mono);font-size:9px;font-weight:700;color:var(--accent-secondary);min-width:22px}.dc-test-panel{display:flex;flex-direction:column;flex-shrink:0;border-top:2px solid var(--border);background:var(--bg-secondary);transition:height .2s}.dc-test-panel--collapsed .dc-test-panel__body,.dc-test-panel--collapsed .dc-test-panel__verdict{display:none}.dc-test-panel__header{display:flex;align-items:center;justify-content:space-between;padding:4px 10px;border-bottom:1px solid var(--border);flex-shrink:0}.dc-test-panel__toggle{display:flex;align-items:center;gap:5px;background:none;border:none;cursor:pointer;color:var(--text-secondary);padding:2px 0}.dc-test-panel__toggle:hover{color:var(--text-primary)}.dc-test-panel__actions{display:flex;gap:4px}.dc-test-panel__body{flex:1;overflow-y:auto;padding:4px 8px}.dc-test-row{display:flex;align-items:center;gap:6px;padding:3px 6px;border-radius:var(--radius-sm);font-size:11px;margin-bottom:2px;transition:background .15s}.dc-test-row:hover{background:var(--bg-hover)}.dc-test-row--pass{background:#10b98114}.dc-test-row--fail{background:#ef444414}.dc-test-row__icon{width:16px;text-align:center;font-size:13px;flex-shrink:0}.dc-test-row__name{flex:1;font-weight:600;color:var(--text-primary)}.dc-test-row__badge{font-family:var(--font-mono);font-size:7px;text-transform:uppercase;padding:1px 6px;border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-tertiary);white-space:nowrap}.dc-test-row__replay{width:18px;height:18px;border-radius:50%;border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;font-size:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s}.dc-test-row__replay:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.dc-test-row__replay--active{background:var(--accent);color:#fff;border-color:var(--accent);animation:dc-pulse 1s infinite}@keyframes dc-pulse{0%,to{opacity:1}50%{opacity:.5}}.dc-test-panel__empty{padding:12px;text-align:center;color:var(--text-tertiary);font-size:11px}.dc-test-panel__verdict--error{background:#8b5cf61f;color:#8b5cf6}.dc-test-panel__verdict{padding:6px;text-align:center;font-size:13px;font-weight:700}.dc-test-panel__verdict--pass{border-top:2px solid var(--accent);background:#10b9811a;color:var(--accent)}.dc-test-panel__verdict--fail{border-top:2px solid var(--danger);background:var(--danger-bg);color:var(--danger)}.dc-prop-header{font-size:12px;font-weight:700;margin-bottom:4px;display:flex;align-items:center;gap:4px}.dc-prop-slider{display:flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:9px;margin-bottom:2px}.dc-prop-slider__label{width:68px;flex-shrink:0;text-align:right;color:var(--text-tertiary)}.dc-prop-slider__input{flex:1;height:5px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--border);border-radius:4px;cursor:pointer;outline:none}.dc-prop-slider__input::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:var(--accent-secondary);border:2px solid var(--bg-secondary);cursor:pointer}.dc-prop-slider__val{min-width:28px;font-size:8px;font-weight:700;color:var(--accent-secondary);text-align:right}.dc-prop-select__input{flex:1;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);padding:1px 4px;font-family:var(--font-mono);font-size:8px;cursor:pointer;color:var(--text-primary);outline:none}.dc-prop-group{margin-top:4px;margin-bottom:2px;border-bottom:1px dashed var(--border);padding-bottom:2px;font-family:var(--font-mono);font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary)}.dc-live-stats{padding:2px 12px 8px}.dc-live-stats__row{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:9px;color:var(--text-tertiary)}.dc-live-stats__val{font-weight:700;color:var(--text-primary)}.dc-skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-hover) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:dc-shimmer 1.5s ease-in-out infinite}@keyframes dc-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.dc-algo-card--skeleton{pointer-events:none}.dc-algo-card--skeleton .dc-algo-card__top{display:flex;align-items:center;gap:10px}.dc-skeleton-detail{width:100%;height:100%;min-height:0;display:grid;grid-template-columns:minmax(520px,1.35fr) minmax(360px,.9fr);background:var(--bg-primary)}.dc-skeleton-detail__lesson{min-width:0;padding:28px 24px;border-right:0;overflow:hidden}.dc-skeleton-detail__tabs{display:flex;gap:8px;margin-bottom:28px}.dc-skeleton-detail__body{max-width:620px}.dc-skeleton-detail__playground{min-width:0;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-secondary);border-right:1px solid var(--border)}.dc-skeleton-detail__playground-header{min-height:48px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border)}.dc-skeleton-detail__controls{display:flex;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border)}.dc-skeleton-detail__scene{flex:1;min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;padding:22px;background-image:radial-gradient(color-mix(in srgb,var(--border) 65%,transparent) 1px,transparent 1px);background-size:18px 18px}.dc-skeleton-detail__nodes{display:flex;align-items:center;justify-content:center;gap:26px;width:min(80%,450px)}.dc-skeleton-detail__nodes .dc-skeleton{position:relative}.dc-skeleton-detail__nodes .dc-skeleton:not(:last-child):after{content:"";position:absolute;top:50%;left:calc(100% + 7px);width:12px;border-top:1.5px dashed color-mix(in srgb,var(--brand-purple, #6965db) 45%,transparent)}.dc-skeleton-detail__footer{min-height:68px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--border)}.dc-skeleton-playground{padding:16px}.dc-skeleton-playground__controls{display:flex;gap:10px;margin-bottom:16px}.dc-skeleton-playground__canvas{margin-bottom:16px}.dc-skeleton-playground__bottom{display:grid;grid-template-columns:1fr;gap:12px}.dc-playground--skeleton{pointer-events:none}.dc-question-panel--skeleton,.dc-comp-sidebar--skeleton,.dc-test-panel--skeleton{background:var(--bg-secondary)}.dc-question-panel__body--skeleton{padding-bottom:24px}.dc-skeleton-sd__section{margin-top:18px}.dc-top-bar--skeleton{justify-content:space-between}.dc-skeleton-sd__toolbar-group,.dc-skeleton-sd__test-actions{display:flex;align-items:center;gap:8px}.dc-playground__center--skeleton{background:var(--bg-secondary)}.dc-skeleton-sd__canvas-wrap{position:relative;flex:1;overflow:hidden;background:var(--bg-secondary)}.dc-skeleton-sd__config-panel{position:absolute;top:12px;left:12px;z-index:2;width:220px;display:flex;flex-direction:column;gap:8px}.dc-skeleton-sd__canvas{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;background:radial-gradient(circle at 1px 1px,rgba(255,255,255,.08) 1px,transparent 0) 0 0 / 20px 20px,var(--bg-secondary)}[data-theme=light] .dc-skeleton-sd__canvas{background:radial-gradient(circle at 1px 1px,rgba(0,0,0,.06) 1px,transparent 0) 0 0 / 20px 20px,var(--bg-secondary)}.dc-skeleton-sd__canvas-grid{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0,transparent calc(100% - 1px),rgba(255,255,255,.03) calc(100% - 1px)) 0 0 / 80px 100%,linear-gradient(transparent 0,transparent calc(100% - 1px),rgba(255,255,255,.03) calc(100% - 1px)) 0 0 / 100% 80px;opacity:.35}[data-theme=light] .dc-skeleton-sd__canvas-grid{background:linear-gradient(90deg,transparent 0,transparent calc(100% - 1px),rgba(0,0,0,.03) calc(100% - 1px)) 0 0 / 80px 100%,linear-gradient(transparent 0,transparent calc(100% - 1px),rgba(0,0,0,.03) calc(100% - 1px)) 0 0 / 100% 80px}.dc-skeleton-sd__canvas-badge{position:absolute;top:10px;left:50%;transform:translate(-50%)}.dc-skeleton-sd__canvas-shortcuts{position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.dc-skeleton-sd__test-row{display:flex;align-items:center;gap:8px;padding:4px 0}.dc-comp-tile--skeleton{cursor:default}.dc-comp-tile--skeleton .dc-skeleton:last-child{align-self:center}.dc-problem-row--skeleton td{padding:10px 12px}.dc-tag-cloud--skeleton{display:flex;gap:6px;flex-wrap:wrap;padding:12px 0}.dc-pagination{display:flex;align-items:center;justify-content:center;gap:16px;padding:24px 0;margin-top:8px}.dc-pagination__btn{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 16px;font-size:13px;color:var(--text-primary);cursor:pointer;transition:all .15s}.dc-pagination__btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--accent)}.dc-pagination__btn:disabled{opacity:.4;cursor:not-allowed}.dc-pagination__info{font-size:13px;color:var(--text-secondary)}.dc-question-panel__hint-count{font-size:10px;padding:1px 6px;border-radius:8px;background:#f08c0033;color:#f08c00;margin-left:4px;font-weight:700}.dc-question-panel__tab--notify{animation:dc-tab-pulse 1s ease-in-out 3}@keyframes dc-tab-pulse{0%,to{color:var(--text-secondary)}50%{color:var(--accent)}}.dc-lc-section{margin-top:16px}.dc-lc-section__label{font-size:12px;font-weight:700;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.dc-lc-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.dc-lc-list__item{font-size:13px;color:var(--text-secondary);line-height:1.5;padding:4px 0 4px 16px;position:relative}.dc-lc-list__item:before{content:"•";position:absolute;left:2px;color:var(--accent);font-weight:700}.dc-lc-list--constraints .dc-lc-list__item{font-family:monospace;font-size:12px;padding:3px 8px;background:var(--bg-elevated);border-radius:var(--radius-sm);border:1px solid var(--border)}.dc-lc-list--constraints .dc-lc-list__item:before{display:none}.dc-lc-api-list{display:flex;flex-direction:column;gap:6px}.dc-lc-api-row{display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm)}.dc-lc-api-method{font-size:10px;font-weight:800;padding:2px 8px;border-radius:4px;min-width:48px;text-align:center;color:#fff}.dc-lc-api-method--get{background:#1971c2}.dc-lc-api-method--post{background:#2f9e44}.dc-lc-api-method--put{background:#f08c00}.dc-lc-api-method--patch{background:#ae3ec9}.dc-lc-api-method--delete{background:#e03131}.dc-lc-api-method--websocket{background:#0c8599}.dc-lc-api-path{font-size:12px;font-family:monospace;color:var(--accent)}.dc-lc-api-desc{font-size:11px;color:var(--text-tertiary);margin-left:auto}.dc-lc-testcase-summary{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary);padding:8px 12px;background:var(--bg-elevated);border-radius:var(--radius-sm);border:1px solid var(--border)}.dc-lc-testcase-dot{color:var(--text-tertiary)}.dc-lc-hints__warning{font-size:12px;color:var(--danger);margin:0 0 16px;padding:10px 14px;background:#e031310f;border:1px solid rgba(224,49,49,.12);border-radius:var(--radius-sm)}.dc-lc-hint{margin-bottom:8px;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;transition:all .2s}.dc-lc-hint--revealed{border-color:var(--accent)}.dc-lc-hint__toggle{width:100%;display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:var(--bg-elevated);border:none;color:var(--text-primary);cursor:pointer;font-size:13px;transition:background .15s}.dc-lc-hint__toggle:hover:not(:disabled){background:var(--bg-hover)}.dc-lc-hint__toggle:disabled{cursor:default}.dc-lc-hint__num{font-weight:700}.dc-lc-hint__lock{font-size:11px;color:var(--danger);font-weight:600;padding:2px 8px;background:#e0313114;border-radius:10px}.dc-lc-hint__content{padding:12px 14px;font-size:13px;color:var(--text-secondary);line-height:1.6;border-top:1px solid var(--border);background:var(--bg-surface);animation:dc-hint-reveal .3s ease-out}@keyframes dc-hint-reveal{0%{opacity:0;max-height:0;padding-top:0;padding-bottom:0}to{opacity:1;max-height:200px}}.dc-lc-deepdive__intro{font-size:13px;color:var(--text-secondary);margin:0 0 20px;line-height:1.5}.dc-lc-deepdive__q{margin-bottom:20px;padding:14px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm)}.dc-lc-deepdive__q-header{display:flex;align-items:flex-start;gap:8px;margin-bottom:10px}.dc-lc-deepdive__q-num{font-size:10px;font-weight:700;padding:2px 7px;background:var(--accent);color:#fff;border-radius:4px;white-space:nowrap}.dc-lc-deepdive__q-text{font-size:13px;font-weight:600;color:var(--text-primary);line-height:1.4;flex:1}.dc-lc-deepdive__q-badge{width:20px;height:20px;border-radius:50%;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dc-lc-deepdive__q-badge--correct{background:#10b98126;color:#10b981}.dc-lc-deepdive__q-badge--partial{background:#f59e0b26;color:#f59e0b}.dc-lc-deepdive__q-badge--wrong{background:#ef444426;color:#ef4444}.dc-lc-deepdive__multi{font-size:11px;color:var(--text-tertiary);font-style:italic;margin-bottom:8px;display:block}.dc-lc-deepdive__options{display:flex;flex-direction:column;gap:5px}.dc-lc-deepdive__opt{display:flex;align-items:flex-start;gap:8px;padding:8px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-surface);cursor:pointer;font-size:12px;color:var(--text-primary);text-align:left;transition:all .15s;width:100%}.dc-lc-deepdive__opt:hover:not(:disabled){border-color:var(--accent);background:var(--bg-hover)}.dc-lc-deepdive__opt--selected{border-color:var(--accent);background:#2f9e440f}.dc-lc-deepdive__opt--correct{border-color:#2f9e44;background:#2f9e441a}.dc-lc-deepdive__opt--wrong{border-color:#e03131;background:#e0313114}.dc-lc-deepdive__opt-marker{font-size:13px;min-width:16px}.dc-lc-deepdive__explain{margin-top:10px;padding:10px 12px;font-size:12px;background:#1971c20f;border:1px solid rgba(25,113,194,.12);border-radius:var(--radius-sm);color:var(--text-secondary);line-height:1.5}.dc-lc-deepdive__actions{margin-top:16px;display:flex;gap:10px;align-items:center}.dc-lc-deepdive__result{display:flex;align-items:center;gap:12px}.dc-lc-deepdive__score{font-size:14px;font-weight:700;padding:4px 12px;border-radius:var(--radius-sm);background:#f08c001a;color:#f08c00}.dc-lc-deepdive__score--good{background:#2f9e441a;color:#2f9e44}.dc-chaos-toolbar{display:flex;align-items:center;gap:6px;padding:2px 6px;background:#e031310a;border:1px solid rgba(224,49,49,.12);border-radius:10px;font-size:11px}.dc-chaos-toolbar__label{font-weight:700;color:var(--danger);white-space:nowrap;font-size:10px;text-transform:uppercase;letter-spacing:.5px}.dc-chaos-toolbar__btn{padding:3px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font-size:10px;cursor:pointer;transition:all .15s;white-space:nowrap}.dc-chaos-toolbar__btn:hover:not(:disabled){border-color:var(--danger);background:#e0313114}.dc-chaos-toolbar__btn--active{border-color:var(--danger);background:#e031311f;color:var(--danger);font-weight:700}.dc-chaos-toolbar__btn--clear{border-color:var(--accent);color:var(--accent)}.dc-chaos-toolbar__btn:disabled{opacity:.4;cursor:not-allowed}.dc-test-panel__tab-row{display:flex;gap:2px}.dc-test-panel__tab{padding:3px 10px;border:none;background:none;font-size:11px;color:var(--text-tertiary);cursor:pointer;border-bottom:2px solid transparent;font-weight:600;transition:all .15s}.dc-test-panel__tab:hover{color:var(--text-primary)}.dc-test-panel__tab--active{color:var(--text-primary);border-bottom-color:var(--accent)}.dc-btn--submitted{opacity:.7}.dc-score-card-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#000000a6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:dc-overlay-in .2s ease-out}@keyframes dc-overlay-in{0%{opacity:0}to{opacity:1}}.dc-score-card{width:460px;max-width:95vw;max-height:90vh;overflow-y:auto;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);padding:32px;box-shadow:0 24px 80px #0000004d;animation:dc-card-in .3s ease-out}@keyframes dc-card-in{0%{transform:scale(.9) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.dc-score-card__header{text-align:center;margin-bottom:24px}.dc-score-card__title{font-size:22px;font-weight:800;color:var(--text-primary);margin:0 0 4px}.dc-score-card__problem{font-size:14px;color:var(--text-secondary);margin:0}.dc-score-card__verdict{text-align:center;margin-bottom:28px;padding:20px;border:3px solid;border-radius:var(--radius)}.dc-score-card__total{font-size:48px;font-weight:800;line-height:1}.dc-score-card__verdict-label{display:inline-block;margin-top:8px;padding:4px 16px;border-radius:20px;font-size:14px;font-weight:700;color:#fff}.dc-score-card__breakdown{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.dc-score-card__row{display:flex;align-items:center;gap:8px}.dc-score-card__row-icon{font-size:16px;min-width:24px;text-align:center}.dc-score-card__row-label{font-size:13px;font-weight:600;color:var(--text-primary);min-width:120px}.dc-score-card__row-weight{font-size:11px;color:var(--text-tertiary);min-width:36px}.dc-score-card__bar-track{flex:1;height:8px;background:var(--border);border-radius:4px;overflow:hidden}.dc-score-card__bar-fill{height:100%;border-radius:4px;transition:width .6s ease-out}.dc-score-card__row-score{font-size:13px;font-weight:700;color:var(--text-primary);min-width:40px;text-align:right}.dc-score-card__penalty{text-align:center;font-size:13px;color:var(--danger);padding:8px;background:#e031310f;border-radius:var(--radius-sm);margin-bottom:16px}.dc-score-card__actions{display:flex;justify-content:center;gap:12px}.dc-btn--outline{background:transparent;border:1px solid var(--border);color:var(--text-primary);padding:4px 12px;border-radius:var(--radius-sm);font-size:11px;cursor:pointer;font-weight:600;transition:all .15s}.dc-btn--outline:hover{border-color:var(--accent);color:var(--accent)}@media (max-width: 768px){.dc-visualizer__bottom{grid-template-columns:1fr}.dc-visualizer__explain-col{border-right:none;border-bottom:1px solid var(--border)}.dc-stats-inline{flex-wrap:wrap;gap:10px}.dc-detail__center-tabs{position:static;transform:none}.dc-playground{flex-direction:column}.dc-question-panel{width:100%;max-height:200px;border-right:none;border-bottom:2px solid var(--border)}.dc-comp-sidebar{width:100%;max-height:180px;border-left:none;border-top:2px solid var(--border)}.dc-comp-sidebar__grid{grid-template-columns:repeat(5,1fr)}.dc-config-panel{position:static;width:100%;max-height:none;flex-direction:row;padding:4px}.dc-config-panel__section{max-height:160px}.dc-skeleton-sd__config-panel{position:static;width:100%;flex-direction:row;padding:8px}.dc-skeleton-sd__config-panel .dc-skeleton{flex:1}.dc-sim-toolbar{padding:3px 6px}.dc-top-bar{flex-wrap:wrap;gap:4px}.dc-control-bar,.dc-lc-api-row{flex-wrap:wrap}.dc-lc-api-desc{margin-left:0;width:100%}.dc-score-card{padding:20px;width:95vw}.dc-chaos-toolbar{flex-wrap:wrap}}@media (max-width: 1100px){.dc-detail__content--unified{overflow:auto;-webkit-overflow-scrolling:touch}.dc-algorithm-workbench{height:auto;min-height:100%;grid-template-columns:1fr}.dc-intro--workbench{height:auto;overflow:visible;border-right:0;border-bottom:0}.dc-detail__playground{display:flex;flex-direction:column;height:auto;min-height:0;overflow:visible;border-right:0;border-bottom:1px solid var(--border)}.dc-detail__playground>.dc-playground,.dc-detail__playground>.dc-visualizer,.dc-detail__playground>[class*=Visualizer],.dc-detail__playground .dc-playground{flex:none!important;height:auto!important;min-height:0!important;overflow:visible!important}.dc-visualizer{display:flex;flex-direction:column;height:auto;overflow:visible}.dc-visualizer__bottom{grid-template-columns:1fr;min-height:0;overflow:visible}.dc-visualizer__explain-col{border-right:none;border-bottom:1px solid var(--border);min-height:0;overflow:visible}.dc-visualizer__code-wrap{max-height:none;overflow:visible}.dc-code-block{max-height:min(55vh,480px);min-height:200px}.dc-skeleton-detail{height:auto;min-height:100%;grid-template-columns:1fr}.dc-skeleton-detail__lesson{border-right:0;border-bottom:0}.dc-skeleton-detail__playground{min-height:min(42vh,360px);border-right:0;border-bottom:1px solid var(--border)}}.obs-app.ce-app{--obs-chrome: var(--bg-secondary);--obs-surface: var(--bg-primary)}.obs-app.ce-app .ce-main-host{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.ce-pane__body .ce-pane-editor{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.obs-app.ce-app .obs-tabbar__right{gap:3px;padding-bottom:3px;align-items:center}.obs-app.ce-app .obs-tabbar__icon-btn,.obs-app.ce-app .obs-tabbar__new-btn,.obs-app.ce-app .ce-run-btn{width:24px;height:24px;padding:0;margin:0;border:none;border-radius:6px;background:transparent;color:var(--obs-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,color .15s}.obs-app.ce-app .obs-tabbar__icon-btn:hover,.obs-app.ce-app .obs-tabbar__new-btn:hover,.obs-app.ce-app .ce-run-btn:hover,.obs-app.ce-app .obs-tabbar__icon-btn--active,.obs-app.ce-app .ce-run-btn--stop{background:var(--obs-hover);color:var(--obs-strong)}.obs-app.ce-app .obs-tabbar__icon-btn svg,.obs-app.ce-app .obs-tabbar__new-btn svg,.obs-app.ce-app .ce-run-btn svg,.obs-app.ce-app .ft-actions__btn svg,.obs-app.ce-app .ft-node__icon,.obs-app.ce-app .ft-search__icon{width:14px;height:14px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;shape-rendering:geometricPrecision}.obs-app.ce-app .ce-lang-select{display:inline-flex;align-items:center;margin-right:2px;position:relative}.obs-app.ce-app .ce-lang-select:after{content:"";position:absolute;right:9px;top:50%;width:6px;height:6px;border-right:1.5px solid var(--obs-muted);border-bottom:1.5px solid var(--obs-muted);transform:translateY(-65%) rotate(45deg);pointer-events:none;opacity:.9}.obs-app.ce-app .ce-lang-select__select{height:26px;min-width:132px;padding:0 26px 0 10px;border-radius:6px;border:1px solid color-mix(in srgb,var(--obs-border) 65%,transparent);background:color-mix(in srgb,var(--obs-surface) 70%,transparent);color:var(--obs-strong);font-size:12px;font-family:var(--font-sans);font-weight:500;cursor:pointer;outline:none;transition:background .15s,border-color .15s;appearance:none;-webkit-appearance:none;-moz-appearance:none}.obs-app.ce-app .ce-lang-select__select:hover{background:var(--obs-hover)}.obs-app.ce-app .ce-lang-select__select:focus{border-color:color-mix(in srgb,var(--obs-strong) 30%,var(--obs-border))}.obs-app.ce-app .ce-run-btn:active{transform:translateY(1px)}.obs-app.ce-app .ce-run-btn--stop:hover{background:#dc2626}@keyframes ce-pulse-stop{0%,to{opacity:1}50%{opacity:.8}}.obs-app.ce-app .obs-subheader{display:none}.obs-app.ce-app .obs-subheader__title{display:inline-flex;align-items:center;gap:10px;justify-content:center;font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:11.5px;color:var(--obs-muted)}.obs-app.ce-app .ce-subheader__stats{display:inline-flex;align-items:center;gap:10px}.obs-app.ce-app .ce-subheader__stat{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;font-family:JetBrains Mono,monospace;color:color-mix(in srgb,#10b981 75%,var(--obs-muted))}.obs-app.ce-app .ce-subheader__engine{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--obs-muted-weak);padding:1px 5px;border-radius:3px;border:1px solid var(--obs-border)}.obs-app.ce-app .ce-subheader__running{font-size:10.5px;font-weight:600;color:#f59e0b;animation:ce-lsp-pulse 1s infinite}@keyframes ce-lsp-pulse{0%,to{opacity:1}50%{opacity:.3}}.obs-app.ce-app .ce-main{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;overflow:hidden;background:var(--obs-surface)}.obs-app.ce-app .ce-main--doc-only{flex-direction:column}.obs-app.ce-app .ce-main--doc-only .ce-editor-area{flex:1;min-height:0}.obs-app.ce-app .ce-main--side{flex-direction:row}.obs-app.ce-app .ce-editor-area{display:flex;flex-direction:column;min-height:120px;overflow:hidden;background:var(--obs-surface)}.obs-app.ce-app .ce-main--side .ce-editor-area{min-width:280px;min-height:0}.obs-app.ce-app .ce-editor-pane{flex:1;min-height:0;overflow:hidden}.obs-app.ce-app .ce-sql-workspace{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--obs-surface)}.obs-app.ce-app .ce-sql-layout-toggle{flex-shrink:0}.obs-app.ce-app .ce-sql-workspace__editors{position:relative;flex:1;min-height:0;display:flex;min-width:0}.obs-app.ce-app .ce-sql-workspace__pane--single{position:relative;inset:auto;flex:1;min-height:0;opacity:1;pointer-events:auto}.obs-app.ce-app .ce-sql-workspace__pane--split{position:relative;inset:auto;opacity:1;pointer-events:auto;display:flex;flex-direction:column;min-width:0;min-height:0;flex-shrink:0}.obs-app.ce-app .ce-sql-workspace__pane-head{flex-shrink:0;padding:5px 10px;font-size:11px;font-weight:600;color:var(--obs-muted);border-bottom:1px solid color-mix(in srgb,var(--obs-border) 60%,transparent);background:color-mix(in srgb,var(--obs-chrome) 70%,transparent);font-family:var(--font-hand)!important;letter-spacing:.1px}.obs-app.ce-app .ce-sql-workspace__pane--ddl .ce-sql-workspace__pane-head{border-right:1px solid color-mix(in srgb,var(--obs-border) 45%,transparent)}.obs-app.ce-app .ce-sql-workspace__pane-body{flex:1;min-height:0;min-width:0}.obs-app.ce-app .ce-sql-workspace__vsplit{flex-shrink:0;width:6px;cursor:col-resize;background:transparent;position:relative;z-index:2}.obs-app.ce-app .ce-sql-workspace__vsplit:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;transform:translate(-50%);background:color-mix(in srgb,var(--obs-border) 80%,transparent);transition:background .15s ease}.obs-app.ce-app .ce-sql-workspace__vsplit:hover:before{background:color-mix(in srgb,var(--border-focus, #6366f1) 55%,transparent)}.obs-app.ce-app .ce-editor-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;height:100%;color:var(--obs-muted);font-size:13px}.obs-app.ce-app .ce-spinner{width:14px;height:14px;border:2px solid color-mix(in srgb,var(--obs-muted) 30%,transparent);border-top-color:var(--obs-strong);border-radius:50%;animation:ce-spin .6s linear infinite}@keyframes ce-spin{to{transform:rotate(360deg)}}.obs-app.ce-app .ce-hsplit{flex-shrink:0;cursor:row-resize;position:relative;z-index:2;height:6px;margin:-2px 0;background:transparent;border:none}.obs-app.ce-app .ce-hsplit:hover,.obs-app.ce-app .ce-hsplit:active{background:color-mix(in srgb,var(--obs-strong) 6%,transparent)}.obs-app.ce-app .ce-hsplit:after{content:none}.obs-app.ce-app .ce-main:not(.ce-main--side) .ce-terminal-area{border-top:1px solid var(--obs-divider)}.obs-app.ce-app .ce-main--side .ce-hsplit{width:6px;height:auto;margin:0 -2px;cursor:col-resize}.obs-app.ce-app .ce-main--side .ce-terminal-area{border-top:none;border-left:1px solid var(--obs-divider)}.obs-app.ce-app .ce-terminal-area{display:flex;flex-direction:column;min-height:100px;overflow:hidden;background:var(--obs-surface)}.obs-app.ce-app .ce-main--side .ce-terminal-area{min-width:260px;min-height:0}.obs-app.ce-app .ce-terminal-header{display:flex;align-items:center;height:32px;padding:0 12px;background:color-mix(in srgb,var(--obs-chrome) 78%,var(--obs-surface));border-bottom:1px solid var(--obs-divider);flex-shrink:0}.obs-app.ce-app .ce-terminal-header__left{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.obs-app.ce-app .ce-terminal-header__title{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:var(--obs-strong);letter-spacing:.2px;padding:3px 8px;border-radius:999px;border:1px solid color-mix(in srgb,var(--obs-border) 68%,transparent);background:color-mix(in srgb,var(--obs-surface) 80%,transparent);flex-shrink:0}.obs-app.ce-app .ce-terminal-header__title svg{width:11px;height:11px;color:var(--obs-muted)}.obs-app.ce-app .ce-terminal-header__hint{display:none}.obs-app.ce-app .ce-stdin-panel{padding:6px 10px;background:var(--obs-chrome);border-bottom:1px solid var(--obs-divider);flex-shrink:0}.obs-app.ce-app .ce-stdin-panel__label{display:flex;align-items:center;gap:5px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--obs-muted-weak);margin-bottom:4px}.obs-app.ce-app .ce-stdin-panel__input{width:100%;padding:6px 8px;background:var(--obs-surface);border:1px solid var(--obs-border);border-radius:4px;color:var(--obs-strong);font-family:JetBrains Mono,monospace;font-size:12px;line-height:1.4;resize:vertical;min-height:40px;max-height:120px;outline:none;transition:border-color .15s}.obs-app.ce-app .ce-stdin-panel__input:focus{border-color:color-mix(in srgb,var(--obs-strong) 30%,var(--obs-border))}.obs-app.ce-app .ce-stdin-panel__input::placeholder{color:var(--obs-muted-weak)}.obs-app.ce-app .ce-xterm{flex:1;min-height:0;overflow:hidden;padding:4px 10px 8px;background:#0d0d0d}[data-theme=light] .obs-app.ce-app .ce-xterm{background:#f9fafb}.obs-app.ce-app .ce-xterm .xterm{height:100%;background-color:#0d0d0d}[data-theme=light] .obs-app.ce-app .ce-xterm .xterm{background-color:#f9fafb}.obs-app.ce-app .ce-xterm .xterm-viewport{overflow-y:auto!important;background-color:#0d0d0d!important;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--obs-muted) 58%,transparent) transparent}[data-theme=light] .obs-app.ce-app .ce-xterm .xterm-viewport{background-color:#f9fafb!important}.obs-app.ce-app .ce-xterm .xterm-scrollable-element>.shadow.top,.obs-app.ce-app .ce-xterm .xterm-scrollable-element>.shadow.top-left-corner{display:none!important}.obs-app.ce-app .ce-xterm .xterm-viewport::-webkit-scrollbar{width:7px;height:7px}.obs-app.ce-app .ce-xterm .xterm-viewport::-webkit-scrollbar-track{background:transparent}.obs-app.ce-app .ce-xterm .xterm-viewport::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--obs-muted) 58%,transparent);border-radius:999px;border:2px solid transparent;background-clip:content-box}.obs-app.ce-app .ce-xterm .xterm-viewport::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--obs-muted) 82%,transparent);background-clip:content-box}.obs-app.ce-app .ce-xterm .xterm-viewport::-webkit-scrollbar-button{display:none;width:0;height:0}.obs-app.ce-app .ce-xterm .xterm-viewport::-webkit-scrollbar-corner{background:transparent}.obs-app.ce-app .ce-editor-pane .monaco-scrollable-element>.scrollbar{background:transparent!important}.obs-app.ce-app .ce-editor-pane .monaco-scrollable-element>.scrollbar.vertical{width:7px!important}.obs-app.ce-app .ce-editor-pane .monaco-scrollable-element>.scrollbar.horizontal{height:0!important;display:none!important}.obs-app.ce-app .ce-editor-pane .monaco-scrollable-element>.scrollbar>.slider{border-radius:999px!important;border:none!important;background-clip:border-box!important;box-shadow:none!important}.obs-app.ce-app .monaco-editor .suggest-widget{width:min(520px,calc(100vw - 36px))!important;max-width:min(520px,calc(100vw - 36px))!important;max-height:310px!important;border:1px solid color-mix(in srgb,var(--obs-accent, #6965db) 34%,var(--obs-border))!important;border-radius:8px!important;background:color-mix(in srgb,var(--obs-surface, #fff) 96%,var(--obs-accent, #6965db))!important;box-shadow:0 14px 34px #0f172a2e,0 2px 8px #0f172a14!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.obs-app.ce-app .monaco-editor .suggest-widget .tree,.obs-app.ce-app .monaco-editor .suggest-widget .monaco-list,.obs-app.ce-app .monaco-editor .suggest-widget .monaco-list-rows{max-height:254px!important}.obs-app.ce-app .monaco-editor .suggest-widget .monaco-list-row{min-height:30px!important;margin:0!important;padding:0 7px!important;border-radius:0!important;font-family:var(--font-mono, "JetBrains Mono", monospace)!important;font-size:12.5px!important}.obs-app.ce-app .monaco-editor .suggest-widget .monaco-list-row.focused,.obs-app.ce-app .monaco-editor .suggest-widget .monaco-list-row.selected{background:color-mix(in srgb,var(--obs-accent, #6965db) 15%,transparent)!important;color:var(--obs-text, #1f2937)!important}.obs-app.ce-app .monaco-editor .suggest-widget .details-label{color:var(--obs-muted, #6b7280)!important;font-size:11.5px!important}.obs-app.ce-app .monaco-editor .suggest-widget .suggest-status-bar{min-height:28px!important;border-top:1px solid var(--obs-border)!important;color:var(--obs-muted)!important;font-size:10.5px!important}.ce-language-service{height:22px;padding:0 7px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--obs-border);border-radius:6px;color:var(--obs-muted);font:650 9px/1 var(--font-mono, "JetBrains Mono", monospace);letter-spacing:0;-webkit-user-select:none;user-select:none}.ce-language-service__dot{width:6px;height:6px;border-radius:50%;background:#8b93a1}.ce-language-service--active .ce-language-service__dot,.ce-language-service--native .ce-language-service__dot{background:#2f9e44;box-shadow:0 0 0 2px color-mix(in srgb,#2f9e44 16%,transparent)}.ce-language-service--connecting .ce-language-service__dot{background:#f4a261;animation:ce-lsp-pulse 1s ease-in-out infinite}.obs-app.ce-app .obs-tab,.obs-app.ce-app .obs-tab__title{font-family:var(--font-mono, "JetBrains Mono", "Fira Code", Consolas, monospace)}@media (max-width: 768px){.obs-app.ce-app .ce-main,.obs-app.ce-app .ce-main--side{flex-direction:column}.obs-app.ce-app .ce-editor-area,.obs-app.ce-app .ce-terminal-area{width:100%!important;min-height:30vh}.obs-app.ce-app .ce-hsplit{height:8px;margin:-3px 0}.obs-app.ce-app .ce-lang-select__badge,.obs-app.ce-app .ce-subheader__stats{display:none}}.obs-app.cv-app{--obs-chrome: var(--bg-secondary);--obs-surface: var(--bg-primary)}.obs-app.cv-app .obs-tabbar__right{gap:3px;padding-bottom:3px;position:relative;align-items:center}.obs-app.cv-app .obs-tabbar__icon-btn,.obs-app.cv-app .obs-tabbar__new-btn{width:24px;height:24px;padding:0;margin:0;border:none;border-radius:6px;background:transparent;color:var(--obs-muted);display:inline-flex;align-items:center;justify-content:center;transition:background .15s,color .15s;cursor:pointer}.obs-app.cv-app .obs-tabbar__icon-btn:hover,.obs-app.cv-app .obs-tabbar__new-btn:hover,.obs-app.cv-app .obs-tabbar__icon-btn--active{background:var(--obs-hover);color:var(--obs-strong)}.obs-app.cv-app .obs-tabbar__icon-btn svg,.obs-app.cv-app .obs-tabbar__new-btn svg,.obs-app.cv-app .obs-tab__close svg,.obs-app.cv-app .ft-actions__btn svg,.obs-app.cv-app .ft-node__icon,.obs-app.cv-app .ft-search__icon,.obs-app.cv-app .ft-bottom__btn svg,.obs-app.cv-app .cv-ds-popover svg{width:14px;height:14px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;shape-rendering:geometricPrecision}.obs-app.cv-app .obs-subheader{display:none}.obs-app.cv-app .cv-sync-pill{display:inline-flex;align-items:center;gap:4px;padding:0 8px;height:22px;font-size:11px;font-weight:500;border-radius:6px;border:none;background:transparent;color:var(--obs-muted);line-height:1;margin-right:2px}.obs-app.cv-app .cv-sync-pill--syncing{color:var(--brand-purple, var(--accent-secondary, #6965db))}.obs-app.cv-app .cv-sync-pill--saved{color:#10b981}.obs-app.cv-app .cv-sync-pill--pending{color:var(--brand-purple, var(--accent-secondary, #6965db))}.obs-app.cv-app .cv-sync-pill--error{color:#ef4444}.obs-app.cv-app .cv-ds-wrap{position:relative;display:inline-flex}.obs-app.cv-app .cv-ds-popover{position:absolute;top:calc(100% + 6px);right:0;min-width:240px;padding:12px;background:var(--obs-surface);border:1px solid var(--obs-border);border-radius:10px;box-shadow:0 8px 24px #00000029;z-index:60;display:flex;flex-direction:column;gap:10px}.obs-app.cv-app .cv-ds-popover__header{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--obs-muted)}.obs-app.cv-app .cv-ds-popover__label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12.5px;color:var(--obs-strong)}.obs-app.cv-app .cv-ds-popover__input{width:64px;padding:4px 8px;border:1px solid var(--obs-border);border-radius:6px;background:var(--obs-chrome);color:var(--obs-strong);font-size:12.5px;font-family:inherit;text-align:center}.obs-app.cv-app .cv-ds-popover__input:focus{outline:none;border-color:color-mix(in srgb,var(--obs-strong) 32%,var(--obs-border))}.obs-app.cv-app .cv-ds-popover__presets{display:flex;flex-wrap:wrap;gap:4px}.obs-app.cv-app .cv-ds-popover__preset{font-size:10.5px;padding:2px 8px;border-radius:999px;background:var(--obs-hover);color:var(--obs-muted);white-space:nowrap}.obs-app.cv-app .cv-main{flex:1;min-height:0;display:flex;flex-direction:column;position:relative;background:var(--obs-surface);overflow:hidden}.obs-app.cv-app .cv-main>.excalidraw-wrap,.obs-app.cv-app .cv-main>.excalidraw-canvas-root,.obs-app.cv-app .cv-main>div{flex:1;min-height:0}.obs-app.cv-app .cv-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--obs-muted);padding:40px;text-align:center}.obs-app.cv-app .cv-empty__title{font-size:15px;font-weight:600;color:var(--obs-strong)}.obs-app.cv-app .cv-empty__copy{font-size:13px;max-width:320px}.obs-app.cv-app .cv-empty__btn{margin-top:12px;padding:8px 16px;border-radius:8px;border:1px solid var(--obs-border);background:var(--obs-chrome);color:var(--obs-strong);font-size:13px;font-weight:500;cursor:pointer}.obs-app.cv-app .cv-empty__btn:hover{background:var(--obs-hover);border-color:color-mix(in srgb,var(--obs-strong) 24%,var(--obs-border))}.obs-app.cv-app .excalidraw .sidebar-trigger,.obs-app.cv-app .excalidraw .default-sidebar-trigger,.obs-app.cv-app .excalidraw [class*=sidebar-trigger],.obs-app.cv-app .excalidraw .layer-ui__library,.obs-app.cv-app .excalidraw [class*=library-menu],.obs-app.cv-app .excalidraw .library-button,.obs-app.cv-app .excalidraw [class*=Library],.obs-app.cv-app .excalidraw button[title=Library],.obs-app.cv-app .excalidraw .App-menu__left,.obs-app.cv-app .excalidraw .layer-ui__sidebar,.obs-app.cv-app .excalidraw .sidebar{display:none!important;visibility:hidden!important;width:0!important;height:0!important;overflow:hidden!important;pointer-events:none!important;position:absolute!important;left:-9999px!important}.obs-app.cv-app .excalidraw .welcome-screen-center,.obs-app.cv-app .excalidraw .welcome-screen-menu-hints,.obs-app.cv-app .excalidraw [class*=welcome-screen],.obs-app.cv-app .excalidraw .main-menu-trigger,.obs-app.cv-app .excalidraw .dropdown-menu-button.main-menu-trigger,.obs-app.cv-app .excalidraw button.main-menu-trigger,.obs-app.cv-app .excalidraw .help-icon,.obs-app.cv-app .excalidraw button.help-icon,.obs-app.cv-app .excalidraw [class*=help-icon],.obs-app.cv-app .excalidraw .undo-redo-buttons{display:none!important}.obs-app.cv-app:not(.excalidraw-page) .excalidraw,.obs-app.cv-app:not(.excalidraw-page) .excalidraw .excalidraw-container,.obs-app.cv-app:not(.excalidraw-page) .excalidraw .App,.obs-app.cv-app:not(.excalidraw-page) .excalidraw .layer-ui__wrapper,.obs-app.cv-app .excalidraw .layer-ui__wrapper__footer,.obs-app.cv-app .excalidraw .App-menu,.obs-app.cv-app .excalidraw .App-bottom-bar,.obs-app.cv-app .excalidraw .Island{background:var(--obs-surface)!important}.obs-app.cv-app .excalidraw canvas.excalidraw__canvas{background:transparent!important}.obs-app.cv-app .excalidraw svg.excalidraw__canvas{background:transparent!important}.obs-app.cv-app .excalidraw .Island{box-shadow:none!important;border:1px solid var(--obs-border)!important;border-radius:10px!important;background:var(--obs-surface)!important;padding:4px 6px!important}.obs-app.cv-app .excalidraw .Island.App-toolbar{border-width:2px!important;border-color:color-mix(in srgb,var(--obs-border) 80%,var(--obs-muted))!important;padding:6px 8px!important;display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;row-gap:4px!important;column-gap:4px!important;max-width:100%!important;width:auto!important;box-sizing:border-box!important}.obs-app.cv-app .excalidraw .App-toolbar .shapes-section,.obs-app.cv-app .excalidraw .App-toolbar section,.obs-app.cv-app .excalidraw .App-toolbar .shapes-section>div,.obs-app.cv-app .excalidraw .App-toolbar .Stack.Stack_vertical,.obs-app.cv-app .excalidraw .App-toolbar .Stack.Stack_horizontal{flex-wrap:wrap!important;max-width:100%!important;justify-content:center!important}.obs-app.cv-app .excalidraw .App-menu_top{grid-template-columns:auto 1fr auto!important;grid-gap:8px!important;align-items:start!important}.obs-app.cv-app .excalidraw .App-menu_top>*:nth-child(2){justify-self:center!important;min-width:0!important;max-width:100%!important}.obs-app.cv-app .excalidraw .App-toolbar-container{min-width:0!important;max-width:100%!important;flex-wrap:wrap!important;justify-content:center!important}.obs-app.cv-app .excalidraw .App-toolbar .HintViewer,.obs-app.cv-app .excalidraw .App-toolbar [class*=HintViewer],.obs-app.cv-app .excalidraw .HintViewer,.obs-app.cv-app .excalidraw .App-toolbar__divider,.obs-app.cv-app .excalidraw .shapes-section__header,.obs-app.cv-app .excalidraw [class*=shapes-section__header]{display:none!important}.obs-app.cv-app .excalidraw .ToolIcon__icon,.obs-app.cv-app .excalidraw .ToolIcon_type_button,.obs-app.cv-app .excalidraw .ToolIcon_type_radio,.obs-app.cv-app .excalidraw .ToolIcon{width:32px!important;height:32px!important;min-width:32px!important;padding:0!important;margin:0!important;border:none!important;border-radius:6px!important;background:transparent!important;color:var(--obs-muted)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;transition:background .15s,color .15s!important;box-sizing:border-box!important}.obs-app.cv-app .excalidraw .ToolIcon_type_button:hover,.obs-app.cv-app .excalidraw .ToolIcon_type_radio:hover,.obs-app.cv-app .excalidraw .ToolIcon__icon:hover,.obs-app.cv-app .excalidraw .ToolIcon:hover,.obs-app.cv-app .excalidraw .ToolIcon_type_button.ToolIcon_type_button--selected,.obs-app.cv-app .excalidraw .ToolIcon_type_radio.ToolIcon_type_radio--selected,.obs-app.cv-app .excalidraw .ToolIcon__icon--selected,.obs-app.cv-app .excalidraw .ToolIcon--selected,.obs-app.cv-app .excalidraw .ToolIcon.ToolIcon--selected{background:var(--obs-hover)!important;color:var(--obs-strong)!important}.obs-app.cv-app .excalidraw .ToolIcon__icon svg,.obs-app.cv-app .excalidraw .ToolIcon_type_button svg,.obs-app.cv-app .excalidraw .ToolIcon_type_radio svg,.obs-app.cv-app .excalidraw .ToolIcon svg{width:18px!important;height:18px!important;stroke-width:1.5!important;stroke-linecap:round!important;stroke-linejoin:round!important}.obs-app.cv-app .excalidraw .App-toolbar-container{display:flex!important;flex-direction:row!important;align-items:center!important;gap:6px!important}.obs-app.cv-app .excalidraw .App-toolbar .Stack,.obs-app.cv-app .excalidraw .App-toolbar .Stack_horizontal,.obs-app.cv-app .excalidraw .App-toolbar .Stack_vertical{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;gap:4px!important;min-width:0!important;max-width:100%!important}.obs-app.cv-app .excalidraw .shapes-section,.obs-app.cv-app .excalidraw .App-toolbar section{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;gap:4px!important;min-width:0!important;max-width:100%!important}.obs-app.cv-app .excalidraw .shapes-section .ToolIcon__label,.obs-app.cv-app .excalidraw .App-toolbar .ToolIcon__label,.obs-app.cv-app .excalidraw .ToolIcon__label,.obs-app.cv-app .excalidraw .App-toolbar .ToolIcon__keybinding,.obs-app.cv-app .excalidraw .ToolIcon__keybinding{display:none!important}.obs-app.cv-app .excalidraw .zoom-actions,.obs-app.cv-app .excalidraw .zoom-action{background:transparent!important;border:none!important;box-shadow:none!important}.obs-app.cv-app .excalidraw .zoom-button,.obs-app.cv-app .excalidraw .zoom-in-button,.obs-app.cv-app .excalidraw .zoom-out-button,.obs-app.cv-app .excalidraw .reset-zoom-button{width:24px!important;height:24px!important;min-width:24px!important;padding:0!important;margin:0 1px!important;border:none!important;border-radius:6px!important;background:transparent!important;color:var(--obs-muted)!important;font-size:11px!important;font-weight:500!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;transition:background .15s,color .15s!important}.obs-app.cv-app .excalidraw .reset-zoom-button{width:auto!important;min-width:36px!important;padding:0 6px!important}.obs-app.cv-app .excalidraw .zoom-button:hover,.obs-app.cv-app .excalidraw .zoom-in-button:hover,.obs-app.cv-app .excalidraw .zoom-out-button:hover,.obs-app.cv-app .excalidraw .reset-zoom-button:hover{background:var(--obs-hover)!important;color:var(--obs-strong)!important}.obs-app.cv-app .excalidraw .zoom-button .ToolIcon__icon,.obs-app.cv-app .excalidraw .zoom-in-button .ToolIcon__icon,.obs-app.cv-app .excalidraw .zoom-out-button .ToolIcon__icon{width:14px!important;height:14px!important}.obs-app.cv-app .excalidraw .zoom-button svg,.obs-app.cv-app .excalidraw .zoom-in-button svg,.obs-app.cv-app .excalidraw .zoom-out-button svg{width:14px!important;height:14px!important;stroke-linecap:round!important;stroke-linejoin:round!important}.obs-app.cv-app .excalidraw .layer-ui__wrapper__footer-left .Island{background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important}@media (max-width: 768px){.obs-app.cv-app .cv-ds-popover{right:-8px;min-width:220px}}.obs-app{--obs-chrome: var(--bg-secondary);--obs-border: color-mix(in srgb, var(--border) 42%, transparent);--obs-divider: color-mix(in srgb, var(--border) 28%, transparent);--obs-hover: var(--bg-hover);--obs-surface: var(--bg-primary);--obs-muted: var(--text-secondary);--obs-muted-weak: var(--text-tertiary);--obs-strong: var(--text-primary);--obs-input-bg: var(--bg-tertiary);--obs-input-border: var(--border-light);display:flex;flex-direction:column;height:100vh;background:var(--obs-chrome)}.obs-app *{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--obs-muted) 58%,transparent) transparent}.obs-app *::-webkit-scrollbar{width:7px;height:7px}.obs-app *::-webkit-scrollbar-track{background:transparent}.obs-app *::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--obs-muted) 58%,transparent);border-radius:999px;border:2px solid transparent;background-clip:content-box}.obs-app *::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--obs-muted) 82%,transparent);background-clip:content-box}.obs-app *::-webkit-scrollbar-button{display:none;width:0;height:0}.obs-app *::-webkit-scrollbar-corner{background:transparent}.obs-app .dc-navbar{background:var(--obs-chrome);border-bottom:1px solid var(--obs-border);box-shadow:none}.obs-app .dc-navbar__link:hover{color:var(--text-primary);background:var(--bg-hover)}.obs-app .dc-navbar__link--active{color:var(--brand-purple, #6965db);background:color-mix(in srgb,var(--brand-purple, #6965db) 12%,transparent)}.obs-app .dc-navbar__link--active:after{background:var(--brand-purple, #6965db)}.obs-app .dc-brand--compact .dc-brand-wordmark,.obs-app .dc-brand--expanded .dc-brand-wordmark{color:var(--obs-strong)}.obs-app .dc-brand--compact .dc-brand-wordmark__accent,.obs-app .dc-brand--expanded .dc-brand-wordmark__accent{color:var(--brand-purple, #6965db)}.obs-app .dc-navbar__theme-btn:hover{background:var(--obs-hover)}.obs-app .ne-panel{background:var(--obs-surface)}.obs-app .ne-status{background:var(--obs-chrome)}.obs-app .ne-action-btn--active{background:var(--obs-hover);border-color:var(--obs-border);color:var(--obs-strong)}.obs-app__body{display:flex;flex:1;min-height:0;background:var(--obs-chrome)}.obs-main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;background:var(--obs-surface)}.obs-tabbar{height:36px;display:flex;align-items:flex-end;justify-content:space-between;gap:8px;padding:0 8px;background:var(--obs-chrome);border-bottom:none;flex-shrink:0}.obs-tabbar__left{display:flex;align-items:flex-end;min-width:0;flex:1;gap:4px}.obs-tabbar__nav-btn{width:24px;height:24px;margin-bottom:4px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:transparent;color:var(--obs-muted);cursor:default}.obs-tabbar__new-btn{width:24px;height:24px;align-self:center;margin-bottom:0;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:transparent;color:var(--obs-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.obs-tabbar__new-btn:hover{background:var(--obs-hover);color:var(--obs-strong)}.obs-tabbar__right{display:flex;align-items:center;gap:4px;padding-bottom:4px}.obs-tabbar__icon-btn{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:6px;background:transparent;color:var(--obs-muted);cursor:pointer;transition:background .15s ease,color .15s ease}.obs-tabbar__icon-btn:hover,.obs-tabbar__icon-btn--active{background:var(--obs-hover);color:var(--obs-strong)}.obs-tabbar__right{position:relative}.obs-more-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:50;min-width:190px;padding:6px;border-radius:10px;border:1px solid var(--obs-border);background:var(--obs-chrome);box-shadow:0 12px 28px #00000073}.obs-more-menu button{width:100%;border:none;background:transparent;color:var(--obs-strong);text-align:left;font-size:12px;padding:7px 10px;border-radius:7px;cursor:pointer}.obs-more-menu button:hover{background:var(--obs-hover);color:var(--obs-strong)}.obs-more-menu__sep{height:1px;background:var(--obs-border);margin:6px 2px}.obs-more-menu--from-bottom-left{top:auto;right:auto;left:0;bottom:calc(100% + 6px)}.obs-tabs{display:flex;align-items:flex-end;gap:2px;overflow-x:auto;min-width:0}.obs-tabs::-webkit-scrollbar{height:0}.obs-tab{height:30px;display:flex;align-items:center;gap:6px;padding:0 12px;font-size:12px;color:var(--obs-muted);cursor:pointer;border:none;border-radius:8px 8px 0 0;white-space:nowrap;transition:var(--transition-fast);min-width:0;max-width:none}.obs-tab:hover{background:var(--obs-hover);color:var(--obs-strong)}.obs-tab--active{background:var(--obs-surface);color:var(--obs-strong)}.obs-tab__title{overflow:hidden;text-overflow:ellipsis}.obs-tab__title-input{flex:1;min-width:48px;max-width:min(160px,38vw);height:22px;padding:0 6px;margin:0;border:1px solid var(--border-focus, var(--accent-secondary, #6366f1));border-radius:4px;background:var(--obs-surface);color:var(--obs-strong);font:inherit;font-size:inherit;line-height:1.2;outline:none;box-sizing:border-box}.obs-tab--active .obs-tab__title-input{background:var(--obs-chrome)}.obs-tabs--compact .obs-tab{font-size:11px;max-width:190px;padding:0 10px}.obs-tabs--dense .obs-tab{font-size:10px;max-width:150px;padding:0 8px}.obs-tabs--tiny .obs-tab{font-size:9px;max-width:110px;padding:0 7px}.obs-tab__close{flex-shrink:0;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;color:var(--obs-muted);opacity:0;transition:var(--transition-fast);cursor:pointer;border:none;background:none}.obs-tab:hover .obs-tab__close,.obs-tab--active .obs-tab__close{opacity:1}.obs-tab__close:hover{color:var(--obs-strong);background:var(--obs-hover)}.obs-subheader{height:30px;display:grid;grid-template-columns:1fr;align-items:center;gap:0;padding:0 10px;background:var(--obs-surface);border-bottom:none;flex-shrink:0}.obs-subheader__nav{display:none}.obs-subheader__nav-btn{width:22px;height:22px;border:none;border-radius:5px;background:transparent;color:var(--obs-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,color .15s}.obs-subheader__nav-btn:hover:not(:disabled){background:var(--obs-hover);color:var(--obs-strong)}.obs-subheader__nav-btn:disabled{opacity:.45;cursor:default}.obs-subheader__title{font-size:12px;color:var(--obs-strong);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.obs-subheader__spacer{display:none}.obs-split{flex:1;display:flex;min-height:0;min-width:0}.obs-empty{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.obs-empty__content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:0;overflow:hidden;background:var(--obs-surface)}.obs-empty__content h2{font-size:15px;font-weight:400;color:var(--obs-muted);margin:0 0 12px}.obs-empty__action{font-size:13px;color:var(--obs-strong);cursor:pointer;padding:4px 8px;border-radius:4px;border:none;background:none;transition:var(--transition-fast);display:flex;align-items:center;gap:12px}.obs-empty__action:hover{background:var(--obs-hover);color:var(--obs-strong)}.obs-empty__action kbd{font-size:10px;color:var(--obs-muted-weak);font-family:var(--font-mono);padding:1px 5px;border-radius:3px;background:var(--bg-tertiary);border:1px solid var(--border)}.obs-app.ce-app .ce-empty__content{gap:0;padding:12px 16px;text-align:center}.obs-app.ce-app .ce-empty__eyebrow{margin-bottom:2px;font-family:var(--font-hand, "Excalifont", cursive);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--obs-muted)}.obs-app.ce-app .ce-empty__title{margin:0;font-family:var(--font-hand, "Excalifont", cursive);font-size:20px;font-weight:700;letter-spacing:.02em;color:var(--obs-strong)}.obs-app.ce-app .ce-empty__copy{width:min(480px,100%);margin:4px 0 10px;font-family:var(--font-hand, "Excalifont", cursive);font-size:11px;line-height:1.3;color:var(--obs-muted)}.obs-app.ce-app .ce-empty__grid{width:min(560px,100%);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;text-align:left}@media (max-width: 480px){.obs-app.ce-app .ce-empty__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.obs-app.ce-app .ce-empty__action{width:100%;justify-content:flex-start;padding:0;border:none;border-radius:0;background:none}.obs-app.ce-app .ce-empty__tile{--tile-accent: var(--obs-muted);flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;width:100%;min-height:44px;height:auto;padding:6px 8px;text-align:left;border:1px solid color-mix(in srgb,var(--tile-accent) 35%,var(--obs-border));border-radius:6px;background:color-mix(in srgb,var(--tile-accent) 7%,var(--obs-surface));transform:none;box-shadow:none;transition:border-color .12s,background .12s,transform .1s}.obs-app.ce-app .ce-empty__tile:hover{transform:translateY(-1px);background:color-mix(in srgb,var(--tile-accent) 11%,var(--obs-surface));border-color:color-mix(in srgb,var(--tile-accent) 50%,var(--obs-border))}.obs-app.ce-app .ce-empty__tile--code{--tile-accent: var(--brand-purple, #6965db)}.obs-app.ce-app .ce-empty__tile--db{--tile-accent: #0891b2}.obs-app.ce-app .ce-empty__tile--spark{--tile-accent: #d97706}.obs-app.ce-app .ce-empty__tile--neutral{--tile-accent: var(--obs-muted)}.obs-app.ce-app .ce-empty__tile-label{font-family:var(--font-hand, "Excalifont", cursive);font-size:11px;font-weight:650;color:var(--obs-strong);line-height:1.15;width:100%}.obs-app.ce-app .ce-empty__tile kbd{flex-shrink:0;font-family:var(--font-mono, "JetBrains Mono", monospace);font-size:8px;font-weight:500;padding:1px 4px;border-radius:3px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:color-mix(in srgb,var(--tile-accent) 75%,var(--obs-muted));background:color-mix(in srgb,var(--tile-accent) 8%,var(--bg-tertiary, var(--obs-chrome)));border:1px solid color-mix(in srgb,var(--tile-accent) 28%,var(--border, var(--obs-border)))}[data-theme=light] .obs-app.ce-app .ce-empty__tile--db{--tile-accent: #0e7490}[data-theme=light] .obs-app.ce-app .ce-empty__tile--spark{--tile-accent: #b45309}.ft-sidebar{width:250px;min-width:250px;position:relative;display:flex;flex-direction:column;align-self:stretch;flex-shrink:0;-webkit-user-select:none;user-select:none;background:var(--obs-chrome);border-right:1px solid var(--obs-border);transition:width .24s cubic-bezier(.4,0,.2,1),min-width .24s cubic-bezier(.4,0,.2,1),border-color .2s ease}.ft-sidebar--resizing,.ft-sidebar--resizing *{transition:none!important}.ft-sidebar--resizing{will-change:width}.ft-sidebar__resizer{position:absolute;top:0;right:-4px;width:8px;height:100%;z-index:20;cursor:col-resize;background:transparent;touch-action:none}.ft-sidebar__resizer:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;transform:translate(-50%);background:transparent;border-radius:2px;transition:background .18s ease,box-shadow .18s ease}.ft-sidebar__resizer:hover:before,.ft-sidebar--resizing .ft-sidebar__resizer:before{background:color-mix(in srgb,var(--border-focus, #6b8cff) 70%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--border-focus, #6b8cff) 25%,transparent)}.ft-sidebar__resizer-grip{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:2px;height:28px;border-radius:2px;background:transparent;box-shadow:-3px 0 0 0 currentColor,3px 0 0 0 currentColor;color:transparent;transition:color .18s ease;pointer-events:none}.ft-sidebar__resizer:hover .ft-sidebar__resizer-grip,.ft-sidebar--resizing .ft-sidebar__resizer-grip{color:color-mix(in srgb,var(--obs-strong) 55%,transparent)}@media (prefers-reduced-motion: reduce){.ft-sidebar__resizer:before,.ft-sidebar__resizer-grip{transition:none}}.ft-sidebar--collapsed{width:32px;min-width:32px;justify-content:center;align-items:center;padding:0;overflow:hidden}.ft-sidebar__toggle{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin:0;padding:0;border-radius:8px;border:1px solid color-mix(in srgb,var(--obs-border) 65%,transparent);color:var(--obs-muted);cursor:pointer;background:color-mix(in srgb,var(--obs-surface) 55%,transparent);box-shadow:0 1px 2px #0000000f;transition:background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .18s cubic-bezier(.34,1.2,.64,1)}.ft-sidebar__toggle:hover{color:var(--obs-strong);background:var(--obs-hover);border-color:color-mix(in srgb,var(--obs-border) 85%,transparent);box-shadow:0 2px 8px #0000001a;transform:scale(1.06)}.ft-sidebar__toggle:active{transform:scale(.96)}.ft-sidebar__toggle:focus-visible{outline:2px solid color-mix(in srgb,var(--border-focus, #6b8cff) 70%,transparent);outline-offset:2px}@media (prefers-reduced-motion: reduce){.ft-sidebar{transition:none}.ft-sidebar__toggle{transition:background .15s ease,color .15s ease,border-color .15s ease}.ft-sidebar__toggle:hover,.ft-sidebar__toggle:active{transform:none}}.ft-pane{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;background:transparent}.ft-actions{display:flex;align-items:center;flex-wrap:nowrap;gap:2px;padding:7px 8px;border-bottom:none;background:transparent;min-width:0}.ft-actions__readonly{font-size:11px;font-weight:600;letter-spacing:.02em;color:var(--obs-muted);padding:0 6px;white-space:nowrap;opacity:.85}.ft-actions__btn--canvas-menu{margin-left:auto}.ft-actions__btn--sidebar-collapse{flex-shrink:0}.ft-actions__btn{width:24px;height:24px;padding:0;border-radius:6px;color:var(--obs-muted);cursor:pointer;border:none;background:none;transition:background .15s,color .15s}.ft-actions__btn:hover{color:var(--obs-strong);background:var(--obs-hover)}.ft-fold-all{position:relative;overflow:hidden}.ft-fold-all .ft-fold-all__icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;transform-origin:center;animation:ft-fold-all-swap .32s cubic-bezier(.34,1.56,.64,1);will-change:transform,opacity}.ft-fold-all--animating{animation:ft-fold-all-press .34s cubic-bezier(.34,1.56,.64,1)}.ft-fold-all:active{transform:scale(.92)}@keyframes ft-fold-all-swap{0%{opacity:0;transform:scale(.55) rotate(-12deg)}55%{opacity:1;transform:scale(1.12) rotate(3deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes ft-fold-all-press{0%{transform:scale(1)}40%{transform:scale(.86)}to{transform:scale(1)}}@media (prefers-reduced-motion: reduce){.ft-fold-all .ft-fold-all__icon,.ft-fold-all--animating{animation:none}}.ft-actions__sep{width:1px;height:14px;background:var(--obs-border);margin:0 2px;flex-shrink:0}.ft-actions__btn--active{color:var(--obs-strong);background:var(--obs-hover)}.ft-canvas-menu{position:fixed;z-index:1200;min-width:196px;padding:6px;border-radius:10px;border:1px solid var(--obs-border);background:var(--obs-surface, var(--bg-elevated));box-shadow:0 10px 28px #0f172a24;display:flex;flex-direction:column;gap:2px}.ft-canvas-menu button[role=menuitem]{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:7px 10px;border:none;border-radius:7px;background:transparent;color:var(--obs-strong, var(--text-primary));font-size:12px;text-align:left;cursor:pointer}.ft-canvas-menu button[role=menuitem]:hover{background:var(--obs-hover, var(--bg-hover))}.ft-canvas-menu__kbd{font-size:10px;color:var(--obs-muted, var(--text-secondary));font-variant-numeric:tabular-nums}.ft-canvas-menu__sep{height:1px;margin:4px 2px;background:var(--obs-border, var(--border))}.ft-canvas-menu__danger{color:var(--danger, #ef4444)!important}.ft-canvas-menu__danger:hover{background:color-mix(in srgb,var(--danger, #ef4444) 12%,transparent)!important}.ft-canvas-menu__swatches{display:flex;flex-wrap:wrap;gap:6px;padding:4px 8px 6px}.ft-canvas-menu__swatch{width:22px;height:22px;padding:0;border-radius:6px;border:1.5px solid color-mix(in srgb,var(--obs-border) 80%,#000);background:var(--swatch);cursor:pointer}.ft-canvas-menu__swatch:hover{transform:scale(1.06)}.ft-search{display:flex;align-items:center;gap:6px;position:relative;padding:8px 10px;border-bottom:none;background:transparent}.ft-search__icon{position:absolute;left:18px;color:var(--obs-muted);pointer-events:none}.ft-search__input{width:100%;height:28px;border-radius:999px;border:1px solid color-mix(in srgb,var(--obs-input-border) 70%,transparent);background:color-mix(in srgb,var(--obs-input-bg) 45%,transparent);color:var(--obs-strong);font-family:var(--font-hand)!important;letter-spacing:.1px;font-size:12px;padding:0 28px 0 30px;outline:none}.ft-search__input::placeholder{color:var(--obs-muted);font-family:var(--font-hand)!important;letter-spacing:.1px}.ft-search__input:focus{border-color:color-mix(in srgb,var(--border-focus) 80%,transparent);background:color-mix(in srgb,var(--obs-input-bg) 65%,transparent)}.ft-search__clear{position:absolute;right:14px;width:18px;height:18px;border:none;border-radius:5px;background:transparent;color:var(--obs-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.ft-search__clear:hover{background:var(--obs-hover);color:var(--obs-strong)}.ft-tree{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;position:relative;padding:6px 8px 8px;background:var(--obs-chrome);font-family:Cambria,Georgia,Times New Roman,serif;scrollbar-width:thin;scrollbar-color:transparent transparent;transition:scrollbar-color .25s ease}.ft-tree:hover,.ft-tree:focus-within,.ft-tree.is-scrolling{scrollbar-color:color-mix(in srgb,var(--obs-muted) 55%,transparent) transparent}.ft-tree::-webkit-scrollbar{width:8px;background:transparent}.ft-tree::-webkit-scrollbar-track{background:transparent;border-radius:999px;margin:4px 0}.ft-tree::-webkit-scrollbar-thumb{background:transparent;border-radius:999px;border:2px solid transparent;background-clip:content-box;min-height:32px;transition:background-color .2s ease}.ft-tree:hover::-webkit-scrollbar-thumb,.ft-tree:focus-within::-webkit-scrollbar-thumb,.ft-tree.is-scrolling::-webkit-scrollbar-thumb{background-color:color-mix(in srgb,var(--obs-muted) 55%,transparent)}.ft-tree::-webkit-scrollbar-thumb:hover{background-color:color-mix(in srgb,var(--obs-muted) 85%,transparent)!important}.ft-tree::-webkit-scrollbar-thumb:active{background-color:color-mix(in srgb,var(--obs-strong) 60%,transparent)!important}.ft-tree::-webkit-scrollbar-button{display:none;width:0;height:0}.ft-tree::-webkit-scrollbar-corner{background:transparent}.ft-tree--can-scroll-top:before,.ft-tree--can-scroll-bottom:after{content:"";position:sticky;left:0;right:0;height:10px;display:block;pointer-events:none;z-index:2}.ft-tree--can-scroll-top:before{top:0;margin-bottom:-10px;background:linear-gradient(to bottom,var(--obs-chrome) 0%,transparent 100%)}.ft-tree--can-scroll-bottom:after{bottom:0;margin-top:-10px;background:linear-gradient(to top,var(--obs-chrome) 0%,transparent 100%)}@media (prefers-reduced-motion: reduce){.ft-tree,.ft-tree::-webkit-scrollbar-thumb{transition:none}}.ft-node{display:flex;align-items:center;gap:7px;padding:4px 8px;cursor:pointer;border-radius:4px;margin:1px 0;transition:background .15s,color .15s;position:relative;font-size:13px;line-height:1.4;color:var(--obs-strong)}.ft-node:hover{background:color-mix(in srgb,var(--obs-hover) 55%,transparent)}.ft-node--active{background:color-mix(in srgb,var(--bg-active) 76%,transparent)}.ft-node--active .ft-node__label{color:var(--obs-strong);font-weight:600}.ft-node--folder{font-weight:600}.ft-node--folder .ft-node__label{color:var(--obs-strong)}.ft-node--file{gap:4px}.ft-node--file .ft-node__label{font-weight:400;color:var(--obs-strong)}.ft-node--file .ft-node__icon{display:none}.ft-children{display:grid;grid-template-rows:1fr;transition:grid-template-rows .18s ease,opacity .18s ease;margin-left:12px;padding-left:12px;border-left:1px solid color-mix(in srgb,var(--obs-muted) 24%,transparent);opacity:1}.ft-children--collapsed{grid-template-rows:0fr;opacity:0;border-left-color:transparent}.ft-children__inner{min-height:0;overflow:hidden;padding:2px 0 3px}.ft-node__arrow{flex-shrink:0;transition:transform .15s;color:var(--obs-muted);margin-right:2px}.ft-node__icon{flex-shrink:0;color:var(--obs-muted)}.ft-node__label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-shadow:none;min-width:0}.ft-node__label--done{text-decoration:line-through;color:var(--text-tertiary)}.ft-node--file .ft-node__label.ft-node__label--agent-busy,.ft-node .ft-node__label.ft-node__label--agent-busy,.obs-tab__title.obs-tab__title--agent-busy{font-weight:700;background:linear-gradient(110deg,color-mix(in srgb,var(--brand-purple, #6965db) 45%,var(--obs-muted, #94a3b8)) 0%,var(--brand-purple, #6965db) 28%,color-mix(in srgb,var(--brand-purple, #6965db) 30%,white) 50%,var(--brand-purple, #6965db) 72%,color-mix(in srgb,var(--brand-purple, #6965db) 45%,var(--obs-muted, #94a3b8)) 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent!important;animation:ft-agent-text-flow 1.7s linear infinite}@keyframes ft-agent-text-flow{0%{background-position:100% 50%;opacity:.72}50%{opacity:1}to{background-position:-100% 50%;opacity:.72}}@media (prefers-reduced-motion: reduce){.ft-node--file .ft-node__label.ft-node__label--agent-busy,.ft-node .ft-node__label.ft-node__label--agent-busy,.obs-tab__title.obs-tab__title--agent-busy{animation:none;color:var(--brand-purple, #6965db)!important;background:none;-webkit-background-clip:unset;background-clip:unset}}.ft-node__pin{color:var(--obs-muted);margin-left:auto;flex-shrink:0}.ft-node__edit{flex:1;border:1px solid var(--border-focus);border-radius:8px;padding:3px 8px;font-size:13px;background:var(--bg-tertiary);color:var(--text-primary);outline:none}.ft-tree__empty{font-size:12px;color:var(--obs-muted);text-align:center;padding:14px 10px}.ft-tree__empty-state{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:14px 10px;color:var(--obs-muted)}.ft-tree__empty-title{font-size:12px;font-weight:600;color:var(--obs-strong)}.ft-tree__empty-copy{font-size:11px;line-height:1.45}.ft-tree__empty-btn{padding:6px 10px;border-radius:8px;border:1px solid color-mix(in srgb,var(--obs-border) 85%,transparent);background:color-mix(in srgb,var(--obs-input-bg) 50%,transparent);color:var(--obs-strong);font-size:12px}.ft-tree__empty-btn:hover{background:var(--obs-hover)}.ft-ctx{position:fixed;z-index:1000;background:var(--bg-elevated);border:1px solid var(--border-light);border-radius:10px;padding:4px;min-width:168px;max-width:min(260px,calc(100vw - 16px));max-height:calc(100vh - 16px);overflow-y:auto;box-shadow:0 14px 36px #00000059}.ft-ctx button{display:block;width:100%;text-align:left;padding:7px 12px;font-size:13px;border-radius:8px;color:var(--text-primary);cursor:pointer;border:none;background:none;transition:background .12s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ft-ctx button:hover{background:var(--bg-hover)}.ft-ctx--danger{color:var(--danger)!important}.ft-ctx--danger:hover{background:var(--danger-bg)!important}.ft-actions{position:relative}.ft-upload-menu{position:absolute;left:6px;right:6px;top:40px;z-index:60;padding:4px;background:color-mix(in srgb,var(--bg-elevated, var(--obs-surface)) 96%,transparent);border:1px solid color-mix(in srgb,var(--obs-border) 75%,transparent);border-radius:10px;box-shadow:0 1px color-mix(in srgb,#fff 4%,transparent) inset,0 12px 28px #00000042,0 2px 6px #0000002e;backdrop-filter:blur(10px) saturate(1.1);-webkit-backdrop-filter:blur(10px) saturate(1.1);transform-origin:top right;animation:ft-upload-menu-in .18s cubic-bezier(.34,1.4,.64,1);will-change:transform,opacity}@keyframes ft-upload-menu-in{0%{opacity:0;transform:translateY(-6px) scale(.96)}60%{opacity:1;transform:translateY(1px) scale(1.01)}to{opacity:1;transform:translateY(0) scale(1)}}.ft-upload-menu__item{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;border-radius:7px;color:var(--text-primary, var(--obs-strong));background:transparent;border:none;cursor:pointer;text-align:left;font-family:inherit;transition:background .14s ease,transform .14s cubic-bezier(.34,1.4,.64,1),color .14s ease}.ft-upload-menu__item+.ft-upload-menu__item{margin-top:1px}.ft-upload-menu__item:hover,.ft-upload-menu__item:focus-visible{background:color-mix(in srgb,var(--obs-hover) 85%,transparent);outline:none}.ft-upload-menu__item:active{transform:scale(.985)}.ft-upload-menu__icon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:7px;color:var(--obs-muted);background:color-mix(in srgb,var(--obs-border) 35%,transparent);border:1px solid color-mix(in srgb,var(--obs-border) 55%,transparent);flex-shrink:0;transition:background .14s ease,color .14s ease,border-color .14s ease}.ft-upload-menu__item:hover .ft-upload-menu__icon,.ft-upload-menu__item:focus-visible .ft-upload-menu__icon{color:var(--obs-strong);background:color-mix(in srgb,var(--border-focus, #6b8cff) 14%,transparent);border-color:color-mix(in srgb,var(--border-focus, #6b8cff) 55%,transparent)}.ft-upload-menu__text{display:flex;flex-direction:column;min-width:0;line-height:1.15}.ft-upload-menu__title{font-size:12.5px;font-weight:500;letter-spacing:.1px}.ft-upload-menu__hint{margin-top:1px;font-size:10.5px;color:var(--obs-muted);letter-spacing:.2px}@media (prefers-reduced-motion: reduce){.ft-upload-menu{animation:none}.ft-upload-menu__item{transition:background .1s ease}.ft-upload-menu__item:active{transform:none}}.ft-actions__btn--active{background:var(--bg-hover, rgba(255, 255, 255, .06))!important;color:var(--text-primary, currentColor)!important}.ft-upload-toast{margin:6px 10px 0;padding:6px 10px;font-size:12px;line-height:1.35;border-radius:8px;border:1px solid var(--border-light);background:var(--bg-elevated);color:var(--text-secondary, var(--text-primary));animation:ft-upload-menu-in .15s ease-out}.ft-upload-toast--success{border-color:color-mix(in srgb,var(--success, #3ba974) 55%,var(--border-light));color:var(--success, #3ba974)}.ft-upload-toast--error{border-color:color-mix(in srgb,var(--danger, #e05b5b) 55%,var(--border-light));color:var(--danger, #e05b5b)}.ft-upload-toast--info{color:var(--text-primary)}.ft-bottom{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:10px 10px 12px;border-top:1px solid var(--obs-border, var(--border, rgba(255, 255, 255, .06)));background:transparent}.ft-bottom__profile{width:100%}.ft-bottom__row{display:flex;align-items:center;gap:6px}.ft-node--drop{background:color-mix(in srgb,var(--accent-secondary, #6366F1) 18%,transparent);outline:1px dashed var(--accent-secondary, #6366F1);outline-offset:-2px;border-radius:6px}.ft-bottom__label{flex:1;display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:500;color:var(--obs-muted);letter-spacing:.1px;font-family:var(--font-hand, "Excalifont", cursive);text-shadow:none}.ft-bottom__btn{padding:5px;border-radius:6px;color:var(--obs-muted);cursor:pointer;border:none;background:none;transition:background .15s,color .15s}.ft-bottom__btn:hover{color:var(--obs-strong);background:var(--obs-hover)}.ne-panel{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;overflow:hidden;background:var(--bg-primary);position:relative}.ne-scroll{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;position:relative}.ne-scroll::-webkit-scrollbar{width:7px}.ne-scroll::-webkit-scrollbar-track{background:transparent}.ne-scroll::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--obs-muted) 58%,transparent);border-radius:999px;border:2px solid transparent;background-clip:content-box}.ne-scroll::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--obs-muted) 82%,transparent);background-clip:content-box}.ne-panel::-webkit-scrollbar{width:7px}.ne-panel::-webkit-scrollbar-track{background:transparent}.ne-panel::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--obs-muted) 58%,transparent);border-radius:999px;border:2px solid transparent;background-clip:content-box}.ne-panel::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--obs-muted) 82%,transparent);background-clip:content-box}.ne-panel--fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;width:100vw;height:100vh;background:var(--bg-primary)}.ne-top-actions{position:absolute;top:10px;right:16px;z-index:60;display:flex;gap:6px}.ne-action-btn{background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;padding:6px;cursor:pointer;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;opacity:.5;transition:opacity .15s,background .15s}.ne-action-btn:hover{opacity:1;background:var(--bg-tertiary)}.ne-action-btn--active{opacity:1;background:var(--accent, #6366f1);color:#fff;border-color:var(--accent, #6366f1)}.ne-panel--fullscreen .ne-top-actions{top:12px;right:20px}.ne-fullscreen-btn{position:absolute;top:10px;right:16px;z-index:60;background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;padding:6px;cursor:pointer;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;opacity:.5;transition:opacity .15s,background .15s}.ne-fullscreen-btn:hover{opacity:1;background:var(--bg-tertiary)}.ne-panel--fullscreen .ne-fullscreen-btn{top:12px;right:20px}.ne-cover{width:100%;height:180px;background-size:cover;background-position:center;position:relative;flex-shrink:0}.ne-cover:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(transparent 40%,var(--bg-primary))}.ne-cover__change,.ne-cover__remove{position:absolute;top:10px;z-index:2;font-size:11px;padding:4px 10px;border-radius:4px;cursor:pointer;border:none;background:#00000080;color:#fff;opacity:0;transition:opacity .15s}.ne-cover__change{right:90px}.ne-cover__remove{right:10px}.ne-cover:hover .ne-cover__change,.ne-cover:hover .ne-cover__remove{opacity:1}.ne-add-cover{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-hand, "Excalifont", cursive);font-size:12px;color:var(--text-tertiary);cursor:pointer;padding:4px 0;opacity:0;transition:opacity .15s;letter-spacing:.02em}.ne-title-row:hover .ne-add-cover{opacity:1}.ne-title-row{padding:20px 48px 0}.ne-title{width:100%;border:none;background:none;outline:none;font-family:var(--font-hand, "Excalifont", cursive);font-size:34px;font-weight:700;line-height:1.28;color:var(--text-primary);letter-spacing:.03em;caret-color:var(--brand-purple, #6965db)}.ne-title::placeholder{color:var(--text-tertiary);font-weight:500;font-style:italic;letter-spacing:.04em}.ne-tagbar{display:flex;align-items:center;gap:7px;padding:8px 48px 6px;flex-wrap:wrap}.ne-tagbar__tag{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-hand, "Excalifont", cursive);font-size:12px;font-weight:650;padding:3px 10px 4px;letter-spacing:.02em;color:var(--brand-purple, #6965db);background:color-mix(in srgb,var(--brand-purple, #6965db) 9%,transparent);border:2px solid color-mix(in srgb,var(--brand-purple, #6965db) 45%,transparent);border-radius:46% 54% 50% 50%/50% 45% 55% 50%;transform:rotate(-1.2deg);transition:background .15s,transform .15s}.ne-tagbar__tag:nth-child(2n){transform:rotate(1.4deg);border-radius:52% 48% 46% 54%/48% 52%}.ne-tagbar__tag:nth-child(3n){transform:rotate(-.6deg);border-radius:48% 52% 54% 46%/46% 48% 52% 54%}.ne-tagbar__tag:hover{background:color-mix(in srgb,var(--brand-purple, #6965db) 14%,transparent)}.ne-tagbar__tag button{font-family:var(--font-hand, "Excalifont", cursive);font-size:14px;cursor:pointer;color:inherit;opacity:.45;border:none;background:none;padding:0;line-height:1}.ne-tagbar__tag button:hover{opacity:1}.ne-tagbar__input{flex:1;min-width:80px;border:none;background:none;outline:none;font-family:var(--font-hand, "Excalifont", cursive);font-size:12px;font-weight:500;letter-spacing:.03em;color:var(--text-secondary)}.ne-tagbar__input::placeholder{color:var(--text-tertiary);font-style:italic}.ne-body{flex:0 0 auto;overflow:visible;position:relative;isolation:isolate}.ne-preview-scroll{width:100%}.ne-preview__cover{width:calc(100% - 96px);max-width:720px;height:180px;margin:0 auto 16px;background-size:cover;background-position:center;border-radius:10px;border:2px solid color-mix(in srgb,var(--brand-purple, #6965db) 30%,transparent)}.ne-preview__title,.ne-preview__tags{max-width:720px;margin-left:auto;margin-right:auto;padding:0 48px}.ne-preview--embedded .sn-content{padding-top:0}.ne-body__stage,.ne-tiptap{width:100%}.ne-tiptap .tiptap{padding:8px 48px 60px;outline:none;min-height:300px;font-family:var(--font-hand, "Excalifont", cursive);font-size:15px;line-height:1.65;letter-spacing:.02em;caret-color:var(--accent-secondary)}.ne-tiptap .tiptap>*+*{margin-top:0}.ne-tiptap .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;height:0;color:var(--text-tertiary);pointer-events:none;font-style:italic}.bubble-menu{display:flex;align-items:center;gap:1px;padding:4px;background:var(--bg-elevated);border:1px solid var(--border-light);border-radius:8px;box-shadow:0 8px 30px #0000004d}.bubble-menu button{padding:5px 8px;border:none;background:none;cursor:pointer;border-radius:4px;color:var(--text-secondary);font-size:13px;font-family:var(--font-hand, "Excalifont", cursive);display:flex;align-items:center;justify-content:center;min-width:28px;transition:all 80ms}.bubble-menu button strong{color:inherit;font-weight:700}.bubble-menu button em{font-style:italic}.bubble-menu button u{text-decoration:none;border-bottom:2px wavy var(--brand-purple, #6965db)}.bubble-menu button:hover{background:var(--bg-hover);color:var(--text-primary)}.bubble-menu button.is-active{background:#6366f126;color:var(--accent-secondary)}.slash-menu-wrapper{position:absolute;z-index:100}.slash-menu{background:var(--bg-elevated);border:1px solid var(--border-light);border-radius:10px;padding:6px;min-width:260px;max-height:340px;overflow-y:auto;box-shadow:0 12px 40px #00000059}.slash-menu::-webkit-scrollbar{width:4px}.slash-menu::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}.slash-menu__item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;cursor:pointer;border:none;background:none;width:100%;text-align:left;transition:background 80ms}.slash-menu__item:hover,.slash-menu__item--active{background:var(--bg-hover)}.slash-menu__icon{width:36px;height:36px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:600;flex-shrink:0;background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border)}.slash-menu__text{display:flex;flex-direction:column;gap:1px;min-width:0}.slash-menu__title{font-size:13px;font-weight:500;color:var(--text-primary)}.slash-menu__desc{font-size:11px;color:var(--text-tertiary)}.ne-status{display:flex;align-items:center;gap:14px;padding:4px 20px;border-top:1px solid var(--border);font-size:11px;color:var(--text-tertiary);background:var(--bg-secondary);flex-shrink:0;z-index:10}@media (max-width: 700px){.ft-sidebar{width:250px;min-width:250px}.ne-title-row{padding:16px 20px 0}.ne-title{font-size:28px}.ne-tagbar{padding:6px 20px 4px}.ne-preview__title,.ne-preview__tags{padding:0 20px}.ne-preview__cover{width:calc(100% - 40px)}.ne-tiptap .tiptap{padding:8px 20px 60px}}.dc-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--brand-purple, #6965db);padding:8px}.dc-spinner--inline{flex-direction:row;gap:10px;padding:0}.dc-spinner__svg{animation:dcSpinWhole 6s linear infinite}.dc-spinner__arc{transform-origin:24px 24px;animation:dcSpinArc 1s cubic-bezier(.4,0,.2,1) infinite}.dc-spinner__slash{transform-origin:24px 24px;animation:dcSpinSlashPulse 1.2s ease-in-out infinite}.dc-spinner__label{font-family:var(--font-hand, "Excalifont", cursive);font-size:13px;color:var(--text-secondary);letter-spacing:.2px}@keyframes dcSpinArc{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes dcSpinWhole{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes dcSpinSlashPulse{0%,to{opacity:.5}50%{opacity:1}}.dc-catalog--drawcode .dc-catalog__eyebrow{font-family:var(--font-hand, "Excalifont", cursive);color:var(--brand-purple, #6965db);letter-spacing:.4px;font-size:12px;margin:0 0 4px}.dc-catalog--drawcode .dc-catalog__title{font-family:var(--font-hand, "Excalifont", cursive);font-size:clamp(24px,3vw,34px);font-weight:700;line-height:1.1;margin:0 0 6px}.dc-catalog--drawcode .dc-catalog__desc{font-family:var(--font-hand, "Excalifont", cursive);font-size:14px;max-width:640px;color:var(--text-secondary);line-height:1.5}.dc-catalog--drawcode .dc-search-wrap{border:1.5px solid var(--border-light, rgba(0,0,0,.12));border-radius:999px;padding:0 12px 0 36px;height:36px;background:var(--bg-secondary);box-shadow:none;transition:border-color .25s ease,box-shadow .25s ease}.dc-catalog--drawcode .dc-search-wrap:focus-within{border-color:var(--brand-purple, #6965db);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-purple, #6965db) 12%,transparent)}.dc-catalog--drawcode .dc-search-wrap__icon{left:12px;color:var(--text-tertiary);opacity:.7}.dc-catalog--drawcode .dc-search-wrap:focus-within .dc-search-wrap__icon{color:var(--brand-purple, #6965db);opacity:1}.dc-catalog--drawcode .dc-search-input{border:none;background:transparent;padding:0;font-family:var(--font-hand, "Excalifont", cursive);font-size:13px;height:100%;width:100%;outline:none}.dc-catalog--drawcode .dc-search-input:focus{box-shadow:none}.dc-catalog--drawcode .dc-search-input::placeholder{color:var(--text-tertiary);font-family:var(--font-hand, "Excalifont", cursive);opacity:.65}.dc-catalog--drawcode .dc-catalog__count{font-family:var(--font-hand, "Excalifont", cursive);color:var(--text-secondary);margin-left:12px;font-size:12px;background:transparent;padding:0;border:none;white-space:nowrap}.dc-catalog--drawcode .dc-tag-pill{border:1.5px solid var(--border-light, rgba(0,0,0,.12));border-radius:999px;padding:4px 12px;font-family:var(--font-hand, "Excalifont", cursive);font-size:12px;background:var(--bg-secondary);transition:border-color .18s,color .18s,background .18s,transform .18s}.dc-catalog--drawcode .dc-tag-pill:hover{border-color:var(--brand-purple, #6965db);color:var(--brand-purple, #6965db);transform:translateY(-1px)}.dc-catalog--drawcode .dc-tag-pill--active{background:color-mix(in srgb,var(--brand-purple, #6965db) 16%,transparent);border-color:var(--brand-purple, #6965db);color:var(--brand-purple, #6965db)}.dc-catalog--drawcode .dc-tag-pill--active:hover{background:color-mix(in srgb,var(--brand-purple, #6965db) 22%,transparent);opacity:1}.dc-catalog--drawcode .dc-tag-pill__count{font-family:var(--font-ui, "Inter", sans-serif);background:color-mix(in srgb,var(--brand-purple, #6965db) 14%,transparent);color:var(--brand-purple, #6965db);font-weight:700;font-size:11px}.dc-catalog--drawcode .dc-tag-pill--active .dc-tag-pill__count{background:var(--brand-purple, #6965db);color:#fff}.dc-catalog--drawcode .dc-tag-cloud__toggle{border:1.5px dashed color-mix(in srgb,var(--brand-purple, #6965db) 45%,transparent);color:var(--brand-purple, #6965db);font-family:var(--font-hand, "Excalifont", cursive)}.dc-catalog--drawcode .dc-algo-card{border:1.5px solid var(--border-light, rgba(0,0,0,.12));border-radius:14px;background:var(--bg-secondary);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;padding:16px;position:relative;overflow:hidden;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.dc-catalog--drawcode .dc-algo-card:before{display:none}.dc-catalog--drawcode .dc-algo-card:hover{transform:translateY(-3px);border-color:var(--brand-purple, #6965db);box-shadow:0 12px 24px -12px color-mix(in srgb,var(--brand-purple, #6965db) 30%,transparent)}.dc-catalog--drawcode .dc-algo-card__top{gap:8px;margin-bottom:8px}.dc-catalog--drawcode .dc-algo-card__title{font-family:var(--font-hand, "Excalifont", cursive);font-size:15px;letter-spacing:.1px}.dc-catalog--drawcode .dc-algo-card__cat{font-family:var(--font-hand, "Excalifont", cursive);color:var(--brand-purple, #6965db);font-size:11px;opacity:.85}.dc-catalog--drawcode .dc-algo-card__desc{font-family:var(--font-hand, "Excalifont", cursive);font-size:12px;line-height:1.55;margin-bottom:8px}.dc-catalog--drawcode .dc-algo-card__icon{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:color-mix(in srgb,var(--brand-purple, #6965db) 12%,transparent);border:1.5px solid color-mix(in srgb,var(--brand-purple, #6965db) 25%,transparent);font-size:18px;flex-shrink:0}.dc-catalog--drawcode .dc-badge{font-family:var(--font-hand, "Excalifont", cursive);border-radius:999px;padding:2px 8px;font-size:10px;letter-spacing:.3px;border:1.5px solid rgba(255,255,255,.35)}.dc-catalog--drawcode .dc-algo-tag{font-family:var(--font-hand, "Excalifont", cursive);background:color-mix(in srgb,var(--brand-purple, #6965db) 10%,transparent);color:var(--brand-purple, #6965db);border:1px solid color-mix(in srgb,var(--brand-purple, #6965db) 25%,transparent);padding:2px 8px;font-size:10px}.dc-catalog__loading{display:flex;justify-content:center;align-items:center;padding:32px 0 20px}.dc-card-grid[aria-busy=true]{pointer-events:none}.dc-catalog--drawcode .dc-algo-card--skeleton{min-height:158px;border-style:dashed;border-color:color-mix(in srgb,var(--brand-purple, #6965db) 22%,var(--border-light))}.dc-catalog--drawcode .dc-algo-card--skeleton:hover{transform:none;box-shadow:none}.dc-catalog--drawcode .dc-algo-card--skeleton:nth-child(3n+2) .dc-skeleton{animation-delay:-.35s}.dc-catalog--drawcode .dc-algo-card--skeleton:nth-child(3n) .dc-skeleton{animation-delay:-.7s}.dc-catalog--drawcode .dc-pagination__btn{font-family:var(--font-hand, "Excalifont", cursive);border:1.8px solid var(--border-light);border-radius:999px;padding:8px 18px;background:var(--bg-secondary);color:var(--text-primary);transition:border-color .2s,color .2s,transform .15s}.dc-catalog--drawcode .dc-pagination__btn:not(:disabled):hover{border-color:var(--brand-purple, #6965db);color:var(--brand-purple, #6965db);transform:translateY(-1px)}.dc-catalog--drawcode .dc-pagination__info{font-family:var(--font-hand, "Excalifont", cursive);color:var(--text-secondary)}[data-theme=dark] .dc-catalog--drawcode .dc-algo-card,[data-theme=dark] .dc-catalog--drawcode .dc-search-wrap,[data-theme=dark] .dc-catalog--drawcode .dc-tag-pill{background:var(--bg-elevated);border-color:#ffffff1a}.dc-catalog--problems .dc-problem-list{border:1.5px solid var(--border-light, rgba(0,0,0,.12));border-radius:14px;overflow:hidden}.dc-catalog--problems .dc-problem-list__header{font-family:var(--font-hand, "Excalifont", cursive);padding:8px 12px 8px 14px;gap:0}.dc-catalog--problems .dc-problem-list__col--status{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-tertiary)}.dc-catalog--problems .dc-problem-list__header--sortable{min-height:unset}.dc-problem-sort-head{display:inline-flex;align-items:center;gap:4px;border:none;background:none;cursor:pointer;padding:0;margin:0;font-family:inherit;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-tertiary);transition:color .15s;border-radius:0;line-height:1}.dc-problem-sort-head:hover,.dc-problem-sort-head--active{color:var(--text-secondary)}.dc-problem-sort-head--right{justify-content:flex-end}.dc-problem-sort-head__label{pointer-events:none}.dc-problem-sort-head__chev{flex-shrink:0;display:block;color:var(--text-tertiary);opacity:.85}.dc-problem-sort-head--active .dc-problem-sort-head__chev{color:var(--text-secondary);opacity:1}.dc-problem-sort-head--num{width:40px;flex-shrink:0;justify-content:flex-start}.dc-problem-sort-head--title{flex:1;min-width:0;justify-content:flex-start}.dc-problem-sort-head--cat{width:108px;flex-shrink:0;justify-content:flex-start}.dc-problem-list__col--status,.dc-problem-sort-head--status{width:96px;flex-shrink:0}.dc-problem-sort-head--diff{width:92px;flex-shrink:0;justify-content:flex-end}.dc-catalog--problems .dc-problem-row__title{font-family:var(--font-hand, "Excalifont", cursive);font-size:14px;letter-spacing:.05px}.dc-problems-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin-bottom:16px}.dc-problems-toolbar__diff{flex:1;min-width:0}.dc-problems-toolbar__clear{margin-left:auto}.dc-catalog--problems .dc-tag-pill--diff.dc-tag-pill--easy.dc-tag-pill--active{background:color-mix(in srgb,var(--accent) 16%,transparent);border-color:var(--accent);color:var(--accent)}.dc-catalog--problems .dc-tag-pill--diff.dc-tag-pill--medium.dc-tag-pill--active{background:color-mix(in srgb,var(--accent-warm) 16%,transparent);border-color:var(--accent-warm);color:var(--accent-warm)}.dc-catalog--problems .dc-tag-pill--diff.dc-tag-pill--hard.dc-tag-pill--active{background:color-mix(in srgb,var(--danger) 14%,transparent);border-color:var(--danger);color:var(--danger)}.dc-catalog--problems .dc-tag-pill--pyspark.dc-tag-pill--active{background:color-mix(in srgb,#d97706 14%,transparent);border-color:#d97706;color:#d97706}.dc-catalog--problems .dc-tag-pill--pyspark.dc-tag-pill--active .dc-tag-pill__count{background:#d97706;color:#fff}.dc-catalog--problems .dc-tag-pill--sql.dc-tag-pill--active{background:color-mix(in srgb,#0d9488 14%,transparent);border-color:#0d9488;color:#0d9488}.dc-catalog--problems .dc-tag-pill--sql.dc-tag-pill--active .dc-tag-pill__count{background:#0d9488;color:#fff}.dc-catalog--problems .dc-tag-pill--dsa.dc-tag-pill--active{background:color-mix(in srgb,#2563eb 14%,transparent);border-color:#2563eb;color:#2563eb}.dc-catalog--problems .dc-tag-pill--dsa.dc-tag-pill--active .dc-tag-pill__count{background:#2563eb;color:#fff}.dc-problems-page{display:flex;flex-direction:column;gap:0;max-width:1400px;margin:0 auto;padding:24px clamp(16px,3vw,36px) 48px}.dc-problems-page__body{display:flex;align-items:flex-start;gap:clamp(20px,2.5vw,32px)}.dc-problems-page__main{flex:1;min-width:0}.dc-problems-profile{width:340px;flex-shrink:0;position:sticky;top:16px;display:flex;flex-direction:column;gap:14px}@media (min-width: 769px){.dc-problems-profile--highlights,.dc-problems-profile--details{display:none!important}.dc-problems-profile--full{display:flex}}.dc-problems-profile--flat{gap:12px}.dc-problems-profile--flat .dc-profile-streak,.dc-problems-profile--flat .dc-profile-activity,.dc-problems-profile--flat .dc-profile-daily,.dc-problems-profile--flat .dc-problems-profile__block,.dc-problems-profile--flat .dc-problems-profile__status-item{border:none;box-shadow:none;background:transparent}.dc-problems-profile--flat .dc-profile-streak{padding:0}.dc-problems-profile--flat .dc-profile-activity{padding:0;margin:0;border-top:none}.dc-problems-profile--flat .dc-profile-daily{border:none;box-shadow:none;background:transparent;border-radius:0}.dc-problems-profile--flat .dc-profile-daily__ribbon{border-bottom:none;padding-left:0;padding-right:0}.dc-problems-profile--flat .dc-profile-daily__body{padding-left:0;padding-right:0}.dc-problems-profile--flat .dc-profile-daily__body:hover{background:transparent}.dc-problems-profile--flat .dc-profile-daily__hint{padding-left:0;padding-right:0}.dc-problems-profile--flat .dc-profile-avatar-dc{filter:none}.dc-problems-profile__block{padding:0}.dc-problems-profile__block-title{margin:0 0 10px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);font-family:var(--font-hand, "Excalifont", cursive)}.dc-problems-profile--flat .dc-profile-calendar{padding:0}.dc-problems-profile--flat .dc-problems-profile__status-grid{gap:6px}.dc-problems-profile--flat .dc-problems-profile__status-item{padding:8px 4px;border-radius:8px;background:color-mix(in srgb,var(--border) 30%,transparent)}.dc-problems-profile__user{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px}.dc-problems-profile__card--wide>.dc-profile-streak{margin:0}.dc-problems-profile__card--wide>.dc-profile-activity{padding:0;border-top:none;margin-top:0}.dc-problems-profile__avatar-wrap{--dc-avatar-size: 96px;--dc-avatar-gap: 5px;position:relative;display:flex;align-items:center;justify-content:center;width:calc(var(--dc-avatar-size) + var(--dc-avatar-gap) * 2);height:calc(var(--dc-avatar-size) + var(--dc-avatar-gap) * 2);margin:0 auto;padding:0;transform:none}.dc-problems-profile__avatar-ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:18px;border:2px dashed color-mix(in srgb,var(--brand-purple, #6965db) calc(var(--dc-profile-pct, 0) * .55 + 22%),transparent);pointer-events:none;opacity:.95;box-sizing:border-box}.dc-profile-avatar-dc{position:relative;z-index:1;flex-shrink:0;transform:rotate(-.4deg);overflow:hidden;border-radius:14px;background:transparent;box-shadow:none;filter:none}.dc-profile-avatar-dc__photo{position:absolute;top:5px;right:5px;bottom:5px;left:5px;border-radius:9px;overflow:hidden;background:linear-gradient(145deg,color-mix(in srgb,var(--brand-purple, #6965db) 18%,var(--bg-secondary)),var(--bg-tertiary));display:flex;align-items:center;justify-content:center;z-index:0}.dc-profile-avatar-dc__photo img{width:100%;height:100%;object-fit:cover;object-position:center 28%;display:block}.dc-profile-avatar-dc__initials{font-family:var(--font-hand, "Excalifont", cursive);font-size:28px;font-weight:700;color:var(--brand-purple, #6965db);line-height:1}.dc-profile-avatar-dc__frame{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;pointer-events:none;display:block;overflow:hidden}.dc-profile-avatar-dc__badge{position:absolute;right:10px;bottom:10px;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:26px;height:20px;padding:0;border-radius:6px;background:linear-gradient(145deg,var(--brand-purple-light, #8b86ff),var(--brand-purple, #6965db));border:1.5px solid color-mix(in srgb,#1a1a1a 50%,transparent);box-shadow:none;transform:none;pointer-events:none}.dc-profile-avatar-dc__badge svg{width:14px;height:10px;display:block}.dc-problems-profile__name{margin:0;font-family:var(--font-hand, "Excalifont", cursive);font-size:18px;font-weight:700;color:var(--text-primary);letter-spacing:.02em;word-break:break-word}.dc-problems-profile__card{border:2px solid color-mix(in srgb,var(--brand-purple, #6965db) 18%,var(--border-light, rgba(0,0,0,.12)));border-radius:14px;background:var(--bg-secondary);overflow:hidden;box-shadow:2px 3px color-mix(in srgb,var(--brand-purple, #6965db) 8%,transparent)}.dc-problems-profile__card-title{margin:0;padding:12px 14px 0;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);font-family:var(--font-hand, "Excalifont", cursive)}.dc-problems-profile__card-body{display:flex;align-items:flex-start;gap:12px;padding:14px}.dc-problems-profile__ring-wrap{position:relative;width:118px;flex-shrink:0}.dc-problems-profile__ring{display:block;width:118px;height:118px}.dc-problems-profile__ring-bg{stroke:color-mix(in srgb,var(--border) 90%,transparent)}.dc-problems-profile__ring-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.dc-problems-profile__ring-ratio{font-family:var(--font-ui, "Inter", sans-serif);font-weight:700;line-height:1.1;color:var(--text-primary)}.dc-problems-profile__ring-solved{font-size:22px}.dc-problems-profile__ring-slash,.dc-problems-profile__ring-total{font-size:14px;color:var(--text-tertiary);font-weight:600}.dc-problems-profile__ring-label{display:inline-flex;align-items:center;gap:3px;margin-top:2px;font-size:11px;font-weight:600;color:#2dd4bf}.dc-problems-profile__attempting{margin:6px 0 0;text-align:center;font-size:11px;color:var(--text-tertiary);font-family:var(--font-hand, "Excalifont", cursive)}.dc-problems-profile__diffs{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px;padding-top:16px}.dc-problems-profile__diff-row{display:flex;flex-direction:column;gap:4px}.dc-problems-profile__diff-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.dc-problems-profile__diff-name{font-size:12px;font-weight:700;font-family:var(--font-hand, "Excalifont", cursive)}.dc-problems-profile__diff-count{font-size:12px;font-weight:600;font-family:var(--font-ui, "Inter", sans-serif)}.dc-problems-profile__diff-total{color:var(--text-tertiary)}.dc-problems-profile__diff-track{height:4px;border-radius:999px;background:color-mix(in srgb,var(--border) 80%,transparent);overflow:hidden}.dc-problems-profile__diff-fill{height:100%;border-radius:999px;transition:width .35s ease}.dc-problems-profile__status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.dc-problems-profile__status-item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;border-radius:10px;border:1.5px solid var(--border-light, rgba(0,0,0,.1));background:var(--bg-secondary)}.dc-problems-profile__status-num{font-size:18px;font-weight:700;font-family:var(--font-ui, "Inter", sans-serif);color:var(--text-tertiary)}.dc-problems-profile__status-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);font-family:var(--font-hand, "Excalifont", cursive)}.dc-problems-profile__status-item--attempted .dc-problems-profile__status-num{color:#6366f1}.dc-problems-profile__status-item--completed .dc-problems-profile__status-num{color:#2dd4bf}@media (max-width: 1024px){.dc-problems-page__body{flex-direction:column}.dc-problems-profile--full{width:100%;position:static;order:-1}.dc-problems-profile__card-body{justify-content:center}}.dc-profile-streak{width:auto;padding:0;border-radius:0;border:none;background:transparent}.dc-profile-streak__main{display:flex;align-items:center;justify-content:center;gap:8px}.dc-profile-streak__meta{margin-top:6px;display:flex;align-items:center;justify-content:center;gap:6px;font-size:11px;color:var(--text-tertiary)}.dc-profile-streak__flame{font-size:22px;line-height:1;filter:drop-shadow(0 1px 2px rgba(251,191,36,.4))}.dc-profile-streak__num{font-size:26px;font-weight:800;font-family:var(--font-hand, "Excalifont", cursive);color:var(--text-primary);line-height:1;margin-right:4px}.dc-profile-streak__label{font-size:13px;font-weight:600;color:var(--text-secondary);font-family:var(--font-hand, "Excalifont", cursive)}.dc-profile-activity--compact .dc-profile-activity__stat-compact{margin:0 0 6px;font-size:10px;color:var(--text-tertiary)}.dc-profile-activity--compact .dc-profile-activity__stat-compact strong{color:var(--text-primary);font-weight:700}.dc-profile-activity--compact .dc-profile-heatmap__cell{width:10px;height:10px}.dc-profile-activity--compact .dc-profile-heatmap__legend{margin-top:6px}.dc-profile-activity--compact .dc-profile-heatmap__legend .dc-profile-heatmap__cell{width:9px;height:9px}.dc-profile-streak__dot{opacity:.5}.dc-profile-daily{border:2px solid color-mix(in srgb,var(--brand-purple, #6965db) 35%,var(--border));border-radius:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--brand-purple, #6965db) 10%,var(--bg-secondary)) 0%,var(--bg-secondary) 60%);overflow:hidden;box-shadow:2px 3px color-mix(in srgb,var(--brand-purple, #6965db) 12%,transparent)}.dc-profile-daily--done{border-color:color-mix(in srgb,#2dd4bf 40%,var(--border));background:linear-gradient(135deg,color-mix(in srgb,#2dd4bf 10%,var(--bg-secondary)) 0%,var(--bg-secondary) 60%)}.dc-profile-daily__ribbon{padding:6px 12px;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--brand-purple, #6965db);font-family:var(--font-hand, "Excalifont", cursive);border-bottom:1px dashed color-mix(in srgb,var(--brand-purple, #6965db) 25%,var(--border))}.dc-profile-daily--done .dc-profile-daily__ribbon{color:#2dd4bf;border-bottom-color:color-mix(in srgb,#2dd4bf 25%,var(--border))}.dc-profile-daily__body{display:flex;align-items:center;gap:10px;width:100%;padding:12px;border:none;background:transparent;cursor:pointer;text-align:left;color:inherit}.dc-profile-daily__body:hover{background:color-mix(in srgb,var(--brand-purple, #6965db) 6%,transparent)}.dc-profile-daily__icon{font-size:22px;line-height:1;flex-shrink:0}.dc-profile-daily__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.dc-profile-daily__title{font-size:14px;font-weight:700;color:var(--text-primary);font-family:var(--font-hand, "Excalifont", cursive);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dc-profile-daily__meta{font-size:11px;color:var(--text-tertiary);font-weight:600}.dc-profile-daily__sep{margin:0 4px;opacity:.5}.dc-profile-daily__action{flex-shrink:0;color:var(--brand-purple, #6965db)}.dc-profile-daily--done .dc-profile-daily__action{color:#2dd4bf}.dc-profile-daily__hint{margin:0;padding:0 12px 10px;font-size:10px;color:var(--text-tertiary);font-family:var(--font-hand, "Excalifont", cursive)}.dc-profile-activity__title{margin:0 0 4px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);font-family:var(--font-hand, "Excalifont", cursive)}.dc-problems-profile__section-head{padding:12px 14px 0}.dc-problems-profile__section-title{margin:0;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);font-family:var(--font-hand, "Excalifont", cursive)}.dc-problems-profile__card--wide .dc-profile-calendar{padding-top:8px}.dc-profile-activity{padding:12px 14px 14px}.dc-profile-activity__head{margin-bottom:12px}.dc-profile-activity__stat-main{margin:0 0 6px;font-size:13px;color:var(--text-secondary);line-height:1.4}.dc-profile-activity__stat-main strong{color:var(--text-primary);font-weight:700;font-size:15px}.dc-profile-activity__stat-meta{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:11px;color:var(--text-tertiary)}.dc-profile-heatmap{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px}.dc-profile-heatmap__days{display:flex;flex-direction:column;justify-content:space-between;gap:3px;padding:0 0 18px;flex-shrink:0}.dc-profile-heatmap__day-label{font-size:9px;color:var(--text-tertiary);height:11px;line-height:11px}.dc-profile-heatmap__grid-wrap{flex:1;min-width:0}.dc-profile-heatmap__grid{display:flex;gap:3px}.dc-profile-heatmap__col{display:flex;flex-direction:column;gap:3px}.dc-profile-heatmap__cell{width:12px;height:12px;border-radius:3px;flex-shrink:0;border:1px solid color-mix(in srgb,var(--border) 40%,transparent)}.dc-profile-heatmap__cell--empty{background:transparent;border-color:transparent}.dc-profile-heatmap__cell--l0{background:color-mix(in srgb,var(--border) 55%,var(--bg-tertiary))}.dc-profile-heatmap__cell--l1{background:color-mix(in srgb,var(--brand-purple, #6965db) 28%,var(--bg-tertiary));border-color:color-mix(in srgb,var(--brand-purple, #6965db) 20%,transparent)}.dc-profile-heatmap__cell--l2{background:color-mix(in srgb,var(--brand-purple, #6965db) 58%,var(--bg-tertiary));border-color:color-mix(in srgb,var(--brand-purple, #6965db) 35%,transparent)}.dc-profile-heatmap__cell--l3{background:var(--brand-purple, #6965db);border-color:color-mix(in srgb,var(--brand-purple, #6965db) 80%,#1a1a1a);box-shadow:0 0 0 1px color-mix(in srgb,var(--brand-purple, #6965db) 30%,transparent)}.dc-profile-heatmap__legend{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-top:10px;font-size:9px;color:var(--text-tertiary)}.dc-profile-heatmap__legend .dc-profile-heatmap__cell{width:11px;height:11px}.dc-profile-heatmap__months{display:grid;gap:3px;margin-top:6px;font-size:9px;color:var(--text-tertiary)}.dc-profile-heatmap__month{white-space:nowrap}.dc-profile-calendar{--calendar-cell-size: clamp(28px, 3.2vw, 36px);padding:14px;border:0;border-radius:0;background:transparent}.dc-profile-calendar__head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:10px}.dc-profile-calendar__day-label{display:block;font-size:14px;font-weight:700;color:var(--text-primary);font-family:var(--font-hand, "Excalifont", cursive)}.dc-profile-calendar__day-label:after{content:"";display:block;width:34px;height:3px;margin-top:4px;border-radius:999px;background:linear-gradient(90deg,#6965db 0,#6965db 55%,#f4a261 55%,#f4a261)}.dc-profile-calendar__streak{display:block;font-size:11px;color:#fbbf24;margin-top:2px}.dc-profile-calendar__nav{display:flex;align-items:center;gap:6px;flex-shrink:0}.dc-profile-calendar__nav button{width:24px;height:24px;border:1px solid var(--border-light);border-radius:6px;background:var(--bg-primary);color:var(--text-secondary);cursor:pointer;font-size:16px;line-height:1}.dc-profile-calendar__nav button:hover{border-color:var(--brand-purple, #6965db);color:var(--brand-purple, #6965db)}.dc-profile-calendar__month{font-size:11px;font-weight:600;color:var(--text-secondary);min-width:64px;text-align:center}.dc-profile-calendar__weekdays{display:grid;grid-template-columns:repeat(7,var(--calendar-cell-size));justify-content:space-between;gap:6px;margin-bottom:6px;text-align:center;font-size:10px;font-weight:600;color:var(--text-tertiary)}.dc-profile-calendar__grid{display:grid;grid-template-columns:repeat(7,var(--calendar-cell-size));grid-auto-rows:var(--calendar-cell-size);justify-content:space-between;gap:6px}.dc-profile-calendar__cell{width:var(--calendar-cell-size);height:var(--calendar-cell-size);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;border:1px solid transparent;border-radius:7px;color:var(--text-secondary);box-sizing:border-box}.dc-profile-calendar__cell--pad{visibility:hidden}.dc-profile-calendar__cell--today{border-color:var(--brand-purple, #6965db);background:color-mix(in srgb,var(--brand-purple, #6965db) 88%,#fff);color:#fff;box-shadow:3px 3px color-mix(in srgb,var(--brand-purple, #6965db) 28%,transparent)}.dc-profile-calendar__cell--done{background:color-mix(in srgb,var(--brand-purple, #6965db) 16%,transparent);border-color:color-mix(in srgb,var(--brand-purple, #6965db) 28%,transparent);color:var(--brand-purple, #6965db)}.dc-profile-calendar__cell--done svg{stroke:var(--brand-purple, #6965db)}.dc-profile-calendar--loading{opacity:.65;pointer-events:none}.dc-profile-calendar__cell--missed{color:var(--text-tertiary);border-color:color-mix(in srgb,var(--border-light, #888) 38%,transparent)}.dc-profile-calendar__cell--future{color:var(--text-tertiary);opacity:.45}.dc-profile-calendar__footer{margin-top:10px;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--border) 80%,transparent)}.dc-profile-calendar__footer-stat{font-size:11px;color:var(--text-tertiary)}@media (max-width: 560px){.dc-profile-calendar{--calendar-cell-size: clamp(26px, 10vw, 34px);padding:12px}.dc-profile-calendar__weekdays,.dc-profile-calendar__grid{gap:3px}}.dc-theory-card__tag{display:inline-block;font-family:var(--font-hand, "Excalifont", cursive);font-size:10px;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--card-accent, var(--brand-purple)) 14%,transparent);color:var(--card-accent, var(--brand-purple));margin-bottom:10px;letter-spacing:.3px;border:1px solid color-mix(in srgb,var(--card-accent, var(--brand-purple)) 30%,transparent)}.dc-catalog--drawcode .dc-theory-card:hover{border-color:var(--card-accent, var(--brand-purple, #6965db));box-shadow:0 12px 24px -12px color-mix(in srgb,var(--card-accent, var(--brand-purple)) 30%,transparent)}.dc-canvas-return{position:fixed;right:18px;bottom:18px;z-index:1200;min-height:34px;display:inline-flex;align-items:center;gap:6px;padding:0 11px;border:1px solid var(--border, rgba(255,255,255,.14));border-radius:7px;color:var(--text-primary, #f1f3f5);background:var(--bg-elevated, #232329);box-shadow:0 8px 24px #0000003d;font:600 12px/1 var(--font-hand, inherit);cursor:pointer}.dc-canvas-return:hover{background:var(--bg-hover, #303038)}.dc-canvas-return svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2}@media (max-width: 768px){.obs-app__body{padding-bottom:calc(78px + env(safe-area-inset-bottom))}.ft-sidebar{position:fixed!important;z-index:100;top:52px;bottom:0;left:0;width:min(86vw,340px)!important;max-width:min(86vw,340px)!important;transform:translate(-105%);transition:transform .25s cubic-bezier(.22,1,.36,1);box-shadow:12px 0 30px #0003}.ft-sidebar.ft-sidebar--mobile-open{transform:translate(0)}.dc-catalog,.dc-problems-page{padding:24px 16px calc(92px + env(safe-area-inset-bottom))}.dc-tag-cloud__wrap,.dc-problems-toolbar__diff{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.dc-tag-cloud__wrap::-webkit-scrollbar{display:none}.dc-card-grid,.dc-catalog--wide .dc-card-grid{grid-template-columns:1fr}.dc-problems-page__body{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:16px}.dc-problems-profile--full{display:none!important}.dc-problems-profile--highlights,.dc-problems-profile--details{display:flex!important;flex-direction:column!important;position:static!important;width:100%!important;max-width:100%!important;flex:0 0 auto!important;height:auto!important;overflow:visible!important}.dc-problems-page__main{position:relative;z-index:2;flex:0 0 auto;width:100%;background:var(--bg-primary)}.dc-theory-reader__body{padding-bottom:calc(78px + env(safe-area-inset-bottom))}.dc-theory-sidebar{width:min(86vw,336px)!important;max-width:min(86vw,336px)}.dc-theory-article{padding:20px 16px calc(96px + env(safe-area-inset-bottom))}.obs-app.ce-app .ce-editor-area{min-height:52vh}.obs-app.ce-app .ce-terminal-area{min-height:32vh;max-height:42vh}.obs-app.cv-app .nc-agentbar,.excalidraw-page .nc-agentbar{bottom:calc(78px + env(safe-area-inset-bottom))}.dc-canvas-return{bottom:calc(84px + env(safe-area-inset-bottom))}}
