:root{--whiteboard-dark-bg:#0b0f19;--whiteboard-light-bg:#f4f6fa;--whiteboard-dark-text:#f3f4f6;--whiteboard-light-text:#0f172a;--whiteboard-toolbar-bg:#111625;--whiteboard-border:hsla(0,0%,100%,.05);--whiteboard-accent:#6366f1;--whiteboard-accent-hover:#818cf8}.whiteboard-modal{align-items:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:rgba(5,7,12,.65);display:flex;height:100%;justify-content:center;left:0;opacity:1;position:fixed;top:0;transition:opacity .3s ease;width:100%;z-index:9999}.whiteboard-modal.hidden{display:none;opacity:0}.whiteboard-panel{animation:slideUp .3s ease;background:var(--whiteboard-dark-bg);border:1px solid var(--whiteboard-border);border-radius:0;box-shadow:0 20px 60px rgba(0,0,0,.4);color:var(--whiteboard-dark-text);display:flex;flex-direction:column;height:100vh;max-height:none;max-width:none;overflow:hidden;width:100vw}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.whiteboard-header{align-items:center;background:var(--whiteboard-toolbar-bg);border-bottom:1px solid var(--whiteboard-border);display:flex;flex-shrink:0;justify-content:space-between;padding:1.5rem}.whiteboard-title{color:var(--whiteboard-dark-text);font-size:1.5rem;font-weight:700;margin:0}.whiteboard-close-btn{align-items:center;background:transparent;border:none;border-radius:8px;color:var(--whiteboard-dark-text);cursor:pointer;display:flex;justify-content:center;padding:.5rem;transition:background .2s ease,color .2s ease}.whiteboard-close-btn:hover{background:rgba(99,102,241,.15);color:var(--whiteboard-accent-hover)}.whiteboard-canvas-container{align-items:center;background:var(--whiteboard-dark-bg);display:flex;flex:1;justify-content:center;overflow:hidden;position:relative}.whiteboard-stage{overflow:hidden}.whiteboard-excalidraw-host,.whiteboard-stage{height:100%;inset:0;position:absolute;width:100%}.whiteboard-excalidraw-host{touch-action:none;z-index:1}.whiteboard-excalidraw-host .excalidraw,.whiteboard-excalidraw-host>*{height:100%;width:100%}body>.excalidraw{height:100vh!important;left:0!important;position:fixed!important;top:0!important;width:100vw!important;z-index:100000!important}body>.excalidraw .Modal{inset:0!important;position:fixed!important}.whiteboard-question-snapshot{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:rgba(17,22,35,.75);border:1px solid hsla(0,0%,100%,.06);border-radius:14px;box-shadow:0 12px 40px rgba(0,0,0,.4);color:var(--whiteboard-dark-text);display:flex;flex-direction:column;font-size:.92rem;left:220px;line-height:1.55;max-height:min(450px,calc(100% - 88px));max-width:min(420px,calc(100% - 20px));overflow:hidden;pointer-events:auto;position:absolute;top:76px;white-space:pre-wrap;word-break:break-word;z-index:20}.whiteboard-question-snapshot.dragging{transition:none;user-select:none}.snapshot-header{align-items:center;cursor:move;display:flex;gap:8px;justify-content:space-between;padding-right:8px;user-select:none}.snapshot-controls{align-items:center;display:flex;gap:6px}.snapshot-toggle-btn{align-self:flex-start;display:flex;flex-shrink:0;margin:6px 6px 0;transition:background .2s,border-color .2s}.snapshot-nav-btn,.snapshot-toggle-btn{align-items:center;backdrop-filter:blur(4px);background:rgba(99,102,241,.25);border:1px solid rgba(99,102,241,.35);border-radius:7px;color:#c7d2fe;cursor:pointer;height:26px;justify-content:center;padding:0;width:26px}.snapshot-nav-btn{display:inline-flex;margin-top:6px;transition:background .2s,border-color .2s,opacity .2s}.snapshot-nav-btn:hover{background:rgba(99,102,241,.45);border-color:rgba(99,102,241,.6);color:#fff}.snapshot-nav-btn:disabled{cursor:not-allowed;opacity:.4}.snapshot-drag-handle{background:rgba(99,102,241,.14);border:1px solid rgba(99,102,241,.28);border-radius:7px;color:rgba(199,210,254,.95);font-size:.78rem;letter-spacing:.02em;padding:.2rem .42rem}.snapshot-toggle-btn:hover{background:rgba(99,102,241,.45);border-color:rgba(99,102,241,.6);color:#fff}.snapshot-toggle-btn svg{transition:transform .3s ease}.snapshot-content{flex:1;min-height:0;overflow-y:auto;padding:.85rem 1rem;transition:max-height .35s ease,opacity .25s ease,padding .35s ease}.snapshot-content,.snapshot-content *{color:inherit!important}.snapshot-content::-webkit-scrollbar{width:6px}.snapshot-content::-webkit-scrollbar-track{background:transparent}.snapshot-content::-webkit-scrollbar-thumb{background:rgba(99,102,241,.3);border-radius:3px}.snapshot-content::-webkit-scrollbar-thumb:hover{background:rgba(99,102,241,.5)}.whiteboard-question-snapshot.hidden{display:none}.whiteboard-question-snapshot.collapsed .snapshot-toggle-btn svg{transform:rotate(-90deg)}.whiteboard-question-snapshot.collapsed .snapshot-content{max-height:0;opacity:0;overflow:hidden;padding:0 1rem}.whiteboard-question-snapshot.collapsed{background:rgba(12,13,30,.35);max-height:none;padding-bottom:6px}.whiteboard-canvas-container.light-mode .snapshot-nav-btn,.whiteboard-canvas-container.light-mode .snapshot-toggle-btn{background:rgba(99,102,241,.15);border-color:rgba(99,102,241,.3);color:#4338ca}.whiteboard-canvas-container.light-mode .snapshot-nav-btn:hover,.whiteboard-canvas-container.light-mode .snapshot-toggle-btn:hover{background:rgba(99,102,241,.3);color:#312e81}.whiteboard-canvas-container.light-mode .whiteboard-question-snapshot{background:hsla(0,0%,100%,.74);color:var(--whiteboard-light-text)}.whiteboard-toolbar{display:none}.whiteboard-canvas-container.light-mode{background:var(--whiteboard-light-bg)}.whiteboard-canvas{background:var(--whiteboard-dark-bg);display:block;height:100%;max-height:100%;max-width:100%;touch-action:none;width:100%}.whiteboard-canvas-container.light-mode .whiteboard-canvas{background:var(--whiteboard-light-bg);filter:invert(0)}.whiteboard-toolbar{background:var(--whiteboard-toolbar-bg);border-top:1px solid var(--whiteboard-border);flex-shrink:0;gap:1rem;overflow-x:auto;padding:.75rem 1rem}.whiteboard-tool-group,.whiteboard-toolbar{align-items:center;display:flex;flex-wrap:wrap}.whiteboard-tool-group{gap:.5rem}.whiteboard-label{color:var(--whiteboard-dark-text);font-size:.85rem;font-weight:600;white-space:nowrap}.whiteboard-colors{display:flex;gap:.5rem}.whiteboard-color-btn{border:2px solid transparent;border-radius:50%;cursor:pointer;flex-shrink:0;height:28px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;width:28px}.whiteboard-color-btn:hover{box-shadow:0 0 12px rgba(99,102,241,.4);transform:scale(1.1)}.whiteboard-color-btn.active{border-color:var(--whiteboard-accent);box-shadow:0 0 12px rgba(99,102,241,.6),inset 0 0 8px rgba(99,102,241,.3)}.whiteboard-slider{-webkit-appearance:none;appearance:none;background:rgba(99,102,241,.2);border-radius:3px;height:6px;outline:none;width:120px}.whiteboard-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--whiteboard-accent);border-radius:50%;box-shadow:0 0 8px rgba(99,102,241,.5);cursor:pointer;height:16px;transition:background .2s ease;width:16px}.whiteboard-slider::-webkit-slider-thumb:hover{background:var(--whiteboard-accent-hover)}.whiteboard-slider::-moz-range-thumb{background:var(--whiteboard-accent);border:none;border-radius:50%;box-shadow:0 0 8px rgba(99,102,241,.5);cursor:pointer;height:16px;transition:background .2s ease;width:16px}.whiteboard-slider::-moz-range-thumb:hover{background:var(--whiteboard-accent-hover)}.whiteboard-size-value{font-size:.9rem;min-width:25px;text-align:center}.whiteboard-btn-icon,.whiteboard-size-value{color:var(--whiteboard-dark-text);font-weight:600}.whiteboard-btn-icon{align-items:center;background:transparent;border:1px solid var(--whiteboard-border);border-radius:8px;cursor:pointer;display:flex;flex-shrink:0;font-size:.8rem;gap:.4rem;justify-content:center;padding:.4rem .6rem;transition:all .2s ease;white-space:nowrap}.whiteboard-btn-icon svg{height:18px;width:18px}.whiteboard-btn-icon:hover{background:rgba(99,102,241,.15);border-color:var(--whiteboard-accent);color:var(--whiteboard-accent-hover)}.whiteboard-btn-icon.active{background:rgba(99,102,241,.22);border-color:var(--whiteboard-accent);box-shadow:0 0 0 1px rgba(165,180,252,.18);color:#fff}.whiteboard-btn-text{display:inline}.whiteboard-zoom-level{color:var(--whiteboard-dark-text);font-size:.85rem;font-weight:600;min-width:45px;text-align:center}#whiteboardZoomIn,#whiteboardZoomLevel,#whiteboardZoomOut{display:none}.whiteboard-actions{margin-left:auto}.whiteboard-btn-primary,.whiteboard-btn-secondary{border:none;border-radius:8px;cursor:pointer;flex-shrink:0;font-size:.85rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease;white-space:nowrap}.whiteboard-btn-secondary{background:transparent;border:1px solid var(--whiteboard-border);color:var(--whiteboard-dark-text)}.whiteboard-btn-secondary:hover{background:rgba(99,102,241,.15);border-color:var(--whiteboard-accent);color:var(--whiteboard-accent-hover)}.whiteboard-btn-primary{background:linear-gradient(135deg,#6366f1,#a855f7);box-shadow:0 4px 12px rgba(99,102,241,.3);color:#fff}.whiteboard-btn-primary:hover{box-shadow:0 6px 16px rgba(99,102,241,.5);transform:translateY(-2px)}.whiteboard-icon-btn{align-items:center;background:transparent;border:none;border-radius:8px;color:var(--text-main);cursor:pointer;display:inline-flex;flex-shrink:0;height:36px;justify-content:center;padding:.5rem;transition:all .2s ease;width:36px}.whiteboard-icon-btn:hover{background:rgba(99,102,241,.15);color:var(--whiteboard-accent-hover)}.whiteboard-icon-btn svg{stroke-width:2;height:20px;width:20px}@media (max-width:768px){.whiteboard-panel{height:98vh;max-height:100%;max-width:100%;width:98vw}.whiteboard-question-snapshot{left:10px;max-width:calc(100% - 20px);top:66px}.whiteboard-toolbar{gap:.75rem;padding:.75rem 1rem}.whiteboard-header{padding:1rem}.whiteboard-title{font-size:1.2rem}.whiteboard-tool-group{gap:.5rem}.whiteboard-slider{width:80px}.whiteboard-label{font-size:.85rem}}@media (max-width:480px){.whiteboard-actions,.whiteboard-toolbar{justify-content:center}.whiteboard-actions{gap:.5rem;margin-left:0;order:10;width:100%}.whiteboard-panel{border-radius:0;height:100vh;max-height:100%;max-width:100%;width:100vw}}