@charset "UTF-8";.excalidraw .collab-errors-button{width:26px;height:26px;margin-inline-end:1rem;color:var(--color-danger);flex-shrink:0}.excalidraw .collab-errors-button-shake{animation:strong-shake .15s 6}@keyframes strong-shake{0%{transform:rotate(0)}25%{transform:rotate(10deg)}50%{transform:rotate(0)}75%{transform:rotate(-10deg)}to{transform:rotate(0)}}.login-dialog-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.login-dialog-container{background:#fff;padding:2rem;border-radius:12px;width:100%;max-width:400px;box-shadow:0 10px 25px #0003;position:relative}.login-dialog-container h2{margin-top:0;margin-bottom:1.5rem;color:#333;text-align:center}.login-close-btn{position:absolute;top:.75rem;right:.75rem;background:none;border:none;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:6px;color:#666;transition:background-color .2s,color .2s}.login-close-btn:hover{background-color:#00000014;color:#333}.login-close-btn svg{width:20px;height:20px}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-size:.9rem;color:#666;font-weight:500}.login-input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem;transition:border-color .2s;box-sizing:border-box}.login-input:focus{outline:none;border-color:#6965db;box-shadow:0 0 0 3px #6965db1a}.login-input-wrapper{position:relative}.login-input-wrapper .login-input{padding-right:2.5rem}.login-password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;font-size:1.1rem;padding:4px;line-height:1;opacity:.6}.login-password-toggle:hover{opacity:1}.login-submit-btn{width:100%;padding:.75rem;background-color:#6965db;color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;margin-top:1rem;transition:background-color .2s}.login-submit-btn:hover{background-color:#5b57d1}.login-submit-btn:disabled{background-color:#a5a3e6;cursor:not-allowed}.login-error{background-color:#fee2e2;color:#dc2626;padding:.75rem;border-radius:6px;margin-bottom:1rem;font-size:.9rem;text-align:center}.login-footer{margin-top:1.25rem;text-align:center;font-size:.85rem;color:#888}.login-footer__row{display:flex;justify-content:center;align-items:center;gap:6px;flex-wrap:wrap}.login-footer__col{display:flex;flex-direction:column;align-items:center;gap:8px}.login-footer__dot{color:#ccc}.login-footer__link{background:none;border:none;color:#6965db;font-weight:500;cursor:pointer;padding:0;font-size:inherit}.login-footer__link:hover{text-decoration:underline}.login-footer__link--subtle{color:#aaa;font-weight:400;font-size:.8rem}.login-footer__link--subtle:hover{color:#6965db}:root[theme=dark] .login-dialog-container{background:#232329}:root[theme=dark] .login-dialog-container h2{color:#fff}:root[theme=dark] .login-input{background:#2c2c35;border-color:#3e3e46;color:#fff}:root[theme=dark] .form-group label{color:#a0a0a0}:root[theme=dark] .login-close-btn{color:#a0a0a0}:root[theme=dark] .login-close-btn:hover{background-color:#ffffff1a;color:#fff}:root[theme=dark] .login-footer{color:#a0a0a0}.password-strength{display:flex;align-items:center;gap:8px;margin-top:4px}.password-strength__bar{height:4px;border-radius:2px;transition:width .3s ease,background .3s ease;min-width:0}.login-input--code{letter-spacing:8px;font-size:24px!important;text-align:center;font-weight:600}.login-hint{font-size:13px;color:#888;margin-bottom:12px}.login-success{background:#f0fdf4!important;color:#16a34a!important;border-color:#bbf7d0!important}.login-divider{display:flex;align-items:center;margin:16px 0;gap:12px;color:#bbb;font-size:13px}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:#e5e5e5}.excalidraw .ShareDialog{display:flex;flex-direction:column;gap:1.5rem}.excalidraw--mobile.excalidraw .ShareDialog{height:calc(100vh - 5rem)}.excalidraw .ShareDialog__separator{border-top:1px solid var(--dialog-border-color);text-align:center;display:flex;justify-content:center;align-items:center;margin-top:1em}.excalidraw .ShareDialog__separator span{background:var(--island-bg-color);padding:0px .75rem;transform:translateY(-1ch);display:inline-flex;line-height:1}.excalidraw .ShareDialog__popover{box-sizing:border-box;z-index:100;display:flex;flex-direction:row;justify-content:center;align-items:flex-start;padding:.125rem .5rem;gap:.125rem;height:1.125rem;border:none;border-radius:.6875rem;font-family:Assistant;font-style:normal;font-weight:600;font-size:.75rem;line-height:110%;background:var(--color-success);color:var(--color-success-text);transform-origin:var(--radix-popover-content-transform-origin);animation:ShareDialog__popover__scaleIn .15s ease-out}@keyframes ShareDialog__popover__scaleIn{0%{opacity:0}to{opacity:1}}.excalidraw .ShareDialog__popover>svg{width:.875rem;height:.875rem}.excalidraw .ShareDialog__picker{font-family:Assistant}.excalidraw .ShareDialog__picker__illustration{display:flex;width:100%;align-items:center;justify-content:center}.excalidraw .ShareDialog__picker__illustration svg{filter:var(--theme-filter)}.excalidraw .ShareDialog__picker__header{display:flex;width:100%;align-items:center;justify-content:center;font-weight:700;font-size:1.3125rem;line-height:130%;color:var(--color-primary)}.excalidraw .ShareDialog__picker__description{font-weight:400;font-size:.875rem;line-height:150%;text-align:center;color:var(--text-primary-color)}.excalidraw .ShareDialog__picker__description strong{display:block;font-weight:700}.excalidraw .ShareDialog__picker__button{display:flex;align-items:center;justify-content:center}.excalidraw .ShareDialog__active__share{display:none!important}.excalidraw--mobile.excalidraw .ShareDialog__active__share{display:flex!important}.excalidraw .ShareDialog__active__header{margin:0}.excalidraw .ShareDialog__active__linkRow{display:flex;flex-direction:row;align-items:flex-end;gap:.75rem}.excalidraw .ShareDialog__active__qrcode{display:flex;justify-content:center;align-items:center;align-self:center;padding:1rem;background:#fff;border-radius:.5rem;border:1px solid #e0e0e0;width:150px;height:150px}.excalidraw .ShareDialog__active__qrcode svg{width:150px;height:150px}.excalidraw .ShareDialog__active__qrcode--loading{background:var(--island-bg-color);border:1px solid var(--dialog-border-color)}.excalidraw .ShareDialog__active__description{border-top:1px solid var(--color-gray-20);padding:.5rem .5rem 0;font-weight:400;font-size:.75rem;line-height:150%}.excalidraw .ShareDialog__active__description p{margin:0}.excalidraw .ShareDialog__active__description p+p{margin-top:1em}.excalidraw .ShareDialog__active__videoSection{border-top:1px solid var(--color-gray-20);padding-top:1rem;margin-top:.5rem}.excalidraw .ShareDialog__active__videoHeader{font-size:.875rem;font-weight:600;margin:0 0 .75rem;color:var(--text-primary-color)}.excalidraw .ShareDialog__active__videoRow{display:flex;justify-content:space-between;align-items:center;background:var(--island-bg-color);padding:.75rem;border-radius:.5rem;border:1px solid var(--button-inactive-border-color)}.excalidraw .ShareDialog__active__videoInfo{display:flex;flex-direction:column;gap:.25rem}.excalidraw .ShareDialog__active__videoInfo .status{font-weight:610;font-size:.8rem;color:var(--color-primary)}.excalidraw .ShareDialog__active__videoInfo .count{font-size:.75rem;color:var(--text-primary-color);opacity:.7}.excalidraw .ShareDialog__active__error{margin-top:.5rem;font-size:.75rem;color:var(--color-danger)}.excalidraw .ShareDialog__active__actions{display:flex;justify-content:center}.recording-config-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:3000;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.recording-config-dialog{background:#fff;width:440px;border-radius:20px;box-shadow:0 20px 50px #0003;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .3s cubic-bezier(.16,1,.3,1)}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.dialog-header{padding:24px 30px;background:#fcfcfc;border-bottom:1px solid #f0f0f0}.dialog-header h2{margin:0;font-size:1.25rem;color:#1a1a1a;font-weight:700}.dialog-header p{margin:4px 0 0;font-size:.875rem;color:#666}.dialog-body{padding:30px;display:flex;flex-direction:column;gap:25px}.preview-section{display:flex;justify-content:center;padding:10px 0}.video-preview-container{width:140px;height:140px;background:#1a1a1a;overflow:hidden;box-shadow:0 8px 24px #0000001a;display:flex;align-items:center;justify-content:center;border:4px solid #fff;transition:all .3s cubic-bezier(.16,1,.3,1)}.video-preview-container.circle{border-radius:50%}.video-preview-container.rounded-square{border-radius:24px}.video-preview-container.disabled{background:#f5f5f5;border-color:#f0f0f0}.video-preview-container video{width:100%;height:100%;object-fit:cover}.video-preview-container .camera-off-placeholder{display:flex;flex-direction:column;align-items:center;color:#999;font-size:.75rem;gap:8px}.video-preview-container .camera-off-placeholder .camera-icon-off{display:block;width:32px;height:32px;border:2px solid currentColor;border-radius:6px;position:relative}.video-preview-container .camera-off-placeholder .camera-icon-off:after{content:"";position:absolute;top:50%;left:-4px;right:-4px;height:2px;background:currentColor;transform:rotate(45deg)}.controls-section{display:flex;flex-direction:column;gap:20px}.control-group{display:flex;flex-direction:column;gap:12px}.control-group .group-title{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#999;font-weight:600}.switch-label{display:flex;align-items:center;justify-content:space-between;cursor:pointer;position:relative}.switch-label .label-text{display:flex;flex-direction:column}.switch-label .label-text .title{font-size:.9375rem;font-weight:600;color:#1a1a1a}.switch-label .label-text .desc{font-size:.8125rem;color:#666;margin-top:2px}.switch-label input{opacity:0;width:0;height:0}.switch-label input:checked+.slider{background-color:#6965db}.switch-label input:checked+.slider:before{transform:translate(20px)}.switch-label .slider{width:44px;height:24px;background-color:#e0e0e0;border-radius:24px;position:relative;transition:.3s}.switch-label .slider:before{content:"";position:absolute;height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;border-radius:50%;transition:.3s;box-shadow:0 2px 4px #0000001a}.shape-selector{display:grid;grid-template-columns:1fr 1fr;gap:12px}.shape-selector .shape-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px;border:2px solid #f0f0f0;background:#fff;border-radius:12px;cursor:pointer;transition:all .2s;font-size:.875rem;color:#444;font-weight:500}.shape-selector .shape-btn:hover{background:#fcfcfc;border-color:#e0e0e0}.shape-selector .shape-btn.active{border-color:#6965db;background:#fafafe;color:#6965db}.shape-selector .shape-btn.active .shape-icon{background:#6965db}.shape-selector .shape-btn .shape-icon{width:16px;height:16px;background:#ccc;transition:all .2s}.shape-selector .shape-btn .shape-icon.circle{border-radius:50%}.shape-selector .shape-btn .shape-icon.rounded-square{border-radius:4px}.system-recording-guide{display:flex;flex-direction:column;gap:20px}.system-recording-guide .guide-section{display:flex;flex-direction:column;gap:8px}.system-recording-guide .guide-title{font-size:.875rem;font-weight:600;color:#1a1a1a}.system-recording-guide .guide-steps{margin:0;padding-left:20px;font-size:.8125rem;color:#444;line-height:1.8}.system-recording-guide .guide-steps li{padding-left:4px}.recording-playlist{border-top:1px solid #f0f0f0;padding-top:20px}.recording-playlist__header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0;margin-bottom:0;background:none;border:none;cursor:pointer;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#999;font-weight:600;font-family:inherit}.recording-playlist__header:hover{color:#666}.recording-playlist__chevron{transition:transform .2s}.recording-playlist__chevron.open{transform:rotate(180deg)}.recording-playlist__empty{font-size:.8125rem;color:#999;text-align:center;padding:12px 0;margin-top:8px}.recording-playlist__list{display:flex;flex-direction:column;gap:6px;max-height:200px;overflow-y:auto;margin-top:10px}.recording-playlist__item{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:8px;background:#f9f9fb;transition:background .15s}.recording-playlist__item:hover{background:#f0f0f5}.recording-playlist__info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.recording-playlist__title{font-size:.8125rem;font-weight:500;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recording-playlist__meta{font-size:.7rem;color:#999}.recording-playlist__actions{display:flex;gap:6px;flex-shrink:0;margin-left:10px}.recording-playlist__play,.recording-playlist__delete{padding:4px 10px;border-radius:6px;border:none;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .15s}.recording-playlist__play{background:#6965db;color:#fff}.recording-playlist__play:hover{background:#5a56c0}.recording-playlist__delete{background:#e53e3e1a;color:#e53e3e}.recording-playlist__delete:hover{background:#e53e3e33}.recording-video-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:3100}.recording-video-container{display:flex;flex-direction:column;align-items:center;gap:12px}.recording-video-container video{max-width:80vw;max-height:70vh;border-radius:12px;box-shadow:0 10px 30px #0006}.recording-video-close{padding:8px 24px;border-radius:8px;border:none;background:#ffffff26;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s}.recording-video-close:hover{background:#ffffff40}.recording-config-dialog{max-height:90vh;overflow-y:auto}.dialog-footer{padding:24px 30px;background:#fcfcfc;border-top:1px solid #f0f0f0;display:grid;grid-template-columns:1fr 1.5fr;gap:15px}.dialog-footer button{padding:12px;border-radius:12px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s}.dialog-footer .secondary-btn{background:#fff;border:1px solid #e0e0e0;color:#666}.dialog-footer .secondary-btn:hover{background:#f5f5f5;color:#333}.dialog-footer .primary-btn{background:#6965db;border:none;color:#fff;box-shadow:0 4px 12px #6965db4d}.dialog-footer .primary-btn:hover{background:#5a56c0;transform:translateY(-1px);box-shadow:0 6px 16px #6965db66}.dialog-footer .primary-btn:active{transform:translateY(0)}.recording-container{display:flex;align-items:center;gap:8px;pointer-events:auto;margin-right:10px}.recording-container .recording-timer{font-family:Inter,system-ui,sans-serif;font-size:14px;font-weight:600;color:#e03131;background:#ffebebcc;padding:2px 8px;border-radius:4px;animation:blink 1s infinite}.recording-container .recording-button{width:36px;height:36px;border-radius:8px;border:1px solid #ced4da;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.recording-container .recording-button:hover{background:#f8f9fa;border-color:#adb5bd}.recording-container .recording-button .recording-icon{width:14px;height:14px;background:#e03131;border-radius:50%;transition:all .2s ease}.recording-container .recording-button.is-recording{background:#fff5f5;border-color:#ffa8a8}.recording-container .recording-button.is-recording .recording-icon{border-radius:2px;transform:scale(.8);animation:pulse 1.5s infinite}.recording-stop-fab{position:fixed;top:var(--editor-container-padding, 16px);right:calc(var(--editor-container-padding, 16px) + var(--lg-button-size, 40px) + 8px);z-index:3000;display:inline-flex;align-items:center;gap:8px;border:1px solid #ffa8a8;border-radius:999px;background:#fff5f5;color:#c92a2a;font-size:13px;font-weight:600;padding:8px 12px;cursor:pointer;box-shadow:0 6px 18px #0000002e}.recording-stop-fab:hover{background:#ffe3e3;border-color:#ff8787}.recording-stop-fab__icon{width:10px;height:10px;border-radius:2px;background:#e03131}.recording-stop-fab__label{line-height:1;white-space:nowrap}.recording-stop-fab__timer{line-height:1;padding:2px 6px;border-radius:999px;background:#e031311f;color:#a51111}@media (max-width: 768px){.recording-stop-fab{right:12px}}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}@keyframes pulse{0%{box-shadow:0 0 #e0313166}70%{box-shadow:0 0 0 10px #e0313100}to{box-shadow:0 0 #e0313100}}.live-camera-preview{position:fixed;width:150px;height:150px;overflow:hidden;border:4px solid #fff;box-shadow:0 8px 32px #0003;z-index:2500;background:#000;pointer-events:auto;touch-action:none;display:flex;align-items:center;justify-content:center}.live-camera-preview.circle{border-radius:50%!important}.live-camera-preview.rounded-square{border-radius:24px!important}.live-camera-preview video{width:100%;height:100%;object-fit:cover}.task-panel{--tp-bg: var(--island-bg-color, #fff);--tp-bg-elevated: var(--color-surface-lowest, #fff);--tp-bg-subtle: var(--color-surface-mid, #f6f6f9);--tp-bg-hover: var(--button-hover-bg, rgba(0, 0, 0, .04));--tp-text: var(--text-primary-color, #1b1b1f);--tp-text-secondary: var(--color-on-surface, #64748b);--tp-text-muted: #94a3b8;--tp-border: var(--default-border-color, #e2e8f0);--tp-border-subtle: #f1f5f9;--tp-accent: #6366f1;--tp-accent-soft: rgba(99, 102, 241, .08);--tp-accent-border: rgba(99, 102, 241, .2);--tp-success: #22c55e;--tp-success-soft: rgba(34, 197, 94, .08);--tp-danger: #ef4444;--tp-danger-soft: rgba(239, 68, 68, .06);--tp-warning: #f59e0b;--tp-warning-soft: rgba(245, 158, 11, .08);--tp-radius: 10px;--tp-radius-sm: 7px;--tp-input-bg: var(--color-surface-mid, #f7f7f8);--tp-input-focus-bg: var(--color-surface-lowest, #fff);--tp-shadow-sm: 0 1px 3px rgba(0, 0, 0, .06);--tp-shadow-md: 0 4px 12px rgba(0, 0, 0, .08)}.excalidraw.theme--dark .task-panel{--tp-bg: var(--island-bg-color, #232329);--tp-bg-elevated: var(--color-surface-lowest, #1a1a20);--tp-bg-subtle: var(--color-surface-high, #2e2d39);--tp-bg-hover: rgba(255, 255, 255, .06);--tp-text: var(--text-primary-color, #e2e8f0);--tp-text-secondary: #94a3b8;--tp-text-muted: #64748b;--tp-border: var(--default-border-color, #334155);--tp-border-subtle: #1e293b;--tp-accent: #818cf8;--tp-accent-soft: rgba(129, 140, 248, .12);--tp-accent-border: rgba(129, 140, 248, .25);--tp-success: #4ade80;--tp-success-soft: rgba(74, 222, 128, .1);--tp-danger: #f87171;--tp-danger-soft: rgba(248, 113, 113, .1);--tp-warning: #fbbf24;--tp-warning-soft: rgba(251, 191, 36, .1);--tp-input-bg: var(--color-surface-high, #2e2d39);--tp-input-focus-bg: var(--color-surface-low, #252530);--tp-shadow-sm: 0 1px 3px rgba(0, 0, 0, .2);--tp-shadow-md: 0 4px 12px rgba(0, 0, 0, .3)}.task-panel{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--tp-bg);color:var(--tp-text);font-size:13px;gap:0}.task-notice{position:sticky;top:0;z-index:10;padding:8px 16px;background:var(--tp-accent);color:#fff;font-size:12px;text-align:center;border-radius:0 0 var(--tp-radius) var(--tp-radius);animation:tp-fadeIn .2s ease;font-weight:500;letter-spacing:.01em}@keyframes tp-fadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.task-panel--login{align-items:center;justify-content:center;gap:16px;padding:40px 20px;text-align:center;color:var(--tp-text-secondary)}.task-login-btn{padding:10px 28px;background:var(--tp-accent);color:#fff;border:none;border-radius:var(--tp-radius);cursor:pointer;font-size:13px;font-weight:600;transition:transform .15s,box-shadow .15s}.task-login-btn:hover{transform:translateY(-1px);box-shadow:var(--tp-shadow-md)}.task-section{border-bottom:1px solid var(--tp-border)}.task-section--history{flex-shrink:0}.task-section--editor{flex:1;overflow-y:auto;min-height:0}.task-section-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:10px 16px;background:none;border:none;cursor:pointer;font-size:11px;font-weight:700;color:var(--tp-text-secondary);text-transform:uppercase;letter-spacing:.06em;text-align:start;transition:background .15s}.task-section-toggle:hover{background:var(--tp-bg-hover)}.task-section-toggle>span:first-child{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:10px;transition:transform .2s ease}.task-spinner{display:inline-block;width:12px;height:12px;border:2px solid currentColor;border-inline-end-color:transparent;border-radius:50%;animation:tp-spin .7s linear infinite;margin-inline-start:auto}@keyframes tp-spin{to{transform:rotate(360deg)}}.task-history-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px 16px;color:var(--tp-text-muted);font-size:12px;text-align:center}.task-history-empty-icon{font-size:28px;opacity:.4}.task-history-list{display:flex;flex-direction:column;gap:4px;max-height:400px;overflow-y:auto;padding:4px 8px 8px}.task-history-item{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border-radius:var(--tp-radius);cursor:pointer;transition:background .15s,box-shadow .15s,border-color .15s;background:var(--tp-bg-elevated);border:1px solid var(--tp-border-subtle);border-inline-start-width:3px;border-inline-start-color:transparent}.task-history-item:hover{background:var(--tp-bg-hover);box-shadow:var(--tp-shadow-sm)}.task-history-item--running{border-inline-start-color:var(--tp-accent);background:var(--tp-accent-soft)}.task-history-item--completed{border-inline-start-color:var(--tp-success)}.task-history-item--failed{border-inline-start-color:var(--tp-danger);background:var(--tp-danger-soft)}.task-history-item--cancelled{border-inline-start-color:var(--tp-text-muted)}.task-history-item--pending{border-inline-start-color:var(--tp-warning)}.task-history-item-header{display:flex;align-items:center;gap:8px;min-width:0}.task-history-name{flex:1;font-weight:600;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.task-history-tags{display:flex;gap:4px;flex-shrink:0}.task-history-subject{font-size:10px;padding:2px 6px;background:var(--tp-accent-soft);color:var(--tp-accent);border-radius:4px;white-space:nowrap;font-weight:500}.task-history-status{font-size:10px;padding:2px 6px;border-radius:4px;white-space:nowrap;font-weight:600}.task-history-status--running{background:var(--tp-accent-soft);color:var(--tp-accent)}.task-history-status--completed{background:var(--tp-success-soft);color:var(--tp-success)}.task-history-status--failed{background:var(--tp-danger-soft);color:var(--tp-danger)}.task-history-status--cancelled{background:var(--tp-bg-hover);color:var(--tp-text-muted)}.task-history-status--pending{background:var(--tp-warning-soft);color:var(--tp-warning)}.task-history-stats{display:flex;gap:8px;font-size:11px;color:var(--tp-text-secondary)}.task-stat--ok{color:var(--tp-success);font-weight:500}.task-stat--fail{color:var(--tp-danger);font-weight:500}.task-history-progress-row{display:flex;align-items:center;gap:8px}.task-history-progress-bar{flex:1;height:4px;background:var(--tp-border);border-radius:2px;overflow:hidden}.task-history-progress-fill{height:100%;background:var(--tp-accent);border-radius:2px;transition:width .4s ease}.task-history-progress-pct{font-size:10px;color:var(--tp-text-secondary);min-width:28px;text-align:end;font-weight:500;font-variant-numeric:tabular-nums}.task-history-actions{display:flex;align-items:center;gap:6px}.task-history-actions-right{display:flex;gap:4px;margin-inline-start:auto}.task-history-btn{padding:3px 8px;border:1px solid currentColor;border-radius:var(--tp-radius-sm);cursor:pointer;font-size:10px;background:none;transition:all .15s;font-weight:500;white-space:nowrap}.task-history-btn--view{color:var(--tp-accent)}.task-history-btn--cancel{color:var(--tp-warning)}.task-history-btn--retry{color:#8b5cf6}.task-history-btn--delete{color:var(--tp-text-muted)}.task-history-btn--questions{color:var(--tp-accent);border-color:transparent;font-weight:600}.task-history-btn--active{color:var(--tp-accent);background:var(--tp-accent-soft)}.task-history-btn:hover{opacity:.85}.task-history-btn--view:hover{background:var(--tp-accent);color:#fff;border-color:var(--tp-accent)}.task-history-btn--cancel:hover{background:var(--tp-warning);color:#fff;border-color:var(--tp-warning)}.task-history-btn--retry:hover{background:#8b5cf6;color:#fff;border-color:#8b5cf6}.task-history-btn--delete:hover{color:var(--tp-danger);border-color:var(--tp-danger)}.task-questions-expand{margin-top:4px;padding-top:8px;border-top:1px solid var(--tp-border-subtle);display:flex;flex-direction:column;gap:6px;max-height:320px;overflow-y:auto}.task-q-card{display:flex;flex-direction:column;gap:4px;padding:8px 10px;border-radius:8px;border:1px solid var(--tp-border-subtle);background:var(--tp-bg-elevated);transition:border-color .15s;border-inline-start-width:3px;border-inline-start-color:transparent}.task-q-card--completed{border-inline-start-color:var(--tp-success)}.task-q-card--failed{border-inline-start-color:var(--tp-danger);background:var(--tp-danger-soft)}.task-q-card--running{border-inline-start-color:var(--tp-accent);background:var(--tp-accent-soft)}.task-q-card--pending{border-inline-start-color:var(--tp-border)}.task-q-card-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.task-q-card-num{font-size:11px;font-weight:700;color:var(--tp-accent)}.task-q-card-status{font-size:10px;font-weight:600}.task-q-card-status--completed{color:var(--tp-success)}.task-q-card-status--failed{color:var(--tp-danger)}.task-q-card-status--running{color:var(--tp-accent)}.task-q-card-status--pending{color:var(--tp-text-muted)}.task-q-card-content{font-size:12px;line-height:1.6;color:var(--tp-text);white-space:pre-wrap;word-break:break-word}.task-q-card-error{font-size:11px;line-height:1.4;color:var(--tp-danger);padding:5px 8px;background:var(--tp-danger-soft);border-radius:5px;border:1px solid rgba(239,68,68,.12);word-break:break-word}.task-editor-header{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:12px 16px 10px;border-bottom:1px solid var(--tp-border-subtle);background:var(--tp-bg);position:sticky;top:0;z-index:2}.task-editor-label{width:100%;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--tp-text-secondary)}.task-name-input{flex:1;min-width:0;padding:7px 10px;border:1px solid var(--tp-border);border-radius:8px;font-size:12px;background:var(--tp-input-bg);color:var(--tp-text);outline:none;transition:border-color .15s,box-shadow .15s,background .15s}.task-name-input:focus{border-color:var(--tp-accent);background:var(--tp-input-focus-bg);box-shadow:0 0 0 2px var(--tp-accent-soft)}.task-subject-select,.task-grade-select{padding:7px 8px;border:1px solid var(--tp-border);border-radius:8px;font-size:11px;background:var(--tp-input-bg);color:var(--tp-text);cursor:pointer;outline:none;transition:border-color .15s}.task-subject-select:focus,.task-grade-select:focus{border-color:var(--tp-accent)}.task-question-list{display:flex;flex-direction:column;gap:8px;padding:10px 16px}.task-add-question-btn{display:block;width:100%;padding:8px;border:1px dashed var(--tp-border);border-radius:var(--tp-radius);background:none;cursor:pointer;font-size:12px;color:var(--tp-text-secondary);text-align:center;transition:all .15s;margin-top:4px;font-weight:500}.task-add-question-btn:hover{border-color:var(--tp-accent);color:var(--tp-accent);background:var(--tp-accent-soft)}.task-question-item{display:flex;gap:8px;align-items:flex-start;padding:10px;border-radius:var(--tp-radius);transition:background .15s,border-color .15s;border:1px solid var(--tp-border-subtle);background:var(--tp-bg-elevated)}.task-question-item--running{background:var(--tp-accent-soft);border-color:var(--tp-accent-border)}.task-question-item--completed{background:var(--tp-success-soft);border-color:#22c55e33}.task-question-item--failed{background:var(--tp-danger-soft);border-color:#ef444433}.task-question-index{display:flex;flex-direction:column;align-items:center;gap:2px;padding-top:8px;min-width:22px}.task-question-number{font-size:11px;font-weight:700;color:var(--tp-accent)}.task-question-status-icon{font-size:12px}.task-question-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.task-question-textarea{width:100%;box-sizing:border-box;padding:8px 10px;border:1px solid var(--tp-border);border-radius:8px;font-size:13px;resize:none;overflow:hidden;line-height:1.65;min-height:60px;max-height:300px;background:var(--tp-input-bg);color:var(--tp-text);font-family:inherit;transition:border-color .15s,box-shadow .15s,background .15s;outline:none}.task-question-textarea:focus{border-color:var(--tp-accent);background:var(--tp-input-focus-bg);box-shadow:0 0 0 2px var(--tp-accent-soft);overflow-y:auto}.task-question-textarea:not(:focus){overflow-y:auto}.task-question-toolbar{display:flex;gap:4px;justify-content:flex-end}[dir=rtl] .task-question-toolbar{justify-content:flex-start}.task-question-tool-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--tp-border);border-radius:var(--tp-radius-sm);background:none;cursor:pointer;font-size:14px;color:var(--tp-text-secondary);transition:all .15s}.task-question-tool-btn:hover{background:var(--tp-accent-soft);border-color:var(--tp-accent);color:var(--tp-accent)}.task-question-tool-btn--active{background:var(--tp-danger-soft);border-color:var(--tp-danger);color:var(--tp-danger)}.task-question-tool-btn svg{width:13px;height:13px}.task-question-image-preview{position:relative;display:inline-block;max-width:120px}.task-question-image-preview img{width:100%;max-height:80px;object-fit:cover;border-radius:8px;border:1px solid var(--tp-border)}.task-question-image-remove{position:absolute;top:3px;inset-inline-end:3px;width:18px;height:18px;background:#00000080;border:none;border-radius:50%;color:#fff;font-size:9px;cursor:pointer;display:flex;align-items:center;justify-content:center}.task-question-error{font-size:11px;color:var(--tp-danger);padding:5px 8px;background:var(--tp-danger-soft);border-radius:6px;border:1px solid rgba(239,68,68,.12);line-height:1.4}.task-question-delete{flex-shrink:0;background:none;border:none;cursor:pointer;font-size:11px;color:var(--tp-text-muted);padding:4px;border-radius:6px;transition:all .15s;align-self:flex-start;margin-top:8px}.task-question-delete:hover{color:var(--tp-danger);background:var(--tp-danger-soft)}.task-footer{flex-shrink:0;display:flex;flex-direction:column;gap:0;border-top:1px solid var(--tp-border);background:var(--tp-bg)}.task-footer>.task-add-question-btn{margin:10px 16px 0}.task-footer>.task-footer-add-row{display:flex;gap:8px;margin:10px 16px 0}.task-footer>.task-footer-add-row>.task-add-question-btn{flex:1;margin:0}.task-upload-doc-btn{background:var(--tp-success)!important;color:#fff!important;border-color:var(--tp-success)!important}.task-upload-doc-btn:hover:not(:disabled){opacity:.9}.task-upload-doc-btn:disabled{opacity:.5;cursor:not-allowed}.task-actions{display:flex;gap:8px;padding:10px 16px 14px}.task-btn{flex:1;padding:9px 12px;border:none;border-radius:var(--tp-radius);cursor:pointer;font-size:12px;font-weight:600;transition:all .15s;white-space:nowrap}.task-btn:disabled{opacity:.4;cursor:not-allowed}.task-btn--primary{background:var(--tp-accent);color:#fff;box-shadow:0 2px 8px #6366f133}.task-btn--primary:hover:not(:disabled){box-shadow:var(--tp-shadow-md);transform:translateY(-1px)}.task-btn--secondary{background:var(--tp-bg-subtle);color:var(--tp-text);border:1px solid var(--tp-border)}.task-btn--secondary:hover:not(:disabled){background:var(--tp-bg-hover)}.task-btn--danger{background:var(--tp-danger-soft);color:var(--tp-danger);border:1px solid rgba(239,68,68,.2)}.task-btn--danger:hover:not(:disabled){background:var(--tp-danger);color:#fff}.task-btn--view{background:var(--tp-success-soft);color:var(--tp-success);border:1px solid rgba(34,197,94,.2)}.task-btn--view:hover:not(:disabled){background:var(--tp-success);color:#fff}.excalidraw .app-sidebar-tab--extend{position:relative;min-height:0;overflow-y:auto;display:flex;flex-direction:column}.extend-tab{display:flex;flex-direction:column;gap:1px;padding:8px}.extend-tab-empty{display:flex;align-items:center;justify-content:center;padding:48px 16px;color:var(--text-primary-color);opacity:.5;font-size:14px}.extend-tab-item{display:flex;align-items:center;gap:12px;padding:12px;border-radius:10px;background:var(--island-bg-color, #fff);border:1px solid var(--default-border-color, rgba(0, 0, 0, .06));transition:box-shadow .15s,border-color .15s}.extend-tab-item:hover{border-color:var(--color-primary, #6c8aff);box-shadow:0 2px 8px #0000000f}.extend-tab-item__icon{flex-shrink:0;width:36px;height:36px;border-radius:8px;background:var(--color-primary-light, rgba(108, 138, 255, .1));color:var(--color-primary, #6c8aff);display:flex;align-items:center;justify-content:center}.extend-tab-item__content{flex:1;min-width:0}.extend-tab-item__title{font-size:14px;font-weight:600;color:var(--text-primary-color, #1a1a2e);line-height:1.3}.extend-tab-item__desc{font-size:12px;color:var(--text-primary-color, #666);opacity:.6;line-height:1.4;margin-top:2px}.extend-tab-item__btn{flex-shrink:0;padding:6px 14px;border-radius:6px;border:none;background:var(--color-primary, #6c8aff);color:#fff;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s,transform .1s;white-space:nowrap}.extend-tab-item__btn:hover{background:var(--color-primary-darker, #5a7af0)}.extend-tab-item__btn:active{transform:scale(.96)}.excalidraw .app-sidebar-tab--ai-chat{position:relative;min-height:0;overflow:hidden;display:flex;flex-direction:column}.excalidraw .app-sidebar-tab--ai-chat>.ai-chat-sidebar{position:absolute;top:0;right:0;bottom:0;left:0}.excalidraw .app-sidebar-resizer{position:absolute;top:0;bottom:0;left:0;width:12px;cursor:ew-resize;z-index:100;touch-action:none;pointer-events:auto;background:transparent}.excalidraw .app-sidebar-resizer:after{content:"";position:absolute;top:0;bottom:0;left:0;width:2px;background:transparent;transition:background .15s}.excalidraw .app-sidebar-resizer:hover:after{background:var(--color-primary, #6366f1)}:root[dir=rtl] .excalidraw .app-sidebar-resizer{left:auto;right:0}.excalidraw .app-sidebar-tab--group,.excalidraw .app-sidebar-tab--task{position:relative;min-height:0;overflow:hidden;display:flex;flex-direction:column}.excalidraw .app-sidebar-tab-trigger--badge{position:relative}.excalidraw .app-sidebar-unread-badge{position:absolute;top:2px;right:2px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#ef4444;color:#fff;font-size:10px;font-weight:600;line-height:16px;text-align:center;pointer-events:none}.excalidraw .app-sidebar-promo-container{padding:.75rem;display:flex;flex-direction:column;gap:.75rem;font-size:.9rem;color:var(--text-primary-color)}.excalidraw .app-sidebar-promo-container .app-sidebar-promo-text{line-height:1.4}@keyframes voice-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}.lb-panel__pills{position:fixed;left:0;top:50%;transform:translateY(-50%);z-index:20;display:flex;flex-direction:column;gap:4px;font-family:var(--ui-font);background:var(--island-bg-color, #fff);border:1px solid var(--sidebar-border-color, #e2e2e6);border-left:none;border-radius:0 10px 10px 0;padding:6px 6px 6px 4px;box-shadow:2px 2px 12px #0000001a}.lb-panel__pill{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:transparent;color:var(--text-primary-color, #555);cursor:pointer;transition:background .15s,transform .1s}.lb-panel__pill:hover{background:var(--button-hover-bg, rgba(0, 0, 0, .06))}.lb-panel__pill:active{transform:scale(.93)}.lb-panel__pill--guest{color:var(--text-primary-color, #aaa)}.lb-panel__pill--recording{color:#e53e3e;animation:lb-rec-pulse 1.5s ease-in-out infinite}@keyframes lb-rec-pulse{0%,to{opacity:1}50%{opacity:.5}}.lb-panel__avatar{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#7c5cfc,#3ecaff);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.lb-panel__avatar--img{object-fit:cover;background:none}.lb-panel{font-family:var(--ui-font);font-size:13px;color:var(--text-primary-color, #1b1b1f)}.lb-panel--expanded{position:fixed;top:0;left:0;bottom:0;z-index:12;display:flex;flex-direction:column;background:var(--island-bg-color, #fff);border-right:1px solid var(--sidebar-border-color, #e2e2e6);box-shadow:2px 0 20px #0000001a;overflow:hidden}.lb-panel__search{position:relative;padding:12px 10px 0;background:var(--island-bg-color, #fff)}.lb-panel__search .ExcTextField--hasIcon svg{width:14px;height:14px;margin-right:8px;color:var(--text-primary-color, #666)}.lb-panel__search-results-popup{position:absolute;top:calc(100% + 4px);left:10px;right:10px;max-height:calc(100vh - 180px);background:var(--island-bg-color, #fff);z-index:100;display:flex;flex-direction:column;border:1px solid var(--sidebar-border-color, #e2e2e6);border-radius:8px;box-shadow:0 4px 16px #0000001f;overflow:hidden}.lb-panel__search-header-mini{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--sidebar-border-color, #e2e2e6);background:var(--button-hover-bg, rgba(0, 0, 0, .03))}.lb-panel__search-count-text{font-size:11px;color:var(--text-primary-color, #666);font-weight:500}.lb-panel__search-nav{display:flex;flex-direction:row;align-items:center;gap:4px}.lb-panel__search-nav-btn{padding:2px!important;min-width:24px!important;height:24px!important;background:transparent!important;border:none!important}.lb-panel__search-nav-btn:hover{background:var(--button-hover-bg, rgba(0, 0, 0, .06))!important}.lb-panel__search-nav-btn svg{width:14px;height:14px}.lb-panel__search-results-list{flex:1;overflow-y:auto;padding:8px 0}.lb-panel__search-results-list .layer-ui__search-result-container{padding:0 12px 12px}.lb-panel__search-results-list .layer-ui__search-result-title{font-size:11px;color:var(--text-primary-color, #999);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;display:flex;align-items:center;gap:6px}.lb-panel__search-results-list .layer-ui__search-result-title .title-icon svg{width:12px;height:12px}.lb-panel__search-results-list .layer-ui__result-item{padding:6px 8px;border-radius:6px;cursor:pointer;transition:background .1s;font-size:12px}.lb-panel__search-results-list .layer-ui__result-item:hover{background:var(--button-hover-bg, rgba(0, 0, 0, .04))}.lb-panel__search-results-list .layer-ui__result-item.active{background:var(--color-primary-light, #eef2ff);color:var(--color-primary, #6965db)}.lb-panel__search-results-list .layer-ui__result-item .preview-text b{color:var(--color-primary, #6965db);background:var(--color-primary-light, #eef2ff);padding:0 2px;border-radius:2px}.lb-panel__search-results-list .layer-ui__divider{height:1px;background:var(--sidebar-border-color, #eee);margin:12px 0}.lb-panel__collapse-btn{position:fixed;left:var(--lb-panel-total-w, 0px);top:50%;transform:translateY(-50%);width:20px;height:48px;display:flex;align-items:center;justify-content:center;border:1px solid var(--sidebar-border-color, #e2e2e6);border-left:none;border-radius:0 8px 8px 0;background:var(--island-bg-color, #fff);color:var(--color-primary, #6950ff);cursor:pointer;box-shadow:2px 0 8px #00000014;transition:background .15s,color .15s;z-index:12}.lb-panel__collapse-btn:hover{background:var(--color-primary, #6950ff);color:#fff}.lb-panel__w-resizer{position:fixed;top:0;bottom:0;left:calc(var(--lb-panel-total-w, 0px) - 3px);width:12px;cursor:ew-resize;z-index:12}.lb-panel__w-resizer:after{content:"";position:absolute;top:50%;left:4px;transform:translateY(-50%);width:4px;height:32px;border-radius:2px;background:transparent;transition:background .15s}.lb-panel__w-resizer:hover:after{background:var(--color-primary, #6950ff)}.lb-panel__header{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--sidebar-border-color, #e2e2e6);flex-shrink:0}.lb-panel__logo{width:22px;height:22px;border-radius:5px;flex-shrink:0}.lb-panel__brand{font-size:15px;font-weight:700;letter-spacing:-.01em;background:linear-gradient(135deg,#7c5cfc,#3ecaff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.lb-panel__brand-text{font-family:"Source Serif Pro","Noto Serif SC",Georgia,Times New Roman,serif;font-size:22px;font-weight:700;line-height:1;letter-spacing:-.01em;color:#c0462a;-webkit-user-select:none;user-select:none}.excalidraw.theme--dark .lb-panel__brand-text,.theme--dark .lb-panel__brand-text{color:#dc8a2a}.lb-panel__body{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;min-height:0}.lb-panel__section-divider{height:1px;background:var(--sidebar-border-color, #e2e2e6);margin:4px 0}.lb-panel__footer{flex-shrink:0;display:flex;align-items:center;gap:4px;padding:8px;border-top:1px solid var(--sidebar-border-color, #e2e2e6)}.lb-panel__footer-btn{display:flex;align-items:center;gap:8px;flex:1 1 auto;border:none;background:none;cursor:pointer;padding:6px 8px;border-radius:8px;text-align:left;overflow:hidden;color:var(--text-primary-color, #1b1b1f);min-width:0}.lb-panel__footer-btn:hover{background:var(--button-hover-bg, rgba(0, 0, 0, .04))}.lb-panel__footer-btn--guest{color:var(--text-primary-color, #888)}.lb-panel__footer-name{font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lb-panel__footer-gear{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:none;cursor:pointer;border-radius:8px;color:var(--text-primary-color, #666)}.lb-panel__footer-gear:hover{background:var(--button-hover-bg, rgba(0, 0, 0, .05));color:var(--color-primary, #6950ff)}.lb-panel__footer-gear--recording{width:auto;gap:6px;padding:0 8px;color:#e53e3e;animation:lb-rec-pulse 1.5s ease-in-out infinite}.lb-panel__footer-gear--recording:hover{color:#c53030}.lb-panel__footer-rec-timer{font-size:.6875rem;font-weight:600;font-variant-numeric:tabular-nums;color:inherit;white-space:nowrap}.lb-panel__footer-sync{position:relative;flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:none;cursor:pointer;border-radius:8px;color:var(--text-primary-color, #888)}.lb-panel__footer-sync:hover{background:var(--button-hover-bg, rgba(0, 0, 0, .05))}.lb-panel__footer-sync--syncing{color:#0369a1}.lb-panel__footer-sync--syncing svg{animation:lb-sync-spin 1.2s linear infinite}.lb-panel__footer-sync--success{color:#16a34a}.lb-panel__footer-sync--error{color:#e53e3e}.lb-panel__sync-badge{position:absolute;top:4px;right:4px;width:8px;height:8px;border-radius:50%;pointer-events:none}.lb-panel__sync-badge--pending{background:#f59e0b}.lb-panel__sync-badge--syncing{background:#0369a1;animation:lb-sync-pulse 1s ease-in-out infinite}.lb-panel__sync-badge--success{background:#16a34a}.lb-panel__sync-badge--error{background:#e53e3e}.lb-panel__pill--sync{position:relative}.lb-panel__pill--sync.lb-panel__pill--sync-syncing svg{animation:lb-sync-spin 1.2s linear infinite}.lb-panel__pill--sync.lb-panel__pill--sync-syncing{color:#0369a1}.lb-panel__pill--sync.lb-panel__pill--sync-success{color:#16a34a}.lb-panel__pill--sync.lb-panel__pill--sync-error{color:#e53e3e}@keyframes lb-sync-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes lb-sync-pulse{0%,to{opacity:1}50%{opacity:.4}}.lb-pm__toggle{position:relative;display:inline-block;width:34px;height:18px;flex-shrink:0}.lb-pm__toggle input{opacity:0;width:0;height:0;position:absolute}.lb-pm__toggle input:checked+.lb-pm__toggle-slider{background:var(--color-primary, #6950ff)}.lb-pm__toggle input:checked+.lb-pm__toggle-slider:before{transform:translate(16px)}.lb-pm__toggle-slider{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background:#ccc;border-radius:18px;transition:background .2s}.lb-pm__toggle-slider:before{content:"";position:absolute;height:14px;width:14px;left:2px;bottom:2px;background:#fff;border-radius:50%;transition:transform .2s}.lb-file-tree__header{display:flex;align-items:center;justify-content:space-between;padding:8px 14px 6px;position:sticky;top:0;background:var(--island-bg-color, #fff);z-index:1}.lb-file-tree__title{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;opacity:.45}.lb-file-tree__add-btn{border:none;background:none;cursor:pointer;padding:3px;border-radius:4px;display:flex;align-items:center;justify-content:center;color:var(--text-primary-color, #666)}.lb-file-tree__add-btn:hover{background:var(--button-hover-bg, rgba(0, 0, 0, .06))}.lb-file-tree__content{padding-bottom:8px}.lb-file-tree__empty{padding:20px 16px;text-align:center;opacity:.4;font-size:12px}.lb-file-tree__empty--error{opacity:.7;color:var(--color-danger, #e03131);cursor:default}.lb-file-tree-item{position:relative;display:flex;align-items:center;gap:4px;padding:5px 10px 5px 8px;cursor:pointer;-webkit-user-select:none;user-select:none;min-height:30px;transition:background .1s}.lb-file-tree-item:hover{background:var(--button-hover-bg, rgba(0, 0, 0, .04))}.lb-file-tree-item:hover .lb-file-tree-item__actions{opacity:1}.lb-file-tree-item--active{background:#6950ff1a;box-shadow:inset 3px 0 0 var(--color-primary, #6950ff);font-weight:600}.lb-file-tree-item--active .lb-file-tree-item__name{color:var(--color-primary, #6950ff)}.lb-file-tree-item--active .lb-file-tree-item__icon{opacity:1;color:var(--color-primary, #6950ff)}.lb-file-tree-item--active .lb-file-tree-item__actions{opacity:1}.lb-file-tree-item--active:hover{background:#6950ff29}.lb-file-tree-item[data-drop=before]:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--color-primary, #6950ff);pointer-events:none;z-index:2;border-radius:1px}.lb-file-tree-item[data-drop=after]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--color-primary, #6950ff);pointer-events:none;z-index:2;border-radius:1px}.lb-file-tree-item[data-drop=inside],.lb-file-tree-item--drop-inside{background:#6950ff1a!important;outline:2px solid var(--color-primary, #6950ff);outline-offset:-2px;border-radius:4px}.lb-file-tree-item__chevron{width:16px;height:16px;flex-shrink:0;display:flex;align-items:center;justify-content:center;opacity:.45}.lb-file-tree-item__icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;opacity:.65}.lb-file-tree-item__name{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;margin-left:3px}.lb-file-tree-item__collab-badge{flex-shrink:0;margin-left:4px;opacity:.85}.lb-file-tree-item__ai-badge{flex-shrink:0;margin-left:4px;display:flex;align-items:center}.lb-file-tree-item__ai-dot{width:7px;height:7px;border-radius:50%;background:#f59e0b;animation:lb-ai-pulse 1.2s ease-in-out infinite}@keyframes lb-ai-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}.lb-file-tree-item__rename-input{flex:1 1 auto;border:1px solid var(--color-primary, #6950ff);border-radius:4px;padding:1px 6px;font-size:13px;outline:none;background:var(--island-bg-color, #fff);color:var(--text-primary-color, #1b1b1f)}.lb-file-tree-item__actions{display:flex;gap:0;opacity:0;transition:opacity .12s;margin-left:auto;flex-shrink:0}.lb-file-tree-item__btn{border:none;background:none;cursor:pointer;padding:2px 3px;border-radius:4px;color:var(--text-primary-color, #666);display:flex;align-items:center;justify-content:center}.lb-file-tree-item__btn:hover{background:var(--button-hover-bg, rgba(0, 0, 0, .08))}.lb-context-menu{min-width:160px;background:var(--island-bg-color, #fff);border:1px solid var(--sidebar-border-color, #e2e2e6);border-radius:8px;box-shadow:0 8px 24px #0000001f;padding:4px;display:flex;flex-direction:column}.lb-context-menu__item{display:flex;align-items:center;gap:8px;border:none;background:none;cursor:pointer;padding:7px 10px;font-size:13px;border-radius:6px;color:var(--text-primary-color, #1b1b1f);text-align:left;width:100%}.lb-context-menu__item:hover{background:var(--button-hover-bg, rgba(0, 0, 0, .05))}.lb-context-menu__item--danger{color:#e53e3e}.lb-context-menu__item--disabled{opacity:.35;cursor:not-allowed}.lb-context-menu__item--disabled:hover{background:none}.lb-context-menu__icon{display:flex;align-items:center;justify-content:center}.lb-context-menu__confirm{padding:8px 10px 6px;display:flex;flex-direction:column;gap:6px}.lb-context-menu__confirm-text{font-size:12.5px;color:var(--text-primary-color, #1b1b1f);font-weight:500}.lb-context-menu__confirm-btns{display:flex;gap:6px}.lb-context-menu__confirm-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;padding:5px 8px;border-radius:6px;border:none;cursor:pointer;font-size:12px;font-family:inherit}.lb-context-menu__confirm-btn--cancel{background:var(--button-hover-bg, rgba(0, 0, 0, .06));color:var(--text-primary-color, #555)}.lb-context-menu__confirm-btn--cancel:hover{background:#0000001a}.lb-context-menu__confirm-btn--ok{background:#e53e3e1f;color:#e53e3e}.lb-context-menu__confirm-btn--ok:hover{background:#e53e3e33}.lb-context-menu__custom{padding:4px 10px 6px}.lb-context-menu__bg-section{border-top:1px solid var(--sidebar-border-color, #e2e2e6);padding-top:6px;margin-top:2px}.lb-context-menu__bg-label{display:block;font-size:11px;color:var(--text-primary-color, #888);opacity:.6;margin-bottom:6px}.lb-context-menu__bg-swatches{display:flex;gap:5px}.lb-context-menu__bg-swatch{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:border-color .15s,transform .15s;box-shadow:inset 0 0 0 1px #0000001a;padding:0}.lb-context-menu__bg-swatch:hover{transform:scale(1.15)}.lb-context-menu__bg-swatch.active{border-color:#6965db}body.lb-cursor-ew-resize *{cursor:ew-resize!important}.excalidraw.theme--dark .lb-panel--expanded{box-shadow:2px 0 20px #0006}.excalidraw.theme--dark .lb-panel__pills{box-shadow:2px 2px 12px #0006}.excalidraw .main-menu-trigger{display:none!important}.excalidraw .FixedSideContainer_side_top{left:calc(var(--lb-panel-total-w, 44px) + 3px)!important;transition:left .15s ease}.excalidraw .App-menu_bottom{padding-left:calc(var(--lb-panel-total-w, 44px) + 3px)!important;transition:padding-left .15s ease}[dir=rtl] .lb-panel--expanded{left:auto;right:0;border-right:none;border-left:1px solid var(--sidebar-border-color, #e2e2e6);box-shadow:-2px 0 20px #0000001a}[dir=rtl] .lb-panel__pills{left:auto;right:0;border-left:1px solid var(--sidebar-border-color, #e2e2e6);border-right:none;border-radius:10px 0 0 10px;padding:6px 4px 6px 6px}[dir=rtl] .lb-panel__collapse-btn{left:auto;right:var(--lb-panel-total-w, 0px);border-left:none;border-right:1px solid var(--sidebar-border-color, #e2e2e6);border-radius:8px 0 0 8px;box-shadow:-2px 0 8px #00000014}[dir=rtl] .lb-panel__w-resizer{left:auto;right:calc(var(--lb-panel-total-w, 0px) - 3px)}[dir=rtl] .excalidraw .FixedSideContainer_side_top{left:3px!important;right:auto!important}[dir=rtl] .excalidraw .App-menu_bottom{padding-left:0!important;padding-right:calc(var(--lb-panel-total-w, 44px) + 3px)!important;transition:padding-right .15s ease}body[data-view-mode=markdown] .lb-panel__pills,body[data-view-mode=markdown] .lb-panel--expanded,body[data-view-mode=markdown] .lb-panel__collapse-btn,body[data-view-mode=markdown] .lb-panel__w-resizer,body[data-view-mode=markdown] .lb-panel__menu-popup{display:none!important}.img-crop-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;display:flex;align-items:center;justify-content:center;background:#0009;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.img-crop-modal__dialog{background:var(--island-bg-color, #fff);border-radius:12px;box-shadow:0 8px 32px #00000040;width:90vw;max-width:640px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden}.img-crop-modal__header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--default-border-color, #e5e5e5)}.img-crop-modal__title{font-size:15px;font-weight:600;color:var(--text-primary-color, #1b1b1f)}.img-crop-modal__close{width:28px;height:28px;border:none;background:transparent;font-size:16px;cursor:pointer;border-radius:6px;color:var(--text-primary-color, #666);display:flex;align-items:center;justify-content:center}.img-crop-modal__close:hover{background:var(--default-border-color, #f0f0f0)}.img-crop-modal__body{flex:1;min-height:0;padding:16px;display:flex;align-items:center;justify-content:center}.img-crop-modal__container{position:relative;display:inline-block;max-width:100%;max-height:50vh;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none}.img-crop-modal__image{display:block;max-width:100%;max-height:50vh}.img-crop-modal__mask{position:absolute;background:#00000080;pointer-events:none}.img-crop-modal__rect{position:absolute;border:2px solid #fff;box-shadow:0 0 0 1px #0000004d;cursor:move}.img-crop-modal__grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(to right,rgba(255,255,255,.3) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.3) 1px,transparent 1px);background-size:33.33% 33.33%;pointer-events:none}.img-crop-modal__move{position:absolute;top:0;right:0;bottom:0;left:0;cursor:move}.img-crop-modal__handle{position:absolute;z-index:1}.img-crop-modal__handle--tl,.img-crop-modal__handle--tr,.img-crop-modal__handle--bl,.img-crop-modal__handle--br{width:20px;height:20px;background:transparent}.img-crop-modal__handle--tl:before,.img-crop-modal__handle--tl:after,.img-crop-modal__handle--tr:before,.img-crop-modal__handle--tr:after,.img-crop-modal__handle--bl:before,.img-crop-modal__handle--bl:after,.img-crop-modal__handle--br:before,.img-crop-modal__handle--br:after{content:"";position:absolute;background:#fff;border-radius:1px;box-shadow:0 0 2px #0006}.img-crop-modal__handle--tl{top:-2px;left:-2px;cursor:nwse-resize}.img-crop-modal__handle--tl:before{top:0;left:0;width:14px;height:3px}.img-crop-modal__handle--tl:after{top:0;left:0;width:3px;height:14px}.img-crop-modal__handle--tr{top:-2px;right:-2px;cursor:nesw-resize}.img-crop-modal__handle--tr:before{top:0;right:0;width:14px;height:3px}.img-crop-modal__handle--tr:after{top:0;right:0;width:3px;height:14px}.img-crop-modal__handle--bl{bottom:-2px;left:-2px;cursor:nesw-resize}.img-crop-modal__handle--bl:before{bottom:0;left:0;width:14px;height:3px}.img-crop-modal__handle--bl:after{bottom:0;left:0;width:3px;height:14px}.img-crop-modal__handle--br{bottom:-2px;right:-2px;cursor:nwse-resize}.img-crop-modal__handle--br:before{bottom:0;right:0;width:14px;height:3px}.img-crop-modal__handle--br:after{bottom:0;right:0;width:3px;height:14px}.img-crop-modal__handle--t,.img-crop-modal__handle--b{height:12px;left:20%;right:20%;cursor:ns-resize}.img-crop-modal__handle--t:before,.img-crop-modal__handle--b:before{content:"";position:absolute;left:50%;transform:translate(-50%);width:32px;height:3px;background:#fff;border-radius:2px;box-shadow:0 0 2px #0006}.img-crop-modal__handle--t{top:-6px}.img-crop-modal__handle--t:before{top:50%;transform:translate(-50%) translateY(-50%)}.img-crop-modal__handle--b{bottom:-6px}.img-crop-modal__handle--b:before{bottom:50%;transform:translate(-50%) translateY(50%)}.img-crop-modal__handle--l,.img-crop-modal__handle--r{width:12px;top:20%;bottom:20%;cursor:ew-resize}.img-crop-modal__handle--l:before,.img-crop-modal__handle--r:before{content:"";position:absolute;top:50%;transform:translateY(-50%);width:3px;height:32px;background:#fff;border-radius:2px;box-shadow:0 0 2px #0006}.img-crop-modal__handle--l{left:-6px}.img-crop-modal__handle--l:before{left:50%;transform:translate(-50%) translateY(-50%)}.img-crop-modal__handle--r{right:-6px}.img-crop-modal__handle--r:before{right:50%;transform:translate(50%) translateY(-50%)}.img-crop-modal__footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--default-border-color, #e5e5e5)}.img-crop-modal__btn{padding:6px 16px;border-radius:6px;border:1px solid var(--default-border-color, #d9d9d9);background:var(--island-bg-color, #fff);color:var(--text-primary-color, #333);font-size:13px;cursor:pointer;transition:all .15s}.img-crop-modal__btn:hover{border-color:#1677ff;color:#1677ff}.img-crop-modal__btn:disabled{opacity:.5;cursor:not-allowed}.img-crop-modal__btn--primary{background:#1677ff;border-color:#1677ff;color:#fff}.img-crop-modal__btn--primary:hover{background:#4096ff;border-color:#4096ff;color:#fff}.welcome-canvas{position:fixed;top:50%;left:50%;transform:translate(-50%,-52%);z-index:1001;width:560px;min-width:420px;max-width:640px;padding:28px 32px;border-radius:20px;background:#ffffffeb;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border:1px solid rgba(0,0,0,.06);box-shadow:0 1px 3px #0000000a,0 24px 64px -12px #0000002e,0 8px 24px -8px #00000014;animation:wc-enter .26s ease-out both}.welcome-canvas--exiting{animation:wc-exit .18s ease-in forwards;pointer-events:none}:root[data-theme=dark] .welcome-canvas{background:#1c1c20f0;border-color:#ffffff14;box-shadow:0 1px 3px #0000001f,0 24px 64px -12px #0006,0 8px 24px -8px #0003}.welcome-canvas__greeting{text-align:center;font-size:18px;font-weight:500;color:#1f2125;margin:0 0 20px;line-height:1.4}:root[data-theme=dark] .welcome-canvas__greeting{color:#e5e5e7}.welcome-canvas__input-row{display:flex;align-items:center;gap:8px;background:#00000008;border:1px solid rgba(0,0,0,.08);border-radius:12px;padding:8px 12px;margin-bottom:20px;transition:box-shadow .2s}.welcome-canvas__input-row:focus-within{box-shadow:0 0 0 2px #3b82f64d;border-color:#3b82f666}:root[data-theme=dark] .welcome-canvas__input-row{background:#ffffff0d;border-color:#ffffff1a}.welcome-canvas__textarea{flex:1;border:none;outline:none;background:transparent;font-size:15px;line-height:1.5;resize:none;min-height:24px;max-height:120px;color:#1f2125;font-family:inherit}.welcome-canvas__textarea::placeholder{color:#999}:root[data-theme=dark] .welcome-canvas__textarea{color:#e5e5e7}:root[data-theme=dark] .welcome-canvas__textarea::placeholder{color:#666}.welcome-canvas__attach-btn,.welcome-canvas__voice-btn,.welcome-canvas__send-btn{flex:0 0 auto;width:32px;height:32px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.welcome-canvas__attach-btn{background:#e7f5ff;color:#1c7ed6}.welcome-canvas__attach-btn:hover{background:#d0ebff}:root[data-theme=dark] .welcome-canvas__attach-btn{background:#1c7ed633;color:#74b9ff}:root[data-theme=dark] .welcome-canvas__attach-btn:hover{background:#1c7ed64d}.welcome-canvas__voice-btn{background:#f3f0ff;color:#7048e8}.welcome-canvas__voice-btn:hover{background:#e5dbff}.welcome-canvas__voice-btn.listening{background:#ff6b6b;color:#fff;animation:wc-pulse 1s infinite}:root[data-theme=dark] .welcome-canvas__voice-btn{background:#7048e833;color:#b197fc}:root[data-theme=dark] .welcome-canvas__voice-btn:hover{background:#7048e84d}.welcome-canvas__send-btn{background:#e9ecef;color:#868e96}.welcome-canvas__send-btn.active{background:#228be6;color:#fff}.welcome-canvas__send-btn.active:hover{background:#1c7ed6}:root[data-theme=dark] .welcome-canvas__send-btn{background:#ffffff14;color:#666}:root[data-theme=dark] .welcome-canvas__send-btn.active{background:#228be6;color:#fff}.welcome-canvas__chips-section{margin-bottom:16px}.welcome-canvas__chips-label{display:block;font-size:13px;font-weight:500;color:#868e96;margin-bottom:10px}:root[data-theme=dark] .welcome-canvas__chips-label{color:#909296}.welcome-canvas__chips-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.welcome-canvas__chip{display:flex;align-items:center;gap:6px;padding:10px 14px;border-radius:10px;border:none;background:#0000000a;color:#1f2125;font-size:13px;line-height:1.3;text-align:left;cursor:pointer;transition:all .15s;animation:wc-chip-in .22s ease-out both}.welcome-canvas__chip:hover{background:#00000012;transform:translateY(-1px)}:root[data-theme=dark] .welcome-canvas__chip{background:#ffffff0f;color:#e5e5e7}:root[data-theme=dark] .welcome-canvas__chip:hover{background:#ffffff1a}.welcome-canvas__chip-emoji{flex-shrink:0;font-size:15px}.welcome-canvas__panel-hints{display:flex;justify-content:space-between;padding-top:12px;border-top:1px solid rgba(0,0,0,.06)}:root[data-theme=dark] .welcome-canvas__panel-hints{border-top-color:#ffffff0f}.welcome-canvas__hint{font-size:12px;color:#adb5bd;cursor:default;transition:color .15s}.welcome-canvas__hint:hover{color:#868e96}:root[data-theme=dark] .welcome-canvas__hint{color:#5c5f66}:root[data-theme=dark] .welcome-canvas__hint:hover{color:#909296}@keyframes wc-enter{0%{opacity:0;transform:translate(-50%,-52%) translateY(12px) scale(.98)}to{opacity:1;transform:translate(-50%,-52%) translateY(0) scale(1)}}@keyframes wc-exit{0%{opacity:1;transform:translate(-50%,-52%) translateY(0) scale(1)}to{opacity:0;transform:translate(-50%,-52%) translateY(-8px) scale(.96)}}@keyframes wc-chip-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes wc-pulse{0%,to{opacity:1}50%{opacity:.7}}.teacher-avatar-container{position:fixed;bottom:20px;display:flex;flex-direction:column;align-items:flex-end;z-index:1000;font-family:Inter,system-ui,-apple-system,sans-serif;transition:right .3s ease}:root[dir=rtl] .teacher-avatar-container{right:auto!important;left:20px;align-items:flex-start}.teacher-avatar-container .chat-bubble{background:#fff;color:#333;padding:12px 20px;border-radius:20px 20px 4px;box-shadow:0 4px 15px #0000001a;margin-bottom:8px;max-width:300px;font-size:14px;line-height:1.5;position:relative;opacity:0;transform:translateY(10px);transition:opacity .3s ease,transform .3s ease}:root[dir=rtl] .teacher-avatar-container .chat-bubble{border-radius:20px 20px 20px 4px;text-align:right}.teacher-avatar-container .chat-bubble.visible{opacity:1;transform:translateY(0)}.teacher-avatar-container .chat-bubble .typing-indicator{display:flex;gap:4px}.teacher-avatar-container .chat-bubble .typing-indicator span{width:6px;height:6px;background:#adb5bd;border-radius:50%;animation:bounce 1s infinite ease-in-out}.teacher-avatar-container .chat-bubble .typing-indicator span:nth-child(2){animation-delay:.2s}.teacher-avatar-container .chat-bubble .typing-indicator span:nth-child(3){animation-delay:.4s}.teacher-avatar-container .floor-notification{background:#212529d9;color:#fff;padding:8px 16px;border-radius:8px;font-size:13px;margin-bottom:8px;animation:slide-in .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 4px 12px #0000001a;align-self:center;white-space:nowrap}.teacher-avatar-container .tts-playback-bubble{display:flex;align-items:center;gap:8px;align-self:flex-end;margin-bottom:6px;padding:6px 12px;border:none;border-radius:16px;background:linear-gradient(135deg,#845ef7,#7048e8);color:#fff;font-size:12px;font-weight:600;cursor:pointer;box-shadow:0 2px 12px #845ef759;animation:tts-bubble-in .25s ease-out;transition:box-shadow .2s,transform .15s}.teacher-avatar-container .tts-playback-bubble:hover{box-shadow:0 4px 20px #845ef780;transform:translateY(-1px)}.teacher-avatar-container .tts-playback-bubble:hover .tts-stop-icon{opacity:1}.teacher-avatar-container .tts-playback-bubble:hover .tts-label:after{content:" · 点击停止";font-weight:400}.teacher-avatar-container .tts-playback-bubble:active{transform:scale(.97)}.teacher-avatar-container .tts-playback-bubble .tts-wave-bars{display:flex;align-items:center;gap:2px;height:16px}.teacher-avatar-container .tts-playback-bubble .tts-wave-bars span{display:block;width:3px;border-radius:2px;background:#ffffffe6;animation:tts-bar-bounce .8s ease-in-out infinite}.teacher-avatar-container .tts-playback-bubble .tts-wave-bars span:nth-child(1){height:6px;animation-delay:0s}.teacher-avatar-container .tts-playback-bubble .tts-wave-bars span:nth-child(2){height:12px;animation-delay:.15s}.teacher-avatar-container .tts-playback-bubble .tts-wave-bars span:nth-child(3){height:8px;animation-delay:.3s}.teacher-avatar-container .tts-playback-bubble .tts-wave-bars span:nth-child(4){height:14px;animation-delay:.45s}.teacher-avatar-container .tts-playback-bubble .tts-stop-icon{opacity:.6;transition:opacity .2s}.teacher-avatar-container .memai-toggle-btn.speaking{background:linear-gradient(135deg,#845ef7,#7048e8);box-shadow:0 2px 12px #845ef759;animation:pulse-purple 2s infinite}.teacher-avatar-container .teacher-toolbar-row{display:flex;align-items:flex-end;gap:0;flex-direction:row-reverse}:root[dir=rtl] .teacher-avatar-container .teacher-toolbar-row{flex-direction:row}.teacher-avatar-container .memai-toggle-btn{flex-shrink:0;height:34px;padding:0 14px;border:none;border-radius:20px;background:linear-gradient(135deg,#6c8aff,#5a6fe0);color:#fff;font-size:13px;font-weight:700;letter-spacing:.03em;cursor:pointer;transition:box-shadow .2s,transform .15s,background .2s;box-shadow:0 2px 12px #6c8aff4d;white-space:nowrap}.teacher-avatar-container .memai-toggle-btn:hover{box-shadow:0 4px 20px #6c8aff73;transform:translateY(-1px)}.teacher-avatar-container .memai-toggle-btn:active{transform:scale(.97)}.teacher-avatar-container .memai-toggle-btn.active{background:linear-gradient(135deg,#5a6fe0,#4a5fd0);box-shadow:0 2px 8px #5a6fe066}.teacher-avatar-container .input-area{display:flex;align-items:flex-end;gap:6px;background:#ffffffeb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:4px 6px;border-radius:20px 0 0 20px;box-shadow:0 4px 15px #0000000f;width:260px;animation:toolbar-slide-in .25s ease-out}.teacher-avatar-container .input-area.input-area--centered{position:fixed;bottom:50%;left:50%;transform:translate(-50%,50%);border-radius:20px;width:380px;box-shadow:0 8px 32px #0000001f;animation:center-fade-in .5s ease-out;z-index:1001}.teacher-avatar-container .input-area.input-area--centered textarea{width:240px}:root[dir=rtl] .teacher-avatar-container .input-area{flex-direction:row-reverse;border-radius:0 20px 20px 0}.teacher-avatar-container .input-area .attachment-button{flex:0 0 auto;background:#e7f5ff;color:#1c7ed6;border:1px solid rgba(28,126,214,.25);width:28px;height:28px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.teacher-avatar-container .input-area .attachment-button:hover{background:#d0ebff}.teacher-avatar-container .input-area .attachment-button:disabled{opacity:.4;cursor:not-allowed}.teacher-avatar-container .input-area .attachment-button svg{width:16px;height:16px}.teacher-avatar-container .input-area .voice-button{flex:0 0 auto;background:#f1f3f5;color:#495057;border:none;width:28px;height:28px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.teacher-avatar-container .input-area .voice-button:hover{background:#e9ecef}.teacher-avatar-container .input-area .voice-button.listening{background:#ff6b6b;color:#fff;animation:pulse-red 1.5s infinite}.teacher-avatar-container .input-area textarea{border:none;background:transparent;padding:4px 8px;width:140px;flex:none;outline:none;font-size:14px;resize:none;line-height:1.4;max-height:180px;overflow-y:auto;overflow-x:hidden;white-space:pre-wrap;overflow-wrap:break-word;word-wrap:break-word;font-family:inherit}:root[dir=rtl] .teacher-avatar-container .input-area textarea{text-align:right}.teacher-avatar-container .input-area .send-button{flex:0 0 auto;background:#4dabf7;color:#fff;border:none;width:28px;height:28px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.teacher-avatar-container .input-area .send-button:hover{background:#339af0}.teacher-avatar-container .input-area .send-button:disabled{background:#adb5bd;cursor:not-allowed;opacity:.6}.teacher-avatar-container .input-area .send-button--stop{background:#ef4444}.teacher-avatar-container .input-area .send-button--stop:hover{background:#dc2626}:root[dir=rtl] .teacher-avatar-container .input-area .send-button svg{transform:scaleX(-1)}.teacher-avatar-container .attachment-list{margin-top:8px;width:100%;max-width:400px;display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}:root[dir=rtl] .teacher-avatar-container .attachment-list{justify-content:flex-start}.teacher-avatar-container .attachment-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:4px 8px;border-radius:999px;background:#ffffffe6;border:1px solid rgba(0,0,0,.08);font-size:12px}.teacher-avatar-container .attachment-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:190px}.teacher-avatar-container .attachment-chip button{border:none;background:transparent;cursor:pointer;color:#666;font-size:14px;line-height:1;padding:0}@keyframes toolbar-slide-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes pulse-red{0%{box-shadow:0 0 #ff6b6b66}70%{box-shadow:0 0 0 10px #ff6b6b00}to{box-shadow:0 0 #ff6b6b00}}@keyframes slide-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes center-fade-in{0%{opacity:0;transform:translate(-50%,50%) translateY(12px)}to{opacity:1;transform:translate(-50%,50%) translateY(0)}}@keyframes tts-bubble-in{0%{opacity:0;transform:translateY(8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes tts-bar-bounce{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}@keyframes pulse-purple{0%{box-shadow:0 2px 12px #845ef759}50%{box-shadow:0 2px 18px #845ef78c}to{box-shadow:0 2px 12px #845ef759}}.video-collaboration-trigger-wrapper{position:fixed;bottom:72px;left:20px;z-index:1000;pointer-events:auto}.video-collaboration-trigger-wrapper .video-collab-btn{display:flex;align-items:center;gap:8px;padding:0 16px;height:48px;border-radius:24px;border:none;background:#fff;color:#495057;box-shadow:0 4px 12px #00000026;cursor:pointer;transition:all .2s ease;font-weight:600}.video-collaboration-trigger-wrapper .video-collab-btn:hover{box-shadow:0 6px 16px #0003;transform:translateY(-2px)}.video-collaboration-trigger-wrapper .video-collab-btn.active{background:#40c057;color:#fff}.video-collaboration-trigger-wrapper .video-collab-btn.disabled{opacity:.5;cursor:not-allowed;filter:grayscale(1)}.video-collaboration-trigger-wrapper .video-collab-btn .user-count{font-size:.8rem;opacity:.8}.video-avatars-panel{position:fixed;z-index:1100;pointer-events:auto;display:flex;flex-direction:column;gap:8px;background:#ffffffe6;border:1px solid rgba(0,0,0,.12);border-radius:14px;box-shadow:0 10px 24px #0000002e;padding:8px;touch-action:none;-webkit-user-select:none;user-select:none}.panel-drag-handle{font-size:11px;color:#555;font-weight:700;letter-spacing:.02em;cursor:grab;padding:2px 4px}.video-avatars-container{display:flex;flex-direction:row;gap:10px}.video-avatars-container .video-avatar{width:120px;height:120px;background:#000;overflow:hidden;position:relative;border:3px solid #fff;box-shadow:0 8px 24px #0003;pointer-events:auto}.video-avatars-container .video-avatar video{width:100%;height:100%;object-fit:cover}.video-avatars-container .video-avatar.placeholder{display:flex;align-items:center;justify-content:center;color:#fff;font-size:.75rem}.video-avatars-container .video-avatar .placeholder-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000059;color:#fff;font-size:.75rem}.video-avatars-container .video-avatar.circle{border-radius:50%}.video-avatars-container .video-avatar.rounded-square{border-radius:20px}.video-avatars-container .video-avatar .label{position:absolute;bottom:8px;left:50%;transform:translate(-50%);background:#00000080;color:#fff;padding:2px 8px;border-radius:10px;font-size:.7rem;white-space:nowrap}.video-avatars-container .video-avatar.local{border-color:#4dabf7}.video-avatars-container .video-avatar.local video{transform:scaleX(-1)}.video-avatars-container .video-avatar.remote{border-color:#40c057}@media (max-width: 768px){.video-avatars-container .video-avatar{width:88px;height:88px}}.question-frame-overlay{position:absolute;pointer-events:none;border-radius:8px;overflow:hidden;z-index:5;border:2px solid rgba(99,102,241,.3)}.question-frame-overlay:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 25%,rgba(99,102,241,.08) 50%,transparent 75%);background-size:200% 100%;animation:qf-shimmer 1.5s ease-in-out infinite}.question-frame-overlay--error{border-color:#ef444466}.question-frame-overlay--error:after{background:linear-gradient(90deg,transparent 25%,rgba(239,68,68,.08) 50%,transparent 75%);background-size:200% 100%;animation:none}.question-frame-overlay__status{position:absolute;bottom:8px;left:50%;transform:translate(-50%);font-size:11px;color:#6366f1b3;white-space:nowrap;-webkit-user-select:none;user-select:none}@keyframes qf-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.publish-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;background:#00000080;display:flex;align-items:center;justify-content:center}.publish-dialog{background:var(--island-bg-color, #fff);border-radius:12px;width:420px;max-width:90vw;max-height:85vh;overflow-y:auto;box-shadow:0 8px 32px #00000040}.publish-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-gray-20, #e2e2e6)}.publish-dialog-header h3{margin:0;font-size:16px;font-weight:600}.publish-dialog-close{background:none;border:none;font-size:18px;cursor:pointer;color:var(--color-gray-60, #666);padding:4px 8px;border-radius:4px}.publish-dialog-close:hover{background:var(--color-gray-10, #f5f5f5)}.publish-dialog-body{padding:16px 20px 20px}.publish-dialog-success{padding:40px 20px;text-align:center;color:#22c55e;font-weight:600;font-size:15px}.publish-dialog-error{color:#d32f2f;font-size:13px;background:#d32f2f14;padding:8px 12px;border-radius:6px;margin-bottom:12px}.publish-field{display:block;margin-bottom:12px}.publish-field>span{display:block;font-size:12px;font-weight:500;color:var(--color-gray-60, #666);margin-bottom:4px}.publish-field input[type=text],.publish-field input[type=number],.publish-field select{display:block;width:100%;padding:8px 10px;border:1px solid var(--color-gray-20, #ddd);border-radius:6px;font-size:14px;background:var(--island-bg-color, #fff);color:var(--text-primary-color, #333);box-sizing:border-box;outline:none}.publish-field input[type=text]:focus,.publish-field input[type=number]:focus,.publish-field select:focus{border-color:#6965db}.publish-field select{cursor:pointer}.publish-field-row{display:flex;gap:12px;align-items:flex-end;margin-bottom:12px}.publish-field-short{flex:0 0 100px;margin-bottom:0}.publish-field-checkbox{display:flex;align-items:center;gap:6px;font-size:13px;cursor:pointer;padding-bottom:8px}.publish-field-checkbox input[type=checkbox]{width:16px;height:16px;margin:0;cursor:pointer}.publish-field-checkbox span{color:var(--color-gray-60, #666)}.publish-thumbnail-row{display:flex;align-items:center;gap:10px;margin-top:4px}.publish-thumbnail-preview{width:80px;height:50px;object-fit:cover;border-radius:6px;border:1px solid var(--color-gray-20, #ddd)}.publish-dialog-footer{display:flex;gap:8px;margin-top:16px;justify-content:flex-end}.publish-btn{padding:8px 18px;border-radius:6px;border:none;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s}.publish-btn:disabled{opacity:.5;cursor:default}.publish-btn-primary{background:#6965db;color:#fff}.publish-btn-primary:hover:not(:disabled){background:#5753c9}.publish-btn-secondary{background:var(--color-gray-10, #f0f0f0);color:var(--text-primary-color, #333)}.publish-btn-secondary:hover:not(:disabled){background:var(--color-gray-20, #e0e0e0)}.scene-editor-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:200;display:flex;align-items:center;justify-content:center}.scene-editor-dialog{width:920px;max-width:95vw;height:85vh;background:var(--island-bg-color, #fff);border-radius:12px;box-shadow:0 8px 32px #0000002e;display:flex;flex-direction:column;overflow:hidden}.scene-editor-dialog__header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--default-border-color, #e5e7eb);flex-shrink:0}.scene-editor-dialog__header h2{margin:0;font-size:15px;font-weight:600}.scene-editor-dialog__frame-name{font-weight:400;color:var(--text-primary-color-subdued, #6b7280)}.scene-editor-dialog__close{width:28px;height:28px;border:none;border-radius:6px;background:transparent;cursor:pointer;font-size:14px;color:var(--text-primary-color, #333);display:flex;align-items:center;justify-content:center}.scene-editor-dialog__close:hover{background:var(--button-gray-1, #f3f4f6)}.scene-editor-dialog__toolbar{display:flex;flex-wrap:wrap;gap:12px;padding:10px 20px;border-bottom:1px solid var(--default-border-color, #e5e7eb);background:var(--island-bg-color, #fafafa);flex-shrink:0}.scene-editor-dialog__name-row{display:flex;align-items:center;gap:8px}.scene-editor-dialog__name-label,.scene-editor-dialog__pattern-label{font-size:12px;font-weight:600;color:var(--text-primary-color, #374151);white-space:nowrap}.scene-editor-dialog__name-input{padding:4px 10px;border:1px solid var(--default-border-color, #d1d5db);border-radius:6px;font-size:13px;width:180px;outline:none}.scene-editor-dialog__name-input:focus{border-color:var(--color-primary, #6366f1);box-shadow:0 0 0 2px #6366f126}.scene-editor-dialog__pattern-row{display:flex;align-items:center;gap:8px}.scene-editor-dialog__pattern-buttons{display:flex;gap:4px}.scene-editor-dialog__pattern-btn{display:flex;flex-direction:column;align-items:center;gap:1px;padding:4px 8px;border:1px solid var(--default-border-color, #d1d5db);border-radius:6px;background:#fff;cursor:pointer;font-size:10px;color:var(--text-primary-color, #6b7280);transition:all .15s;min-width:48px}.scene-editor-dialog__pattern-btn:hover{background:var(--button-gray-1, #f3f4f6)}.scene-editor-dialog__pattern-btn--active{background:var(--color-primary, #6366f1);color:#fff;border-color:var(--color-primary, #6366f1)}.scene-editor-dialog__pattern-btn--apply{background:#22c55e;color:#fff;border-color:#22c55e}.scene-editor-dialog__pattern-btn--apply:hover{background:#16a34a}.scene-editor-dialog__pattern-icon{font-size:16px;line-height:1}.scene-editor-dialog__pattern-name{font-size:9px;line-height:1}.scene-editor-dialog__body{flex:1;display:flex;overflow:hidden}.scene-editor-dialog__elements{width:260px;flex-shrink:0;border-right:1px solid var(--default-border-color, #e5e7eb);display:flex;flex-direction:column;overflow:hidden}.scene-editor-dialog__elements-title{padding:10px 14px 8px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-primary-color-subdued, #6b7280);border-bottom:1px solid var(--default-border-color, #e5e7eb);flex-shrink:0}.scene-editor-dialog__elements-hint{font-weight:400;text-transform:none;letter-spacing:0;display:block;margin-top:2px;font-size:10px;color:var(--text-primary-color-subdued, #9ca3af)}.scene-editor-dialog__elements-empty{padding:20px 14px;font-size:12px;color:var(--text-primary-color-subdued, #9ca3af);font-style:italic}.scene-editor-dialog__element-list{list-style:none;margin:0;padding:6px 0;overflow-y:auto;flex:1}.scene-editor-dialog__element-item{display:flex;align-items:center;gap:6px;padding:5px 14px;font-size:12px;line-height:1.4}.scene-editor-dialog__element-item:hover{background:var(--button-gray-1, #f9fafb)}.scene-editor-dialog__element-id{font-family:monospace;font-size:11px;background:var(--button-gray-1, #f3f4f6);padding:1px 5px;border-radius:4px;cursor:pointer;color:#7c3aed;flex-shrink:0}.scene-editor-dialog__element-id:hover{background:#ede9fe}.scene-editor-dialog__element-id:active{background:#ddd6fe}.scene-editor-dialog__element-type{font-size:11px;color:var(--text-primary-color-subdued, #6b7280);flex-shrink:0}.scene-editor-dialog__element-label{font-size:11px;color:var(--text-primary-color, #374151);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.scene-editor-dialog__editor-wrap{flex:1;display:flex;overflow:hidden;padding:0;--editor-font: "Fira Code", "JetBrains Mono", "Cascadia Code", Menlo, Monaco, Consolas, monospace;--editor-font-size: 13px;--editor-line-height: 1.6;--editor-pad-top: 14px}.scene-editor-dialog__line-numbers{width:44px;flex-shrink:0;overflow:hidden;padding-top:var(--editor-pad-top);padding-bottom:var(--editor-pad-top);background:var(--button-gray-1, #f8fafc);border-right:1px solid var(--default-border-color, #e5e7eb);font-family:var(--editor-font);font-size:var(--editor-font-size);line-height:var(--editor-line-height);-webkit-user-select:none;user-select:none;text-align:right}.scene-editor-dialog__line-number{padding-right:10px;color:var(--text-primary-color-subdued, #94a3b8);font-size:11px}.scene-editor-dialog__editor{flex:1;height:100%;padding:var(--editor-pad-top) 16px var(--editor-pad-top) 12px;border:none;outline:none;resize:none;font-family:var(--editor-font);font-size:var(--editor-font-size);line-height:var(--editor-line-height);color:var(--text-primary-color, #1e293b);background:var(--island-bg-color, #fff);-moz-tab-size:2;tab-size:2}.scene-editor-dialog__editor:focus{outline:none}.scene-editor-dialog__footer{border-top:1px solid var(--default-border-color, #e5e7eb);padding:10px 16px;flex-shrink:0;display:flex;flex-direction:column;gap:8px}.scene-editor-dialog__error{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;border-radius:6px;background:#fef2f2;color:#b91c1c;font-size:13px}.scene-editor-dialog__error button{border:none;background:transparent;cursor:pointer;color:inherit;font-size:12px;flex-shrink:0}.scene-editor-dialog__footer-actions{display:flex;align-items:center;gap:8px;justify-content:flex-end}.scene-editor-dialog__hint{font-size:11px;color:var(--text-primary-color-subdued, #9ca3af);margin-right:auto}.scene-editor-dialog__btn{padding:6px 16px;border-radius:6px;font-size:13px;cursor:pointer;font-weight:500;border:1px solid transparent;transition:background .1s ease}.scene-editor-dialog__btn--secondary{background:var(--button-gray-1, #f3f4f6);color:var(--text-primary-color, #374151);border-color:var(--default-border-color, #e5e7eb)}.scene-editor-dialog__btn--secondary:hover{background:var(--button-gray-2, #e5e7eb)}.scene-editor-dialog__btn--primary{background:#7c3aed;color:#fff;border-color:#7c3aed}.scene-editor-dialog__btn--primary:hover{background:#6d28d9;border-color:#6d28d9}.presentation-overlay{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:9999;display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:12px;background:#141418d9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.12);box-shadow:0 4px 24px #00000080;color:#f0f0f0;font-family:inherit;font-size:13px;-webkit-user-select:none;user-select:none}.presentation-overlay__btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:8px;background:#ffffff1a;color:#f0f0f0;cursor:pointer;transition:background .15s ease,transform .1s ease}.presentation-overlay__btn:hover:not(:disabled){background:#fff3}.presentation-overlay__btn:active:not(:disabled){transform:scale(.92)}.presentation-overlay__btn:disabled{opacity:.35;cursor:default}.presentation-overlay__btn--exit{background:#dc3c3c4d;color:#ff8080}.presentation-overlay__btn--exit:hover:not(:disabled){background:#dc3c3c8c;color:#faa}.presentation-overlay__btn--laser-active{background:#ff3c3c40;color:#ff6060}.presentation-overlay__btn--laser-active:hover{background:#ff3c3c73}.presentation-overlay__btn--teacher{color:#a0c4ff}.presentation-overlay__btn--teacher:hover:not(:disabled){background:#64a0ff33;color:#c0d8ff}.presentation-overlay__btn--rec:hover:not(:disabled){background:#ff3c3c2e}.presentation-overlay__btn--stop-rec{width:26px;height:26px;border-radius:6px;background:#ff3c3c40;color:#ff8080}.presentation-overlay__btn--stop-rec:hover{background:#ff3c3c73;color:#faa}.presentation-overlay__btn--mic{color:#c4b5fd}.presentation-overlay__btn--mic:hover:not(:disabled){background:#7c3aed33;color:#ddd6fe}.presentation-overlay__btn--mic-listening{background:#7c3aed59;color:#a78bfa;animation:mic-pulse 1s ease-in-out infinite}.presentation-overlay__btn--mic-processing{background:#7c3aed40;color:#a78bfa;animation:mic-pulse .6s ease-in-out infinite}.presentation-overlay__btn--mic-answering{background:#7c3aed33;color:#a78bfa}.presentation-overlay__btn--stop-audio{width:26px;height:26px;border-radius:6px;background:#7c3aed40;color:#c4b5fd}.presentation-overlay__btn--stop-audio:hover{background:#7c3aed73;color:#ddd6fe}@keyframes mic-pulse{0%,to{opacity:1}50%{opacity:.5}}.presentation-overlay__audio-active{display:flex;align-items:center;gap:4px;padding:2px 4px 2px 6px;border-radius:8px;background:#7c3aed26;border:1px solid rgba(124,58,237,.25)}.presentation-overlay__audio-active-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;color:#a78bfa;animation:mic-pulse 1.2s ease-in-out infinite}.presentation-overlay__rec-active{display:flex;align-items:center;gap:6px;padding:2px 6px 2px 8px;border-radius:8px;background:#dc282833;border:1px solid rgba(255,80,80,.25)}.presentation-overlay__rec-timer{font-size:12px;font-weight:700;font-variant-numeric:tabular-nums;color:#ff7070;animation:rec-blink 1.2s ease-in-out infinite;letter-spacing:.02em}@keyframes rec-blink{0%,to{opacity:1}50%{opacity:.55}}.presentation-overlay__divider{width:1px;height:20px;background:#ffffff26;margin:0 2px}.presentation-overlay__info{display:flex;flex-direction:column;align-items:center;min-width:120px;gap:1px}.presentation-overlay__label{font-weight:600;font-size:13px;color:#f0f0f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.presentation-overlay__counter{font-size:11px;color:#ffffff80}.presentation-overlay__progress{width:80px;height:3px;background:#ffffff26;border-radius:2px;overflow:hidden}.presentation-overlay__progress-fill{height:100%;background:#a78bfa;border-radius:2px;transition:width .15s linear}.presentation-overlay__audio-spinner{display:inline-block;width:12px;height:12px;border:2px solid rgba(167,139,250,.3);border-top-color:#a78bfa;border-radius:50%;animation:pres-spin .7s linear infinite}@keyframes pres-spin{to{transform:rotate(360deg)}}.presentation-overlay__audio-warn{font-size:13px;color:#fbbf24;cursor:help;line-height:1}.presentation-overlay__hint{font-size:10px;color:#ffffff4d;margin-left:4px;white-space:nowrap}.presentation-overlay__tts-badge{position:fixed;bottom:80px;left:50%;transform:translate(-50%);z-index:9998;display:flex;align-items:center;gap:8px;padding:6px 16px;border-radius:16px;background:#00000080;color:#ffffffd9;font-size:13px;pointer-events:none;animation:pres-tts-badge-in .3s ease-out}.presentation-overlay__tts-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#ffffffd9;border-radius:50%;animation:pres-tts-spin .8s linear infinite}@keyframes pres-tts-badge-in{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes pres-tts-spin{to{transform:rotate(360deg)}}.presentation-overlay__subtitle{position:fixed;bottom:80px;left:50%;transform:translate(-50%);z-index:9998;max-width:75%;padding:10px 24px;background:#000000bf;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:8px;pointer-events:none;-webkit-user-select:none;user-select:none;animation:pres-subtitle-fade-in .2s ease-out}.presentation-overlay__subtitle-text{color:#fff;font-size:18px;line-height:1.5;text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.5)}@keyframes pres-subtitle-fade-in{0%{opacity:0;transform:translate(-50%) translateY(6px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.presentation-overlay__qa-subtitles{position:fixed;bottom:80px;left:50%;transform:translate(-50%);z-index:9998;display:flex;flex-direction:column;align-items:center;gap:8px;max-width:75%;pointer-events:none;animation:pres-qa-fade-in .25s ease-out}.presentation-overlay__qa-line{padding:10px 24px;border-radius:8px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;gap:8px;animation:pres-qa-slide-in .3s ease-out;transition:opacity .8s ease-out}.presentation-overlay__qa-line--user{background:#3b82f633;border:1px solid rgba(59,130,246,.3)}.presentation-overlay__qa-line--ai{background:#7c3aed33;border:1px solid rgba(124,58,237,.3)}.presentation-overlay__qa-line--fading{animation:pres-qa-fade-out 1.2s ease-out forwards}.presentation-overlay__qa-line-text{color:#fff;font-size:18px;line-height:1.5;text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.5)}.presentation-overlay__qa-line-status{color:#ffffff80;font-size:14px;animation:pres-dots 1.2s ease-in-out infinite}.presentation-overlay__qa-dismiss{position:fixed;bottom:80px;right:16px;z-index:9998;width:28px;height:28px;border:none;border-radius:50%;background:#ffffff1f;color:#ffffff80;font-size:18px;cursor:pointer;pointer-events:auto;display:flex;align-items:center;justify-content:center}.presentation-overlay__qa-dismiss:hover{background:#ffffff40;color:#fff}@keyframes pres-qa-fade-in{0%{opacity:0}to{opacity:1}}@keyframes pres-qa-slide-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes pres-qa-fade-out{0%{opacity:1}to{opacity:0}}@keyframes pres-dots{0%,to{opacity:1}50%{opacity:.3}}body[data-presenting=true]:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:9997;pointer-events:none;border:3px solid rgba(120,120,140,.18);border-radius:2px;box-shadow:inset 0 0 30px #0000001f,inset 0 0 2px #ffffff0f}body[data-presenting=true] .App-toolbar,body[data-presenting=true] .App-menu_top,body[data-presenting=true] .App-footer,body[data-presenting=true] .FixedSideContainer,body[data-presenting=true] .App-bottom-bar,body[data-presenting=true] .animation-frame-player,body[data-presenting=true] .recording-stop-fab,body[data-presenting=true] .lb-panel,body[data-presenting=true] .lb-panel__pills,body[data-presenting=true] .lb-panel-resize-handle,body[data-presenting=true] .teacher-avatar-container{display:none!important}.profile-editor__overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.profile-editor__dialog{background:#fff;width:780px;max-width:95vw;max-height:85vh;border-radius:12px;box-shadow:0 10px 25px #0003;display:flex;flex-direction:column;overflow:hidden}.profile-editor__header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid #eee;flex-shrink:0}.profile-editor__header h2{margin:0;font-size:1.1rem;font-weight:600;color:#333}.profile-editor__close-btn{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:6px;color:#666;transition:background-color .2s,color .2s}.profile-editor__close-btn:hover{background-color:#00000014;color:#333}.profile-editor__close-btn svg{width:20px;height:20px}.profile-editor__body{display:flex;flex:1;min-height:500px;overflow:hidden}.profile-editor__sidebar{width:200px;flex-shrink:0;border-right:1px solid #eee;padding:12px 8px;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.profile-editor__sidebar-item{display:flex;align-items:center;gap:10px;height:40px;padding:0 12px;border:none;border-radius:8px;background:transparent;cursor:pointer;font-size:.88rem;font-weight:500;color:#555;transition:background-color .15s,color .15s;text-align:left;width:100%}.profile-editor__sidebar-item:hover{background-color:#6965db14;color:#6965db}.profile-editor__sidebar-item--active{background-color:#6965db1f;color:#6965db;font-weight:600}.profile-editor__sidebar-item-icon{font-size:1.1rem;width:22px;text-align:center;flex-shrink:0}.profile-editor__sidebar-item-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-editor__sidebar-divider{border-top:1px solid #eee;margin:8px 12px}.profile-editor__content{flex:1;overflow-y:auto;padding:24px;min-width:0}.account-panel__header{display:flex;align-items:center;gap:1.25rem;margin-bottom:1.25rem;padding-bottom:1.25rem;border-bottom:1px solid #eee}.profile-avatar-wrap{position:relative;width:64px;height:64px;flex-shrink:0;cursor:pointer}.profile-avatar-wrap:hover .profile-avatar-hover{opacity:1}.profile-avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;display:block}.profile-avatar--letter{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.6rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#6965db,#9b59b6)}.profile-avatar-hover{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:#00000073;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s;color:#fff;font-size:.65rem;font-weight:600}.profile-username{color:#999;font-size:.9rem}.profile-username .profile-at{color:#bbb}.profile-field{margin-bottom:.85rem}.profile-field label{display:block;margin-bottom:.3rem;font-size:.8rem;color:#666;font-weight:500}.profile-input{width:100%;padding:.5rem .65rem;border:1px solid #ddd;border-radius:6px;font-size:.9rem;transition:border-color .2s;box-sizing:border-box}.profile-input:focus{outline:none;border-color:#6965db;box-shadow:0 0 0 3px #6965db1a}.profile-select{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.profile-section-title{font-size:.75rem;font-weight:600;color:#999;text-transform:uppercase;letter-spacing:.05em;margin:.5rem 0 .65rem;padding-bottom:.3rem;border-bottom:1px solid #eee;display:flex;align-items:center;gap:.5rem}.profile-section-title:first-child{margin-top:0}.profile-pw-toggle{background:none;border:none;cursor:pointer;font-size:.75rem;color:#6965db;font-weight:600;padding:0;margin-left:auto;text-transform:none;letter-spacing:0}.profile-pw-toggle:hover{text-decoration:underline}.profile-pw-btn{padding:.45rem .85rem;background-color:#6965db;color:#fff;border:none;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background-color .2s;margin-top:.35rem}.profile-pw-btn:hover{background-color:#5b57d1}.profile-pw-btn:disabled{background-color:#a5a3e6;cursor:not-allowed}.profile-save-btn{padding:.6rem;background-color:#6965db;color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background-color .2s}.profile-save-btn:hover{background-color:#5b57d1}.profile-save-btn:disabled{background-color:#a5a3e6;cursor:not-allowed}.profile-toast{padding:.5rem .75rem;border-radius:6px;margin-bottom:.65rem;font-size:.82rem;text-align:center}.profile-toast--error{background-color:#fee2e2;color:#dc2626}.profile-toast--success{background-color:#dcfce7;color:#16a34a}.profile-loading{text-align:center;color:#999;padding:3rem 0;font-size:.95rem}.profile-theme-btns{display:flex;gap:5px}.profile-theme-btn{flex:1;padding:.4rem .5rem;border:1px solid #ddd;border-radius:6px;background:transparent;font-size:.8rem;font-weight:500;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s;color:#555}.profile-theme-btn:hover{background-color:#6965db14;border-color:#6965db}.profile-theme-btn.active{background-color:#6965db;border-color:#6965db;color:#fff}.profile-sync-row{display:flex;align-items:center;gap:10px}.profile-toggle{position:relative;width:36px;height:20px;cursor:pointer}.profile-toggle input{opacity:0;width:0;height:0}.profile-toggle-slider{position:absolute;top:0;right:0;bottom:0;left:0;background-color:#ccc;border-radius:20px;transition:background-color .2s}.profile-toggle-slider:before{content:"";position:absolute;width:14px;height:14px;left:3px;bottom:3px;background-color:#fff;border-radius:50%;transition:transform .2s}.profile-toggle input:checked+.profile-toggle-slider{background-color:#6965db}.profile-toggle input:checked+.profile-toggle-slider:before{transform:translate(16px)}.profile-toggle-label{font-size:.8rem;color:#666}.usage-panel__cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:8px}.usage-panel__card{background:#f8f8fc;border:1px solid #e8e8ef;border-radius:10px;padding:14px 12px;text-align:center}.usage-panel__card-value{font-size:1.25rem;font-weight:700;color:#6965db;margin-bottom:4px}.usage-panel__card-label{font-size:.72rem;color:#888;text-transform:uppercase;letter-spacing:.03em}@media (max-width: 640px){.profile-editor__dialog{width:95vw}.profile-editor__body{flex-direction:column;min-height:auto}.profile-editor__sidebar{width:100%;flex-direction:row;border-right:none;border-bottom:1px solid #eee;padding:8px;overflow-x:auto;gap:4px}.profile-editor__sidebar-item{height:36px;padding:0 10px;white-space:nowrap;flex-shrink:0}.profile-editor__sidebar-divider{border-top:none;border-left:1px solid #eee;margin:0 4px;height:auto}.profile-editor__content{padding:16px}.usage-panel__cards{grid-template-columns:1fr}}:root[theme=dark] .profile-editor__dialog{background:#232329}:root[theme=dark] .profile-editor__header{border-bottom-color:#3e3e46}:root[theme=dark] .profile-editor__header h2{color:#e0e0e0}:root[theme=dark] .profile-editor__close-btn{color:#a0a0a0}:root[theme=dark] .profile-editor__close-btn:hover{background-color:#ffffff1a;color:#fff}:root[theme=dark] .profile-editor__sidebar{border-right-color:#3e3e46}:root[theme=dark] .profile-editor__sidebar-item{color:#bbb}:root[theme=dark] .profile-editor__sidebar-item:hover{background-color:#6965db26;color:#8b87f0}:root[theme=dark] .profile-editor__sidebar-item--active{background-color:#6965db33;color:#8b87f0}:root[theme=dark] .profile-editor__sidebar-divider{border-top-color:#3e3e46}:root[theme=dark] .account-panel__header{border-bottom-color:#3e3e46}:root[theme=dark] .profile-username{color:#888}:root[theme=dark] .profile-username .profile-at{color:#666}:root[theme=dark] .profile-field label{color:#a0a0a0}:root[theme=dark] .profile-input,:root[theme=dark] .profile-select{background:#2c2c35;border-color:#3e3e46;color:#fff}:root[theme=dark] .profile-section-title{color:#777;border-bottom-color:#3e3e46}:root[theme=dark] .profile-toast--error{background-color:#3b1515;color:#f87171}:root[theme=dark] .profile-toast--success{background-color:#14301d;color:#4ade80}:root[theme=dark] .profile-loading{color:#777}:root[theme=dark] .profile-theme-btn{border-color:#3e3e46;color:#bbb}:root[theme=dark] .profile-theme-btn:hover{background-color:#6965db26;border-color:#6965db}:root[theme=dark] .profile-theme-btn.active{background-color:#6965db;border-color:#6965db;color:#fff}:root[theme=dark] .profile-toggle-slider{background-color:#555}:root[theme=dark] .profile-toggle-label{color:#aaa}:root[theme=dark] .dropdown-select__language{background:#2c2c35;border-color:#3e3e46;color:#fff}:root[theme=dark] .usage-panel__card{background:#2a2a35;border-color:#3e3e46}:root[theme=dark] .usage-panel__card-value{color:#8b87f0}:root[theme=dark] .usage-panel__card-label{color:#888}.recordings-history-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.recordings-history-dialog{background:#fff;width:500px;max-width:90%;max-height:80vh;border-radius:12px;box-shadow:0 10px 25px #0000001a;display:flex;flex-direction:column;overflow:hidden}.recordings-history-dialog .dialog-header{padding:16px 20px;border-bottom:1px solid #ebebeb;display:flex;justify-content:space-between;align-items:center}.recordings-history-dialog .dialog-header h3{margin:0;font-size:18px}.recordings-history-dialog .dialog-header .close-button{background:none;border:none;font-size:24px;cursor:pointer;color:#adb5bd}.recordings-history-dialog .dialog-header .close-button:hover{color:#495057}.recordings-history-dialog .dialog-content{flex:1;overflow-y:auto;padding:10px 0}.recordings-history-dialog .dialog-content .loading,.recordings-history-dialog .dialog-content .empty{padding:40px;text-align:center;color:#868e96}.recordings-history-dialog .dialog-content .recordings-list .recording-item{padding:12px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f8f9fa}.recordings-history-dialog .dialog-content .recordings-list .recording-item:last-child{border-bottom:none}.recordings-history-dialog .dialog-content .recordings-list .recording-item:hover{background:#f8f9fa}.recordings-history-dialog .dialog-content .recordings-list .recording-item .recording-info{display:flex;flex-direction:column}.recordings-history-dialog .dialog-content .recordings-list .recording-item .recording-info .recording-title{font-weight:600;color:#212529;font-size:14px}.recordings-history-dialog .dialog-content .recordings-list .recording-item .recording-info .recording-meta{font-size:12px;color:#868e96;margin-top:2px}.recordings-history-dialog .dialog-content .recordings-list .recording-item .recording-actions{display:flex;gap:8px}.recordings-history-dialog .dialog-content .recordings-list .recording-item .play-button{padding:6px 16px;border-radius:6px;border:1px solid #dee2e6;background:#fff;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.recordings-history-dialog .dialog-content .recordings-list .recording-item .play-button:hover{background:#e9ecef;border-color:#ced4da}.recordings-history-dialog .dialog-content .recordings-list .recording-item .delete-button{padding:6px 12px;border-radius:6px;border:1px solid #ffcfcf;background:#fff;color:#fa5252;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.recordings-history-dialog .dialog-content .recordings-list .recording-item .delete-button:hover{background:#fff5f5;border-color:#ffc9c9;color:#f03e3e}.video-player-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:2100}.video-player-container{width:80%;max-width:1000px;display:flex;flex-direction:column;gap:20px}.video-player-container video{width:100%;border-radius:8px;box-shadow:0 0 40px #00000080}.video-player-container .close-player{align-self:center;padding:8px 24px;border-radius:20px;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;cursor:pointer}.video-player-container .close-player:hover{background:#ffffff1a}:root{--safe-area-inset-top: env(safe-area-inset-top, 0px);--safe-area-inset-right: env(safe-area-inset-right, 0px);--safe-area-inset-bottom: env(safe-area-inset-bottom, 0px);--safe-area-inset-left: env(safe-area-inset-left, 0px)}body{overscroll-behavior:none}.excalidraw{--color-primary-contrast-offset: #625ee0}.excalidraw.theme--dark{--color-primary-contrast-offset: #726dff}.excalidraw .footer-center{justify-content:flex-end;margin-top:auto;margin-bottom:auto;margin-inline-start:auto}.excalidraw .layer-ui__wrapper__footer-right,.excalidraw .HelpBtn{display:none!important}.excalidraw .encrypted-icon{border-radius:var(--space-factor);color:var(--color-primary);margin-top:auto;margin-bottom:auto;margin-inline-start:auto;margin-inline-end:.6em;z-index:var(--zIndex-layerUI)}.excalidraw .encrypted-icon svg{width:1.2rem;height:1.2rem}.excalidraw .dropdown-menu-container .dropdown-menu-item.active-collab{background-color:#ecfdf5;color:#064e3c}.excalidraw .dropdown-menu-container .dropdown-menu-item.highlighted{color:var(--color-promo);font-weight:700}.excalidraw .dropdown-menu-container .dropdown-menu-item.highlighted .dropdown-menu-item__icon g{stroke-width:2}.excalidraw.theme--dark .dropdown-menu-item.active-collab{background-color:#064e3c;color:#ecfdf5}.excalidraw .alert{pointer-events:none;position:absolute;top:6.5rem;left:50%;transform:translate(-50%);padding:.5rem 1rem;font-size:.875rem;text-align:center;line-height:1.5;border-radius:var(--border-radius-md);z-index:6;white-space:pre}.excalidraw .alert--warning{background-color:var(--color-warning);color:var(--color-text-warning)}.excalidraw .alert--danger{background-color:var(--color-danger-dark);color:var(--color-danger-text)}.excalidraw-app.is-collaborating [data-testid=clear-canvas-button]{display:none}.plus-banner{display:flex;justify-content:center;cursor:pointer;align-items:center;border:1px solid var(--color-primary);padding:.5rem .875rem;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;height:var(--lg-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}.plus-banner:active{box-shadow:0 0 0 1px var(--color-brand-active)}.plus-banner:hover{background-color:var(--color-primary);color:#fff!important}.plus-banner:active{background-color:var(--color-primary-darker)}.theme--dark .plus-banner:hover{color:#000!important}.figura-marketing{--fg-ink: #1B1611;--fg-paper: #F4EFE4;--fg-accent: #C0462A;--fg-accent-hover: #DC8A2A;--fg-surface: #FAF7F0;--fg-surface-2: #EFE9DD;--fg-border: rgba(27, 22, 17, .12);--fg-border-strong: rgba(27, 22, 17, .24);--fg-muted: rgba(27, 22, 17, .6);--fg-dim-1: #C84838;--fg-dim-2: #DC8A2A;--fg-dim-3: #D2A52A;--fg-dim-4: #5A8F5A;--fg-dim-5: #3A6EA8;--fg-shadow: 0 1px 3px rgba(27, 22, 17, .08), 0 4px 12px rgba(27, 22, 17, .04);--fg-focus-ring: rgba(192, 70, 42, .35);background:var(--fg-paper);color:var(--fg-ink);font-family:Inter,Noto Sans SC,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif;min-height:100vh;display:flex;flex-direction:column;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.figura-marketing.theme--dark,.theme--dark .figura-marketing{--fg-ink: #F4EFE4;--fg-paper: #1B1611;--fg-accent: #DC8A2A;--fg-accent-hover: #D2A52A;--fg-surface: #2A2520;--fg-surface-2: #1F1B16;--fg-border: rgba(244, 239, 228, .12);--fg-border-strong: rgba(244, 239, 228, .24);--fg-muted: rgba(244, 239, 228, .6);--fg-shadow: 0 1px 3px rgba(0, 0, 0, .4), 0 4px 12px rgba(0, 0, 0, .2);--fg-focus-ring: rgba(220, 138, 42, .45)}.figura-marketing h1,.figura-marketing h2,.figura-marketing h3{font-family:"Source Serif Pro","Noto Serif SC",Georgia,Times New Roman,serif;font-weight:700;line-height:1.2;letter-spacing:-.01em;margin:0 0 16px;color:var(--fg-ink)}.figura-marketing h1{font-size:40px}.figura-marketing h2{font-size:28px;margin-top:32px}.figura-marketing h3{font-size:20px;margin-top:24px;font-weight:600}.figura-marketing p{font-size:16px;margin:0 0 16px;color:var(--fg-ink)}.figura-marketing a{color:var(--fg-accent);text-decoration:none}.figura-marketing a:hover{color:var(--fg-accent-hover);text-decoration:underline}.figura-marketing code{font-family:JetBrains Mono,ui-monospace,SF Mono,Menlo,monospace;background:var(--fg-surface);padding:2px 6px;border-radius:4px;font-size:.9em}.figura-marketing *:focus-visible{outline:2px solid var(--fg-focus-ring);outline-offset:2px;border-radius:4px}.figura-marketing__main{flex:1;width:100%;max-width:1180px;margin:0 auto;padding:48px 24px;box-sizing:border-box}.figura-marketing__nav{border-bottom:1px solid var(--fg-border);background:var(--fg-paper);position:sticky;top:0;z-index:100}.figura-marketing__nav-inner{max-width:1180px;margin:0 auto;padding:12px 24px;display:flex;align-items:center;gap:24px}.figura-marketing__brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--fg-ink);font-weight:700;font-size:18px;letter-spacing:.5px}.figura-marketing__brand:hover{color:var(--fg-accent)}.figura-marketing__logo-img{display:block}.figura-marketing__wordmark{height:36px;width:auto;transition:opacity .15s ease}.figura-marketing__wordmark--light{display:block}.figura-marketing__wordmark--dark,.figura-marketing.theme--dark .figura-marketing__wordmark--light,.theme--dark .figura-marketing .figura-marketing__wordmark--light{display:none}.figura-marketing.theme--dark .figura-marketing__wordmark--dark,.theme--dark .figura-marketing .figura-marketing__wordmark--dark{display:block}.figura-marketing__brand:hover .figura-marketing__wordmark{opacity:.82}.figura-marketing__nav-links{display:flex;gap:24px}.figura-marketing__nav-links--desktop{flex:1;justify-content:center}.figura-marketing__nav-links--mobile{display:none;flex-direction:column;padding:12px 24px;border-top:1px solid var(--fg-border);gap:12px}.figura-marketing__nav-link{color:var(--fg-ink);text-decoration:none;font-size:14px;font-weight:500}.figura-marketing__nav-link:hover{color:var(--fg-accent)}.figura-marketing__nav-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.figura-marketing__cta{display:inline-block;padding:8px 18px;border-radius:6px;border:1px solid var(--fg-accent);background:var(--fg-accent);font-weight:600;font-size:14px;text-decoration:none;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.figura-marketing__cta,.figura-marketing__cta:link,.figura-marketing__cta:visited,.figura-marketing__cta:hover,.figura-marketing__cta:active{color:var(--fg-paper)}.figura-marketing__cta:hover{background:var(--fg-accent-hover);border-color:var(--fg-accent-hover);text-decoration:none}.figura-marketing__cta--ghost{background:transparent}.figura-marketing__cta--ghost,.figura-marketing__cta--ghost:link,.figura-marketing__cta--ghost:visited{color:var(--fg-accent)}.figura-marketing__cta--ghost:hover,.figura-marketing__cta--ghost:active{background:var(--fg-accent);color:var(--fg-paper);text-decoration:none}.figura-marketing__hamburger{display:none;background:transparent;border:1px solid var(--fg-border);border-radius:6px;width:36px;height:36px;cursor:pointer;color:var(--fg-ink);font-size:18px}.figura-marketing__mobile-banner{display:flex;align-items:flex-start;gap:8px;padding:12px 16px;background:var(--fg-surface);border-bottom:1px solid var(--fg-border);font-size:13px}.figura-marketing__mobile-banner-icon{flex-shrink:0;font-size:16px}.figura-marketing__mobile-banner-text{flex:1;line-height:1.5}.figura-marketing__mobile-banner-link{color:var(--fg-accent);text-decoration:underline}.figura-marketing__mobile-banner-close{background:transparent;border:none;cursor:pointer;font-size:20px;line-height:1;color:var(--fg-muted);padding:0 4px}.figura-marketing__mobile-banner-close:hover{color:var(--fg-ink)}.figura-marketing__footer{border-top:1px solid var(--fg-border);padding:32px 24px;background:var(--fg-paper)}.figura-marketing__footer-inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:24px}.figura-marketing__footer-brand{display:flex;flex-direction:column;font-size:13px}.figura-marketing__footer-name{font-weight:700;color:var(--fg-ink)}.figura-marketing__footer-tagline{color:var(--fg-muted);font-size:12px}.figura-marketing__footer-links{display:flex;gap:24px;justify-content:center}.figura-marketing__footer-links a{color:var(--fg-muted);font-size:13px;text-decoration:none}.figura-marketing__footer-links a:hover{color:var(--fg-accent)}.figura-marketing__footer-copyright{text-align:right;font-size:12px;color:var(--fg-muted)}.figura-marketing__icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;width:auto;min-width:36px;height:36px;padding:0 8px;background:transparent;border:1px solid var(--fg-border);border-radius:6px;cursor:pointer;color:var(--fg-ink);font-size:13px;font-weight:500;transition:background .15s ease,border-color .15s ease,color .15s ease}.figura-marketing__icon-btn:hover{background:var(--fg-surface);border-color:var(--fg-border-strong);color:var(--fg-accent)}.figura-marketing__lang{position:relative}.figura-marketing__lang-btn{gap:6px}.figura-marketing__lang-code{font-weight:600;letter-spacing:.5px}.figura-marketing__lang-menu{position:absolute;top:calc(100% + 6px);right:0;background:var(--fg-paper);border:1px solid var(--fg-border);border-radius:6px;padding:4px;list-style:none;margin:0;box-shadow:var(--fg-shadow);z-index:200;min-width:120px}.figura-marketing__lang-item{width:100%;background:transparent;border:none;padding:8px 12px;text-align:left;cursor:pointer;color:var(--fg-ink);font-size:13px;border-radius:4px}.figura-marketing__lang-item:hover{background:var(--fg-surface);color:var(--fg-accent)}.figura-marketing__lang-item--active{color:var(--fg-accent);font-weight:600}.figura-marketing__page-stub{text-align:center;padding:96px 24px;color:var(--fg-muted);max-width:720px;margin:0 auto}.figura-marketing__page-stub h1{font-family:"Source Serif Pro","Noto Serif SC",Georgia,Times New Roman,serif;font-size:36px;color:var(--fg-ink);margin-bottom:16px;font-weight:700;line-height:1.2}.figura-marketing__page-stub p{font-size:17px;line-height:1.6;color:var(--fg-muted)}.figura-marketing__nav-links--mobile{animation:figura-slide-in .18s ease-out}.figura-marketing__section-header{text-align:center;max-width:720px;margin:0 auto 48px}.figura-marketing__section-header h2{font-size:32px;margin-bottom:12px}.figura-marketing__section-header p{font-size:17px;color:var(--fg-muted);margin:0}.figura-marketing__hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center;padding:64px 0 96px}.figura-marketing__hero-content{max-width:540px}.figura-marketing__hero-title{font-size:56px;line-height:1.05;letter-spacing:-.02em;margin:0 0 24px}.figura-marketing__hero-subtitle{font-size:19px;color:var(--fg-muted);line-height:1.55;margin:0 0 32px}.figura-marketing__hero-actions{display:flex;flex-wrap:wrap;gap:12px}.figura-marketing__hero-visual{display:flex;justify-content:center;align-items:center}.figura-marketing__prism{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;width:100%;max-width:460px;aspect-ratio:1.2/1;padding:24px;background:var(--fg-surface);border:1px solid var(--fg-border);border-radius:12px;box-shadow:var(--fg-shadow)}.figura-marketing__prism-band{border-radius:8px;display:flex;align-items:flex-end;padding:12px 8px;color:#fff;font-family:Inter,Noto Sans SC,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif;font-size:11px;font-weight:600;letter-spacing:.3px;line-height:1.2;transition:transform .2s ease}.figura-marketing__prism-band:hover{transform:translateY(-4px)}.figura-marketing__prism-band--1{background:var(--fg-dim-1)}.figura-marketing__prism-band--2{background:var(--fg-dim-2)}.figura-marketing__prism-band--3{background:var(--fg-dim-3)}.figura-marketing__prism-band--4{background:var(--fg-dim-4)}.figura-marketing__prism-band--5{background:var(--fg-dim-5)}.figura-marketing__prism-band-label{writing-mode:vertical-rl;transform:rotate(180deg)}.figura-marketing__cta--lg{padding:12px 24px;font-size:15px}.figura-marketing__features{padding:64px 0}.figura-marketing__features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}.figura-marketing__feature-card{display:block;padding:28px;background:var(--fg-surface);border:1px solid var(--fg-border);border-radius:8px;text-decoration:none;color:inherit;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.figura-marketing__feature-card:hover{transform:translateY(-2px);border-color:var(--fg-accent);box-shadow:var(--fg-shadow);text-decoration:none}.figura-marketing__feature-icon{display:block;font-size:32px;margin-bottom:12px;line-height:1}.figura-marketing__feature-title{font-size:18px;margin:0 0 8px;font-weight:600;color:var(--fg-ink)}.figura-marketing__feature-body{font-size:14px;color:var(--fg-muted);margin:0;line-height:1.55}.figura-marketing__venues{background:var(--fg-surface-2);margin:0 -24px;padding:64px 24px;border-radius:12px}.figura-marketing__venue-list{list-style:none;margin:0 auto;padding:0;max-width:720px;display:flex;flex-direction:column;gap:1px;background:var(--fg-border);border:1px solid var(--fg-border);border-radius:8px;overflow:hidden}.figura-marketing__venue-row{display:grid;grid-template-columns:16px 140px 1fr;align-items:center;gap:16px;padding:16px 20px;background:var(--fg-paper);font-size:14px}.figura-marketing__venue-swatch{width:12px;height:12px;border-radius:3px}.figura-marketing__venue-swatch--1{background:var(--fg-dim-1)}.figura-marketing__venue-swatch--2{background:var(--fg-dim-2)}.figura-marketing__venue-swatch--3{background:var(--fg-dim-3)}.figura-marketing__venue-swatch--4{background:var(--fg-dim-4)}.figura-marketing__venue-swatch--5{background:var(--fg-dim-5)}.figura-marketing__venue-name{font-weight:600;color:var(--fg-ink)}.figura-marketing__venue-spec{color:var(--fg-muted);font-size:13px}.figura-marketing__venues-link{text-align:center;margin-top:24px}.figura-marketing__venues-link a{font-weight:600}.figura-marketing__bottom-cta{padding:96px 24px;text-align:center;margin-top:64px}.figura-marketing__bottom-cta h2{font-size:36px;margin-bottom:16px}.figura-marketing__bottom-cta p{font-size:17px;color:var(--fg-muted);max-width:520px;margin:0 auto 32px}.figura-marketing__bottom-cta-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.figura-marketing__page-hero{text-align:center;padding:48px 0 64px;max-width:720px;margin:0 auto}.figura-marketing__page-hero h1{font-size:44px;line-height:1.15;margin-bottom:16px}.figura-marketing__page-hero p{font-size:17px;color:var(--fg-muted);line-height:1.6;margin:0}.figura-marketing__feature-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center;padding:64px 0;border-top:1px solid var(--fg-border)}.figura-marketing__feature-section--reverse{direction:rtl}.figura-marketing__feature-section--reverse>*{direction:ltr}.figura-marketing__feature-eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:1.5px;font-size:11px;font-weight:700;color:var(--fg-accent);margin-bottom:12px}.figura-marketing__feature-h{font-size:32px;margin:0 0 16px;line-height:1.2}.figura-marketing__feature-bullets{margin:16px 0 0;padding-left:0;list-style:none}.figura-marketing__feature-bullets li{position:relative;padding-left:22px;margin-bottom:8px;color:var(--fg-ink);line-height:1.55}.figura-marketing__feature-bullets li:before{content:"→";position:absolute;left:0;color:var(--fg-accent);font-weight:700}.figura-marketing__feature-visual{aspect-ratio:4/3;border-radius:12px;display:flex;align-items:center;justify-content:center;padding:24px;box-shadow:var(--fg-shadow);border:1px solid var(--fg-border)}.figura-marketing__feature-visual--1{background:linear-gradient(135deg,#c84838,#e16a55)}.figura-marketing__feature-visual--2{background:linear-gradient(135deg,#dc8a2a,#efae5c)}.figura-marketing__feature-visual--3{background:linear-gradient(135deg,#d2a52a,#eac25c)}.figura-marketing__feature-visual--4{background:linear-gradient(135deg,#5a8f5a,#82b582)}.figura-marketing__feature-visual--5{background:linear-gradient(135deg,#3a6ea8,#6b9bd2)}.figura-marketing__feature-visual-inner{text-align:center;color:#fff;max-width:280px}.figura-marketing__feature-visual-caption{font-family:"Source Serif Pro","Noto Serif SC",Georgia,Times New Roman,serif;font-size:18px;font-weight:600;line-height:1.3;text-shadow:0 1px 4px rgba(0,0,0,.2)}.figura-marketing__venues-table-wrap{overflow-x:auto;margin-bottom:64px;border:1px solid var(--fg-border);border-radius:8px}.figura-marketing__venues-table{width:100%;border-collapse:collapse;font-size:13px}.figura-marketing__venues-table th,.figura-marketing__venues-table td{text-align:left;padding:14px 16px;vertical-align:top;border-bottom:1px solid var(--fg-border)}.figura-marketing__venues-table th{background:var(--fg-surface);font-weight:600;color:var(--fg-ink);font-size:12px;text-transform:uppercase;letter-spacing:.5px}.figura-marketing__venues-table tr:last-child td{border-bottom:none}.figura-marketing__venues-table-name{font-weight:600;color:var(--fg-ink);white-space:nowrap}.figura-marketing__venues-detail{margin-top:64px}.figura-marketing__venues-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.figura-marketing__venue-card{background:var(--fg-surface);border:1px solid var(--fg-border);border-radius:8px;position:relative;padding:20px 20px 20px 36px}.figura-marketing__venue-card .figura-marketing__venue-swatch{position:absolute;left:16px;top:24px}.figura-marketing__venue-card-title{font-size:16px;margin:0 0 8px;font-weight:600}.figura-marketing__venue-card-notes{font-size:13px;color:var(--fg-muted);margin:0;line-height:1.5}.figura-marketing__venues-custom{margin-top:64px}.figura-marketing__pricing-tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin-bottom:96px}.figura-marketing__pricing-tier{background:var(--fg-surface);border:1px solid var(--fg-border);border-radius:12px;padding:32px 24px;display:flex;flex-direction:column;position:relative;transition:transform .15s ease,box-shadow .15s ease}.figura-marketing__pricing-tier--highlight{border-color:var(--fg-accent);transform:scale(1.02);box-shadow:var(--fg-shadow)}.figura-marketing__pricing-tier--highlight:hover{transform:scale(1.03) translateY(-2px)}.figura-marketing__pricing-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--fg-accent);color:#fff;padding:4px 12px;border-radius:12px;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.figura-marketing__pricing-tier-name{font-family:"Source Serif Pro","Noto Serif SC",Georgia,Times New Roman,serif;font-size:24px;margin:0 0 4px;font-weight:700}.figura-marketing__pricing-tier-tagline{color:var(--fg-muted);font-size:14px;margin:0 0 24px}.figura-marketing__pricing-price{margin-bottom:24px}.figura-marketing__pricing-price-amount{display:block;font-size:36px;font-weight:700;color:var(--fg-ink);font-family:"Source Serif Pro","Noto Serif SC",Georgia,Times New Roman,serif}.figura-marketing__pricing-price-note{display:block;font-size:12px;color:var(--fg-muted);margin-top:4px}.figura-marketing__pricing-features{list-style:none;margin:0 0 24px;padding:0;flex:1}.figura-marketing__pricing-features li{padding:8px 0 8px 22px;position:relative;font-size:14px;line-height:1.5}.figura-marketing__pricing-features li:before{content:"✓";position:absolute;left:0;color:var(--fg-accent);font-weight:700}.figura-marketing__pricing-tier-cta{text-align:center}.figura-marketing__pricing-faq{max-width:760px;margin:0 auto}.figura-marketing__faq-list{margin:0;padding:0}.figura-marketing__faq-item{border-bottom:1px solid var(--fg-border);padding:24px 0}.figura-marketing__faq-item:last-child{border-bottom:none}.figura-marketing__faq-q{font-size:17px;font-weight:600;color:var(--fg-ink);margin-bottom:8px}.figura-marketing__faq-a{margin:0;color:var(--fg-muted);font-size:15px;line-height:1.6}.figura-marketing__downloads-banner{padding:12px 16px;background:var(--fg-surface);border:1px solid var(--fg-border);border-radius:6px;font-size:14px;color:var(--fg-ink);margin:0 0 24px}.figura-marketing__policy-page{max-width:760px;margin:0 auto}.figura-marketing__policy-disclaimer{background:#dc8a2a1a;border-left:4px solid var(--fg-dim-2);padding:16px 20px;border-radius:6px;font-size:14px;line-height:1.6;margin-bottom:32px}.figura-marketing__policy-disclaimer code{background:var(--fg-surface);padding:1px 6px;font-size:12px}.figura-marketing__policy-toc{background:var(--fg-surface);border:1px solid var(--fg-border);border-radius:8px;padding:20px 24px;margin-bottom:48px}.figura-marketing__policy-toc strong{display:block;font-size:12px;text-transform:uppercase;letter-spacing:1px;color:var(--fg-muted);margin-bottom:12px}.figura-marketing__policy-toc ol{margin:0;padding-left:20px;columns:2;column-gap:32px}.figura-marketing__policy-toc li{margin-bottom:4px;font-size:14px}.figura-marketing__policy-toc a{color:var(--fg-ink);text-decoration:none}.figura-marketing__policy-toc a:hover{color:var(--fg-accent);text-decoration:underline}.figura-marketing__policy-section{padding:32px 0;border-bottom:1px solid var(--fg-border);scroll-margin-top:80px}.figura-marketing__policy-section:last-child{border-bottom:none}.figura-marketing__policy-section h2{font-size:22px;margin:0 0 16px;font-family:"Source Serif Pro","Noto Serif SC",Georgia,Times New Roman,serif}.figura-marketing__policy-section p,.figura-marketing__policy-section li{font-size:15px;line-height:1.7;color:var(--fg-ink)}.figura-marketing__policy-section p{margin:0 0 12px}.figura-marketing__policy-section ul{margin:8px 0 16px;padding-left:22px}.figura-marketing__policy-section li{margin-bottom:6px}.figura-marketing__policy-section code{font-size:12px;background:var(--fg-surface);padding:1px 6px;color:var(--fg-accent)}.figura-marketing__contact-page{max-width:960px;margin:0 auto}.figura-marketing__contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:48px;margin-top:32px}.figura-marketing__contact-info h2{font-size:22px;margin:0 0 24px;font-family:"Source Serif Pro","Noto Serif SC",Georgia,Times New Roman,serif}.figura-marketing__contact-info-item{margin-bottom:20px}.figura-marketing__contact-info-item a{font-weight:500;word-break:break-all}.figura-marketing__contact-info-label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:1px;color:var(--fg-muted);margin-bottom:4px}.figura-marketing__contact-info-note{margin-top:32px;padding:16px;background:var(--fg-surface);border-radius:6px;font-size:13px;line-height:1.55;color:var(--fg-muted)}.figura-marketing__contact-info-note strong{color:var(--fg-ink)}.figura-marketing__contact-form{background:var(--fg-surface);border:1px solid var(--fg-border);border-radius:8px;padding:32px}.figura-marketing__contact-form h2{font-size:22px;margin:0 0 24px;font-family:"Source Serif Pro","Noto Serif SC",Georgia,Times New Roman,serif}.figura-marketing__contact-label{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;font-size:13px;font-weight:600;color:var(--fg-ink)}.figura-marketing__contact-label input,.figura-marketing__contact-label textarea{font-family:Inter,Noto Sans SC,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif;font-size:14px;padding:10px 12px;border:1px solid var(--fg-border);border-radius:6px;background:var(--fg-paper);color:var(--fg-ink);font-weight:400}.figura-marketing__contact-label input:focus,.figura-marketing__contact-label textarea:focus{outline:none;border-color:var(--fg-accent);box-shadow:0 0 0 3px var(--fg-focus-ring)}.figura-marketing__contact-label textarea{resize:vertical;min-height:100px}.figura-marketing__contact-submit{width:100%;margin-top:8px}.figura-marketing__contact-submit:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.figura-marketing__contact-form-note{margin:16px 0 0;font-size:12px;color:var(--fg-muted);line-height:1.5}@media (max-width: 768px){.figura-marketing__page-hero{padding:24px 0 32px}.figura-marketing__page-hero h1{font-size:32px}.figura-marketing__page-hero p{font-size:15px}.figura-marketing__feature-section{grid-template-columns:1fr;gap:24px;padding:32px 0}.figura-marketing__feature-section--reverse{direction:ltr}.figura-marketing__feature-h{font-size:24px}.figura-marketing__feature-visual{aspect-ratio:16/9}.figura-marketing__venues-table{font-size:12px}.figura-marketing__venues-table th,.figura-marketing__venues-table td{padding:10px 12px}.figura-marketing__pricing-tiers{grid-template-columns:1fr}.figura-marketing__pricing-tier--highlight{transform:none}.figura-marketing__pricing-tier{padding:24px 20px}.figura-marketing__pricing-price-amount{font-size:30px}.figura-marketing__policy-toc ol{columns:1}.figura-marketing__policy-section h2{font-size:18px}.figura-marketing__policy-section{padding:24px 0}.figura-marketing__contact-grid{grid-template-columns:1fr;gap:32px}.figura-marketing__contact-form{padding:20px}}@media (max-width: 768px){.figura-marketing__nav-links--desktop{display:none}.figura-marketing__nav-links--mobile{display:flex}.figura-marketing__hamburger{display:inline-flex;align-items:center;justify-content:center}.figura-marketing__nav-actions .figura-marketing__cta{font-size:13px;padding:6px 12px}.figura-marketing__main{padding:24px 16px}.figura-marketing__footer-inner{grid-template-columns:1fr;text-align:center}.figura-marketing__footer-links{justify-content:center}.figura-marketing__footer-copyright{text-align:center}.figura-marketing__hero{grid-template-columns:1fr;gap:48px;padding:32px 0 64px;text-align:center}.figura-marketing__hero-title{font-size:36px}.figura-marketing__hero-subtitle{font-size:16px}.figura-marketing__hero-actions{justify-content:center}.figura-marketing__prism{max-width:320px;aspect-ratio:1.4/1;padding:16px}.figura-marketing__prism-band{padding:8px 4px;font-size:9px}.figura-marketing__features{padding:48px 0}.figura-marketing__features-grid{grid-template-columns:1fr}.figura-marketing__feature-card{padding:20px}.figura-marketing__venues{padding:48px 16px;margin:0 -16px}.figura-marketing__venue-row{grid-template-columns:12px 1fr;gap:12px;padding:14px 16px}.figura-marketing__venue-spec{grid-column:2;margin-top:4px}.figura-marketing__bottom-cta{padding:64px 16px;margin-top:32px}.figura-marketing__bottom-cta h2{font-size:26px}.figura-marketing__bottom-cta-actions{justify-content:center}.figura-marketing__section-header h2{font-size:26px}.figura-marketing__lang-code{display:none}}@keyframes figura-slide-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}html.theme--dark body{background:#1b1611;color:#f4efe4}html.theme--light body{background:#f4efe4;color:#1b1611}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.app-download-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#00000080;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.app-download-overlay--inline{position:static;inset:auto;z-index:auto;display:block;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}.app-download-overlay--inline .app-download-container{width:100%;max-width:100%;max-height:none;box-shadow:none;padding:0;border-radius:0;background:transparent;animation:none}.app-download-container{position:relative;max-width:960px;width:90vw;max-height:90vh;overflow-y:auto;background:#fff;border-radius:20px;box-shadow:0 20px 60px #0003,0 0 0 1px #0000000d;padding:48px 40px 40px;animation:fadeSlideUp .4s ease-out}.app-download-close{position:absolute;top:16px;right:16px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;background:#0000000f;border-radius:50%;cursor:pointer;color:#555;transition:background .2s,color .2s}.app-download-close:hover{background:#0000001f;color:#222}.app-download-header{text-align:center;margin-bottom:40px}.app-download-header__logo{border-radius:16px;box-shadow:0 4px 16px #0000001a;margin-bottom:16px}.app-download-header__title{font-size:28px;font-weight:700;color:#1a1a2e;margin:0 0 8px}.app-download-header__badge{display:inline-block;padding:3px 12px;background:var(--fg-accent, #C0462A);color:var(--fg-paper, #F4EFE4);font-size:12px;font-weight:600;border-radius:20px;letter-spacing:.5px;animation:pulse 3s ease-in-out infinite}.app-download-header__subtitle{margin:12px 0 0;font-size:15px;color:#666}.app-download-cards{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.app-download-card{flex:1 1 250px;max-width:280px;display:flex;flex-direction:column;align-items:center;text-align:center;padding:32px 24px 28px;border:1px solid var(--fg-border, #e8e8ef);border-radius:16px;background:var(--fg-surface, #fafafe);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;animation:fadeSlideUp .5s ease-out both}.app-download-card:hover{transform:translateY(-4px);border-color:var(--fg-accent, #C0462A);box-shadow:0 12px 32px #c0462a2e}.app-download-card__icon{width:64px;height:64px;display:flex;align-items:center;justify-content:center;color:var(--fg-accent, #C0462A);margin-bottom:16px;animation:float 3s ease-in-out infinite}.app-download-card__name{font-size:20px;font-weight:600;color:var(--fg-ink, #1a1a2e);margin:0 0 8px}.app-download-card__tag{display:inline-block;padding:2px 10px;margin-bottom:10px;background:var(--fg-accent, #C0462A);color:var(--fg-paper, #F4EFE4);font-size:11px;font-weight:600;border-radius:20px;letter-spacing:.4px}.app-download-card__info{display:flex;flex-direction:column;gap:4px;margin-bottom:20px;font-size:13px;color:var(--fg-muted, #888)}.app-download-card__info span:first-child{font-weight:600;color:var(--fg-ink, #555)}.app-download-btn{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:10px 20px;border:1px solid var(--fg-accent, #C0462A);border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;background:var(--fg-accent, #C0462A);transition:transform .2s,box-shadow .2s,background .2s,border-color .2s;margin-top:auto}.app-download-btn,.app-download-btn:link,.app-download-btn:visited,.app-download-btn:hover,.app-download-btn:active{color:var(--fg-paper, #F4EFE4)!important}.app-download-btn:hover{transform:translateY(-1px);background:var(--fg-accent-hover, #A53A22);border-color:var(--fg-accent-hover, #A53A22);box-shadow:0 4px 14px #c0462a59}.app-download-btn:active{transform:translateY(0)}.app-download-btn--disabled{background:var(--fg-border, #d1d5db);border-color:var(--fg-border, #d1d5db);cursor:not-allowed;pointer-events:none}.app-download-btn--disabled,.app-download-btn--disabled:link,.app-download-btn--disabled:visited,.app-download-btn--disabled:hover,.app-download-btn--disabled:active{color:var(--fg-muted, #9ca3af)!important}.app-download-mobile-notice{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:#1b16118c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);padding:24px;animation:fadeSlideUp .2s ease-out}.app-download-mobile-notice__card{width:100%;max-width:360px;background:var(--fg-paper, #ffffff);color:var(--fg-ink, #1a1a2e);border-radius:14px;padding:24px 22px 18px;box-shadow:0 20px 60px #0000004d;text-align:center}.app-download-mobile-notice__title{margin:0 0 10px;font-size:17px;font-weight:700;color:var(--fg-ink, #1a1a2e)}.app-download-mobile-notice__body{margin:0 0 18px;font-size:14px;line-height:1.55;color:var(--fg-muted, #555)}.app-download-mobile-notice__dismiss{display:inline-flex;align-items:center;justify-content:center;min-width:100px;padding:9px 22px;border:1px solid var(--fg-accent, #C0462A);border-radius:8px;background:var(--fg-accent, #C0462A);color:var(--fg-paper, #F4EFE4);font-size:14px;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease}.app-download-mobile-notice__dismiss:hover{background:var(--fg-accent-hover, #A53A22);border-color:var(--fg-accent-hover, #A53A22)}.excalidraw.theme--dark .app-download-container,[data-theme=dark] .app-download-container{background:#1e1e2e;box-shadow:0 20px 60px #00000080,0 0 0 1px #ffffff14}.excalidraw.theme--dark .app-download-header__title,[data-theme=dark] .app-download-header__title{color:#e0e0f0}.excalidraw.theme--dark .app-download-header__subtitle,[data-theme=dark] .app-download-header__subtitle{color:#aaa}.excalidraw.theme--dark .app-download-card,[data-theme=dark] .app-download-card{background:#2a2a3e;border-color:#3a3a50}.excalidraw.theme--dark .app-download-card__name,[data-theme=dark] .app-download-card__name{color:#e0e0f0}.excalidraw.theme--dark .app-download-card__info,[data-theme=dark] .app-download-card__info{color:#888}.excalidraw.theme--dark .app-download-card__info span:first-child,[data-theme=dark] .app-download-card__info span:first-child{color:#bbb}.excalidraw.theme--dark .app-download-close,[data-theme=dark] .app-download-close{background:#ffffff14;color:#aaa}.excalidraw.theme--dark .app-download-close:hover,[data-theme=dark] .app-download-close:hover{background:#ffffff26;color:#ddd}@media (max-width: 640px){.app-download-container{padding:32px 20px 24px}.app-download-cards{flex-direction:column;align-items:center}.app-download-card{max-width:100%}.app-download-header__title{font-size:22px}}
