@charset "UTF-8";.excalidraw .Spinner{display:flex;align-items:center;justify-content:center;height:100%;margin-left:auto;margin-right:auto;--spinner-color: var(--icon-fill-color)}.excalidraw .Spinner svg{animation:rotate 1.6s linear infinite;animation-delay:var(--spinner-delay);transform-origin:center center}.excalidraw .Spinner circle{stroke:var(--spinner-color);animation:dash 1.6s linear 0s infinite;stroke-linecap:round}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,300;stroke-dashoffset:0}50%{stroke-dasharray:150,300;stroke-dashoffset:-200}to{stroke-dasharray:1,300;stroke-dashoffset:-280}}.excalidraw .ToolIcon{border-radius:var(--border-radius-lg);display:inline-flex;align-items:center;position:relative;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.excalidraw .ToolIcon__hidden{display:none!important}.excalidraw .ToolIcon.fillable .ToolIcon_type_radio:checked+.ToolIcon__icon,.excalidraw .ToolIcon.fillable .ToolIcon_type_checkbox:checked+.ToolIcon__icon{--icon-fill-color: var(--color-on-primary-container)}.excalidraw .ToolIcon.fillable .ToolIcon_type_radio:checked+.ToolIcon__icon svg,.excalidraw .ToolIcon.fillable .ToolIcon_type_checkbox:checked+.ToolIcon__icon svg{fill:var(--icon-fill-color)}.excalidraw .ToolIcon .ToolIcon_type_radio:checked+.ToolIcon__icon,.excalidraw .ToolIcon .ToolIcon_type_checkbox:checked+.ToolIcon__icon{background:var(--color-surface-primary-container);--keybinding-color: var(--color-on-primary-container)}.excalidraw .ToolIcon .ToolIcon_type_radio:checked+.ToolIcon__icon svg,.excalidraw .ToolIcon .ToolIcon_type_checkbox:checked+.ToolIcon__icon svg{color:var(--color-on-primary-container)}.excalidraw .ToolIcon .ToolIcon__keybinding{bottom:4px;right:4px}.excalidraw .ToolIcon .ToolIcon__icon:hover{background:var(--button-hover-bg)}.excalidraw .ToolIcon .ToolIcon__icon:active{background:var(--button-hover-bg);border:1px solid var(--button-active-border)}.excalidraw .ToolIcon .ToolIcon__icon:active svg{color:var(--color-on-primary-container)}.excalidraw .ToolIcon .ToolIcon__icon[aria-disabled=true]{background:initial;border:none}.excalidraw .ToolIcon .ToolIcon__icon[aria-disabled=true] svg{color:var(--color-disabled)}.excalidraw .ToolIcon--plain{background-color:transparent}.excalidraw .ToolIcon--plain .ToolIcon__icon{width:2rem;height:2rem}.excalidraw .ToolIcon_type_radio,.excalidraw .ToolIcon_type_checkbox{position:absolute;opacity:0;pointer-events:none}.excalidraw .ToolIcon__icon{box-sizing:border-box;width:var(--default-button-size);height:var(--default-button-size);color:var(--icon-fill-color);display:flex;justify-content:center;align-items:center;border-radius:var(--border-radius-lg)}.excalidraw .ToolIcon__icon+.ToolIcon__label{margin-inline-start:0}.excalidraw .ToolIcon__icon svg{position:relative;width:var(--default-icon-size);height:var(--default-icon-size);color:var(--icon-fill-color)}.excalidraw .ToolIcon__label{display:flex;align-items:center;color:var(--icon-fill-color);font-family:var(--ui-font);margin:0 .8em;text-overflow:ellipsis}.excalidraw .ToolIcon__label .Spinner{margin-left:.6em}.excalidraw .ToolIcon_size_small .ToolIcon__icon{width:2rem;height:2rem;font-size:.8em}.excalidraw .ToolIcon_type_button,.excalidraw .Modal .ToolIcon_type_button{padding:0;border:none;margin:0;font-size:inherit;background-color:initial}.excalidraw .ToolIcon_type_button:focus-visible,.excalidraw .Modal .ToolIcon_type_button:focus-visible{box-shadow:0 0 0 2px var(--focus-highlight-color)}.excalidraw .ToolIcon_type_button.ToolIcon--selected,.excalidraw .Modal .ToolIcon_type_button.ToolIcon--selected{background-color:var(--button-gray-2)}.excalidraw .ToolIcon_type_button.ToolIcon--selected:active,.excalidraw .Modal .ToolIcon_type_button.ToolIcon--selected:active,.excalidraw .ToolIcon_type_button:active,.excalidraw .Modal .ToolIcon_type_button:active{background-color:var(--button-gray-3)}.excalidraw .ToolIcon_type_button:disabled,.excalidraw .Modal .ToolIcon_type_button:disabled{cursor:default}.excalidraw .ToolIcon_type_button:disabled:active,.excalidraw .ToolIcon_type_button:disabled:focus-visible,.excalidraw .ToolIcon_type_button:disabled:hover,.excalidraw .Modal .ToolIcon_type_button:disabled:active,.excalidraw .Modal .ToolIcon_type_button:disabled:focus-visible,.excalidraw .Modal .ToolIcon_type_button:disabled:hover{background-color:initial;border:none;box-shadow:none}.excalidraw .ToolIcon_type_button:disabled svg,.excalidraw .Modal .ToolIcon_type_button:disabled svg{color:var(--color-disabled)}.excalidraw .ToolIcon_type_button--show,.excalidraw .Modal .ToolIcon_type_button--show{visibility:visible}.excalidraw .ToolIcon_type_button--hide,.excalidraw .Modal .ToolIcon_type_button--hide{display:none!important}.excalidraw .ToolIcon_type_floating,.excalidraw .ToolIcon_type_floating:hover,.excalidraw .ToolIcon_type_floating:active{background-color:transparent}.excalidraw .ToolIcon_type_floating .ToolIcon__icon{background-color:var(--button-gray-1);width:2rem;height:2rem}.excalidraw .ToolIcon_type_floating .ToolIcon__icon:hover{background-color:var(--button-gray-2)}.excalidraw .ToolIcon_type_floating .ToolIcon__icon:active{background-color:var(--button-gray-3)}.excalidraw .ToolIcon__keybinding{position:absolute;bottom:2px;right:3px;font-size:.625rem;color:var(--keybinding-color);font-family:var(--ui-font);-webkit-user-select:none;user-select:none}:root[dir=ltr] .excalidraw .unlocked-icon{left:2px}:root[dir=rtl] .excalidraw .unlocked-icon{right:2px}.excalidraw .App-toolbar-container .ToolIcon__icon{width:var(--lg-button-size);height:var(--lg-button-size)}@media screen and (max-width:450px){.excalidraw .App-toolbar-container .ToolIcon__icon{width:1.8rem;height:1.8rem}}@media screen and (max-width:379px){.excalidraw .App-toolbar-container .ToolIcon__icon{width:1.5rem;height:1.5rem}}.excalidraw .App-toolbar-container .ToolIcon__icon svg{width:var(--lg-icon-size);height:var(--lg-icon-size)}.excalidraw .App-toolbar-container .ToolIcon__LaserPointer .ToolIcon__icon,.excalidraw .App-toolbar-container .ToolIcon__MagicButton .ToolIcon__icon{width:var(--default-button-size);height:var(--default-button-size)}.excalidraw button.standalone{display:flex;justify-content:center;align-items:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border-width:1px;border-style:solid;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--button-color, var(--color-on-surface));font-family:var(--ui-font);padding:0}.excalidraw button.standalone svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.excalidraw button.standalone:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)));color:var(--button-hover-color, var(--button-color, var(--text-primary-color, inherit)))}.excalidraw button.standalone:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.excalidraw button.standalone.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.excalidraw button.standalone.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.excalidraw button.standalone.active svg{color:var(--button-color, var(--color-on-primary-container))}.excalidraw button.standalone svg{width:var(--default-icon-size);height:var(--default-icon-size)}.excalidraw button.standalone>*{pointer-events:none}.excalidraw .excalidraw-eye-dropper-container,.excalidraw .excalidraw-eye-dropper-backdrop{position:absolute;width:100%;height:100%;z-index:var(--zIndex-eyeDropperBackdrop);touch-action:none}.excalidraw .excalidraw-eye-dropper-container{pointer-events:none}.excalidraw .excalidraw-eye-dropper-backdrop{pointer-events:all}.excalidraw .excalidraw-eye-dropper-preview{pointer-events:none;width:3rem;height:3rem;position:fixed;z-index:var(--zIndex-eyeDropperPreview);border-radius:1rem;border:1px solid var(--default-border-color);filter:var(--theme-filter)}.excalidraw .excalidraw-eye-dropper-trigger{width:1.25rem;height:1.25rem;cursor:pointer;padding:4px;margin-right:-4px;margin-left:-2px;border-radius:.5rem;color:var(--icon-fill-color)}.excalidraw .excalidraw-eye-dropper-trigger:hover{background:var(--button-hover-bg)}.excalidraw .excalidraw-eye-dropper-trigger.selected{color:var(--color-primary);background:var(--color-primary-light)}.excalidraw .Island{--padding: 0;box-sizing:border-box;background-color:var(--island-bg-color);box-shadow:var(--shadow-island);border-radius:var(--border-radius-lg);padding:calc(var(--padding) * var(--space-factor));position:relative;transition:box-shadow .5s ease-in-out}.excalidraw .Island.zen-mode{box-shadow:none}.excalidraw .focus-visible-none:focus-visible{outline:none!important}.excalidraw .color-picker__heading{padding:0 .5rem;font-size:.75rem;text-align:left}.excalidraw .color-picker-container{display:grid;grid-template-columns:1fr 20px 1.625rem;padding:.25rem 0px;align-items:center}.excalidraw--mobile.excalidraw .color-picker-container{max-width:11rem}.excalidraw .color-picker__top-picks{display:flex;justify-content:space-between}.excalidraw .color-picker__button{--radius: .25rem;padding:0;margin:0;width:1.35rem;height:1.35rem;border:1px solid var(--color-gray-30);border-radius:var(--radius);filter:var(--theme-filter);background-color:var(--swatch-color);background-position:left center;position:relative;font-family:inherit;box-sizing:border-box}.excalidraw .color-picker__button:hover:after{content:"";position:absolute;inset:-2px;box-shadow:0 0 0 1px var(--color-gray-30);border-radius:calc(var(--radius) + 1px);filter:var(--theme-filter)}.excalidraw .color-picker__button.active .color-picker__button-outline{position:absolute;inset:-2px;box-shadow:0 0 0 1px var(--color-primary-darkest);z-index:1;border-radius:calc(var(--radius) + 1px);filter:var(--theme-filter)}.excalidraw .color-picker__button:focus-visible{outline:none}.excalidraw .color-picker__button:focus-visible:after{content:"";position:absolute;inset:-4px;border:3px solid var(--focus-highlight-color);border-radius:calc(var(--radius) + 1px)}.excalidraw .color-picker__button:focus-visible.active .color-picker__button-outline{display:none}.excalidraw .color-picker__button--large{--radius: .5rem;width:1.875rem;height:1.875rem}.excalidraw .color-picker__button.is-transparent{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMUlEQVQ4T2NkYGAQYcAP3uCTZhw1gGGYhAGBZIA/nYDCgBDAm9BGDWAAJyRCgLaBCAAgXwixzAS0pgAAAABJRU5ErkJggg==)}.excalidraw .color-picker__button--no-focus-visible{border:0}.excalidraw .color-picker__button--no-focus-visible:after{display:none}.excalidraw .color-picker__button--no-focus-visible:focus-visible{outline:none!important}.excalidraw .color-picker__button.active-color{border-radius:calc(var(--radius) + 1px);width:1.625rem;height:1.625rem}.excalidraw .color-picker__button__hotkey-label{position:absolute;right:4px;bottom:4px;filter:none;font-size:11px}.excalidraw .color-picker{background:var(--popup-bg-color);border:0 solid rgba(255,255,255,.25);box-shadow:#00000040 0 1px 4px;border-radius:4px;position:absolute}:root[dir=ltr] .excalidraw .color-picker{left:-5.5px}:root[dir=rtl] .excalidraw .color-picker{right:-5.5px}.excalidraw .color-picker-control-container{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:.5rem}.excalidraw .color-picker-control-container+.popover{position:static}.excalidraw .color-picker-popover-container{margin-top:-.25rem}:root[dir=ltr] .excalidraw .color-picker-popover-container{margin-left:.5rem}:root[dir=rtl] .excalidraw .color-picker-popover-container{margin-left:-3rem}.excalidraw .color-picker-triangle{width:0;height:0;border-style:solid;border-width:0 9px 10px;border-color:transparent transparent var(--popup-bg-color);position:absolute;top:10px}:root[dir=ltr] .excalidraw .color-picker-triangle{transform:rotate(270deg);left:-14px}:root[dir=rtl] .excalidraw .color-picker-triangle{transform:rotate(90deg);right:-14px}.excalidraw .color-picker-triangle-shadow{border-color:transparent transparent rgba(0,0,0,.1)}:root[dir=ltr] .excalidraw .color-picker-triangle-shadow{left:-14px}:root[dir=rtl] .excalidraw .color-picker-triangle-shadow{right:-16px}.excalidraw .color-picker-content{display:flex;flex-direction:column;gap:.75rem;outline:none}.excalidraw .color-picker-content--default{padding:.5rem;display:grid;grid-template-columns:repeat(5,1.875rem);grid-gap:.25rem;border-radius:4px}.excalidraw .color-picker-content--default:focus{outline:none;box-shadow:0 0 0 2px var(--focus-highlight-color)}.excalidraw .color-picker-content--canvas{display:flex;flex-direction:column;padding:.25rem}.excalidraw .color-picker-content--canvas-title{color:#868e96;font-size:12px;padding:0 .25rem}.excalidraw .color-picker-content--canvas-colors{padding:.5rem 0}.excalidraw .color-picker-content--canvas-colors .color-picker-swatch{margin:0 .25rem}.excalidraw .color-picker-content .color-input-container{grid-column:1/span 5}.excalidraw .color-picker-swatch{position:relative;height:1.875rem;width:1.875rem;cursor:pointer;border-radius:4px;margin:0;box-sizing:border-box;border:1px solid #ddd;background-color:currentColor!important;filter:var(--theme-filter)}.excalidraw .color-picker-swatch:focus{box-shadow:0 0 4px 1px currentColor;border-color:var(--select-highlight-color)}.excalidraw .color-picker-transparent{border-radius:4px;box-shadow:#0000001a 0 0 0 1px inset;position:absolute;inset:0}.excalidraw .color-picker-transparent,.excalidraw .color-picker-label-swatch{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMUlEQVQ4T2NkYGAQYcAP3uCTZhw1gGGYhAGBZIA/nYDCgBDAm9BGDWAAJyRCgLaBCAAgXwixzAS0pgAAAABJRU5ErkJggg==) left center}.excalidraw .color-picker-hash{height:var(--default-button-size);flex-shrink:0;padding:.5rem .5rem .5rem .75rem;border:1px solid var(--default-border-color);border-right:0;box-sizing:border-box;color:var(--input-label-color);display:flex;align-items:center;justify-content:center;position:relative}:root[dir=ltr] .excalidraw .color-picker-hash{border-radius:var(--border-radius-lg) 0 0 var(--border-radius-lg)}:root[dir=rtl] .excalidraw .color-picker-hash{border-radius:0 var(--border-radius-lg) var(--border-radius-lg) 0;border-right:1px solid var(--default-border-color);border-left:0}.excalidraw .color-input-container{display:flex}.excalidraw .color-input-container:focus-within{box-shadow:0 0 0 1px var(--color-primary-darkest);border-radius:var(--border-radius-lg)}.excalidraw .color-picker__input-label{display:grid;grid-template-columns:auto 1fr auto auto;gap:8px;align-items:center;border:1px solid var(--default-border-color);border-radius:8px;padding:0 12px;margin:8px;box-sizing:border-box}.excalidraw .color-picker__input-label:focus-within{box-shadow:0 0 0 1px var(--color-primary-darkest);border-radius:var(--border-radius-lg)}.excalidraw .color-picker__input-hash{padding:0 .25rem}.excalidraw .color-picker-input{box-sizing:border-box;width:100%;margin:0;font-size:.875rem;font-family:inherit;background-color:transparent;color:var(--text-primary-color);border:0;outline:none;height:var(--default-button-size);border:1px solid var(--default-border-color);border-left:0;letter-spacing:.4px;padding:.5rem .5rem .5rem .25rem;appearance:none}:root[dir=ltr] .excalidraw .color-picker-input{border-radius:0 var(--border-radius-lg) var(--border-radius-lg) 0}:root[dir=rtl] .excalidraw .color-picker-input{border-radius:var(--border-radius-lg) 0 0 var(--border-radius-lg);border-left:1px solid var(--default-border-color);border-right:0}.excalidraw .color-picker-input:focus-visible{box-shadow:none}.excalidraw .color-picker-label-swatch-container{border:1px solid var(--default-border-color);border-radius:var(--border-radius-lg);width:var(--default-button-size);height:var(--default-button-size);box-sizing:border-box;overflow:hidden}.excalidraw .color-picker-label-swatch{display:flex;justify-content:center;align-items:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border-width:1px;border-style:solid;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--button-color, var(--color-on-surface));font-family:var(--ui-font);background-color:var(--swatch-color)!important;overflow:hidden;position:relative;filter:var(--theme-filter);border:0!important}.excalidraw .color-picker-label-swatch svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.excalidraw .color-picker-label-swatch:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)));color:var(--button-hover-color, var(--button-color, var(--text-primary-color, inherit)))}.excalidraw .color-picker-label-swatch:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.excalidraw .color-picker-label-swatch.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.excalidraw .color-picker-label-swatch.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.excalidraw .color-picker-label-swatch.active svg{color:var(--button-color, var(--color-on-primary-container))}.excalidraw .color-picker-label-swatch:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var(--swatch-color)}.excalidraw .color-picker-keybinding{position:absolute;bottom:2px;font-size:.7em}:root[dir=ltr] .excalidraw .color-picker-keybinding{right:2px}:root[dir=rtl] .excalidraw .color-picker-keybinding{left:2px}.excalidraw--mobile.excalidraw .color-picker-keybinding{display:none}.excalidraw .color-picker-type-canvasBackground .color-picker-keybinding{color:#aaa}.excalidraw .color-picker-type-elementBackground .color-picker-keybinding{color:#fff}.excalidraw .color-picker-swatch[aria-label=transparent] .color-picker-keybinding{color:#aaa}.excalidraw .color-picker-type-elementStroke .color-picker-keybinding{color:#d4d4d4}.excalidraw.theme--dark .color-picker-type-elementBackground .color-picker-keybinding,.excalidraw.theme--dark .color-picker-swatch[aria-label=transparent] .color-picker-keybinding{color:#000}.excalidraw .picker{padding:.5rem;background:var(--popup-bg-color);border:0 solid rgba(255,255,255,.25);box-shadow:var(--shadow-island);border-radius:4px;position:absolute}:root[dir=rtl] .excalidraw .picker{padding:.4rem}.excalidraw .picker-container button,.excalidraw .picker button{position:relative;display:flex;align-items:center;justify-content:center}.excalidraw .picker-container button:focus-visible,.excalidraw .picker button:focus-visible{outline:transparent;background-color:var(--button-gray-2)}.excalidraw .picker-container button:focus-visible svg,.excalidraw .picker button:focus-visible svg{opacity:1}.excalidraw .picker-container button:hover,.excalidraw .picker button:hover{background-color:var(--button-gray-2)}.excalidraw .picker-container button:active,.excalidraw .picker button:active{background-color:var(--button-gray-3)}.excalidraw .picker-container button:disabled,.excalidraw .picker button:disabled{cursor:not-allowed}.excalidraw .picker-container button svg,.excalidraw .picker button svg{margin:0;width:36px;height:18px;pointer-events:none}.excalidraw .picker button{padding:.25rem .28rem .35rem .25rem}.excalidraw .picker-content{display:grid;grid-template-columns:repeat(4,auto);grid-gap:.5rem;border-radius:4px}.excalidraw .picker-collapsible{font-size:.75rem;padding:.5rem 0}.excalidraw .picker-keybinding{position:absolute;bottom:2px;font-size:.7em;color:var(--keybinding-color)}:root[dir=ltr] .excalidraw .picker-keybinding{right:2px}:root[dir=rtl] .excalidraw .picker-keybinding{left:2px}.excalidraw--mobile.excalidraw .picker-keybinding{display:none}.excalidraw .picker-type-canvasBackground .picker-keybinding{color:#aaa}.excalidraw .picker-type-elementBackground .picker-keybinding{color:#fff}.excalidraw .picker-swatch[aria-label=transparent] .picker-keybinding{color:#aaa}.excalidraw .picker-type-elementStroke .picker-keybinding{color:#d4d4d4}.excalidraw.theme--dark .picker-type-elementBackground .picker-keybinding,.excalidraw.theme--dark .picker-swatch[aria-label=transparent] .picker-keybinding{color:#000}.excalidraw{--list-border-color: var(--color-gray-20)}.excalidraw .QuickSearch__wrapper{position:relative;height:2.6rem;border-bottom:1px solid var(--list-border-color)}.excalidraw .QuickSearch__wrapper svg{position:absolute;top:47.5%;transform:translateY(-50%);left:.75rem;width:1.25rem;height:1.25rem;color:var(--color-gray-40);z-index:1}.excalidraw.theme--dark{--list-border-color: var(--color-gray-80)}.excalidraw.theme--dark .QuickSearch__wrapper{border-bottom:none}.excalidraw .QuickSearch__input{position:absolute;top:0;left:0;width:100%;box-sizing:border-box;border:0!important;font-size:.875rem;padding-left:2.5rem!important;padding-right:.75rem!important}.excalidraw .QuickSearch__input::placeholder{color:var(--color-gray-40)}.excalidraw .QuickSearch__input:focus{box-shadow:none!important}.excalidraw .ScrollableList__wrapper{position:static!important;border:none;font-size:.875rem;overflow-y:auto}.excalidraw .ScrollableList__wrapper>.empty,.excalidraw .ScrollableList__wrapper>.hint{display:flex;justify-content:center;align-items:center;padding:.5rem;font-size:.75rem;color:var(--color-gray-60);overflow:hidden;text-align:center;line-height:150%}.excalidraw .FontPicker__container{display:grid;grid-template-columns:calc(1rem + 3 * var(--default-button-size)) 1rem 1fr;align-items:center}.excalidraw--mobile.excalidraw .FontPicker__container{max-width:calc(2rem + 4 * var(--default-button-size))}.excalidraw{--slider-thumb-size: 16px}.excalidraw .range-wrapper{position:relative;padding-top:10px;padding-bottom:30px}.excalidraw .range-input{width:100%;height:4px;-webkit-appearance:none;background:var(--color-slider-track);border-radius:2px;outline:none}.excalidraw .range-input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:var(--slider-thumb-size);height:var(--slider-thumb-size);background:var(--color-slider-thumb);border-radius:50%;cursor:pointer;border:none}.excalidraw .range-input::-moz-range-thumb{width:var(--slider-thumb-size);height:var(--slider-thumb-size);background:var(--color-slider-thumb);border-radius:50%;cursor:pointer;border:none}.excalidraw .value-bubble{position:absolute;bottom:0;transform:translate(-50%);font-size:12px;color:var(--text-primary-color)}.excalidraw .zero-label{position:absolute;bottom:0;left:4px;font-size:12px;color:var(--text-primary-color)}.excalidraw-tooltip{--ui-font: Assistant, system-ui, BlinkMacSystemFont, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;font-family:var(--ui-font);position:fixed;z-index:var(--zIndex-popup);padding:8px;border-radius:6px;box-sizing:border-box;pointer-events:none;word-wrap:break-word;background:#000;line-height:1.5;text-align:center;font-size:13px;font-weight:500;color:#fff;display:none}.excalidraw-tooltip.excalidraw-tooltip--visible{display:block}.excalidraw-tooltip-wrapper{display:flex}.excalidraw-tooltip-icon{width:.9em;height:.9em;margin-left:5px;margin-top:1px;display:flex}.excalidraw--mobile.excalidraw-tooltip-icon{display:none}.excalidraw .TextInput{display:inline-block}.ProjectName{margin:auto;display:flex;align-items:center}.ProjectName .TextInput{height:calc(1rem - 3px);width:200px;overflow:hidden;text-align:center;margin-left:8px;text-overflow:ellipsis}.ProjectName .TextInput--readonly{background:none;border:none;width:auto;max-width:200px;padding-left:2px}.ProjectName .TextInput--readonly:hover{background:none}.excalidraw .Checkbox{margin:4px .3em;display:flex;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.excalidraw .Checkbox:hover:not(.is-checked) .Checkbox-box:not(:focus){box-shadow:0 0 0 2px #4dabf7}.excalidraw .Checkbox:hover:not(.is-checked) .Checkbox-box:not(:focus) svg{display:block;opacity:.3}.excalidraw .Checkbox:active .Checkbox-box{box-shadow:0 0 2px 1px inset #1c7ed6!important}.excalidraw .Checkbox:hover .Checkbox-box{background-color:#d0ebff33}.excalidraw .Checkbox.is-checked .Checkbox-box{background-color:#d0ebff}.excalidraw .Checkbox.is-checked .Checkbox-box svg{display:block}.excalidraw .Checkbox.is-checked:hover .Checkbox-box{background-color:#a5d8ff}.excalidraw .Checkbox .Checkbox-box{width:22px;height:22px;padding:0;flex:0 0 auto;margin:0 1em;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px #1c7ed6;background-color:transparent;border-radius:4px;color:#1c7ed6;border:0}.excalidraw .Checkbox .Checkbox-box:focus{box-shadow:0 0 0 3px #1c7ed6}.excalidraw .Checkbox .Checkbox-box svg{display:none;width:16px;height:16px;stroke-width:3px}.excalidraw .Checkbox .Checkbox-label{display:flex;align-items:center}.excalidraw .Checkbox .excalidraw-tooltip-icon{width:1em;height:1em}.excalidraw .Avatar{width:var(--avatar-size, 1.5rem);height:var(--avatar-size, 1.5rem);position:relative;border-radius:100%;outline-offset:2px;display:flex;justify-content:center;align-items:center;cursor:pointer;font-size:.75rem;font-weight:700;line-height:1;color:var(--color-gray-90);flex:0 0 auto}.excalidraw .Avatar:active{transform:scale(.94)}.excalidraw .Avatar-img{width:100%;height:100%;border-radius:100%}.excalidraw .Avatar:before{content:"";position:absolute;inset:-3px;border-radius:100%}.excalidraw .Avatar.is-followed:before{border-color:var(--color-primary-hover);box-shadow:0 0 0 1px var(--color-primary-hover)}.excalidraw .Avatar.is-current-user{cursor:auto}.excalidraw-hyperlinkContainer{display:flex;align-items:center;justify-content:space-between;position:absolute;box-shadow:0 2px 4px #0000004d;z-index:var(--zIndex-hyperlinkContainer);background:var(--island-bg-color);border-radius:var(--border-radius-md);box-sizing:border-box;min-height:42px}.excalidraw-hyperlinkContainer-input,.excalidraw-hyperlinkContainer button{z-index:100}.excalidraw-hyperlinkContainer-input,.excalidraw-hyperlinkContainer-link{height:24px;padding:0 8px;line-height:24px;font-size:.9rem;font-weight:500;font-family:var(--ui-font)}.excalidraw-hyperlinkContainer-input{width:18rem;background-color:transparent;color:var(--text-primary-color);outline:none;border:none;box-shadow:none!important}.excalidraw-hyperlinkContainer-link{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:15rem}.excalidraw-hyperlinkContainer button{color:#228be6;background-color:transparent!important;font-weight:500}.excalidraw-hyperlinkContainer button.excalidraw-hyperlinkContainer--remove{color:#c92a2a}.excalidraw-hyperlinkContainer--remove .ToolIcon__icon svg{color:#fa5252}.excalidraw-hyperlinkContainer .ToolIcon__icon{width:2rem;height:2rem}.excalidraw-hyperlinkContainer__buttons{flex:0 0 auto}.excalidraw .Dialog{-webkit-user-select:text;user-select:text;cursor:auto}.excalidraw .Dialog__title{margin:0;text-align:left;font-size:1.25rem;border-bottom:1px solid var(--dialog-border-color);padding:0 0 .75rem;margin-bottom:1.5rem}.excalidraw .Dialog__close{color:var(--color-gray-40);margin:0;position:absolute;top:.75rem;right:.5rem;border:0;background-color:transparent;line-height:0;cursor:pointer}.excalidraw .Dialog__close:hover{color:var(--color-gray-60)}.excalidraw .Dialog__close:active{color:var(--color-gray-40)}.excalidraw .Dialog__close svg{width:1.5rem;height:1.5rem}.excalidraw .Dialog__close+.Dialog__content{--offset: 28px;height:calc(100% - var(--offset))!important;margin-top:var(--offset)!important}.excalidraw .Dialog--fullscreen .Dialog__close{top:1.25rem;right:1.25rem}.excalidraw.excalidraw-modal-container{position:absolute;z-index:var(--zIndex-modal)}.excalidraw .Modal{position:absolute;inset:0;align-items:center;justify-content:center;overflow:auto;padding:calc(var(--space-factor) * 10);display:flex;flex-direction:column}.excalidraw .Modal .Island{padding:2.5rem;border:0;box-shadow:none;border-radius:0}.excalidraw .Modal.animations-disabled .Modal__background{animation:none}.excalidraw .Modal.animations-disabled .Modal__content{animation:none;opacity:1}.excalidraw .Modal__background{position:fixed;inset:0;z-index:1;background-color:#12121233;animation:Modal__background__fade-in .1s linear forwards}.excalidraw .Modal__content{z-index:2;width:100%;max-width:var(--max-width);max-height:100%;opacity:0;transform:translateY(10px);animation:Modal__content_fade-in 25ms ease-out 0s forwards;position:relative;overflow-y:auto;background:var(--island-bg-color);border:1px solid var(--dialog-border-color);box-shadow:var(--modal-shadow);border-radius:.75rem;box-sizing:border-box}.excalidraw .Modal__content:focus{outline:none}@keyframes Modal__background__fade-in{0%{opacity:0}to{opacity:1}}@keyframes Modal__content_fade-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.excalidraw .Modal__close{color:var(--icon-fill-color);margin:0;padding:.375rem;position:absolute;top:1rem;right:1rem;border:0;background-color:transparent;line-height:0;cursor:pointer}.excalidraw .Modal__close svg{width:1.5rem;height:1.5rem}.excalidraw .Dialog--fullscreen .Modal{padding:0}.excalidraw .Dialog--fullscreen .Modal__content{position:absolute;inset:0;max-width:100%;border:0;border-radius:0}.excalidraw .Stack{--gap: 0;display:grid;gap:calc(var(--space-factor) * var(--gap))}.excalidraw .Stack_vertical{grid-template-columns:auto;grid-auto-flow:row;grid-auto-rows:min-content}.excalidraw .Stack_horizontal{grid-template-rows:auto;grid-auto-flow:column;grid-auto-columns:min-content}.excalidraw .confirm-dialog-buttons{display:flex;column-gap:.5rem;justify-content:flex-end}.excalidraw .Dialog__action-button{position:relative;display:flex;column-gap:.5rem;align-items:center;padding:.5rem 1.5rem;border:1px solid var(--default-border-color);background-color:transparent;height:3rem;border-radius:var(--border-radius-lg);letter-spacing:.4px;color:inherit;font-family:inherit;font-size:.875rem;font-weight:600;-webkit-user-select:none;user-select:none}.excalidraw .Dialog__action-button svg{display:block;width:1rem;height:1rem}.excalidraw .Dialog__action-button--danger{background-color:var(--color-danger);border-color:var(--color-danger);color:#fff}.excalidraw .Dialog__action-button--primary{background-color:var(--color-primary);border-color:var(--color-primary);color:#fff}.excalidraw.theme--dark .Dialog__action-button--danger,.excalidraw.theme--dark .Dialog__action-button--primary{color:var(--color-gray-100)}.excalidraw .publish-library__fields{display:flex;flex-direction:column}.excalidraw .publish-library__fields label{padding:1em 0;display:flex;justify-content:space-between;align-items:center}.excalidraw .publish-library__fields label span{font-weight:500;font-size:1rem;color:#868e96}.excalidraw .publish-library__fields label input,.excalidraw .publish-library__fields label textarea{width:70%;padding:.6em;font-family:var(--ui-font)}.excalidraw .publish-library__fields label .required{color:#e03131;margin:.2rem}.excalidraw .publish-library__buttons{display:flex;padding:.2rem 0;justify-content:flex-end;gap:.5rem}.excalidraw .publish-library__buttons .ToolIcon__icon{min-width:2.5rem;width:auto;font-size:1rem}.excalidraw .publish-library__buttons .ToolIcon_type_button{margin-left:1rem;padding:0 .5rem}.excalidraw .publish-library__buttons--confirm.ToolIcon_type_button{background-color:#228be6}.excalidraw .publish-library__buttons--confirm.ToolIcon_type_button:hover{background-color:#1971c2}.excalidraw .publish-library__buttons--cancel.ToolIcon_type_button{background-color:#adb5bd}.excalidraw .publish-library__buttons--cancel.ToolIcon_type_button:hover{background-color:#868e96}.excalidraw .publish-library__buttons .ToolIcon__icon{color:#fff}.excalidraw .publish-library__buttons .ToolIcon__icon .Spinner{--spinner-color: #fff}.excalidraw .publish-library__buttons .ToolIcon__icon .Spinner svg{padding:.5rem}.excalidraw .publish-library .selected-library-items{display:flex;flex-wrap:wrap}.excalidraw .publish-library .selected-library-items .single-library-item-wrapper{width:9rem}.excalidraw .publish-library-warning{color:#fa5252}.excalidraw .publish-library-note{padding:1em 0;font-style:italic;font-size:14px;display:block}.excalidraw .single-library-item{position:relative}.excalidraw .single-library-item-status{position:absolute;top:.3rem;left:.3rem;font-size:.7rem;color:#f03e3e;background:#ffffffe6;padding:.1rem .2rem;border-radius:.2rem}.excalidraw .single-library-item__svg{background-color:#fff;padding:.3rem;width:7.5rem;height:7.5rem;border:1px solid var(--button-gray-2)}.excalidraw .single-library-item__svg svg{width:100%;height:100%}.excalidraw .single-library-item .ToolIcon__icon{background-color:#fff;width:auto;height:auto;margin:0 .5rem}.excalidraw .single-library-item .ToolIcon,.excalidraw .single-library-item .ToolIcon_type_button:hover{background-color:#fff}.excalidraw .single-library-item .required,.excalidraw .single-library-item .error{color:#e03131;font-weight:700;font-size:1rem;margin:.2rem}.excalidraw .single-library-item .error{font-weight:500;margin:0;padding:.3em 0}.excalidraw .single-library-item--remove{position:absolute;top:.2rem;right:1rem}.excalidraw .single-library-item--remove .ToolIcon__icon{margin:0}.excalidraw .single-library-item--remove .ToolIcon__icon{background-color:#fa5252}.excalidraw .single-library-item--remove .ToolIcon__icon:hover{background-color:#f03e3e}.excalidraw .single-library-item--remove .ToolIcon__icon:active{background-color:#e03131}.excalidraw .single-library-item--remove svg{color:#fff;padding:.26rem;border-radius:.3em;width:1rem;height:1rem}.excalidraw .dropdown-menu{position:absolute;top:100%;margin-top:.5rem}.excalidraw .dropdown-menu--mobile{left:0;width:100%;row-gap:.75rem}.excalidraw .dropdown-menu--mobile .dropdown-menu-container{padding:8px;box-sizing:border-box;box-shadow:var(--shadow-island);border-radius:var(--border-radius-lg);position:relative;transition:box-shadow .5s ease-in-out}.excalidraw .dropdown-menu--mobile .dropdown-menu-container.zen-mode{box-shadow:none}.excalidraw .dropdown-menu .dropdown-menu-container{background-color:var(--island-bg-color);max-height:calc(100vh - 150px);overflow-y:auto;--gap: 2}.excalidraw .dropdown-menu .dropdown-menu-item-base{display:flex;column-gap:.625rem;font-size:.875rem;color:var(--color-on-surface);width:100%;box-sizing:border-box;font-weight:400;font-family:inherit}.excalidraw .dropdown-menu.manual-hover .dropdown-menu-item:hover{background-color:transparent}.excalidraw .dropdown-menu.manual-hover .dropdown-menu-item--hovered{background-color:var(--button-hover-bg)!important}.excalidraw .dropdown-menu.manual-hover .dropdown-menu-item--selected{background-color:var(--color-primary-light)!important}.excalidraw .dropdown-menu.fonts{margin-top:1rem;max-height:calc(7*(2rem + 2px) + 3.95rem)}@media screen and (min-width:1921px){.excalidraw .dropdown-menu.fonts{max-height:calc(7*(2.25rem + 2px) + 3.95rem)}}.excalidraw .dropdown-menu.fonts .dropdown-menu-item-base{display:inline-flex}.excalidraw .dropdown-menu.fonts .dropdown-menu-group:not(:first-child){margin-top:1rem}.excalidraw .dropdown-menu.fonts .dropdown-menu-group-title{font-size:.75rem;text-align:left;font-weight:400;margin:0 0 .5rem;line-height:1.3}.excalidraw .dropdown-menu .dropdown-menu-item{height:2rem;margin:1px;padding:0 .5rem;width:calc(100% - 2px);background-color:transparent;border:1px solid transparent;align-items:center;cursor:pointer;border-radius:var(--border-radius-md)}@media screen and (min-width:1921px){.excalidraw .dropdown-menu .dropdown-menu-item{height:2.25rem}}.excalidraw .dropdown-menu .dropdown-menu-item__text{display:flex;align-items:center;width:100%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;gap:.75rem}.excalidraw .dropdown-menu .dropdown-menu-item__shortcut{margin-inline-start:auto;opacity:.5}.excalidraw .dropdown-menu .dropdown-menu-item__shortcut--orphaned{text-align:right;font-size:.875rem;padding:0 .625rem}.excalidraw .dropdown-menu .dropdown-menu-item--selected{background:var(--color-primary-light);--icon-fill-color: var(--color-primary-darker)}.excalidraw .dropdown-menu .dropdown-menu-item:hover{background-color:var(--button-hover-bg);text-decoration:none}.excalidraw .dropdown-menu .dropdown-menu-item:active{background-color:var(--button-hover-bg);border-color:var(--color-brand-active)}.excalidraw .dropdown-menu .dropdown-menu-item svg{width:1rem;height:1rem;display:block}.excalidraw .dropdown-menu .dropdown-menu-item-bare{align-items:center;height:2rem;justify-content:space-between}@media screen and (min-width:1921px){.excalidraw .dropdown-menu .dropdown-menu-item-bare{height:2.25rem}}.excalidraw .dropdown-menu .dropdown-menu-item-bare svg{width:1rem;height:1rem;display:block}.excalidraw .dropdown-menu .dropdown-menu-item-custom{margin-top:.5rem}.excalidraw .dropdown-menu .dropdown-menu-group-title{font-size:14px;text-align:left;margin:10px 0;font-weight:500}.excalidraw .dropdown-menu-button{display:flex;justify-content:center;align-items:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border-width:1px;border-style:solid;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--button-color, var(--color-on-surface));font-family:var(--ui-font);width:var(--lg-button-size);height:var(--lg-button-size);--background: var(--color-surface-mid);background-color:var(--background)}.excalidraw .dropdown-menu-button svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.excalidraw .dropdown-menu-button:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)));color:var(--button-hover-color, var(--button-color, var(--text-primary-color, inherit)))}.excalidraw .dropdown-menu-button:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.excalidraw .dropdown-menu-button.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.excalidraw .dropdown-menu-button.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.excalidraw .dropdown-menu-button.active svg{color:var(--button-color, var(--color-on-primary-container))}.excalidraw.theme--dark.excalidraw .dropdown-menu-button{--background: var(--color-surface-high)}.excalidraw.theme--dark.excalidraw .dropdown-menu-button:hover{--background: #363541}.excalidraw .dropdown-menu-button:hover{--background: var(--color-surface-high);background-color:var(--background);text-decoration:none}.excalidraw .dropdown-menu-button:active{border-color:var(--color-primary)}.excalidraw .dropdown-menu-button svg{width:var(--lg-icon-size);height:var(--lg-icon-size)}.excalidraw .dropdown-menu-button--mobile{border:none;margin:0;padding:0;width:var(--default-button-size);height:var(--default-button-size)}.excalidraw .library-unit{align-items:center;border:1px solid transparent;display:flex;justify-content:center;position:relative;width:55px;height:55px;box-sizing:border-box;border-radius:var(--border-radius-lg)}.excalidraw .library-unit svg{pointer-events:none}.excalidraw .library-unit--hover{border-color:var(--color-primary)}.excalidraw .library-unit--selected{border-color:var(--color-primary);border-width:1px}.excalidraw .library-unit--skeleton{opacity:.5;background:linear-gradient(-45deg,var(--color-gray-10),var(--color-gray-20),var(--color-gray-10));background-size:200% 200%;animation:library-unit__skeleton-opacity-animation .2s linear}.excalidraw.theme--dark .library-unit--skeleton{background-image:linear-gradient(-45deg,var(--color-gray-100),var(--color-gray-80),var(--color-gray-100))}.excalidraw .library-unit__dragger{display:flex;align-items:center;justify-content:center;height:100%;width:100%}.excalidraw .library-unit__dragger>svg{filter:var(--theme-filter);flex-grow:1;max-height:100%;max-width:100%}.excalidraw .library-unit__checkbox-container,.excalidraw .library-unit__checkbox-container:hover,.excalidraw .library-unit__checkbox-container:active{align-items:center;background:none;border:none;color:var(--icon-fill-color);display:flex;justify-content:center;margin:0;padding:.5rem;position:absolute;left:2rem;bottom:2rem;cursor:pointer}.excalidraw .library-unit__checkbox-container input,.excalidraw .library-unit__checkbox-container:hover input,.excalidraw .library-unit__checkbox-container:active input{cursor:pointer}.excalidraw .library-unit__checkbox{position:absolute;top:.125rem;right:.125rem;margin:0}.excalidraw .library-unit__checkbox .Checkbox-box{margin:0;width:1rem;height:1rem;border-radius:4px;background-color:var(--color-primary-light);border:1px solid var(--color-primary);box-shadow:none!important;padding:2px}.excalidraw .library-unit__checkbox.Checkbox:hover .Checkbox-box{background-color:var(--color-primary-light)}.excalidraw .library-unit__checkbox.is-checked .Checkbox-box{background-color:var(--color-primary)!important}.excalidraw .library-unit__checkbox.is-checked .Checkbox-box svg{color:var(--color-primary-light)}.excalidraw .library-unit__removeFromLibrary>svg{height:16px;width:16px}.excalidraw .library-unit__adder{transform:scale(1);animation:library-unit__adder-animation 1s ease-in infinite;position:absolute;width:1.5rem;height:1.5rem;background-color:var(--color-primary);border-radius:var(--border-radius-md);display:flex;justify-content:center;align-items:center;pointer-events:none}.excalidraw .library-unit__adder svg{color:var(--color-primary-light);width:1rem;height:1rem}.excalidraw .library-unit:active .library-unit__adder{animation:none;transform:scale(.8)}.excalidraw .library-unit__active{cursor:pointer}@keyframes library-unit__adder-animation{0%{transform:scale(.85)}50%{transform:scale(1)}to{transform:scale(.85)}}@keyframes library-unit__skeleton-opacity-animation{0%{opacity:0}75%{opacity:0}to{opacity:.5}}.excalidraw{--container-padding-y: 1.5rem;--container-padding-x: .75rem}.excalidraw .library-menu-items__no-items{text-align:center;color:var(--color-gray-70);line-height:1.5;font-size:.875rem;width:100%}.excalidraw .library-menu-items__no-items__label{color:var(--color-primary);font-weight:700;font-size:1.125rem;margin-bottom:.75rem}.excalidraw.theme--dark .library-menu-items__no-items{color:var(--color-gray-40)}.excalidraw .library-menu-items-container{width:100%;display:flex;flex-grow:1;flex-shrink:1;flex-basis:0;overflow-y:auto;flex-direction:column;height:100%;justify-content:center;margin:0;position:relative}.excalidraw .library-menu-items-container>div{padding-left:.75rem;padding-right:.75rem}.excalidraw .library-menu-items-container__row{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.excalidraw .library-menu-items-container__items{row-gap:.5rem;padding:var(--container-padding-y) 0;flex:1;overflow-y:auto;overflow-x:hidden;margin-bottom:1rem}.excalidraw .library-menu-items-container__header{color:var(--color-primary);font-size:1.125rem;font-weight:700;margin-bottom:.75rem;width:100%;padding-right:4rem;box-sizing:border-box}.excalidraw .library-menu-items-container__header--excal{margin-top:2rem}.excalidraw .library-menu-items-container__grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;grid-gap:1rem}.excalidraw .library-menu-items-container .separator{width:100%;display:flex;align-items:center;font-weight:500;font-size:.9rem;margin:.6em .2em;color:var(--text-primary-color)}.excalidraw .library-menu-items-private-library-container{min-height:3.75rem;width:100%}.excalidraw .layer-ui__library{display:flex;flex-direction:column;flex:1 1 auto}.excalidraw .library-actions-counter{background-color:var(--color-primary);color:var(--color-primary-light);font-weight:700;display:flex;align-items:center;justify-content:center;border-radius:50%;width:1rem;height:1rem;position:absolute;bottom:-.25rem;right:-.25rem;font-size:.625rem;pointer-events:none}.excalidraw .layer-ui__library-message{padding:2rem;min-width:200px;display:flex;flex-direction:column;align-items:center;flex-grow:1;justify-content:center}.excalidraw .layer-ui__library-message span{font-size:.8em}.excalidraw .publish-library-success .Dialog__content{display:flex;flex-direction:column}.excalidraw .publish-library-success-close.ToolIcon_type_button{background-color:#228be6;align-self:flex-end}.excalidraw .publish-library-success-close.ToolIcon_type_button:hover{background-color:#1971c2}.excalidraw .publish-library-success-close.ToolIcon_type_button .ToolIcon__icon{width:auto;font-size:1rem;color:#fff;padding:0 .5rem}.excalidraw .library-menu-control-buttons{display:flex;align-items:center;justify-content:center;gap:.625rem;position:relative}.excalidraw .library-menu-control-buttons--at-bottom:before{content:"";width:calc(100% - 1.5rem);height:1px;position:absolute;top:-1px;background:var(--sidebar-border-color)}.excalidraw .library-menu-browse-button{flex:1;height:var(--lg-button-size);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;border-radius:var(--border-radius-lg);background-color:var(--color-primary);color:#fff;text-align:center;white-space:nowrap;text-decoration:none!important;font-weight:600;font-size:.75rem}.excalidraw .library-menu-browse-button:hover{background-color:var(--color-brand-hover)}.excalidraw .library-menu-browse-button:active{background-color:var(--color-brand-active)}.excalidraw.theme--dark .library-menu-browse-button{color:var(--color-gray-100)}.excalidraw.excalidraw--mobile .library-menu-browse-button{height:var(--default-button-size)}.excalidraw .layer-ui__library .dropdown-menu{width:auto;top:initial;right:0;left:initial;bottom:100%;margin-bottom:.625rem}.excalidraw .layer-ui__library .dropdown-menu .dropdown-menu-container{width:196px;box-shadow:var(--library-dropdown-shadow);border-radius:var(--border-radius-lg);padding:.25rem .5rem}.excalidraw .layer-ui__library .library-menu-dropdown-container{position:relative}.excalidraw .layer-ui__library .library-menu-dropdown-container--in-heading{padding:0;position:absolute;top:1rem;right:.75rem;z-index:1}.excalidraw .layer-ui__library .library-menu-dropdown-container--in-heading .dropdown-menu{top:100%}.excalidraw{--ExcTextField--color: var(--color-on-surface);--ExcTextField--label-color: var(--color-on-surface);--ExcTextField--background: var(--color-surface-low);--ExcTextField--readonly--background: var(--color-surface-high);--ExcTextField--readonly--color: var(--color-on-surface);--ExcTextField--border: var(--color-gray-20);--ExcTextField--readonly--border: var(--color-border-outline-variant);--ExcTextField--border-hover: var(--color-brand-hover);--ExcTextField--border-active: var(--color-brand-active);--ExcTextField--placeholder: var(--color-border-outline-variant)}.excalidraw .ExcTextField{position:relative}.excalidraw .ExcTextField svg{position:absolute;top:50%;transform:translateY(-50%);left:.75rem;width:1.25rem;height:1.25rem;color:var(--color-gray-40);z-index:1}.excalidraw .ExcTextField--fullWidth{width:100%;flex-grow:1}.excalidraw .ExcTextField__label{font-family:Assistant;font-style:normal;font-weight:600;font-size:.875rem;line-height:150%;color:var(--ExcTextField--label-color);margin-bottom:.25rem;-webkit-user-select:none;user-select:none}.excalidraw .ExcTextField__input{box-sizing:border-box;display:flex;flex-direction:row;align-items:center;height:3rem;background:var(--ExcTextField--background);border:1px solid var(--ExcTextField--border);border-radius:.5rem;padding:0 .75rem}.excalidraw .ExcTextField__input:not(.excalidraw .ExcTextField__input--readonly):hover{border-color:var(--ExcTextField--border-hover)}.excalidraw .ExcTextField__input:not(.excalidraw .ExcTextField__input--readonly):active,.excalidraw .ExcTextField__input:not(.excalidraw .ExcTextField__input--readonly):focus-within{border-color:var(--ExcTextField--border-active)}.excalidraw .ExcTextField__input input{display:flex;align-items:center;border:none;outline:none;padding:0;margin:0;height:1.5rem;color:var(--ExcTextField--color);font-family:Assistant;font-style:normal;font-weight:400;font-size:1rem;line-height:150%;text-overflow:ellipsis;background:transparent;width:100%}.excalidraw .ExcTextField__input input:not(:focus):hover{background-color:initial}.excalidraw .ExcTextField__input input:focus{outline:initial;box-shadow:initial}.excalidraw .ExcTextField__input--readonly{background:var(--ExcTextField--readonly--background);border-color:var(--ExcTextField--readonly--border)}.excalidraw .ExcTextField__input--readonly input{color:var(--ExcTextField--readonly--color)}.excalidraw .ExcTextField--hasIcon .ExcTextField__input{padding-left:2.5rem}.excalidraw .excalidraw-button{display:flex;justify-content:center;align-items:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border-width:1px;border-style:solid;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--button-color, var(--color-on-surface));font-family:var(--ui-font)}.excalidraw .excalidraw-button svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.excalidraw .excalidraw-button:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)));color:var(--button-hover-color, var(--button-color, var(--text-primary-color, inherit)))}.excalidraw .excalidraw-button:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.excalidraw .excalidraw-button.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.excalidraw .excalidraw-button.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.excalidraw .excalidraw-button.active svg{color:var(--button-color, var(--color-on-primary-container))}.zoom-actions,.undo-redo-buttons{background-color:var(--island-bg-color);border-radius:var(--border-radius-lg);box-shadow:0 0 0 1px var(--color-surface-lowest)}.zoom-button,.undo-redo-buttons button{border-radius:0!important;background-color:var(--color-surface-low)!important;font-size:.875rem!important;width:var(--lg-button-size);height:var(--lg-button-size)}.zoom-button svg,.undo-redo-buttons button svg{width:var(--lg-icon-size)!important;height:var(--lg-icon-size)!important}.zoom-button .ToolIcon__icon,.undo-redo-buttons button .ToolIcon__icon{width:100%;height:100%}.reset-zoom-button{border-left:0!important;border-right:0!important;padding:0 .625rem!important;width:3.75rem!important;justify-content:center;color:var(--text-primary-color)}.zoom-out-button{border-top-left-radius:var(--border-radius-lg)!important;border-bottom-left-radius:var(--border-radius-lg)!important}:root[dir=rtl] .zoom-out-button{transform:scaleX(-1)}.zoom-out-button .ToolIcon__icon{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.zoom-in-button{border-top-right-radius:var(--border-radius-lg)!important;border-bottom-right-radius:var(--border-radius-lg)!important}:root[dir=rtl] .zoom-in-button{transform:scaleX(-1)}.zoom-in-button .ToolIcon__icon{border-top-left-radius:0!important;border-bottom-left-radius:0!important}.undo-redo-buttons .undo-button-container button{border-top-left-radius:var(--border-radius-lg)!important;border-bottom-left-radius:var(--border-radius-lg)!important;border-right:0!important}:root[dir=rtl] .undo-redo-buttons .undo-button-container button{transform:scaleX(-1)}.undo-redo-buttons .undo-button-container button .ToolIcon__icon{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.undo-redo-buttons .redo-button-container button{border-top-right-radius:var(--border-radius-lg)!important;border-bottom-right-radius:var(--border-radius-lg)!important}:root[dir=rtl] .undo-redo-buttons .redo-button-container button{transform:scaleX(-1)}.undo-redo-buttons .redo-button-container button .ToolIcon__icon{border-top-left-radius:0!important;border-bottom-left-radius:0!important}.excalidraw .command-palette-dialog{-webkit-user-select:none;user-select:none}.excalidraw .command-palette-dialog .Modal__content{height:auto;max-height:100%}@media screen and (min-width:861px){.excalidraw .command-palette-dialog .Modal__content{max-height:750px;height:100%}}.excalidraw .command-palette-dialog .Modal__content .Island{height:100%;padding:1.5rem}.excalidraw .command-palette-dialog .Modal__content .Dialog__content{height:100%;display:flex;flex-direction:column}.excalidraw .command-palette-dialog .shortcuts-wrapper{display:flex;justify-content:center;align-items:center;margin-top:12px;gap:1.5rem}.excalidraw .command-palette-dialog .shortcut{display:flex;justify-content:center;align-items:center;height:16px;font-size:10px;gap:.25rem}.excalidraw .command-palette-dialog .shortcut .shortcut-wrapper{display:flex}.excalidraw .command-palette-dialog .shortcut .shortcut-plus{margin:0 4px}.excalidraw .command-palette-dialog .shortcut .shortcut-key{padding:0 4px;height:16px;border-radius:4px;display:flex;justify-content:center;align-items:center;background-color:var(--color-primary-light)}.excalidraw .command-palette-dialog .shortcut .shortcut-desc{margin-left:4px;color:var(--color-gray-50)}.excalidraw .command-palette-dialog .commands{overflow-y:auto;box-sizing:border-box;margin-top:12px;color:var(--popup-text-color);-webkit-user-select:none;user-select:none}.excalidraw .command-palette-dialog .commands .command-category{display:flex;flex-direction:column;padding:12px 0;margin-right:.25rem}.excalidraw .command-palette-dialog .commands .command-category-title{font-size:1rem;font-weight:600;margin-bottom:6px;display:flex;align-items:center}.excalidraw .command-palette-dialog .commands .command-item{color:var(--popup-text-color);height:2.5rem;display:flex;justify-content:space-between;align-items:center;box-sizing:border-box;padding:0 .5rem;border-radius:var(--border-radius-lg);cursor:pointer}.excalidraw .command-palette-dialog .commands .command-item:active{background-color:var(--color-surface-low)}.excalidraw .command-palette-dialog .commands .command-item .name{display:flex;align-items:center;gap:.25rem}.excalidraw .command-palette-dialog .commands .item-selected{background-color:var(--color-surface-mid)}.excalidraw .command-palette-dialog .commands .item-disabled{opacity:.3;cursor:not-allowed}.excalidraw .command-palette-dialog .commands .no-match{display:flex;justify-content:center;align-items:center;margin-top:36px}.excalidraw .command-palette-dialog .icon{width:16px;height:16px;margin-right:6px}.excalidraw .popover{position:absolute;z-index:10;padding:5px 0;outline:none}.excalidraw .context-menu{position:relative;border-radius:4px;box-shadow:0 3px 10px #0003;padding:0;list-style:none;-webkit-user-select:none;user-select:none;margin:-.25rem 0 0 .125rem;padding:.5rem 0;background-color:var(--popup-secondary-bg-color);border:1px solid var(--button-gray-3);cursor:default}.excalidraw .context-menu button{color:var(--popup-text-color)}.excalidraw .context-menu-item{position:relative;width:100%;min-width:9.5rem;margin:0;padding:.25rem 1rem .25rem 1.25rem;text-align:start;border-radius:0;background-color:transparent;border:none;white-space:nowrap;font-family:inherit;display:grid;grid-template-columns:1fr .2fr;align-items:center}.excalidraw .context-menu-item.checkmark:before{position:absolute;left:6px;margin-bottom:1px;content:"✓"}.excalidraw .context-menu-item.dangerous .context-menu-item__label{color:#f03e3e}.excalidraw .context-menu-item .context-menu-item__label{justify-self:start;margin-inline-end:20px}.excalidraw .context-menu-item .context-menu-item__shortcut{justify-self:end;opacity:.6;font-family:inherit;font-size:.7rem}.excalidraw .context-menu-item:hover{color:var(--popup-bg-color);background-color:var(--select-highlight-color)}.excalidraw .context-menu-item:hover.dangerous{background-color:#fa5252}.excalidraw .context-menu-item:hover.dangerous .context-menu-item__label{color:var(--popup-bg-color)}.excalidraw .context-menu-item:focus{z-index:1}.excalidraw--mobile.excalidraw .context-menu-item{display:block}.excalidraw--mobile.excalidraw .context-menu-item .context-menu-item__label{margin-inline-end:0}.excalidraw--mobile.excalidraw .context-menu-item .context-menu-item__shortcut{display:none}.excalidraw .context-menu-item-separator{border:none;border-top:1px solid #adb5bd}.excalidraw{--RadioGroup-background: var(--island-bg-color);--RadioGroup-border: var(--color-surface-high);--RadioGroup-choice-color-off: var(--color-primary);--RadioGroup-choice-color-off-hover: var(--color-brand-hover);--RadioGroup-choice-background-off: var(--island-bg-color);--RadioGroup-choice-background-off-active: var(--color-surface-high);--RadioGroup-choice-color-on: var(--color-surface-lowest);--RadioGroup-choice-background-on: var(--color-primary);--RadioGroup-choice-background-on-hover: var(--color-brand-hover);--RadioGroup-choice-background-on-active: var(--color-brand-active)}.excalidraw .RadioGroup{box-sizing:border-box;display:flex;flex-direction:row;align-items:flex-start;padding:3px;border-radius:10px;background:var(--RadioGroup-background);border:1px solid var(--RadioGroup-border)}.excalidraw .RadioGroup__choice{position:relative;display:flex;align-items:center;justify-content:center;width:32px;height:24px;color:var(--RadioGroup-choice-color-off);background:var(--RadioGroup-choice-background-off);border-radius:8px;font-family:Assistant;font-style:normal;font-weight:600;font-size:.75rem;line-height:100%;-webkit-user-select:none;user-select:none;letter-spacing:.4px;transition:all 75ms ease-out}.excalidraw .RadioGroup__choice:hover{color:var(--RadioGroup-choice-color-off-hover)}.excalidraw .RadioGroup__choice:active{background:var(--RadioGroup-choice-background-off-active)}.excalidraw .RadioGroup__choice.active{color:var(--RadioGroup-choice-color-on);background:var(--RadioGroup-choice-background-on)}.excalidraw .RadioGroup__choice.active:hover{background:var(--RadioGroup-choice-background-on-hover)}.excalidraw .RadioGroup__choice.active:active{background:var(--RadioGroup-choice-background-on-active)}.excalidraw .RadioGroup__choice input{z-index:1;position:absolute;width:100%;height:100%;margin:0;padding:0;border-radius:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.excalidraw{--Switch-disabled-color: var(--color-border-outline);--Switch-disabled-toggled-background: var(--color-border-outline-variant);--Switch-disabled-border: var(--color-border-outline-variant);--Switch-track-background: var(--island-bg-color);--Switch-thumb-background: var(--color-on-surface);--Switch-hover-background: var(--color-brand-hover);--Switch-active-background: var(--color-brand-active)}.excalidraw .Switch{position:relative;box-sizing:border-box;width:40px;height:20px;border-radius:12px;transition-property:background,border;transition-duration:.15s;transition-timing-function:ease-out;background:var(--Switch-track-background);border:1px solid var(--Switch-disabled-color)}.excalidraw .Switch:hover{background:var(--Switch-track-background);border:1px solid var(--Switch-hover-background)}.excalidraw .Switch:active{border:1px solid var(--Switch-active-background)}.excalidraw .Switch.toggled{background:var(--color-primary);border:1px solid var(--color-primary)}.excalidraw .Switch.toggled:hover{background:var(--color-primary-darker);border:1px solid var(--color-primary-darker)}.excalidraw .Switch.disabled{background:var(--Switch-track-background);border:1px solid var(--Switch-disabled-border)}.excalidraw .Switch.disabled.toggled{background:var(--Switch-disabled-toggled-background);border:1px solid var(--Switch-disabled-toggled-background)}.excalidraw .Switch:before{content:"";box-sizing:border-box;display:block;pointer-events:none;position:absolute;border-radius:100%;transition:all .15s ease-out;width:10px;height:10px;top:4px;left:4px;background:var(--Switch-thumb-background)}.excalidraw .Switch:active:before{width:12px}.excalidraw .Switch.toggled:before{width:14px;height:14px;left:22px;top:2px;background:var(--Switch-track-background)}.excalidraw .Switch.toggled:active:before{width:16px;left:20px}.excalidraw .Switch.disabled:before{background:var(--Switch-disabled-color)}.excalidraw .Switch.disabled.toggled:before{background:var(--Switch-disabled-color)}.excalidraw .Switch input{width:100%;height:100%;margin:0;border-radius:12px;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.excalidraw .Switch input:disabled{cursor:unset}.excalidraw{--ImageExportModal-preview-border: #d6d6d6}.excalidraw.theme--dark{--ImageExportModal-preview-border: #5c5c5c}.excalidraw .ImageExportModal{display:flex;flex-direction:row;justify-content:space-between;-webkit-user-select:none;user-select:none}.excalidraw .ImageExportModal h3{font-family:Assistant;font-style:normal;font-weight:700;font-size:1.313rem;line-height:130%;padding:0;margin:0}.excalidraw--mobile.excalidraw .ImageExportModal h3{display:none}.excalidraw .ImageExportModal>h3{display:none}.excalidraw--mobile.excalidraw .ImageExportModal>h3{display:block}.excalidraw--mobile.excalidraw .ImageExportModal{flex-direction:column;height:calc(100vh - 5rem)}.excalidraw .ImageExportModal__preview{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;height:360px;width:55%;margin-right:1.5rem}.excalidraw--mobile.excalidraw .ImageExportModal__preview{max-width:unset;margin-right:unset;width:100%;height:unset;flex-grow:1}.excalidraw .ImageExportModal__preview__filename>input{margin-top:1rem}.excalidraw .ImageExportModal__preview__canvas{box-sizing:border-box;width:100%;height:100%;display:flex;flex-grow:1;justify-content:center;align-items:center;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMUlEQVQ4T2NkYGAQYcAP3uCTZhw1gGGYhAGBZIA/nYDCgBDAm9BGDWAAJyRCgLaBCAAgXwixzAS0pgAAAABJRU5ErkJggg==) left center;border:1px solid var(--ImageExportModal-preview-border);border-radius:12px;overflow:hidden;padding:1rem}.excalidraw .ImageExportModal__preview__canvas>canvas{max-width:calc(100% - 2rem);max-height:calc(100% - 2rem);filter:none!important}.excalidraw--mobile.excalidraw .ImageExportModal__preview__canvas>canvas{max-height:100%}.excalidraw--mobile.excalidraw .ImageExportModal__preview__canvas{margin-top:24px;max-width:unset}.excalidraw .ImageExportModal__settings{display:flex;flex-direction:column;flex-wrap:wrap;gap:18px}.excalidraw--mobile.excalidraw .ImageExportModal__settings{margin-left:unset;margin-top:1rem;flex-direction:row;gap:6px 34px;align-content:flex-start}.excalidraw .ImageExportModal__settings__setting{display:flex;flex-direction:row;justify-content:space-between;align-items:center}.excalidraw--mobile.excalidraw .ImageExportModal__settings__setting{flex-direction:column;align-items:start;justify-content:unset;height:52px}.excalidraw .ImageExportModal__settings__setting__label{display:flex;flex-direction:row;align-items:center;font-family:Assistant;font-weight:600;font-size:1rem;line-height:150%}.excalidraw .ImageExportModal__settings__setting__label svg{width:20px;height:20px;margin-left:10px}.excalidraw .ImageExportModal__settings__setting__content{display:flex;height:100%;align-items:center}.excalidraw .ImageExportModal__settings__buttons{flex-grow:1;flex-wrap:wrap;display:flex;flex-direction:row;gap:11px;align-items:flex-end;align-content:flex-end}.excalidraw--mobile.excalidraw .ImageExportModal__settings__buttons{padding-top:32px;flex-basis:100%;justify-content:center}@keyframes successStatusAnimation{0%{transform:scale(.35)}50%{transform:scale(1.25)}to{transform:scale(1)}}.excalidraw .ExcButton{--text-color: transparent;--border-color: transparent;--back-color: transparent;color:var(--text-color);background-color:var(--back-color);border-color:var(--border-color);border-radius:.5rem;border-width:1px;border-style:solid;font-family:var(--font-family);-webkit-user-select:none;user-select:none}.excalidraw .ExcButton:hover{transition:all .15s ease-out}.excalidraw .ExcButton .Spinner{--spinner-color: var(--color-surface-lowest)}.excalidraw .ExcButton .ExcButton__statusIcon{visibility:visible;position:absolute;width:1.2rem;height:1.2rem;animation:successStatusAnimation .5s cubic-bezier(.3,1,.6,1)}.excalidraw .ExcButton.ExcButton--status-loading,.excalidraw .ExcButton.ExcButton--status-success{pointer-events:none}.excalidraw .ExcButton.ExcButton--status-loading .ExcButton__contents,.excalidraw .ExcButton.ExcButton--status-success .ExcButton__contents{visibility:hidden}.excalidraw .ExcButton[disabled]{pointer-events:none}.excalidraw .ExcButton,.excalidraw .ExcButton__contents{display:flex;justify-content:center;align-items:center;flex-shrink:0;flex-wrap:nowrap;position:relative}.excalidraw .ExcButton--color-primary.ExcButton--variant-filled{--text-color: var(--color-surface-lowest);--back-color: var(--color-primary)}.excalidraw .ExcButton--color-primary.ExcButton--variant-filled .Spinner{--spinner-color: var(--text-color)}.excalidraw .ExcButton--color-primary.ExcButton--variant-filled:hover{--back-color: var(--color-brand-hover)}.excalidraw .ExcButton--color-primary.ExcButton--variant-filled:active{--back-color: var(--color-brand-active)}.excalidraw .ExcButton--color-primary.ExcButton--variant-outlined,.excalidraw .ExcButton--color-primary.ExcButton--variant-icon{--text-color: var(--color-primary);--border-color: var(--color-primary);--back-color: transparent}.excalidraw .ExcButton--color-primary.ExcButton--variant-outlined .Spinner,.excalidraw .ExcButton--color-primary.ExcButton--variant-icon .Spinner{--spinner-color: var(--text-color)}.excalidraw .ExcButton--color-primary.ExcButton--variant-outlined:hover,.excalidraw .ExcButton--color-primary.ExcButton--variant-icon:hover{--text-color: var(--color-brand-hover);--border-color: var(--color-brand-hover)}.excalidraw .ExcButton--color-primary.ExcButton--variant-outlined:active,.excalidraw .ExcButton--color-primary.ExcButton--variant-icon:active{--text-color: var(--color-brand-active);--border-color: var(--color-brand-active)}.excalidraw .ExcButton--color-danger.ExcButton--variant-filled{--text-color: var(--color-danger-text);--back-color: var(--color-danger-dark)}.excalidraw .ExcButton--color-danger.ExcButton--variant-filled .Spinner{--spinner-color: var(--text-color)}.excalidraw .ExcButton--color-danger.ExcButton--variant-filled:hover{--back-color: var(--color-danger-darker)}.excalidraw .ExcButton--color-danger.ExcButton--variant-filled:active{--back-color: var(--color-danger-darkest)}.excalidraw .ExcButton--color-danger.ExcButton--variant-outlined,.excalidraw .ExcButton--color-danger.ExcButton--variant-icon{--text-color: var(--color-danger);--border-color: var(--color-danger);--back-color: transparent}.excalidraw .ExcButton--color-danger.ExcButton--variant-outlined .Spinner,.excalidraw .ExcButton--color-danger.ExcButton--variant-icon .Spinner{--spinner-color: var(--text-color)}.excalidraw .ExcButton--color-danger.ExcButton--variant-outlined:hover,.excalidraw .ExcButton--color-danger.ExcButton--variant-icon:hover{--text-color: var(--color-danger-darkest);--border-color: var(--color-danger-darkest)}.excalidraw .ExcButton--color-danger.ExcButton--variant-outlined:active,.excalidraw .ExcButton--color-danger.ExcButton--variant-icon:active{--text-color: var(--color-danger-darker);--border-color: var(--color-danger-darker)}.excalidraw .ExcButton--color-success.ExcButton--variant-filled{--text-color: var(--color-success-text);--back-color: var(--color-success)}.excalidraw .ExcButton--color-success.ExcButton--variant-filled .Spinner{--spinner-color: var(--color-success)}.excalidraw .ExcButton--color-success.ExcButton--variant-filled:hover{--back-color: var(--color-success-darker)}.excalidraw .ExcButton--color-success.ExcButton--variant-filled:active{--back-color: var(--color-success-darkest)}.excalidraw .ExcButton--color-success.ExcButton--variant-outlined,.excalidraw .ExcButton--color-success.ExcButton--variant-icon{--text-color: var(--color-success-contrast);--border-color: var(--color-success-contrast);--back-color: transparent}.excalidraw .ExcButton--color-success.ExcButton--variant-outlined .Spinner,.excalidraw .ExcButton--color-success.ExcButton--variant-icon .Spinner{--spinner-color: var(--color-success-contrast)}.excalidraw .ExcButton--color-success.ExcButton--variant-outlined:hover,.excalidraw .ExcButton--color-success.ExcButton--variant-icon:hover{--text-color: var(--color-success-contrast-hover);--border-color: var(--color-success-contrast-hover)}.excalidraw .ExcButton--color-success.ExcButton--variant-outlined:active,.excalidraw .ExcButton--color-success.ExcButton--variant-icon:active{--text-color: var(--color-success-contrast-active);--border-color: var(--color-success-contrast-active)}.excalidraw .ExcButton--color-muted.ExcButton--variant-filled{--text-color: var(--island-bg-color);--back-color: var(--color-gray-50)}.excalidraw .ExcButton--color-muted.ExcButton--variant-filled .Spinner{--spinner-color: var(--text-color)}.excalidraw .ExcButton--color-muted.ExcButton--variant-filled:hover{--back-color: var(--color-gray-60)}.excalidraw .ExcButton--color-muted.ExcButton--variant-filled:active{--back-color: var(--color-gray-80)}.excalidraw .ExcButton--color-muted.ExcButton--variant-outlined,.excalidraw .ExcButton--color-muted.ExcButton--variant-icon{--text-color: var(--color-muted-background);--border-color: var(--color-muted);--back-color: var(--island-bg-color)}.excalidraw .ExcButton--color-muted.ExcButton--variant-outlined .Spinner,.excalidraw .ExcButton--color-muted.ExcButton--variant-icon .Spinner{--spinner-color: var(--text-color)}.excalidraw .ExcButton--color-muted.ExcButton--variant-outlined:hover,.excalidraw .ExcButton--color-muted.ExcButton--variant-icon:hover{--text-color: var(--color-muted-background-darker);--border-color: var(--color-muted-darker)}.excalidraw .ExcButton--color-muted.ExcButton--variant-outlined:active,.excalidraw .ExcButton--color-muted.ExcButton--variant-icon:active{--text-color: var(--color-muted-background-darker);--border-color: var(--color-muted-darkest)}.excalidraw .ExcButton--color-warning.ExcButton--variant-filled{--text-color: black;--back-color: var(--color-warning-dark)}.excalidraw .ExcButton--color-warning.ExcButton--variant-filled .Spinner{--spinner-color: var(--text-color)}.excalidraw .ExcButton--color-warning.ExcButton--variant-filled:hover{--back-color: var(--color-warning-darker)}.excalidraw .ExcButton--color-warning.ExcButton--variant-filled:active{--back-color: var(--color-warning-darkest)}.excalidraw .ExcButton--color-warning.ExcButton--variant-outlined,.excalidraw .ExcButton--color-warning.ExcButton--variant-icon{--text-color: var(--color-warning-dark);--border-color: var(--color-warning-dark);--back-color: var(--input-bg-color)}.excalidraw .ExcButton--color-warning.ExcButton--variant-outlined .Spinner,.excalidraw .ExcButton--color-warning.ExcButton--variant-icon .Spinner{--spinner-color: var(--text-color)}.excalidraw .ExcButton--color-warning.ExcButton--variant-outlined:hover,.excalidraw .ExcButton--color-warning.ExcButton--variant-icon:hover{--text-color: var(--color-warning-darker);--border-color: var(--color-warning-darker)}.excalidraw .ExcButton--color-warning.ExcButton--variant-outlined:active,.excalidraw .ExcButton--color-warning.ExcButton--variant-icon:active{--text-color: var(--color-warning-darkest);--border-color: var(--color-warning-darkest)}.excalidraw .ExcButton--size-large{font-weight:600;font-size:.875rem;min-height:3rem;padding:.5rem 1.5rem;letter-spacing:.4px}.excalidraw .ExcButton--size-large .ExcButton__contents{gap:.75rem}.excalidraw .ExcButton--size-medium{font-weight:600;font-size:.75rem;min-height:2.5rem;padding:.5rem 1rem;letter-spacing:normal}.excalidraw .ExcButton--size-medium .ExcButton__contents{gap:.5rem}.excalidraw .ExcButton--variant-icon{padding:.5rem .75rem;width:3rem}.excalidraw .ExcButton--fullWidth{width:100%}.excalidraw .ExcButton__icon{width:1.25rem;height:1.25rem}.excalidraw .FixedSideContainer{position:absolute;pointer-events:none}.excalidraw .FixedSideContainer>*{pointer-events:var(--ui-pointerEvents)}.excalidraw .FixedSideContainer_side_top{left:var(--editor-container-padding);top:var(--editor-container-padding);right:var(--editor-container-padding);bottom:var(--editor-container-padding)}.excalidraw .FixedSideContainer_side_top.zen-mode{right:42px}.excalidraw .HintViewer{pointer-events:none;box-sizing:border-box;position:absolute;display:flex;flex-direction:column;justify-content:center;left:0;top:100%;max-width:100%;width:100%;margin-top:.5rem;text-align:center;color:var(--color-gray-40);font-size:.75rem}.excalidraw--mobile.excalidraw .HintViewer{position:static;padding-right:2rem}.excalidraw .HintViewer>span{padding:.25rem}.excalidraw.theme--dark .HintViewer{color:var(--color-gray-60)}.excalidraw--mobile.excalidraw .PasteChartDialog .Island{display:flex;flex-direction:column}.excalidraw .PasteChartDialog .container{display:flex;align-items:center;justify-content:space-around;flex-wrap:wrap}.excalidraw--mobile.excalidraw .PasteChartDialog .container{flex-direction:column;justify-content:center}.excalidraw .PasteChartDialog .ChartPreview{margin:8px;text-align:center;width:192px;height:128px;border-radius:2px;padding:1px;border:1px solid #ced4da;display:flex;align-items:center;justify-content:center;background:transparent}.excalidraw .PasteChartDialog .ChartPreview div{display:inline-block}.excalidraw .PasteChartDialog .ChartPreview svg{max-height:120px;max-width:186px}.excalidraw .PasteChartDialog .ChartPreview:hover{padding:0;border:2px solid #339af0}.excalidraw .HelpDialog .Modal__content{max-width:960px}.excalidraw .HelpDialog h3{margin:1.5rem 0;font-weight:700;font-size:1.125rem}.excalidraw .HelpDialog__header{display:flex;flex-wrap:wrap;gap:.75rem}.excalidraw .HelpDialog__btn{--background: var(--color-surface-mid);display:flex;column-gap:.5rem;align-items:center;background-color:var(--background);padding:.625rem 1rem;border:1px solid var(--background);border-radius:var(--border-radius-lg);color:var(--text-primary-color);font-weight:600;font-size:.75rem;letter-spacing:.4px}.excalidraw.theme--dark.excalidraw .HelpDialog__btn{--background: var(--color-surface-high)}.excalidraw.theme--dark.excalidraw .HelpDialog__btn:hover{--background: #363541}.excalidraw .HelpDialog__btn:hover{--background: var(--color-surface-high);text-decoration:none}.excalidraw .HelpDialog__btn:active{border-color:var(--color-primary)}.excalidraw .HelpDialog__link-icon{line-height:0}.excalidraw .HelpDialog__link-icon svg{width:1rem;height:1rem}.excalidraw .HelpDialog__islands-container{display:grid;grid-column-gap:1.5rem;grid-row-gap:2rem}@media screen and (min-width:1024px){.excalidraw .HelpDialog__islands-container{grid-template-columns:1fr 1fr}}@media screen and (min-width:1024px){.excalidraw .HelpDialog__island--tools{grid-area:1/1/2/2}.excalidraw .HelpDialog__island--view{grid-area:2/1/3/2}.excalidraw .HelpDialog__island--editor{grid-area:1/2/3/3}}.excalidraw .HelpDialog__island h4{font-size:1rem;font-weight:700;margin:0;margin-bottom:.625rem}.excalidraw .HelpDialog__island-content{border:1px solid var(--dialog-border-color);border-radius:var(--border-radius-lg)}.excalidraw .HelpDialog__shortcut{border-bottom:1px solid var(--dialog-border-color);padding:.375rem .75rem;display:flex;justify-content:space-between;align-items:center;font-size:.875rem;column-gap:.5rem}.excalidraw .HelpDialog__shortcut:last-child{border-bottom:none}.excalidraw .HelpDialog__key-container{display:flex;align-items:center;column-gap:.25rem;flex-shrink:0}.excalidraw .HelpDialog__key{display:flex;box-sizing:border-box;font-size:.625rem;background-color:var(--color-primary-light);border-radius:var(--border-radius-md);padding:.5rem;word-break:keep-all;align-items:center;font-family:inherit;line-height:1}.excalidraw{--avatar-size: 1.75rem;--avatarList-gap: .625rem;--userList-padding: var(--space-factor);--userlist-hint-bg-color: var(--color-gray-10);--userlist-hint-heading-color: var(--color-gray-80);--userlist-hint-text-color: var(--color-gray-60);--userlist-collaborators-border-color: var(--color-gray-20)}.excalidraw .UserList__wrapper{display:flex;width:100%;justify-content:flex-end;align-items:center;pointer-events:none!important}.excalidraw .UserList{pointer-events:none;padding:var(--userList-padding);display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:var(--avatarList-gap);box-sizing:border-box;--max-size: calc( var(--avatar-size) * var(--max-avatars, 2) + var(--avatarList-gap) * (var(--max-avatars, 2) - 1) + var(--userList-padding) * 2 );max-height:var(--max-size);max-width:var(--max-size)}.excalidraw .UserList>*{pointer-events:var(--ui-pointerEvents)}.excalidraw .UserList_mobile{padding:0;justify-content:normal;margin:.5rem 0;max-width:none;max-height:none}.excalidraw .UserList__more{width:var(--avatar-size, 1.5rem);height:var(--avatar-size, 1.5rem);position:relative;border-radius:100%;outline-offset:2px;display:flex;justify-content:center;align-items:center;cursor:pointer;font-size:.75rem;line-height:1;color:var(--color-gray-90);flex:0 0 auto;background-color:var(--color-gray-20);border:0!important;font-size:.625rem;font-weight:400;flex-shrink:0;color:var(--color-gray-100);font-weight:700}.excalidraw .UserList__more:active{transform:scale(.94)}.excalidraw .UserList__more-img{width:100%;height:100%;border-radius:100%}.excalidraw .UserList__more:before{content:"";position:absolute;inset:-3px;border-radius:100%}.excalidraw .UserList__more.is-followed:before{border-color:var(--color-primary-hover);box-shadow:0 0 0 1px var(--color-primary-hover)}.excalidraw .UserList__more.is-current-user{cursor:auto}.excalidraw .UserList__collaborator-name{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.excalidraw .UserList__collaborator--avatar-only{position:relative;display:flex;flex:0 0 auto}.excalidraw .UserList__collaborator--avatar-only .UserList__collaborator-status-icon{--size: 14px;position:absolute;display:flex;flex:0 0 auto;bottom:-.25rem;right:-.25rem;width:var(--size);height:var(--size)}.excalidraw .UserList__collaborator--avatar-only .UserList__collaborator-status-icon svg{flex:0 0 auto;width:var(--size);height:var(--size)}.excalidraw .UserList__collaborator-status-icons{margin-left:auto;flex:0 0 auto;min-width:2.25rem;gap:.25rem;justify-content:flex-end;display:flex}.excalidraw .UserList__collaborator.is-muted .UserList__collaborator-status-icon-microphone-muted{color:var(--color-danger);filter:drop-shadow(0px 0px 0px rgba(0,0,0,.5))}.excalidraw .UserList__collaborator-status-icon-speaking-indicator{display:flex;flex-flow:row nowrap;align-items:center;justify-content:space-between;width:1rem;padding:0 3px;box-sizing:border-box}.excalidraw .UserList__collaborator-status-icon-speaking-indicator div{width:.125rem;height:.4rem;background-color:#a2f1a6}.excalidraw .UserList__collaborator-status-icon-speaking-indicator div:nth-of-type(1){animation:speaking-indicator-anim 1s -.45s ease-in-out infinite}.excalidraw .UserList__collaborator-status-icon-speaking-indicator div:nth-of-type(2){animation:speaking-indicator-anim 1s -.9s ease-in-out infinite}.excalidraw .UserList__collaborator-status-icon-speaking-indicator div:nth-of-type(3){animation:speaking-indicator-anim 1s -.15s ease-in-out infinite}@keyframes speaking-indicator-anim{0%,to{transform:scaleY(1)}50%{transform:scaleY(2)}}.excalidraw.theme--dark{--userlist-hint-bg-color: var(--color-gray-90);--userlist-hint-heading-color: var(--color-gray-30);--userlist-hint-text-color: var(--color-gray-40);--userlist-collaborators-border-color: var(--color-gray-80)}.excalidraw .UserList__collaborators{top:auto;max-height:50vh}.excalidraw .Card{display:flex;flex-direction:column;align-items:center;max-width:290px;margin:1em;text-align:center}.excalidraw .Card .Card-icon{font-size:2.6em;display:flex;flex:0 0 auto;padding:1.4rem;border-radius:50%;background:var(--card-color);color:#fff}.excalidraw .Card .Card-icon svg{width:2.8rem;height:2.8rem}.excalidraw .Card .Card-details{font-size:.96em;min-height:90px;padding:0 1em;margin-bottom:auto}.excalidraw .Card .Card-button.ToolIcon_type_button{height:2.5rem;margin-top:1em;margin-bottom:.3em;background-color:var(--card-color)}.excalidraw .Card .Card-button.ToolIcon_type_button:hover{background-color:var(--card-color-darker)}.excalidraw .Card .Card-button.ToolIcon_type_button:active{background-color:var(--card-color-darkest)}.excalidraw .Card .Card-button.ToolIcon_type_button .ToolIcon__label{color:#fff}.excalidraw .Card .Card-button.ToolIcon_type_button .Spinner{--spinner-color: #fff}.excalidraw .ExportDialog__preview{--preview-padding: calc(var(--space-factor) * 4);background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMUlEQVQ4T2NkYGAQYcAP3uCTZhw1gGGYhAGBZIA/nYDCgBDAm9BGDWAAJyRCgLaBCAAgXwixzAS0pgAAAABJRU5ErkJggg==) left center;text-align:center;padding:var(--preview-padding);margin-bottom:calc(var(--space-factor) * 3);display:flex;justify-content:center;align-items:center}.excalidraw .ExportDialog__preview canvas{max-width:calc(100% - var(--preview-padding) * 2);max-height:25rem}.excalidraw.theme--dark .ExportDialog__preview canvas{filter:none}.excalidraw .ExportDialog__actions{width:100%;display:flex;grid-gap:calc(var(--space-factor) * 2);align-items:top;justify-content:space-between}.excalidraw--mobile.excalidraw .ExportDialog{display:flex;flex-direction:column}.excalidraw--mobile.excalidraw .ExportDialog__actions{flex-direction:column;align-items:center}.excalidraw--mobile.excalidraw .ExportDialog__actions>*{margin-bottom:calc(var(--space-factor) * 3)}.excalidraw--mobile.excalidraw .ExportDialog__preview canvas{max-height:30vh}.excalidraw--mobile.excalidraw .ExportDialog__dialog,.excalidraw--mobile.excalidraw .ExportDialog__dialog .Island{height:100%;box-sizing:border-box}.excalidraw--mobile.excalidraw .ExportDialog__dialog .Island{overflow-y:auto}.excalidraw .ExportDialog--json .ExportDialog-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));justify-items:center;row-gap:2em}@media(max-width:460px){.excalidraw .ExportDialog--json .ExportDialog-cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.excalidraw .ExportDialog--json .ExportDialog-cards .Card-details{min-height:40px}}.excalidraw .ExportDialog--json .ExportDialog-cards .ProjectName{width:fit-content;margin:1em auto;align-items:flex-start;flex-direction:column}.excalidraw .ExportDialog--json .ExportDialog-cards .ProjectName .TextInput{width:auto}.excalidraw .ExportDialog--json .ExportDialog-cards .ProjectName-label{margin:.625em 0;font-weight:700}.excalidraw button.ExportDialog-imageExportButton{border:0;width:5rem;height:5rem;margin:0 .2em;padding:0;display:flex;align-items:center;justify-content:center;border-radius:1rem;background-color:var(--button-color);box-shadow:0 3px 5px -1px #00000047,0 6px 10px #00000024;font-family:Cascadia;font-size:1.8em;color:#fff}.excalidraw button.ExportDialog-imageExportButton:hover{background-color:var(--button-color-darker)}.excalidraw button.ExportDialog-imageExportButton:active{background-color:var(--button-color-darkest);box-shadow:none}.excalidraw button.ExportDialog-imageExportButton svg{width:.9em}.excalidraw .sidebar-trigger{justify-content:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border-width:1px;border-style:solid;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--button-color, var(--color-on-surface));font-family:var(--ui-font);border:none;box-shadow:0 0 0 1px var(--color-surface-lowest);background-color:var(--color-surface-low);width:auto;height:var(--lg-button-size);display:flex;align-items:center;gap:.5rem;line-height:0;font-size:.75rem;letter-spacing:.4px}.excalidraw .sidebar-trigger svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.excalidraw .sidebar-trigger:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)));color:var(--button-hover-color, var(--button-color, var(--text-primary-color, inherit)))}.excalidraw .sidebar-trigger:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.excalidraw .sidebar-trigger.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.excalidraw .sidebar-trigger.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.excalidraw .sidebar-trigger.active svg{color:var(--button-color, var(--color-on-primary-container))}.excalidraw .sidebar-trigger:active{box-shadow:0 0 0 1px var(--color-brand-active)}.excalidraw .sidebar-trigger svg{width:var(--lg-icon-size);height:var(--lg-icon-size)}.excalidraw .sidebar-trigger__label-element{align-self:flex-start}.excalidraw .default-sidebar-trigger .sidebar-trigger__label{display:block;white-space:nowrap}.excalidraw.excalidraw--mobile .default-sidebar-trigger .sidebar-trigger__label{display:none}.excalidraw .sidebar{display:flex;flex-direction:column;position:absolute;top:0;bottom:0;right:0;z-index:5;margin:0;padding:0;box-sizing:border-box;background-color:var(--sidebar-bg-color);box-shadow:var(--sidebar-shadow);pointer-events:var(--ui-pointerEvents);overflow:hidden;border-radius:0;width:calc(var(--right-sidebar-width) - var(--space-factor) * 2);border-left:1px solid var(--sidebar-border-color)}:root[dir=rtl] .excalidraw .sidebar{left:0;right:auto}.excalidraw .sidebar--docked{box-shadow:none}:root[dir=rtl] .excalidraw .sidebar{border-right:1px solid var(--sidebar-border-color);border-left:0}.excalidraw .sidebar__header{box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;width:100%;padding:1rem .75rem;position:relative}.excalidraw .sidebar__header:after{content:"";width:calc(100% - 1.5rem);height:1px;background:var(--sidebar-border-color);position:absolute;bottom:-1px}.excalidraw .sidebar__header__buttons{gap:0;display:flex;align-items:center;margin-left:auto}.excalidraw .sidebar__header__buttons button{display:flex;justify-content:center;align-items:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border-width:1px;border-style:solid;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--button-color, var(--color-on-surface));font-family:var(--ui-font);--button-bg: transparent;border:0!important;width:var(--lg-button-size);height:var(--lg-button-size);padding:0}.excalidraw .sidebar__header__buttons button svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.excalidraw .sidebar__header__buttons button:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)));color:var(--button-hover-color, var(--button-color, var(--text-primary-color, inherit)))}.excalidraw .sidebar__header__buttons button:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.excalidraw .sidebar__header__buttons button.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.excalidraw .sidebar__header__buttons button.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.excalidraw .sidebar__header__buttons button.active svg{color:var(--button-color, var(--color-on-primary-container))}.excalidraw .sidebar__header__buttons button svg{width:var(--lg-icon-size);height:var(--lg-icon-size)}.excalidraw .sidebar__header__buttons button:hover{background:var(--button-hover-bg, var(--island-bg-color))}.excalidraw .sidebar__header__buttons .sidebar__dock.selected svg{stroke:var(--color-primary);fill:var(--color-primary)}.excalidraw .sidebar-tabs-root{display:flex;flex-direction:column;flex:1 1 auto;padding:1rem 0}.excalidraw .sidebar-tabs-root [role=tabpanel]{flex:1;flex:1 1 auto;display:flex;flex-direction:column;outline:none}.excalidraw .sidebar-tabs-root [role=tabpanel][data-state=inactive]{display:none!important}.excalidraw .sidebar-tabs-root [role=tablist]{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(0,1fr))}.excalidraw .sidebar-tabs-root>.sidebar__header{padding-top:0;padding-bottom:1rem}.excalidraw .sidebar-tab-trigger{--button-width: auto;--button-bg: transparent;--button-hover-bg: transparent;--button-active-bg: var(--color-primary);--button-hover-color: var(--color-primary);--button-hover-border: var(--color-primary)}.excalidraw .sidebar-tab-trigger[data-state=active]{--button-bg: var(--color-primary);--button-hover-bg: var(--color-primary-darker);--button-hover-color: var(--color-icon-white);--button-border: var(--color-primary);color:var(--color-icon-white)}.excalidraw .default-sidebar{display:flex;flex-direction:column}.excalidraw .default-sidebar .sidebar-triggers{display:flex;gap:0;padding:2px;margin-top:-3px;margin-bottom:-3px;border:1px solid var(--sidebar-border-color);background:var(--default-bg-color);border-radius:.625rem}.excalidraw .default-sidebar .sidebar-triggers .sidebar-tab-trigger{height:var(--lg-button-size);width:var(--lg-button-size);border:none}.excalidraw .ActiveFile .ActiveFile__fileName{display:flex;align-items:center}.excalidraw .ActiveFile .ActiveFile__fileName span{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;width:9.3em}.excalidraw .ActiveFile .ActiveFile__fileName svg{width:1.15em;margin-inline-end:.3em;transform:scaleY(.9)}.excalidraw .OverwriteConfirm{display:flex;flex-direction:column;align-items:center;gap:.75rem;isolation:isolate}.excalidraw .OverwriteConfirm h3{margin:0;font-weight:700;font-size:1.3125rem;line-height:130%;align-self:flex-start;color:var(--text-primary-color)}.excalidraw .OverwriteConfirm__Description{box-sizing:border-box;display:flex;flex-direction:row;align-items:center;width:100%;gap:1rem;padding:2.5rem;background:var(--color-danger-background);border-radius:.5rem;font-family:Assistant;font-style:normal;font-weight:400;font-size:1rem;line-height:150%;color:var(--color-danger-color)}.excalidraw--mobile.excalidraw .OverwriteConfirm__Description{flex-direction:column;text-align:center}.excalidraw .OverwriteConfirm__Description__spacer{flex-grow:1}.excalidraw .OverwriteConfirm__Description__icon{box-sizing:border-box;display:flex;align-items:center;justify-content:center;border-radius:2.5rem;background:var(--color-danger-icon-background);width:3.5rem;height:3.5rem;padding:.75rem}.excalidraw .OverwriteConfirm__Description__icon svg{color:var(--color-danger-icon-color);width:1.5rem;height:1.5rem}.excalidraw .OverwriteConfirm__Description.OverwriteConfirm__Description--color-warning{background:var(--color-warning-background);color:var(--color-warning-color)}.excalidraw .OverwriteConfirm__Description.OverwriteConfirm__Description--color-warning .OverwriteConfirm__Description__icon{background:var(--color-warning-icon-background);flex:0 0 auto}.excalidraw .OverwriteConfirm__Description.OverwriteConfirm__Description--color-warning .OverwriteConfirm__Description__icon svg{color:var(--color-warning-icon-color)}.excalidraw .OverwriteConfirm__Actions{display:flex;flex-direction:row;align-items:stretch;justify-items:stretch;justify-content:center;gap:1.5rem}.excalidraw--mobile.excalidraw .OverwriteConfirm__Actions{flex-direction:column}.excalidraw .OverwriteConfirm__Actions__Action{display:flex;flex-direction:column;align-items:center;padding:1.5rem;gap:.75rem;flex-basis:50%;flex-grow:0}.excalidraw .OverwriteConfirm__Actions__Action__content{height:100%;font-size:.875rem;text-align:center}.excalidraw .OverwriteConfirm__Actions__Action h4{font-weight:700;font-size:1.125rem;line-height:130%;margin:0;color:var(--text-primary-color)}.excalidraw .layer-ui__search{flex:1 0 auto;display:flex;flex-direction:column;padding:8px 0 0}.excalidraw .layer-ui__search-header{display:flex;justify-content:space-between;align-items:center;padding:0 .75rem}.excalidraw .layer-ui__search-header .ExcTextField{flex:1 0 auto}.excalidraw .layer-ui__search-header .ExcTextField__input{background-color:#f5f5f9;border-radius:var(--border-radius-md);border:0}.excalidraw.theme--dark.excalidraw .layer-ui__search-header .ExcTextField__input{background-color:#31303b}.excalidraw .layer-ui__search-header .ExcTextField__input input::placeholder{font-size:.9rem}.excalidraw .layer-ui__search-count{display:flex;justify-content:space-between;align-items:center;padding:8px 8px 0;margin:0 .75rem .25rem;font-size:.8em}.excalidraw .layer-ui__search-count .result-nav{display:flex}.excalidraw .layer-ui__search-count .result-nav .result-nav-btn{width:36px;height:36px;--button-border: transparent}.excalidraw .layer-ui__search-count .result-nav .result-nav-btn:active{background-color:var(--color-surface-high)}.excalidraw .layer-ui__search-count .result-nav .result-nav-btn:first-child{margin-right:4px}.excalidraw .layer-ui__search-result-container{overflow-y:auto;flex:1 1 0;display:flex;flex-direction:column;gap:.125rem}.excalidraw .layer-ui__result-item{display:flex;align-items:center;min-height:2rem;flex:0 0 auto;padding:.25rem .75rem;cursor:pointer;border:1px solid transparent;outline:none;margin:0 .75rem;border-radius:var(--border-radius-md)}.excalidraw .layer-ui__result-item .text-icon{width:1rem;height:1rem;margin-right:.75rem}.excalidraw .layer-ui__result-item .preview-text{flex:1;max-height:48px;line-height:24px;overflow:hidden;text-overflow:ellipsis;word-break:break-all}.excalidraw .layer-ui__result-item:hover{background-color:var(--color-surface-high)}.excalidraw .layer-ui__result-item:active{border-color:var(--color-primary)}.excalidraw .layer-ui__result-item.active{background-color:var(--color-surface-high)}.excalidraw .dialog-mermaid-title{margin-block:.25rem;font-size:1.25rem;font-weight:700;padding-inline:2.5rem}.excalidraw .Modal.Dialog.ttd-dialog{padding:1.25rem}.excalidraw .Modal.Dialog.ttd-dialog.Dialog--fullscreen{margin-top:0}.excalidraw .Modal.Dialog.ttd-dialog .Island{padding-inline:0!important;height:100%;display:flex;flex-direction:column;flex:1 1 auto;box-shadow:none}.excalidraw .Modal.Dialog.ttd-dialog .Modal__content{height:auto;max-height:100%}@media screen and (min-width:861px){.excalidraw .Modal.Dialog.ttd-dialog .Modal__content{max-height:750px;height:100%}}.excalidraw .Modal.Dialog.ttd-dialog .Dialog__content{flex:1 1 auto}.excalidraw .ttd-dialog-desc{font-size:15px;font-style:italic;font-weight:500;margin-bottom:1.5rem}.excalidraw .ttd-dialog-tabs-root{width:100%;height:100%;display:flex;flex-direction:column}.excalidraw .ttd-dialog-tab-trigger{color:var(--color-on-surface);font-size:.875rem;margin:0;padding:0 1rem;background-color:transparent;border:0;height:2.875rem;font-weight:600;font-family:inherit;letter-spacing:.4px}.excalidraw .ttd-dialog-tab-trigger[data-state=active]{border-bottom:2px solid var(--color-primary)}.excalidraw .ttd-dialog-triggers{border-bottom:1px solid var(--color-surface-high);margin-bottom:1.5rem;padding-inline:2.5rem}.excalidraw .ttd-dialog-content{padding-inline:2.5rem;height:100%;display:flex;flex-direction:column}.excalidraw .ttd-dialog-content[hidden]{display:none}.excalidraw .ttd-dialog-input{width:auto;height:10rem;resize:none;border-radius:var(--border-radius-lg);border:1px solid var(--dialog-border-color);white-space:pre-wrap;padding:.85rem;box-sizing:border-box;font-family:monospace}@media screen and (min-width:861px){.excalidraw .ttd-dialog-input{width:100%;height:100%}}.excalidraw .ttd-dialog-output-wrapper{display:flex;align-items:center;justify-content:center;padding:.85rem;box-sizing:border-box;flex-grow:1;position:relative;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMUlEQVQ4T2NkYGAQYcAP3uCTZhw1gGGYhAGBZIA/nYDCgBDAm9BGDWAAJyRCgLaBCAAgXwixzAS0pgAAAABJRU5ErkJggg==) left center;border-radius:var(--border-radius-lg);border:1px solid var(--dialog-border-color);height:400px;width:auto}@media screen and (min-width:861px){.excalidraw .ttd-dialog-output-wrapper{width:100%;height:200px}}.excalidraw .ttd-dialog-output-wrapper canvas{max-width:100%;max-height:100%}.excalidraw .ttd-dialog-output-canvas-container{display:flex;width:100%;height:100%;align-items:center;justify-content:center;flex-grow:1}.excalidraw .ttd-dialog-output-error{color:red;font-weight:700;font-size:30px;word-break:break-word;overflow:auto;max-height:100%;height:100%;width:100%;text-align:center;position:absolute;z-index:10}.excalidraw .ttd-dialog-output-error p{font-weight:500;font-family:Cascadia;text-align:left;white-space:pre-wrap;font-size:.875rem;padding:0 10px}.excalidraw .ttd-dialog-panels{height:100%}@media screen and (min-width:861px){.excalidraw .ttd-dialog-panels{display:grid;grid-template-columns:1fr 1fr;gap:4rem}}.excalidraw .ttd-dialog-panel{display:flex;flex-direction:column;width:100%}.excalidraw .ttd-dialog-panel__header{display:flex;margin:0 4px 4px;align-items:center;gap:1rem}.excalidraw .ttd-dialog-panel__header label{font-size:14px;font-style:normal;font-weight:600}.excalidraw .ttd-dialog-panel:first-child .ttd-dialog-panel-button-container:not(.invisible){margin-bottom:4rem}@media screen and (min-width:861px){.excalidraw .ttd-dialog-panel .ttd-dialog-panel-button-container:not(.invisible){margin-bottom:.5rem!important}}.excalidraw .ttd-dialog-panel textarea{height:100%;resize:none;border-radius:var(--border-radius-lg);border:1px solid var(--dialog-border-color);white-space:pre-wrap;padding:.85rem;box-sizing:border-box;width:100%;font-family:monospace}@media screen and (max-width:861px){.excalidraw .ttd-dialog-panel textarea{width:auto;height:10rem}}.excalidraw .ttd-dialog-panel-button-container{margin-top:1rem;margin-bottom:.5rem}.excalidraw .ttd-dialog-panel-button-container.invisible .ttd-dialog-panel-button{display:none}@media screen and (min-width:861px){.excalidraw .ttd-dialog-panel-button-container.invisible .ttd-dialog-panel-button{display:block;visibility:hidden}}.excalidraw .ttd-dialog-panel-button{position:relative}.excalidraw .ttd-dialog-panel-button.excalidraw-button{font-family:inherit;font-weight:600;height:2.5rem;font-size:12px;color:#fff;background-color:var(--color-primary);width:100%}.excalidraw .ttd-dialog-panel-button.excalidraw-button:hover{background-color:var(--color-primary-darker)}.excalidraw .ttd-dialog-panel-button.excalidraw-button:active{background-color:var(--color-primary-darkest)}.excalidraw .ttd-dialog-panel-button.excalidraw-button:disabled{opacity:.5;cursor:not-allowed}.excalidraw .ttd-dialog-panel-button.excalidraw-button:disabled:hover{background-color:var(--color-primary)}@media screen and (min-width:861px){.excalidraw .ttd-dialog-panel-button.excalidraw-button{width:auto;min-width:7.5rem}}.excalidraw.theme--dark.excalidraw .ttd-dialog-panel-button.excalidraw-button{color:var(--color-gray-100)}.excalidraw .ttd-dialog-panel-button div{display:contents}.excalidraw .ttd-dialog-panel-button div.invisible{visibility:hidden}.excalidraw .ttd-dialog-panel-button div.Spinner{display:flex!important;position:absolute;inset:0;--spinner-color: white}.excalidraw.theme--dark.excalidraw .ttd-dialog-panel-button div.Spinner{--spinner-color: var(--color-gray-100)}.excalidraw .ttd-dialog-panel-button div span{padding-left:.5rem;display:flex}.excalidraw .ttd-dialog-submit-shortcut{margin-inline-start:.5rem;font-size:.625rem;opacity:.6;display:flex;gap:.125rem}.excalidraw .ttd-dialog-submit-shortcut__key{border:1px solid gray;padding:2px 3px;border-radius:4px}.excalidraw .drag-input-container{display:flex;width:100%}.excalidraw .drag-input-container:focus-within{box-shadow:0 0 0 1px var(--color-primary-darkest);border-radius:var(--border-radius-md)}.excalidraw .disabled{opacity:.5;pointer-events:none}.excalidraw .drag-input-label{flex-shrink:0;border:1px solid var(--default-border-color);border-right:0;padding:0 .5rem 0 .75rem;min-width:1rem;height:2rem;box-sizing:border-box;color:var(--popup-text-color);display:flex;align-items:center;justify-content:center;position:relative}:root[dir=ltr] .excalidraw .drag-input-label{border-radius:var(--border-radius-md) 0 0 var(--border-radius-md)}:root[dir=rtl] .excalidraw .drag-input-label{border-radius:0 var(--border-radius-md) var(--border-radius-md) 0;border-right:1px solid var(--default-border-color);border-left:0}.excalidraw .drag-input{box-sizing:border-box;width:100%;margin:0;font-size:.875rem;font-family:inherit;background-color:transparent;color:var(--text-primary-color);border:0;outline:none;height:2rem;border:1px solid var(--default-border-color);border-left:0;letter-spacing:.4px;padding:.5rem .5rem .5rem .25rem;appearance:none}:root[dir=ltr] .excalidraw .drag-input{border-radius:0 var(--border-radius-md) var(--border-radius-md) 0}:root[dir=rtl] .excalidraw .drag-input{border-radius:var(--border-radius-md) 0 0 var(--border-radius-md);border-left:1px solid var(--default-border-color);border-right:0}.excalidraw .drag-input:focus-visible{box-shadow:none}.exc-stats{width:204px;position:absolute;top:60px;font-size:12px;z-index:var(--zIndex-layerUI);pointer-events:var(--ui-pointerEvents)}:root[dir=rtl] .exc-stats{left:12px;right:initial}.exc-stats h2{font-size:1.5em;margin-block-start:.83em;margin-block-end:.83em;font-weight:700}.exc-stats h3{white-space:nowrap;font-size:1.17em;margin:0;font-weight:700}.exc-stats__rows{display:flex;flex-direction:column;gap:.3125rem}.exc-stats__row{display:flex;justify-content:space-between;align-items:center;display:grid;gap:4px}.exc-stats__row div+div{text-align:right}.exc-stats__row--heading{text-align:center;font-weight:700;margin:.25rem 0}.exc-stats .title{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.exc-stats .title h2{margin:0}.exc-stats .close{height:16px;width:16px;cursor:pointer}.exc-stats .close svg{width:100%;height:100%}.excalidraw .ElementLinkDialog{position:absolute;top:var(--editor-container-padding);left:var(--editor-container-padding);z-index:var(--zIndex-modal);border-radius:10px;padding:1.5rem;display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow-island);background-color:var(--island-bg-color)}.excalidraw--mobile.excalidraw .ElementLinkDialog{left:0;margin-left:.5rem;margin-right:.5rem;width:calc(100% - 1rem);box-sizing:border-box;z-index:5}.excalidraw .ElementLinkDialog .ElementLinkDialog__header{margin-bottom:1.5rem}.excalidraw .ElementLinkDialog .ElementLinkDialog__header h2{margin-top:0;margin-bottom:.5rem}.excalidraw--mobile.excalidraw .ElementLinkDialog .ElementLinkDialog__header h2{font-size:1.25rem}.excalidraw .ElementLinkDialog .ElementLinkDialog__header p{margin:0}.excalidraw--mobile.excalidraw .ElementLinkDialog .ElementLinkDialog__header p{font-size:.875rem}.excalidraw--mobile.excalidraw .ElementLinkDialog .ElementLinkDialog__header{margin-bottom:1rem}.excalidraw .ElementLinkDialog .ElementLinkDialog__input{display:flex}.excalidraw .ElementLinkDialog .ElementLinkDialog__input .ElementLinkDialog__input-field{flex:1}.excalidraw .ElementLinkDialog .ElementLinkDialog__input .ElementLinkDialog__remove{color:#c92a2a;margin-left:1rem}.excalidraw .ElementLinkDialog .ElementLinkDialog__input .ElementLinkDialog__remove .ToolIcon__icon{width:2rem;height:2rem}.excalidraw .ElementLinkDialog .ElementLinkDialog__input .ElementLinkDialog__remove .ToolIcon__icon svg{color:#fa5252}.excalidraw .ElementLinkDialog .ElementLinkDialog__actions{display:flex;justify-content:flex-end;margin-top:1.5rem}.excalidraw--mobile.excalidraw .ElementLinkDialog .ElementLinkDialog__actions{font-size:.875rem;margin-top:1rem}.excalidraw .layer-ui__wrapper.animate{transition:width .1s ease-in-out}.excalidraw .layer-ui__wrapper{position:absolute;width:100%;height:100%;pointer-events:none;z-index:var(--zIndex-layerUI)}.excalidraw .layer-ui__wrapper__top-right{display:flex;width:100%;justify-content:flex-end;gap:.75rem;pointer-events:none!important}.excalidraw .layer-ui__wrapper__top-right>*{pointer-events:var(--ui-pointerEvents)}.excalidraw .layer-ui__wrapper__footer{width:100%}.excalidraw .layer-ui__wrapper__footer-right{z-index:100;display:flex}.excalidraw .layer-ui__wrapper .zen-mode-transition{transition:transform .5s ease-in-out}:root[dir=ltr] .excalidraw .layer-ui__wrapper .zen-mode-transition.transition-left{transform:translate(-999px)}:root[dir=ltr] .excalidraw .layer-ui__wrapper .zen-mode-transition.transition-right{transform:translate(999px)}:root[dir=rtl] .excalidraw .layer-ui__wrapper .zen-mode-transition.transition-left{transform:translate(999px)}:root[dir=rtl] .excalidraw .layer-ui__wrapper .zen-mode-transition.transition-right{transform:translate(-999px)}.excalidraw .layer-ui__wrapper .zen-mode-transition.layer-ui__wrapper__footer-left--transition-bottom{transform:translateY(92px)}.excalidraw .layer-ui__wrapper .disable-zen-mode{padding:10px;position:absolute;bottom:0;opacity:0;visibility:hidden;transition:visibility 0s linear 0s,opacity .5s;font-family:var(--ui-font);font-size:.75rem;font-weight:500;line-height:1;border-radius:var(--border-radius-lg);border:1px solid var(--default-border-color);background-color:var(--island-bg-color);color:var(--text-primary-color)}[dir=ltr] .excalidraw .layer-ui__wrapper .disable-zen-mode{right:1rem}[dir=rtl] .excalidraw .layer-ui__wrapper .disable-zen-mode{left:1rem}.excalidraw .layer-ui__wrapper .disable-zen-mode:hover{background-color:var(--button-hover-bg)}.excalidraw .layer-ui__wrapper .disable-zen-mode:active{border-color:var(--color-primary)}.excalidraw .layer-ui__wrapper .disable-zen-mode--visible{opacity:1;visibility:visible;transition:visibility 0s linear .3s,opacity .5s;transition-delay:.8s;pointer-events:var(--ui-pointerEvents)}.excalidraw .layer-ui__wrapper .layer-ui__wrapper__footer-left>*,.excalidraw .layer-ui__wrapper .footer-center>*,.excalidraw .layer-ui__wrapper .layer-ui__wrapper__footer-right>*{pointer-events:var(--ui-pointerEvents)}.excalidraw .layer-ui__wrapper .layer-ui__wrapper__footer-right{margin-top:auto;margin-bottom:auto}.excalidraw .App-toolbar.zen-mode .ToolIcon__keybinding,.excalidraw .App-toolbar.zen-mode .HintViewer{display:none}.excalidraw .App-toolbar__divider{width:1px;height:1.5rem;align-self:center;background-color:var(--default-border-color);margin:0 .25rem}.excalidraw--mobile.excalidraw .App-toolbar__divider{margin:0}.excalidraw .App-toolbar__extra-tools-trigger{box-shadow:none;border:0;background-color:transparent}.excalidraw .App-toolbar__extra-tools-trigger:active{background-color:var(--button-hover-bg);box-shadow:0 0 0 1px var(--button-active-border, var(--color-primary-darkest)) inset}.excalidraw .App-toolbar__extra-tools-trigger--selected,.excalidraw .App-toolbar__extra-tools-trigger--selected:hover{background:var(--color-primary-light);color:var(--color-primary)}.excalidraw .App-toolbar__extra-tools-dropdown{margin-top:.375rem;right:0;min-width:11.875rem;z-index:1}.excalidraw .Toast{animation:fade-in .5s;background-color:var(--button-gray-1);border-radius:4px;bottom:10px;box-sizing:border-box;cursor:default;left:50%;margin-left:-150px;padding:4px 0;position:absolute;text-align:center;width:300px;z-index:999999}.excalidraw .Toast .Toast__message{padding:0 1.6rem;color:var(--popup-text-color);white-space:pre-wrap}.excalidraw .Toast .close{position:absolute;top:0;right:0;padding:.4rem}.excalidraw .Toast .close .ToolIcon__icon{width:1.2rem;height:1.2rem}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.excalidraw .SVGLayer{pointer-events:none;width:100vw;height:100vh;position:fixed;top:0;left:0;z-index:var(--zIndex-svgLayer)}.excalidraw .SVGLayer svg{image-rendering:auto;overflow:visible;position:absolute;width:100%;height:100%;top:0;left:0}.excalidraw .excalidraw-canvas-buttons{position:absolute;box-shadow:0 2px 4px #0000004d;z-index:var(--zIndex-canvasButtons);background:var(--island-bg-color);border-radius:var(--border-radius-lg);display:flex;flex-direction:column;gap:.375rem}.excalidraw .follow-mode{position:absolute;box-sizing:border-box;pointer-events:none;border:2px solid var(--color-primary-hover);z-index:9999;display:flex;align-items:flex-end;justify-content:center}.excalidraw .follow-mode__badge{background-color:var(--color-primary-hover);color:var(--color-primary-light);padding:.25rem .5rem;margin-bottom:.5rem;border-radius:.5rem;pointer-events:all;font-size:.75rem;display:flex;gap:.5rem;align-items:center}.excalidraw .follow-mode__badge__label{display:flex;white-space:pre-wrap;line-height:1}.excalidraw .follow-mode__badge__username{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px}.excalidraw .follow-mode__disconnect-btn{all:unset;cursor:pointer;border-radius:.25rem}.excalidraw .follow-mode__disconnect-btn:hover{background-color:var(--color-primary-darker)}.excalidraw .follow-mode__disconnect-btn:active{background-color:var(--color-primary-darkest)}.excalidraw .follow-mode__disconnect-btn svg{display:block;width:1rem;height:1rem}.visually-hidden{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap;-webkit-user-select:none;user-select:none}.LoadingMessage{position:absolute;inset:0;z-index:999;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.LoadingMessage .Spinner{font-size:2.8em}.LoadingMessage .LoadingMessage-text{margin-top:1em;font-size:.8em}.LoadingMessage--dark{background-color:#121212;color:#ced4da}.excalidraw{--theme-filter: none;--button-destructive-bg-color: #ffe3e3;--button-destructive-color: #c92a2a;--button-gray-1: #e9ecef;--button-gray-2: #ced4da;--button-gray-3: #adb5bd;--button-special-active-bg-color: #ebfbee;--dialog-border-color: var(--color-gray-20);--dropdown-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="292.4" height="292.4" viewBox="0 0 292 292"><path d="M287 197L159 69c-4-3-8-5-13-5s-9 2-13 5L5 197c-3 4-5 8-5 13s2 9 5 13c4 4 8 5 13 5h256c5 0 9-1 13-5s5-8 5-13-1-9-5-13z"/></svg>');--focus-highlight-color: #a5d8ff;--icon-fill-color: var(--color-on-surface);--icon-green-fill-color: #2b8a3e;--default-bg-color: #ffffff;--input-bg-color: #ffffff;--input-border-color: #ced4da;--input-hover-bg-color: #f1f3f5;--input-label-color: #495057;--island-bg-color: #ffffff;--keybinding-color: var(--color-gray-40);--link-color: #1c7ed6;--overlay-bg-color: rgba(255, 255, 255, .88);--popup-bg-color: var(--island-bg-color);--popup-secondary-bg-color: #f1f3f5;--popup-text-color: #000000;--popup-text-inverted-color: #ffffff;--select-highlight-color: #339af0;--shadow-island: 0px 0px .9310142993927002px 0px rgba(0, 0, 0, .17), 0px 0px 3.1270833015441895px 0px rgba(0, 0, 0, .08), 0px 7px 14px 0px rgba(0, 0, 0, .05);--button-hover-bg: var(--color-surface-high);--button-active-bg: var(--color-surface-high);--button-active-border: var(--color-brand-active);--default-border-color: var(--color-surface-high);--default-button-size: 2rem;--default-icon-size: 1rem;--lg-button-size: 2.25rem;--lg-icon-size: 1rem;--editor-container-padding: 1rem;--scrollbar-thumb: var(--button-gray-2);--scrollbar-thumb-hover: var(--button-gray-3);--color-slider-track: hsl(240, 100%, 90%);--color-slider-thumb: var(--color-gray-80);--modal-shadow: 0px 100px 80px rgba(0, 0, 0, .07), 0px 41.7776px 33.4221px rgba(0, 0, 0, .0503198), 0px 22.3363px 17.869px rgba(0, 0, 0, .0417275), 0px 12.5216px 10.0172px rgba(0, 0, 0, .035), 0px 6.6501px 5.32008px rgba(0, 0, 0, .0282725), 0px 2.76726px 2.21381px rgba(0, 0, 0, .0196802);--avatar-border-color: var(--color-gray-20);--sidebar-shadow: 0px 100px 80px rgba(0, 0, 0, .07), 0px 41.7776px 33.4221px rgba(0, 0, 0, .0503198), 0px 22.3363px 17.869px rgba(0, 0, 0, .0417275), 0px 12.5216px 10.0172px rgba(0, 0, 0, .035), 0px 6.6501px 5.32008px rgba(0, 0, 0, .0282725), 0px 2.76726px 2.21381px rgba(0, 0, 0, .0196802);--sidebar-border-color: var(--color-surface-high);--sidebar-bg-color: var(--island-bg-color);--library-dropdown-shadow: 0px 15px 6px rgba(0, 0, 0, .01), 0px 8px 5px rgba(0, 0, 0, .05), 0px 4px 4px rgba(0, 0, 0, .09), 0px 1px 2px rgba(0, 0, 0, .1), 0px 0px 0px rgba(0, 0, 0, .1);--space-factor: .25rem;--text-primary-color: var(--color-on-surface);--color-selection: #6965db;--color-icon-white: #ffffff;--color-primary: #6965db;--color-primary-darker: #5b57d1;--color-primary-darkest: #4a47b1;--color-primary-light: #e3e2fe;--color-primary-light-darker: #d7d5ff;--color-primary-hover: #5753d0;--color-gray-10: #f5f5f5;--color-gray-20: #ebebeb;--color-gray-30: #d6d6d6;--color-gray-40: #b8b8b8;--color-gray-50: #999999;--color-gray-60: #7a7a7a;--color-gray-70: #5c5c5c;--color-gray-80: #3d3d3d;--color-gray-85: #242424;--color-gray-90: #1e1e1e;--color-gray-100: #121212;--color-disabled: var(--color-gray-40);--color-warning: #fceeca;--color-warning-dark: #f5c354;--color-warning-darker: #f3ab2c;--color-warning-darkest: #ec8b14;--color-text-warning: var(--text-primary-color);--color-danger: #db6965;--color-danger-dark: #db6965;--color-danger-darker: #d65550;--color-danger-darkest: #d1413c;--color-danger-text: black;--color-danger-background: #fff0f0;--color-danger-icon-background: #ffdad6;--color-danger-color: #700000;--color-danger-icon-color: #700000;--color-warning-background: var(--color-warning);--color-warning-icon-background: var(--color-warning-dark);--color-warning-color: var(--text-primary-color);--color-warning-icon-color: var(--text-primary-color);--color-muted: var(--color-gray-30);--color-muted-darker: var(--color-gray-60);--color-muted-darkest: var(--color-gray-100);--color-muted-background: var(--color-gray-80);--color-muted-background-darker: var(--color-gray-100);--color-promo: var(--color-primary);--color-success: #cafccc;--color-success-darker: #bafabc;--color-success-darkest: #a5eba8;--color-success-text: #268029;--color-success-contrast: #65bb6a;--color-success-contrast-hover: #6bcf70;--color-success-contrast-active: #6edf74;--color-logo-icon: var(--color-primary);--color-logo-text: #190064;--border-radius-md: .375rem;--border-radius-lg: .5rem;--color-surface-high: #f1f0ff;--color-surface-mid: #f2f2f7;--color-surface-low: #ececf4;--color-surface-lowest: #ffffff;--color-on-surface: #1b1b1f;--color-brand-hover: #5753d0;--color-on-primary-container: #030064;--color-brand-active: #4440bf;--color-border-outline: #767680;--color-border-outline-variant: #c5c5d0;--color-surface-primary-container: #e0dfff;--color-badge: #0b6513;--background-color-badge: #d3ffd2}@media screen and (min-device-width:1921px){.excalidraw{--lg-button-size: 2.5rem;--lg-icon-size: 1.25rem;--default-button-size: 2.25rem;--default-icon-size: 1.25rem}}.excalidraw.theme--dark.theme--dark-background-none{background:none}.excalidraw.theme--dark{--theme-filter: invert(93%) hue-rotate(180deg);--button-destructive-bg-color: #5a0000;--button-destructive-color: #ffa8a8;--button-gray-1: #363636;--button-gray-2: #272727;--button-gray-3: #222;--button-special-active-bg-color: #204624;--dialog-border-color: var(--color-gray-80);--dropdown-icon: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="292.4" height="292.4" viewBox="0 0 292 292"><path fill="%23ced4da" d="M287 197L159 69c-4-3-8-5-13-5s-9 2-13 5L5 197c-3 4-5 8-5 13s2 9 5 13c4 4 8 5 13 5h256c5 0 9-1 13-5s5-8 5-13-1-9-5-13z"/></svg>');--focus-highlight-color: #228be6;--icon-green-fill-color: #69db7c;--default-bg-color: #121212;--input-bg-color: #121212;--input-border-color: #2e2e2e;--input-hover-bg-color: #181818;--input-label-color: #e9ecef;--island-bg-color: #232329;--keybinding-color: var(--color-gray-60);--link-color: #4dabf7;--overlay-bg-color: rgba(52, 58, 64, .12);--popup-secondary-bg-color: #222;--popup-text-color: #ced4da;--popup-text-inverted-color: #2c2c2c;--select-highlight-color: #4dabf7;--shadow-island: 0px 0px .9310142993927002px 0px rgba(0, 0, 0, .17), 0px 0px 3.1270833015441895px 0px rgba(0, 0, 0, .08), 0px 7px 14px 0px rgba(0, 0, 0, .05);--modal-shadow: 0px 100px 80px rgba(0, 0, 0, .07), 0px 41.7776px 33.4221px rgba(0, 0, 0, .0503198), 0px 22.3363px 17.869px rgba(0, 0, 0, .0417275), 0px 12.5216px 10.0172px rgba(0, 0, 0, .035), 0px 6.6501px 5.32008px rgba(0, 0, 0, .0282725), 0px 2.76726px 2.21381px rgba(0, 0, 0, .0196802);--avatar-border-color: var(--color-gray-85);--scrollbar-thumb: #343a40;--scrollbar-thumb-hover: #495057;--color-slider-track: hsl(244, 23%, 39%);--color-selection: #3530c4;--color-icon-white: var(--color-gray-90);--color-primary: #a8a5ff;--color-primary-darker: #b2aeff;--color-primary-darkest: #beb9ff;--color-primary-light: #4f4d6f;--color-primary-light-darker: #43415e;--color-primary-hover: #bbb8ff;--color-disabled: var(--color-gray-70);--color-text-warning: var(--color-gray-80);--color-danger: #ffa8a5;--color-danger-dark: #672120;--color-danger-darker: #8f2625;--color-danger-darkest: #ac2b29;--color-danger-text: #fbcbcc;--color-danger-background: #fbcbcc;--color-danger-icon-background: #672120;--color-danger-color: #261919;--color-danger-icon-color: #fbcbcc;--color-warning-background: var(--color-warning);--color-warning-icon-background: var(--color-warning-dark);--color-warning-color: var(--color-gray-80);--color-warning-icon-color: var(--color-gray-80);--color-muted: var(--color-gray-80);--color-muted-darker: var(--color-gray-60);--color-muted-darkest: var(--color-gray-20);--color-muted-background: var(--color-gray-40);--color-muted-background-darker: var(--color-gray-20);--color-logo-text: #e2dfff;--color-surface-high: hsl(245, 10%, 21%);--color-surface-low: hsl(240, 8%, 15%);--color-surface-mid: hsl(240 6% 10%);--color-surface-lowest: hsl(0, 0%, 7%);--color-on-surface: #e3e3e8;--color-brand-hover: #bbb8ff;--color-on-primary-container: #e0dfff;--color-brand-active: #d0ccff;--color-border-outline: #8e8d9c;--color-border-outline-variant: #46464f;--color-surface-primary-container: #403e6a}:root{--zIndex-canvas: 1;--zIndex-interactiveCanvas: 2;--zIndex-svgLayer: 3;--zIndex-wysiwyg: 3;--zIndex-canvasButtons: 3;--zIndex-layerUI: 4;--zIndex-eyeDropperBackdrop: 5;--zIndex-eyeDropperPreview: 6;--zIndex-hyperlinkContainer: 7;--zIndex-modal: 1000;--zIndex-popup: 1001;--zIndex-toast: 999999;--sab: env(safe-area-inset-bottom);--sal: env(safe-area-inset-left);--sar: env(safe-area-inset-right);--sat: env(safe-area-inset-top)}body.excalidraw-cursor-resize,body.excalidraw-cursor-resize a:hover,body.excalidraw-cursor-resize *{cursor:ew-resize}.excalidraw{--ui-font: Assistant, system-ui, BlinkMacSystemFont, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;font-family:var(--ui-font);position:relative;overflow:hidden;color:var(--text-primary-color);display:flex;inset:0;height:100%;width:100%;-webkit-user-select:none;user-select:none}.excalidraw button{cursor:pointer;-webkit-user-select:none;user-select:none}.excalidraw:focus{outline:none}.excalidraw .excalidraw-link,.excalidraw a{font-weight:500;text-decoration:none;color:var(--link-color);-webkit-user-select:none;user-select:none;cursor:pointer}.excalidraw .excalidraw-link:hover,.excalidraw a:hover{text-decoration:underline}.excalidraw .excalidraw-link:active,.excalidraw a:active{text-decoration:none}.excalidraw canvas{touch-action:none;image-rendering:pixelated;image-rendering:-moz-crisp-edges;z-index:var(--zIndex-canvas)}.excalidraw canvas.interactive{z-index:var(--zIndex-interactiveCanvas)}.excalidraw__canvas-wrapper,.excalidraw__canvas.static{pointer-events:none}.excalidraw__canvas{position:absolute}.excalidraw__embeddable{width:100%;height:100%;border:0}.excalidraw__embeddable-container{position:absolute;z-index:2;transform-origin:top left;pointer-events:none}.excalidraw.theme--dark canvas{filter:var(--theme-filter)}.excalidraw .FixedSideContainer{padding-top:var(--sat, 0);padding-right:var(--sar, 0);padding-bottom:var(--sab, 0);padding-left:var(--sal, 0)}.excalidraw .panelRow{display:flex;justify-content:space-between}.excalidraw .panelColumn{display:flex;flex-direction:column;row-gap:.75rem}.excalidraw .panelColumn h3,.excalidraw .panelColumn legend,.excalidraw .panelColumn .control-label{margin:0;margin-bottom:.25rem;font-size:.75rem;color:var(--text-primary-color);font-weight:400;display:block}.excalidraw .panelColumn .control-label input{display:block;width:100%}.excalidraw .panelColumn legend{padding:0}.excalidraw .panelColumn .iconSelectList{flex-wrap:wrap;position:relative}.excalidraw .panelColumn .buttonList{flex-wrap:wrap;display:flex;column-gap:.5rem;row-gap:.5rem}.excalidraw .panelColumn .buttonList label{font-size:.75rem}.excalidraw .panelColumn .buttonList input[type=radio],.excalidraw .panelColumn .buttonList input[type=button]{opacity:0;position:absolute;pointer-events:none}.excalidraw .panelColumn .buttonList .iconRow{margin-top:8px}.excalidraw .panelColumn fieldset{margin:0;padding:0;border:none}.excalidraw .divider{width:1px;background-color:#e9ecef;margin:1px}.excalidraw .welcome-screen-menu-item:focus-visible,.excalidraw .dropdown-menu-item:focus-visible,.excalidraw button:focus-visible,.excalidraw .buttonList label:focus-within,.excalidraw input:focus-visible{outline:transparent;box-shadow:0 0 0 1px var(--color-brand-hover)}.excalidraw .buttonList .ToolIcon__icon{all:unset!important;display:flex!important}.excalidraw .buttonList button{background-color:transparent}.excalidraw .buttonList label,.excalidraw .buttonList button,.excalidraw .buttonList .zIndexButton{display:flex;justify-content:center;align-items:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border-width:1px;border-style:solid;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--button-color, var(--color-on-surface));font-family:var(--ui-font);padding:0}.excalidraw .buttonList label svg,.excalidraw .buttonList button svg,.excalidraw .buttonList .zIndexButton svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.excalidraw .buttonList label:hover,.excalidraw .buttonList button:hover,.excalidraw .buttonList .zIndexButton:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)));color:var(--button-hover-color, var(--button-color, var(--text-primary-color, inherit)))}.excalidraw .buttonList label:active,.excalidraw .buttonList button:active,.excalidraw .buttonList .zIndexButton:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.excalidraw .buttonList label.active,.excalidraw .buttonList button.active,.excalidraw .buttonList .zIndexButton.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.excalidraw .buttonList label.active:hover,.excalidraw .buttonList button.active:hover,.excalidraw .buttonList .zIndexButton.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.excalidraw .buttonList label.active svg,.excalidraw .buttonList button.active svg,.excalidraw .buttonList .zIndexButton.active svg{color:var(--button-color, var(--color-on-primary-container))}.excalidraw .buttonList label svg,.excalidraw .buttonList button svg,.excalidraw .buttonList .zIndexButton svg{width:var(--default-icon-size);height:var(--default-icon-size)}.excalidraw .App-top-bar{z-index:var(--zIndex-layerUI);display:flex;flex-direction:column;align-items:center}.excalidraw .App-bottom-bar{position:absolute;inset:0;--bar-padding: calc(4 * var(--space-factor));padding-top:max(var(--bar-padding),var(--sat,0));padding-right:var(--sar, 0);padding-bottom:var(--sab, 0);padding-left:var(--sal, 0);z-index:4;display:flex;align-items:flex-end;pointer-events:none}.excalidraw .App-bottom-bar>.Island{width:100%;max-width:100%;min-width:100%;box-sizing:border-box;max-height:100%;display:flex;flex-direction:column;pointer-events:var(--ui-pointerEvents)}.excalidraw .App-bottom-bar>.Island .panelColumn{padding:8px 8px 0}.excalidraw .App-toolbar{width:100%}.excalidraw .App-toolbar .eraser.ToolIcon:hover{--icon-fill-color: #fff;--keybinding-color: #fff}.excalidraw .App-toolbar .eraser.active{background-color:var(--color-primary)}.excalidraw .App-toolbar-content{display:flex;align-items:center;justify-content:space-between;padding:8px}.excalidraw .App-toolbar-content .dropdown-menu--mobile{bottom:55px;top:auto}.excalidraw .App-mobile-menu{width:100%;overflow-x:visible;overflow-y:auto;box-sizing:border-box;margin-bottom:var(--bar-padding)}.excalidraw .App-menu{display:grid;color:var(--icon-fill-color)}.excalidraw .shapes-section{display:flex;justify-content:center;pointer-events:none!important}.excalidraw .shapes-section>*{pointer-events:var(--ui-pointerEvents)}.excalidraw .App-menu_top{grid-template-columns:1fr 2fr 1fr;grid-gap:2rem;align-items:flex-start;cursor:default;pointer-events:none!important}.excalidraw .App-menu_top>*{pointer-events:var(--ui-pointerEvents)}@media(min-width:1536px){.excalidraw .App-menu_top{grid-template-columns:1fr 1fr 1fr;grid-gap:3rem}}.excalidraw .App-menu_top>*:first-child{justify-self:flex-start}.excalidraw .App-menu_top>*:last-child{justify-self:flex-end}.excalidraw .App-menu_bottom{position:absolute;bottom:1rem;display:flex;justify-content:space-between;align-items:flex-start;cursor:default;pointer-events:none!important;box-sizing:border-box;padding:0 1rem}.excalidraw .App-menu_bottom--transition-left section{width:185px}.excalidraw .App-menu_bottom section{display:flex}.excalidraw .App-menu_bottom>*:first-child{justify-self:flex-start}.excalidraw .App-menu_bottom>*:last-child{justify-self:flex-end}.excalidraw .App-menu_left{grid-template-rows:1fr auto 1fr;height:100%}.excalidraw .App-menu_right{grid-template-rows:1fr;height:100%}.excalidraw .App-menu__left{overflow-y:auto;padding:.75rem;width:12.5rem;box-sizing:border-box;position:absolute}.excalidraw .dropdown-select{height:1.5rem;padding:0;padding-inline-start:.5rem;padding-inline-end:1.5rem;color:var(--icon-fill-color);background-color:var(--button-gray-1);border-radius:var(--space-factor);border:1px solid var(--button-gray-2);font-size:.8rem;font-family:inherit;outline:none;appearance:none;background-image:var(--dropdown-icon);background-repeat:no-repeat;background-position:right .7rem top 50%,0 0;background-size:.65em auto,100%}:root[dir=rtl] .excalidraw .dropdown-select{background-position:left .7rem top 50%,0 0}.excalidraw .dropdown-select:focus{box-shadow:0 0 0 2px var(--focus-highlight-color)}.excalidraw .dropdown-select:hover,.excalidraw .dropdown-select:active{background-color:var(--button-gray-2)}.excalidraw .dropdown-select__language{height:2rem;background-color:var(--island-bg-color);border-color:var(--default-border-color)!important;cursor:pointer}.excalidraw .dropdown-select__language:hover{background-color:var(--island-bg-color)}.excalidraw .scroll-back-to-content{border-radius:var(--border-radius-lg);background-color:var(--island-bg-color);color:var(--icon-fill-color);border:1px solid var(--default-border-color);padding:10px 20px;position:absolute;left:50%;bottom:30px;transform:translate(-50%);pointer-events:var(--ui-pointerEvents);font-family:inherit}.excalidraw .scroll-back-to-content:hover{background-color:var(--button-hover-bg)}.excalidraw .scroll-back-to-content:active{border:1px solid var(--button-active-border)}.excalidraw .help-icon{display:flex;justify-content:center;align-items:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border-width:1px;border-style:solid;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--button-color, var(--color-on-surface));font-family:var(--ui-font);border:none;box-shadow:0 0 0 1px var(--color-surface-lowest);background-color:var(--color-surface-low);width:var(--lg-button-size);height:var(--lg-button-size)}.excalidraw .help-icon svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.excalidraw .help-icon:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)));color:var(--button-hover-color, var(--button-color, var(--text-primary-color, inherit)))}.excalidraw .help-icon:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.excalidraw .help-icon.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.excalidraw .help-icon.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.excalidraw .help-icon.active svg{color:var(--button-color, var(--color-on-primary-container))}.excalidraw .help-icon:active{box-shadow:0 0 0 1px var(--color-brand-active)}.excalidraw .help-icon svg{width:var(--lg-icon-size);height:var(--lg-icon-size)}.excalidraw .reset-zoom-button{font-family:var(--ui-font)}.excalidraw .finalize-button{display:grid;grid-auto-flow:column;gap:.4em;margin-top:auto;margin-bottom:auto;margin-inline-start:.6em}.excalidraw .undo-redo-buttons,.excalidraw .eraser-buttons{display:grid;grid-auto-flow:column;margin-top:auto;margin-bottom:auto;margin-inline-start:.6em}.excalidraw--mobile.excalidraw aside{display:none}.excalidraw--mobile.excalidraw .scroll-back-to-content{bottom:calc(80px + var(--sab, 0));z-index:-1}:root[dir=rtl] .excalidraw .rtl-mirror{transform:scaleX(-1)}.excalidraw .zen-mode-visibility{visibility:visible;opacity:1;height:auto;width:auto;transition:opacity .5s}.excalidraw .zen-mode-visibility.zen-mode-visibility--hidden{visibility:hidden;opacity:0;height:0;width:0;transition:opacity .5s}.excalidraw .disable-pointerEvents{pointer-events:none!important}.excalidraw.excalidraw--view-mode .App-menu{display:flex;justify-content:space-between}.excalidraw input.is-redacted{-webkit-text-security:disc}.excalidraw input[type=text],.excalidraw textarea:not(.excalidraw-wysiwyg){color:var(--text-primary-color);border:1.5px solid var(--input-border-color);padding:.75rem;white-space:nowrap;border-radius:var(--space-factor);background-color:var(--input-bg-color)}.excalidraw input[type=text]:not(:focus):hover,.excalidraw textarea:not(.excalidraw-wysiwyg):not(:focus):hover{border-color:var(--color-brand-hover)}.excalidraw input[type=text]:focus,.excalidraw textarea:not(.excalidraw-wysiwyg):focus{outline:none;border-color:var(--color-brand-hover)}@media print{.excalidraw .App-bottom-bar,.excalidraw .FixedSideContainer,.excalidraw .layer-ui__wrapper{display:none}}.excalidraw ::-webkit-scrollbar{width:4px;height:3px}.excalidraw select::-webkit-scrollbar{width:10px}.excalidraw ::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:10px}.excalidraw ::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.excalidraw ::-webkit-scrollbar-thumb:active{background:var(--scrollbar-thumb)}.excalidraw .mobile-misc-tools-container{position:absolute;top:calc(5rem - var(--editor-container-padding));right:calc(var(--editor-container-padding) * -1);display:flex;flex-direction:column;border:1px solid var(--sidebar-border-color);border-top-left-radius:var(--border-radius-lg);border-bottom-left-radius:var(--border-radius-lg);border-right:0;overflow:hidden;background-color:var(--island-bg-color)}.excalidraw .mobile-misc-tools-container .ToolIcon__icon{width:2rem;height:2rem;border-radius:0}.excalidraw .mobile-misc-tools-container .default-sidebar-trigger{border:0}.excalidraw .App-toolbar--mobile{overflow:visible;max-width:98vw}.excalidraw .App-toolbar--mobile .ToolIcon__keybinding{display:none}.excalidraw .UserList-Wrapper{margin:0;padding:0;border:none;text-align:left}.excalidraw .UserList-Wrapper legend{display:block;font-size:.75rem;font-weight:400;margin:0 0 .25rem;padding:0}.excalidraw .main-menu-trigger{border:none;box-shadow:0 0 0 1px var(--color-surface-lowest);background-color:var(--color-surface-low)}.excalidraw .main-menu-trigger:active{box-shadow:0 0 0 1px var(--color-brand-active)}.excalidraw .App-mobile-menu,.excalidraw .App-menu__left{--button-border: transparent;--button-bg: var(--color-surface-mid)}.excalidraw.theme--dark.excalidraw .App-mobile-menu,.excalidraw.theme--dark.excalidraw .App-menu__left{--button-hover-bg: #363541;--button-bg: var(--color-surface-high)}.excalidraw .App-menu__left .buttonList{padding:.25rem 0}.excalidraw .excalidraw__paragraph{margin:1rem 0}.excalidraw .Modal__content .excalidraw__paragraph:first-child{margin-top:0}.excalidraw .Modal__content .excalidraw__paragraph+.excalidraw__paragraph{margin-top:0rem}.ErrorSplash.excalidraw{min-height:100vh;padding:20px 0;overflow:auto;display:flex;align-items:center;justify-content:center;-webkit-user-select:text;user-select:text}.ErrorSplash.excalidraw .ErrorSplash-messageContainer{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;background-color:#ffe3e3;border:3px solid #c92a2a}.ErrorSplash.excalidraw .ErrorSplash-paragraph{margin:15px 0;max-width:600px}.ErrorSplash.excalidraw .ErrorSplash-paragraph.align-center{text-align:center}.ErrorSplash.excalidraw .bigger,.ErrorSplash.excalidraw .bigger button{font-size:1.1em}.ErrorSplash.excalidraw .smaller,.ErrorSplash.excalidraw .smaller button{font-size:.9em}.ErrorSplash.excalidraw .ErrorSplash-details{display:flex;flex-direction:column;align-items:flex-start}.ErrorSplash.excalidraw .ErrorSplash-details textarea{width:100%;margin:10px 0;font-family:Cascadia;font-size:.8em}.excalidraw__embeddable-container .excalidraw__embeddable-container__inner{overflow:hidden;display:flex;align-items:center;justify-content:center;border-radius:var(--embeddable-radius)}.excalidraw__embeddable-container .excalidraw__embeddable__outer{width:100%;height:100%}.excalidraw__embeddable-container .excalidraw__embeddable__outer>*{border-radius:var(--embeddable-radius)}.excalidraw__embeddable-container .excalidraw__embeddable-hint{position:absolute;z-index:1;background:#00000080;padding:1rem 1.6rem;border-radius:12px;color:#fff;font-weight:700;letter-spacing:.6px;font-family:Assistant}@font-face{font-family:Assistant;src:url(/assets/Assistant-Regular-DVxZuzxb.woff2) format("woff2");font-weight:400;style:normal;display:swap}@font-face{font-family:Assistant;src:url(/assets/Assistant-Medium-DrcxCXg3.woff2) format("woff2");font-weight:500;style:normal;display:swap}@font-face{font-family:Assistant;src:url(/assets/Assistant-SemiBold-SCI4bEL9.woff2) format("woff2");font-weight:600;style:normal;display:swap}@font-face{font-family:Assistant;src:url(/assets/Assistant-Bold-gm-uSS1B.woff2) format("woff2");font-weight:700;style:normal;display:swap}.footer-center{pointer-events:none;display:flex;width:100%;justify-content:flex-start;margin-inline-end:.6rem}.footer-center>*{pointer-events:var(--ui-pointerEvents)}.excalidraw .ExcalidrawLogo{--logo-icon--xs: 2rem;--logo-text--xs: 1.5rem;--logo-icon--small: 2.5rem;--logo-text--small: 1.75rem;--logo-icon--normal: 3rem;--logo-text--normal: 2.2rem;--logo-icon--large: 90px;--logo-text--large: 65px;display:flex;align-items:center}.excalidraw .ExcalidrawLogo svg{flex:0 0 auto}.excalidraw .ExcalidrawLogo .ExcalidrawLogo-icon{width:auto;color:var(--color-logo-icon)}.excalidraw .ExcalidrawLogo .ExcalidrawLogo-text{margin-left:.75rem;width:auto;color:var(--color-logo-text)}.excalidraw .ExcalidrawLogo.is-xs .ExcalidrawLogo-icon{height:var(--logo-icon--xs)}.excalidraw .ExcalidrawLogo.is-xs .ExcalidrawLogo-text{height:var(--logo-text--xs)}.excalidraw .ExcalidrawLogo.is-small .ExcalidrawLogo-icon{height:var(--logo-icon--small)}.excalidraw .ExcalidrawLogo.is-small .ExcalidrawLogo-text{height:var(--logo-text--small)}.excalidraw .ExcalidrawLogo.is-normal .ExcalidrawLogo-icon{height:var(--logo-icon--normal)}.excalidraw .ExcalidrawLogo.is-normal .ExcalidrawLogo-text{height:var(--logo-text--normal)}.excalidraw .ExcalidrawLogo.is-large .ExcalidrawLogo-icon{height:var(--logo-icon--large)}.excalidraw .ExcalidrawLogo.is-large .ExcalidrawLogo-text{height:var(--logo-text--large)}.excalidraw .excalifont{font-family:Excalifont,Xiaolai}.excalidraw .welcome-screen-decor{pointer-events:none;color:var(--color-gray-40)}.excalidraw .welcome-screen-decor a{--color: var(--color-primary);color:var(--color);text-decoration:none;margin-bottom:-6px}.excalidraw.theme--dark .welcome-screen-decor{color:var(--color-gray-60)}@media(max-height:599px){.excalidraw .welcome-screen-decor-hint{display:none!important}}@media(max-width:1024px),(max-width:800px){.excalidraw .welcome-screen-decor-hint .welcome-screen-decor--help,.excalidraw .welcome-screen-decor-hint .welcome-screen-decor--menu{display:none}}.excalidraw .welcome-screen-decor-hint--help{display:flex;position:absolute;right:0;bottom:100%}:root[dir=rtl] .excalidraw .welcome-screen-decor-hint--help{left:0;right:auto}.excalidraw .welcome-screen-decor-hint--help svg{margin-top:.5rem;width:85px;height:71px;transform:scaleX(-1) rotate(80deg)}:root[dir=rtl] .excalidraw .welcome-screen-decor-hint--help svg{transform:rotate(80deg)}.excalidraw .welcome-screen-decor-hint--toolbar{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:2.5rem;display:flex;align-items:baseline}.excalidraw .welcome-screen-decor-hint--toolbar .welcome-screen-decor-hint__label{width:120px;position:relative;top:-.5rem}.excalidraw .welcome-screen-decor-hint--toolbar svg{width:38px;height:78px}:root[dir=rtl] .excalidraw .welcome-screen-decor-hint--toolbar svg{transform:scaleX(-1)}.excalidraw .welcome-screen-decor-hint--menu{position:absolute;width:320px;font-size:1rem;top:100%;margin-top:.25rem;margin-inline-start:.6rem;display:flex;align-items:flex-end;gap:.5rem}.excalidraw .welcome-screen-decor-hint--menu svg{width:41px;height:94px}:root[dir=rtl] .excalidraw .welcome-screen-decor-hint--menu svg{transform:scaleX(-1)}@media(max-width:860px){.excalidraw .welcome-screen-decor-hint--menu .welcome-screen-decor-hint__label{max-width:160px}}.excalidraw .welcome-screen-center{display:flex;flex-direction:column;gap:2rem;justify-content:center;align-items:center;position:absolute;pointer-events:none;inset:1rem}.excalidraw .welcome-screen-center__logo{display:flex;align-items:center;column-gap:.75rem;font-size:2.25rem}.excalidraw .welcome-screen-center__heading{font-size:1.125rem;text-align:center}.excalidraw .welcome-screen-menu{display:flex;flex-direction:column;gap:2px;justify-content:center;align-items:center}.excalidraw .welcome-screen-menu-item{box-sizing:border-box;pointer-events:var(--ui-pointerEvents);color:var(--color-gray-50);font-size:.875rem;width:100%;min-width:300px;max-width:400px;display:grid;align-items:center;justify-content:space-between;background:none;border:1px solid transparent;padding:.75rem;border-radius:var(--border-radius-md);grid-template-columns:calc(var(--default-icon-size) + .5rem) 1fr 3rem}.excalidraw .welcome-screen-menu-item__text{display:flex;align-items:center;margin-right:auto;text-align:left;column-gap:.5rem}.excalidraw .welcome-screen-menu-item__icon{width:var(--default-icon-size);height:var(--default-icon-size)}.excalidraw .welcome-screen-menu-item__shortcut{margin-left:auto;color:var(--color-gray-40);font-size:.75rem}.excalidraw .welcome-screen-menu-item:hover{text-decoration:none;background:var(--button-hover-bg)}.excalidraw .welcome-screen-menu-item:hover .welcome-screen-menu-item__shortcut,.excalidraw .welcome-screen-menu-item:hover .welcome-screen-menu-item__icon,.excalidraw .welcome-screen-menu-item:hover .welcome-screen-menu-item__text{color:var(--color-gray-100)}.excalidraw .welcome-screen-menu-item:active{background:var(--button-hover-bg);border-color:var(--color-brand-active)}.excalidraw .welcome-screen-menu-item:active .welcome-screen-menu-item__shortcut,.excalidraw .welcome-screen-menu-item:active .welcome-screen-menu-item__icon,.excalidraw .welcome-screen-menu-item:active .welcome-screen-menu-item__text{color:var(--color-gray-100)}.excalidraw.theme--dark .welcome-screen-menu-item,.excalidraw.theme--dark .welcome-screen-menu-item__shortcut{color:var(--color-gray-60)}.excalidraw.theme--dark .welcome-screen-menu-item:hover{background-color:var(--color-surface-low)}.excalidraw.theme--dark .welcome-screen-menu-item:hover .welcome-screen-menu-item__icon,.excalidraw.theme--dark .welcome-screen-menu-item:hover .welcome-screen-menu-item__shortcut,.excalidraw.theme--dark .welcome-screen-menu-item:hover .welcome-screen-menu-item__text,.excalidraw.theme--dark .welcome-screen-menu-item:active .welcome-screen-menu-item__icon,.excalidraw.theme--dark .welcome-screen-menu-item:active .welcome-screen-menu-item__shortcut,.excalidraw.theme--dark .welcome-screen-menu-item:active .welcome-screen-menu-item__text{color:var(--color-gray-10)}@media(max-height:599px){.excalidraw .welcome-screen-center{margin-top:4rem}}@media(min-height:600px)and (max-height:900px){.excalidraw .welcome-screen-center{margin-top:8rem}}@media(max-height:500px),(max-width:320px){.excalidraw .welcome-screen-center{display:none}}.excalidraw .collab-button{--button-bg: var(--color-primary);--button-color: var(--color-surface-lowest);--button-border: var(--color-primary);--button-width: var(--lg-button-size);--button-height: var(--lg-button-size);--button-hover-bg: var(--color-primary-darker);--button-hover-border: var(--color-primary-darker);--button-active-bg: var(--color-primary-darker);box-shadow:0 0 0 1px var(--color-surface-lowest);flex-shrink:0}.excalidraw .collab-button.active.active{background-color:#0fb884;border-color:#0fb884}.excalidraw .collab-button.active.active svg{color:#fff}.excalidraw .collab-button.active.active:hover,.excalidraw .collab-button.active.active:active{background-color:#0fb884;border-color:#0fb884}.excalidraw .CollabButton.is-collaborating{background-color:var(--button-special-active-bg-color)}.excalidraw .CollabButton.is-collaborating .ToolIcon__icon svg,.excalidraw .CollabButton.is-collaborating .ToolIcon__label{color:var(--icon-green-fill-color)}.excalidraw .CollabButton-collaborators{min-width:1em;min-height:1em;line-height:1;position:absolute;bottom:-5px;padding:3px;border-radius:50%;background-color:#b2f2bb;color:#2b8a3e;font-size:.6rem;font-family:Cascadia}:root[dir=ltr] .excalidraw .CollabButton-collaborators{right:-5px}:root[dir=rtl] .excalidraw .CollabButton-collaborators{left:-5px}:root{--bg: #f5f6fa;--surface-2: #f7f8fb;--ink: #202534;--muted: #7c8496;--line: #e5e8ef;--primary: #3a52bd;--primary-soft: #edf0ff;--violet: #9a59c9;--radius-md: 19px;--radius-lg: 25px;--shadow-xs: 0 3px 10px rgba(32, 42, 75, .035);--shadow-sm: 0 8px 24px rgba(32, 42, 75, .055);--shadow-md: 0 14px 34px rgba(32, 42, 75, .09)}*{box-sizing:border-box}html{background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow-x:hidden}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}.app-layout{display:grid;grid-template-columns:264px minmax(0,1fr);min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:30;width:264px;display:flex;flex-direction:column;padding:24px 18px 18px;border-right:1px solid var(--line);background:#fffffff0;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);overflow-y:auto}.sidebar-head{display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;text-decoration:none}.brand-logo{height:38px;width:auto;max-width:195px;object-fit:contain;display:block}.brand-loader-icon{width:44px;height:44px;object-fit:contain;display:block;animation:pulse-soft 2s ease-in-out infinite}@keyframes pulse-soft{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.08);opacity:.85}}.login-story-brand{display:inline-flex;align-items:center;padding:8px 18px;background:#fff;border-radius:14px;box-shadow:0 8px 24px #0f172a29;width:fit-content}.login-logo-img{height:38px;width:auto;display:block}.login-panel-brand{margin-bottom:22px}.login-panel-logo{height:44px;width:auto;max-width:230px;object-fit:contain;display:block}.nav-list{display:grid;gap:6px;margin-top:42px}.nav-list a{display:flex;align-items:center;gap:13px;padding:12px 14px;border-radius:13px;color:#667085;font-size:14px;font-weight:650;transition:.18s ease}.nav-list a:hover{color:var(--primary);background:var(--primary-soft)}.nav-list a.active{color:var(--primary);background:var(--primary-soft);box-shadow:inset 3px 0 var(--primary)}.support-card{margin-top:auto;padding:10px 12px;border:1px solid #dfe5ff;border-radius:14px;background:linear-gradient(155deg,#f2f5ff,#fff);box-shadow:0 4px 16px #3043a00d;display:flex;align-items:center;justify-content:space-between;gap:8px}.support-card-info{min-width:0;display:flex;flex-direction:column;gap:2px}.support-card-info strong{display:block;font-size:12.5px;font-weight:750;color:var(--text);line-height:1.2;white-space:nowrap}.support-card-info span{display:block;margin:0;color:var(--muted);font-size:11px;line-height:1.2;white-space:nowrap}.support-actions-row{display:flex;align-items:center;gap:6px;flex-shrink:0}.support-icon-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:8px;outline:none}.support-icon-link img{width:28px;height:28px;border-radius:7px;display:block;box-shadow:0 2px 6px #10182812;transition:transform .18s cubic-bezier(.16,1,.3,1),box-shadow .18s ease}.support-icon-link:hover img{transform:translateY(-2px) scale(1.06);box-shadow:0 5px 12px #10182824}.support-icon-link:active img{transform:translateY(0) scale(.96)}.logout{display:flex;align-items:center;gap:11px;margin-top:13px;padding:11px 14px;border:0;color:var(--muted);background:transparent;cursor:pointer}.logout:disabled{cursor:wait;opacity:.65}.logout-error{margin:12px 8px 0;color:#b33a3a;font-size:11px;line-height:1.4}.workspace{grid-column:2;min-width:0;max-width:100vw;overflow-x:hidden}.topbar{position:sticky;top:0;z-index:15;height:76px;display:flex;align-items:center;gap:12px;padding:0 clamp(22px,4vw,54px);border-bottom:1px solid rgba(225,229,238,.8);background:#f4f6fbd6;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.topbar-spacer{flex:1}.user-chip{display:flex;align-items:center;gap:10px}.user-chip .avatar{display:grid;width:39px;height:39px;place-items:center;border-radius:50%;color:var(--primary);background:#e8ecff;font-size:12px;font-weight:800}.user-chip strong,.user-chip small{display:block}.user-chip strong{font-size:13px}.user-chip small{margin-top:2px;color:var(--muted);font-size:11px}.demo-badge{padding:6px 9px;color:#7a5b00;border-radius:999px;background:#fff3c4;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.content{width:min(1240px,100%);margin:0 auto;padding:44px clamp(22px,4vw,54px) 64px}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:30px}.page-header h1{margin:8px 0 7px;font-size:clamp(28px,4vw,42px);line-height:1.08;letter-spacing:-.04em}.page-header p{margin:0;color:var(--muted);font-size:14px}.eyebrow{display:inline-flex;align-items:center;gap:6px;color:var(--primary);font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.eyebrow.light{color:#cbd5ff}.demo-notice,.inline-alert{display:flex;align-items:center;gap:9px;margin:-10px 0 22px;padding:11px 14px;border:1px solid #f1dd9b;border-radius:12px;color:#6e5800;background:#fffae8;font-size:12px}.inline-alert{margin:16px 0 0;color:#8a4812;border-color:#f5d0b5;background:#fff6ef}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:20px}.next-panel{min-height:292px;padding:28px;overflow:hidden;color:#fff;border-radius:var(--radius-lg);background:radial-gradient(circle at 85% 15%,rgba(255,255,255,.17),transparent 28%),linear-gradient(145deg,#354fc0,#566fdc);box-shadow:0 22px 46px #3043a038}.next-panel .section-heading small{color:#cbd4ff}.next-panel h2{margin-top:4px;font-size:29px}.date-pill{padding:8px 12px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:#ffffff1c;font-size:12px}.next-content{display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:28px;margin-top:58px}.next-time strong{display:block;font-size:38px;letter-spacing:-.05em}.next-time span{color:#cbd4ff;font-size:11px}.next-details{display:grid;gap:9px;padding-bottom:3px}.next-details span{display:flex;align-items:center;gap:8px;font-size:13px}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.stat-card{min-height:139px;display:flex;flex-direction:column;padding:20px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-sm)}.stat-card:first-child{grid-column:1/-1}.stat-card small{color:var(--muted)}.stat-card strong{margin:auto 0 5px;font-size:26px;letter-spacing:-.04em}.stat-card span{color:var(--muted);font-size:11px}.stat-card.blue{background:linear-gradient(140deg,#fff,#f1f4ff)}.stat-card.mint{background:linear-gradient(140deg,#fff,#effbf7)}.stat-card.violet{background:linear-gradient(140deg,#fff,#f7f1ff)}.section-block{margin-top:36px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.section-heading h2{margin:4px 0 0;font-size:20px;letter-spacing:-.025em}.section-heading small{color:var(--muted);font-size:11px}.text-link,.back-link{display:inline-flex;align-items:center;gap:7px;color:var(--primary);font-size:13px;font-weight:700}.back-link{margin-bottom:24px;color:var(--muted)}.lesson-list{display:grid;gap:10px;margin-top:16px}.lesson-list.large{gap:12px}.lesson-card{display:flex;align-items:center;gap:15px;padding:18px 20px;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:var(--shadow-xs);transition:.18s ease}.lesson-card:hover{transform:translateY(-2px);border-color:#cbd4ff;box-shadow:var(--shadow-md)}.subject-dot{width:8px;height:50px;flex:0 0 auto;border-radius:99px;background:var(--primary)}.subject-dot.violet{background:var(--violet)}.lesson-main{min-width:0;flex:1}.lesson-title{display:flex;align-items:center;gap:10px}.lesson-title strong{font-size:15px}.lesson-main p{margin:4px 0 8px;color:var(--muted);font-size:12px}.lesson-meta{display:flex;flex-wrap:wrap;gap:14px;color:#667085;font-size:11px}.lesson-meta span{display:flex;align-items:center;gap:5px}.lesson-arrow{display:grid;width:35px;height:35px;place-items:center;color:var(--muted);border-radius:10px;background:var(--surface-2)}.status{display:inline-flex;padding:5px 8px;border-radius:999px;color:#2a64a9;background:#eaf3ff;font-size:9px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.status.completed{color:#28725a;background:#e8f8f2}.status.cancelled,.status.missed{color:#a44242;background:#fff0f0}.status.rescheduled{color:#77529b;background:#f5ecff}.status.past{color:#92400e;background:#fef3c7}.status.upcoming{color:#805e00;background:#fff4cb}.toolbar,.filter-row{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.filter-row.right{justify-content:flex-end}.segmented{display:inline-flex;align-items:center;padding:4px;border:1px solid var(--line);border-radius:12px;background:#fff;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;max-width:100%;box-sizing:border-box}.segmented::-webkit-scrollbar{display:none}.segmented button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border:0;border-radius:9px;color:var(--muted);background:transparent;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .15s ease}.segmented button.active{color:var(--primary);background:var(--primary-soft)}.date-nav{display:flex;align-items:center;gap:9px}.date-nav strong{min-width:125px;text-align:center;font-size:13px}.icon-button{display:grid;width:38px;height:38px;place-items:center;border:1px solid var(--line);border-radius:11px;color:var(--muted);background:#fff;cursor:pointer}.search-field{display:flex;align-items:center;gap:8px;width:min(280px,100%);padding:0 12px;border:1px solid var(--line);border-radius:12px;color:var(--muted);background:#fff}.search-field:focus-within{border-color:#aab7f3;box-shadow:0 0 0 3px #e9edff}.search-field input{width:100%;padding:10px 0;border:0;outline:0;background:transparent;font-size:13px}.schedule-board{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-sm)}.calendar-head{min-width:760px;display:grid;grid-template-columns:62px repeat(7,1fr);border-bottom:1px solid var(--line)}.calendar-head>div{display:grid;place-items:center;gap:2px;padding:13px;border-left:1px solid var(--line)}.calendar-head small{color:var(--muted);font-size:10px;text-transform:uppercase}.calendar-head strong{display:grid;width:28px;height:28px;place-items:center;font-size:13px}.calendar-head .today strong{color:#fff;border-radius:9px;background:var(--primary)}.calendar-body{min-width:760px;height:420px;display:grid;grid-template-columns:62px repeat(7,1fr)}.time-axis{display:grid;grid-template-rows:repeat(6,1fr);padding-top:2px}.time-axis span{padding:8px 9px;color:#98a2b3;font-size:10px;text-align:right}.day-column{position:relative;display:grid;grid-template-rows:repeat(6,1fr);border-left:1px solid var(--line)}.grid-line{border-bottom:1px dashed #edf0f5}.calendar-event{position:absolute;left:7px;right:7px;display:grid;gap:2px;padding:9px;border-left:3px solid var(--primary);border-radius:9px;color:#354a9f;background:#eef1ff;font-size:10px;box-shadow:0 6px 12px #2a42a91a}.calendar-event.violet{color:#7a44a9;border-color:var(--violet);background:#f5ecff}.calendar-event strong{font-size:11px}.schedule-board.day .calendar-head,.schedule-board.day .calendar-body{grid-template-columns:62px 1fr;min-width:0}.schedule-board.day .calendar-event{max-width:380px}.month-board{border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-sm);position:relative;overflow:visible}.month-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-width:760px;color:var(--muted);border-bottom:1px solid var(--line);background:var(--surface-2);font-size:10px;font-weight:750;text-transform:uppercase}.month-weekdays span{padding:12px;text-align:center}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:196px;min-width:760px;position:relative;overflow:visible}.month-day{height:196px;min-height:196px;max-height:196px;padding:6px 7px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);box-sizing:border-box;position:relative;display:flex;flex-direction:column;overflow:visible;transition:background-color .12s ease}.month-day:nth-child(7n){border-right:0}.month-day.blank{background:#fafbfc}.month-day:hover{z-index:20}.month-day.has-more.is-open{z-index:99999}.month-day-header{display:flex;align-items:center;justify-content:flex-end;min-height:20px;margin-bottom:3px}.month-day-header strong,.month-day-num{display:grid;width:22px;height:22px;place-items:center;margin-left:auto;color:var(--muted);font-size:11px;font-weight:700;border-radius:6px}.month-day.today .month-day-header strong,.month-day.today .month-day-num,.month-day.today>strong{color:#fff;background:var(--primary)}.month-day-events{display:flex;flex-direction:column;gap:3px;flex:1 1 auto;min-height:0;overflow:hidden}.availability-help{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px;padding:15px 17px;border:1px solid #cdece2;border-radius:15px;background:#f1fbf7}.availability-help>span{display:grid;width:30px;height:30px;flex:0 0 auto;place-items:center;color:#087e66;border-radius:9px;background:#d8f4ea}.availability-help p,.availability-help strong,.availability-help small{display:block;margin:0}.availability-help strong{margin-bottom:3px;font-size:13px}.availability-help small{color:var(--muted);line-height:1.45}.availability-card{position:relative;padding:20px;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-sm)}.availability-card.saving{opacity:.75}.availability-summary{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-bottom:16px}.availability-summary-left{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.availability-summary-left h3{margin:0;font-size:16px;font-weight:750;color:var(--text)}.availability-summary-left span{color:var(--muted);font-size:12px}.availability-daily-stats{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:12px;color:var(--muted)}.availability-daily-stats span.has-hours{color:#0b725b;font-weight:700}.availability-calendar{min-width:760px}.availability-calendar .fc{--fc-border-color:#e5e9f2;--fc-page-bg-color:#fff;--fc-neutral-bg-color:#f8f9fc;--fc-today-bg-color:#f7f9ff;--fc-event-bg-color:#20b493;--fc-event-border-color:#139579;--fc-event-text-color:#fff;font-family:inherit}.availability-calendar .fc-scrollgrid{overflow:hidden;border-radius:13px}.availability-calendar .fc-col-header-cell-cushion{padding:12px 6px;color:#344054;font-size:12px;text-transform:capitalize}.availability-calendar .fc-timegrid-slot{height:24px}.availability-calendar .fc-timegrid-slot-label-cushion{color:#7b8497;font-size:11px}.availability-calendar .fc-event{border-radius:7px;cursor:pointer;box-shadow:0 5px 12px #0f8b6f24}.availability-event-title{display:block;padding:5px 6px;font-size:11px;font-weight:750}.availability-empty{margin:14px 0 0;color:var(--muted);font-size:12px;text-align:center}.people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.person-card{display:flex;flex-direction:column;min-height:260px;padding:22px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-sm);transition:transform .15s ease,box-shadow .15s ease}.person-card.clickable{cursor:pointer}.person-card.clickable:hover{transform:translateY(-2px);box-shadow:0 12px 24px #0f172a14;border-color:#cbd5e1}.person-avatar{display:grid;width:52px;height:52px;place-items:center;margin-bottom:18px;border-radius:17px;color:var(--primary);background:var(--primary-soft);font-weight:800}.person-card small{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.person-card h3{margin:5px 0 12px;font-size:18px}.person-card p{color:var(--muted);font-size:12px}.person-card footer{display:flex;justify-content:space-between;margin-top:auto;padding-top:17px;border-top:1px solid var(--line);color:var(--muted);font-size:11px}.person-card footer span{display:flex;align-items:center;gap:6px}.chips{display:flex;flex-wrap:wrap;gap:6px}.chips span{padding:5px 8px;border-radius:7px;color:#5366b5;background:#f0f2ff;font-size:10px;font-weight:700}.chips.centered{justify-content:center}.modal-backdrop{position:fixed;inset:0;background:#0f172a7a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.modal-card{background:#fff;border-radius:var(--radius-lg);box-shadow:0 24px 48px #0f172a38;width:min(960px,100%);max-height:92vh;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid var(--line);background:#fff}.modal-header h2{margin:0;font-size:18px;font-weight:750;color:var(--text)}.modal-close-btn{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:9px;background:transparent;color:var(--muted);cursor:pointer;transition:.15s ease}.modal-close-btn:hover{background:var(--surface-2);color:var(--text)}.modal-tabs{display:flex;gap:8px;padding:0 24px;border-bottom:1px solid var(--line);background:#fafbfe;overflow-x:auto}.modal-tabs button{padding:13px 16px;border:0;background:transparent;font-size:13px;font-weight:650;color:var(--muted);border-bottom:2px solid transparent;cursor:pointer;white-space:nowrap}.modal-tabs button.active{color:var(--primary);border-bottom-color:var(--primary)}.modal-body{padding:22px 24px;overflow-y:auto;flex:1}.person-detail-info{display:grid;gap:20px}.person-detail-header{display:flex;align-items:center;gap:16px}.person-avatar.large{width:64px;height:64px;font-size:20px;border-radius:20px;margin-bottom:0}.person-detail-props{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;padding:18px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-2)}.person-detail-props small{display:block;margin-bottom:6px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em}.person-detail-props strong{font-size:18px;color:var(--text)}.profile-tabs{display:flex;align-items:center;gap:8px;margin-bottom:24px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;padding:2px 2px 6px;width:100%;max-width:100%}.profile-tabs::-webkit-scrollbar{display:none}.profile-tab-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--muted);font-size:13px;font-weight:700;cursor:pointer;transition:all .15s ease;flex-shrink:0;white-space:nowrap}.profile-tab-btn:hover{color:var(--primary);border-color:#cbd5e1}.profile-tab-btn.active{background:var(--primary-soft);color:var(--primary);border-color:#aab7f3;box-shadow:0 2px 8px #3852c914}.profile-tab-badge{margin-left:4px;font-size:11px;background:var(--primary-soft);color:var(--primary);padding:1px 7px;border-radius:10px;font-weight:700}.profile-tab-btn.active .profile-tab-badge{background:#fff;color:var(--primary)}.profile-grid{display:grid;grid-template-columns:290px 1fr;gap:18px}.profile-summary,.profile-form,.info-card{padding:26px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-sm)}.profile-summary{text-align:center}.profile-avatar{display:grid;width:84px;height:84px;place-items:center;margin:8px auto 16px;border-radius:28px;color:#fff;background:linear-gradient(145deg,var(--primary),#798be6);font-size:24px;font-weight:800}.profile-summary h2{margin:0 0 5px;font-size:20px}.profile-summary>p{margin:0 0 18px;color:var(--muted);font-size:12px}.lock-label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:11px}.profile-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-top:26px}.profile-fields label>span{display:flex;align-items:center;gap:7px;margin-bottom:7px;color:var(--muted);font-size:11px}.profile-fields input{width:100%;padding:12px;border:1px solid var(--line);border-radius:11px;color:#667085;background:var(--surface-2)}.safe-note{display:flex;gap:11px;margin-top:22px;padding:14px;color:#2b715d;border-radius:12px;background:#edf9f5}.safe-note strong,.safe-note small{display:block}.safe-note strong{font-size:12px}.safe-note small{margin-top:3px;color:#57917f;font-size:10px}.detail-hero{display:flex;align-items:center;gap:20px;padding:30px;color:#fff;border-radius:var(--radius-lg);background:linear-gradient(135deg,#354fc0,#6379dc)}.detail-icon{display:grid;width:60px;height:60px;place-items:center;border-radius:18px;background:#ffffff24}.detail-hero h1{margin:8px 0 4px;font-size:32px}.detail-hero p{margin:0;color:#d6ddff;font-size:13px}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-top:18px}.info-card{display:grid;gap:8px}.info-card small{color:var(--muted)}.info-card strong{font-size:16px}.info-card span{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 15px;border:1px solid transparent;border-radius:11px;font-size:12px;font-weight:750;cursor:pointer;transition:.18s ease}.button:disabled{opacity:.6;cursor:wait}.button.primary{color:#fff;background:var(--primary);box-shadow:0 9px 18px #364dbc33}.button.primary:hover{background:#2d43ad}.button.secondary{color:var(--primary);border-color:#d8def8;background:#fff}.button.white{color:var(--primary);background:#fff}.button.wide{width:100%;padding:13px 16px}.empty-state{display:grid;justify-items:center;padding:54px 22px;border:1px dashed #d8dde9;border-radius:var(--radius-md);background:#ffffff8c;text-align:center}.empty-icon{display:grid;width:49px;height:49px;place-items:center;color:var(--primary);border-radius:16px;background:var(--primary-soft)}.empty-state h3{margin:13px 0 6px;font-size:15px}.empty-state p{max-width:420px;margin:0;color:var(--muted);font-size:12px;line-height:1.5}.empty-state .button{margin-top:15px}.empty-state.error .empty-icon{color:#b64b4b;background:#fff0f0}.skeleton-stack{display:grid;gap:18px}.skeleton{border-radius:var(--radius-md);background:linear-gradient(90deg,#edf0f5,#f8f9fb,#edf0f5);background-size:200% 100%;animation:shimmer 1.3s infinite}.skeleton.hero{height:290px}.skeleton-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.skeleton.card{height:135px}@keyframes shimmer{to{background-position:-200% 0}}.center-screen{min-height:100vh;display:grid;place-items:center;background:var(--bg)}.brand-loader{display:flex;align-items:center;gap:13px;color:var(--muted);font-size:13px}.login-page{display:grid;grid-template-columns:minmax(420px,1.05fr) minmax(450px,.95fr);min-height:100vh}.login-story{position:relative;display:flex;flex-direction:column;min-height:100vh;padding:44px clamp(40px,6vw,84px);overflow:hidden;color:#fff;background:radial-gradient(circle at 75% 30%,rgba(147,165,255,.35),transparent 30%),linear-gradient(145deg,#253990,#415ac3 55%,#6780df)}.login-story:after{content:"";position:absolute;width:420px;height:420px;right:-120px;bottom:-160px;border:1px solid rgba(255,255,255,.18);border-radius:50%;box-shadow:0 0 0 70px #ffffff0a,0 0 0 140px #ffffff06}.story-copy{margin:auto 0;position:relative;z-index:1}.story-copy h1{margin:18px 0;font-size:clamp(48px,6vw,78px);line-height:.98;letter-spacing:-.065em}.story-copy p{max-width:500px;color:#d9dfff;font-size:16px;line-height:1.6}.floating-lesson{position:relative;z-index:1;display:flex;align-items:center;gap:15px;width:min(410px,100%);padding:16px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:#ffffff1a;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.calendar-tile{display:grid;width:52px;height:55px;place-items:center;align-content:center;border-radius:12px;color:var(--primary);background:#fff}.calendar-tile small{font-size:8px}.calendar-tile strong{font-size:20px}.floating-lesson>span:nth-child(2){display:grid;gap:3px}.floating-lesson small{color:#cbd4ff;font-size:10px}.floating-lesson strong{font-size:13px}.floating-lesson em{color:#ffd97f;font-size:10px;font-style:normal}.login-panel{display:grid;place-items:center;padding:40px;background:#fff}.login-form-wrap{width:min(390px,100%)}.login-form-wrap h2{margin:9px 0 7px;font-size:34px;letter-spacing:-.045em}.muted{color:var(--muted);font-size:13px}.login-form{display:grid;gap:15px;margin-top:30px}.login-form label,.role-picker legend{color:#475467;font-size:11px;font-weight:700}.login-form input{width:100%;margin-top:7px;padding:13px 14px;border:1px solid var(--line);border-radius:11px;outline:0}.login-form input:focus{border-color:#aab7f3;box-shadow:0 0 0 3px #edf0ff}.role-picker{min-width:0;padding:0;border:0}.role-picker>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:7px}.role-picker button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border:1px solid var(--line);border-radius:11px;color:var(--muted);background:#fff;font-size:12px;font-weight:750;cursor:pointer}.role-picker button.active{border-color:#aab7f3;color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 2px #edf0ff}.form-error{padding:10px;color:#9b3e3e;border-radius:9px;background:#fff1f1;font-size:11px;line-height:1.4}.demo-entry{margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}.demo-entry>span{font-size:12px;font-weight:750}.demo-entry p{margin:5px 0 10px;color:var(--muted);font-size:10px}.demo-entry>div{display:flex;gap:8px}.privacy-note{display:flex;align-items:center;gap:7px;margin-top:24px;color:#98a2b3;font-size:10px}.mobile-only,.backdrop{display:none}@media(max-width:1050px){.dashboard-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(3,1fr)}.stat-card:first-child{grid-column:auto}.people-grid{grid-template-columns:repeat(2,1fr)}.login-story{padding:38px}.story-copy h1{font-size:52px}}@media(max-width:960px){.profile-grid{grid-template-columns:1fr!important}}@media(max-width:780px){.mobile-only{display:grid}.app-layout{display:block}.sidebar{transform:translate(-102%);transition:.25s ease}.sidebar.open{transform:translate(0)}.backdrop{display:block;position:fixed;inset:0;z-index:20;border:0;background:#141b3159;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.workspace{min-width:0;max-width:100vw;overflow-x:hidden}.topbar{height:66px;padding:0 18px}.content{padding:30px 18px 100px}.user-chip>span:last-child{display:none}.login-page{grid-template-columns:1fr}.login-story{display:none}.login-panel{min-height:100vh;padding:28px}.people-grid,.detail-grid{grid-template-columns:1fr 1fr}.profile-grid{grid-template-columns:1fr!important}.schedule-board{margin-inline:-18px;border-radius:0}}@media(max-width:640px){.profile-tab-btn{padding:8px 13px;font-size:12px;gap:6px}.page-tabs-bar{gap:6px;margin:14px 0 18px;padding:2px 2px 4px}.page-tabs-bar .tab-btn{padding:8px 13px;font-size:12px;border-radius:10px}}@media(max-width:560px){.page-header{align-items:flex-start;margin-bottom:20px}.page-header>.button{display:none}.page-header h1{font-size:26px}.page-header p{font-size:13px;line-height:1.4}.next-panel{padding:22px}.next-content{grid-template-columns:1fr auto;gap:16px;margin-top:42px}.next-details{grid-column:1/-1;grid-row:2}.stats-grid{grid-template-columns:1fr}.stat-card:first-child{grid-column:auto}.stat-card{min-height:115px}.lesson-card{padding:15px}.lesson-arrow{display:none}.toolbar,.filter-row{align-items:stretch;flex-direction:column}.filter-row.right{align-items:flex-end}.segmented{width:100%;box-sizing:border-box;padding:3px;gap:2px}.segmented button{flex:1 1 auto;min-width:0;padding:7px 8px;font-size:11px;gap:4px;white-space:nowrap}.page-tabs-bar{gap:6px;margin:12px 0 16px}.page-tabs-bar .tab-btn{padding:7px 11px;font-size:12px;border-radius:9px}.assignments-subtabs{width:100%;display:flex;box-sizing:border-box}.assignments-subtabs .subtab-btn{flex:1 1 auto;padding:7px 8px;font-size:12px;text-align:center}.page-header-row .button{width:100%;justify-content:center}.directions-filter-pills-row{gap:6px;margin:10px 0 16px;padding-bottom:4px}.direction-pill-btn{padding:5px 12px;font-size:12px}.directions-filter-label{font-size:12px}.search-filter-box{padding:9px 12px;margin-bottom:14px}.search-filter-box input{font-size:13px}.materials-grid{grid-template-columns:1fr;gap:12px}.material-card{display:grid;grid-template-columns:40px 1fr;grid-template-areas:"icon info" "actions actions";gap:8px 12px;padding:14px;align-items:start;border-radius:14px}.material-card-icon{grid-area:icon;width:40px;height:40px;border-radius:10px}.material-card-icon svg{width:22px;height:22px}.material-card-info{grid-area:info;min-width:0}.material-card-title{font-size:13.5px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35;margin:0 0 5px}.material-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;font-size:11.5px;white-space:normal;overflow:visible}.material-card-meta span{max-width:100%;word-break:break-all}.material-card-actions{grid-area:actions;display:flex;align-items:center;justify-content:flex-end;gap:8px;padding-top:10px;margin-top:2px;border-top:1px solid #f1f5f9;width:100%}.icon-action-btn{width:38px;height:36px;border-radius:8px}.date-nav{justify-content:center}.search-field{width:100%}.people-grid,.detail-grid,.profile-fields{grid-template-columns:1fr}.profile-summary,.profile-form,.info-card,.document-upload-card,.documents-list-card{padding:18px 14px;border-radius:14px}.profile-fields{grid-template-columns:1fr!important;gap:12px;margin-top:18px}.section-subtitle-row{flex-direction:column;align-items:stretch;gap:10px}.subject-search-box{width:100%!important;box-sizing:border-box}.profile-actions-bar{flex-direction:column;align-items:stretch;gap:10px;padding:12px 14px}.profile-actions-buttons{display:flex;width:100%;gap:8px}.profile-actions-buttons .button{flex:1;justify-content:center}.security-demo-banner{padding:12px 14px;gap:10px}.file-drop-area{padding:18px 12px}.document-item-card{padding:12px 14px;gap:10px}.availability-card{padding:16px 12px}.detail-hero{padding:22px}.detail-hero h1{font-size:27px}.demo-entry>div{flex-direction:column}.month-board{overflow-x:auto;margin-inline:-18px;border-radius:0}.month-weekdays,.month-grid{min-width:700px}}@media(max-width:780px){.room-header{padding:8px 12px;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width:480px){.content{padding:20px 14px 80px}.profile-tabs{margin-bottom:18px;gap:6px}.page-tabs-bar{margin-bottom:14px;gap:5px}.page-tabs-bar .tab-btn{padding:7px 10px;font-size:11.5px;border-radius:8px}.profile-summary h2{font-size:18px}.profile-avatar-img{width:80px;height:80px;border-radius:22px}.profile-avatar-actions{flex-wrap:wrap;justify-content:center}.floating-video-card{right:8px!important;left:8px!important;bottom:46px!important;width:auto!important;max-width:calc(100vw - 16px)!important}.time-row{grid-template-columns:1fr}}.city-autocomplete-wrapper{position:relative;width:100%}.city-input-wrap{position:relative;display:flex;align-items:center}.city-input-wrap input.city-input{width:100%;padding:12px 36px 12px 14px;border:1px solid var(--line);border-radius:11px;background:#fff;color:#1e293b;font-size:13px;outline:none;transition:border-color .18s,box-shadow .18s}.city-input-wrap input.city-input:focus{border-color:#92a4f6;box-shadow:0 0 0 3px #4263eb1f}.city-clear-btn{position:absolute;right:10px;display:grid;place-items:center;width:22px;height:22px;border:0;border-radius:50%;background:#e2e8f0;color:#64748b;cursor:pointer;padding:0;transition:.15s}.city-clear-btn:hover{background:#cbd5e1;color:#1e293b}.city-dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:60;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 28px #0f172a1f;overflow:hidden;max-height:240px;overflow-y:auto}.city-dropdown-list{list-style:none;margin:0;padding:6px 0}.city-dropdown-item{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;font-size:13px;font-weight:550;color:#334155;cursor:pointer;transition:background .12s,color .12s}.city-dropdown-item:hover{background:#f1f5f9;color:var(--primary)}.city-dropdown-item.selected{background:#eef2ff;color:var(--primary);font-weight:650}.city-item-name{display:flex;align-items:center;gap:8px}.city-icon{color:#94a3b8}.city-dropdown-item:hover .city-icon,.city-dropdown-item.selected .city-icon,.city-check-icon{color:var(--primary)}.city-dropdown-empty{padding:14px;font-size:12px;color:var(--muted);text-align:center}.profile-summary-city{display:inline-flex;align-items:center;gap:5px;margin:-10px 0 16px;padding:4px 10px;border-radius:20px;background:#f1f5f9;color:#475467;font-size:12px;font-weight:600}.profile-actions-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;padding:14px 18px;border-radius:12px;background:#f8faff;border:1px solid #dce4fd}.profile-actions-buttons{display:flex;gap:8px}.dirty-hint{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:650;color:var(--primary)}.success-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:8px;background:#e6f7ef;color:#1a7a4c;font-size:12px;font-weight:650}.room-container{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:var(--bg-base, #f7f7f5)}.room-header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 20px;background:#fff;border-bottom:1px solid var(--border, #e5e5e2);flex-shrink:0;min-height:52px}.room-header-left{display:flex;align-items:center;gap:12px;flex-shrink:0}.room-header-center{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;justify-content:center;pointer-events:auto;z-index:5}.room-header-actions{display:flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0}@media(max-width:1240px){.room-header-center{position:static;transform:none;margin:0 8px}.room-header-actions{margin-left:auto}}.room-control-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--surface-2, #f1f3f9);border:1px solid var(--border, #e2e8f0);border-radius:9px;font-size:12px;font-weight:600;color:#334155;cursor:pointer;transition:all .15s ease}.room-control-btn:hover{background:#e8ecf8;color:var(--primary, #3b5bdb)}.room-control-btn.active{background:var(--primary-soft, #eef2ff);border-color:#a5b4fc;color:var(--primary, #3b5bdb)}.room-control-btn.bring-student-btn{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.room-control-btn.bring-student-btn:hover{background:#dbeafe;border-color:#93c5fd;color:#1e40af}.room-control-btn.follow-tutor-btn{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.room-control-btn.follow-tutor-btn:hover{background:#d1fae5;border-color:#6ee7b7;color:#065f46}.room-presence-toast{position:absolute;top:14px;left:50%;transform:translate(-50%);z-index:100;background:#0f172aeb;color:#fff;padding:8px 18px;border-radius:24px;font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:8px;box-shadow:0 8px 24px #00000040;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.15);pointer-events:none;animation:fadeInDown .25s ease-out}@keyframes fadeInDown{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}.room-save-indicator{display:flex;align-items:center;margin-left:auto}.save-status{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;padding:4px 8px;border-radius:6px}.save-status.is-saved{color:#16a34a;background:#f0fdf4}.save-status.is-saving{color:#2563eb;background:#eff6ff}.save-status.is-error{color:#dc2626;background:#fef2f2}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin-slow{animation:spin-slow 1.5s linear infinite}.room-header-status{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--muted, #64748b);margin-left:6px}.room-back-btn{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--text-secondary, #666);background:none;border:none;cursor:pointer;padding:4px 8px;border-radius:6px;transition:background .15s}.room-back-btn:hover{background:var(--bg-muted, #f0efec)}.room-badge{display:flex;flex-direction:column;justify-content:center;line-height:1.25;margin-left:8px;min-width:0;max-width:240px}.room-badge-subject{font-size:13px;font-weight:700;color:var(--text-primary, #1e293b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-badge-name{font-size:11.5px;font-weight:500;color:var(--text-secondary, #64748b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-badge small{font-weight:400;color:var(--text-secondary, #888);margin-left:8px}.room-canvas-wrap{flex:1;position:relative;overflow:hidden;background-color:#fff}.room-canvas-wrap.is-locked-for-student{isolation:isolate}.room-canvas-wrap.bg-type-grid{background-color:#fff!important;background-size:24px 24px;background-image:linear-gradient(to right,rgba(74,114,184,.22) 1px,transparent 1px),linear-gradient(to bottom,rgba(74,114,184,.22) 1px,transparent 1px)!important}.room-canvas-wrap.bg-type-lines{background-color:#fff!important;background-size:100% 32px;background-image:linear-gradient(to bottom,rgba(74,114,184,.25) 1px,transparent 1px)!important}.room-canvas-wrap.bg-type-dots{background-color:#fff!important;background-size:24px 24px;background-image:radial-gradient(circle,#64748b 1.8px,transparent 2px)!important}.room-canvas-wrap.bg-type-none{background-color:#fff!important;background-image:none!important}.room-canvas-wrap.bg-type-chalkboard{background-color:#1a241f!important;background-size:24px 24px;background-image:linear-gradient(to right,rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.07) 1px,transparent 1px)!important}.header-timer-wrap{position:relative}.header-timer-btn.is-running{background:#2563eb!important;color:#fff!important;border-color:#1d4ed8!important;box-shadow:0 4px 14px #2563eb59;animation:timerPulse 2s infinite ease-in-out}.header-timer-btn.is-finished{background:#dc2626!important;color:#fff!important;border-color:#b91c1c!important;animation:timerShake .4s infinite alternate}.timer-done-tag{font-size:11px;background:#ffffff40;padding:2px 6px;border-radius:6px;margin-left:2px}@keyframes timerPulse{0%,to{box-shadow:0 4px 14px #2563eb4d}50%{box-shadow:0 4px 20px #2563eb99}}@keyframes timerShake{0%{transform:scale(1)}to{transform:scale(1.05)}}.board-timer-popover{position:absolute;top:calc(100% + 8px);right:0;width:290px;background:#fff;border:1px solid #cbd5e1;border-radius:14px;box-shadow:0 12px 32px #0f172a2e;padding:16px;z-index:1000;animation:fadeInDown .15s ease-out}.board-popover-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;color:#334155;font-size:13px;font-weight:700}.board-popover-header span{display:flex;align-items:center;gap:6px}.timer-display-big{font-size:38px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.02em;text-align:center;color:#1e293b;margin:4px 0 14px}.timer-presets small{display:block;font-size:11px;color:#64748b;margin-bottom:6px;font-weight:600}.presets-row{display:flex;gap:6px;flex-wrap:wrap}.preset-btn{flex:1;min-width:44px;padding:6px 8px;border:1px solid var(--border, #e2e8f0);border-radius:8px;background:#f8fafc;color:#334155;font-size:11px;font-weight:700;cursor:pointer;transition:all .12s}.preset-btn:hover{background:#e2e8f0;color:#0f172a}.preset-btn.featured{background:#eff6ff;border-color:#bfdbfe;color:#2563eb}.preset-btn.featured:hover{background:#dbeafe}.timer-custom-row{display:flex;align-items:center;gap:8px;margin:14px 0;padding:8px;border-radius:9px;background:#f8fafc}.timer-custom-row label{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:#475467}.timer-custom-row input{width:52px;padding:6px 8px;border:1px solid #cbd5e1;border-radius:6px;font-size:13px;font-weight:700;text-align:center}.timer-controls{display:flex;gap:8px}.timer-controls .button{flex:1}.formula-modal-card{width:min(520px,100%)!important}.formula-block{margin-bottom:16px}.formula-block-title{display:block;font-size:12px;font-weight:700;color:#334155;margin-bottom:8px}.formula-input-row{display:flex;align-items:center;gap:10px}.formula-input-row input{flex:1;padding:9px 12px;border:1px solid #cbd5e1;border-radius:8px;font-size:15px;font-weight:600;color:#0f172a;outline:none}.formula-input-row input:focus{border-color:var(--primary, #3b5bdb);box-shadow:0 0 0 3px #3b5bdb1f}.formula-arrow{font-size:16px;color:#94a3b8;font-weight:700}.formula-result-chip{padding:8px 14px;background:#f0f4ff;border:1px solid #c7d2fe;border-radius:8px;color:var(--primary, #3b5bdb);font-size:16px;font-weight:750;min-width:60px;text-align:center}.formula-action-row{margin-top:10px}.quick-formula-chips{display:flex;flex-wrap:wrap;gap:7px}.quick-chip-btn{padding:6px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;font-weight:650;color:#1e293b;cursor:pointer;transition:all .12s}.quick-chip-btn:hover{background:#eff6ff;border-color:#bfdbfe;color:#2563eb;transform:translateY(-1px)}.symbols-grid{display:flex;flex-wrap:wrap;gap:6px}.symbol-btn{width:32px;height:32px;display:grid;place-items:center;border:1px solid #e2e8f0;border-radius:7px;background:#fff;color:#1e293b;font-size:15px;font-weight:750;cursor:pointer;transition:all .12s}.symbol-btn:hover{background:var(--primary-soft, #eef2ff);border-color:#a5b4fc;color:var(--primary, #3b5bdb);transform:scale(1.1)}.copy-notice-toast{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:8px;background:#f0fdf4;border:1px solid #bbf7d0;color:#166534;font-size:12px;margin-bottom:12px}.formula-tips{margin-top:12px;padding-top:10px;border-top:1px solid #f1f5f9;color:#64748b;font-size:11px;line-height:1.45}.floating-text-formula-bar{position:absolute;display:flex;align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:3px;box-shadow:0 4px 16px #0f172a1f;z-index:100;animation:fadeInDown .12s ease-out;pointer-events:auto;-webkit-user-select:none;user-select:none}.script-mode-group{display:inline-flex;align-items:center;gap:2px}.script-mode-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border:1px solid transparent;border-radius:6px;background:transparent;color:#475569;font-size:13px;font-weight:600;cursor:pointer;transition:all .12s ease;line-height:1}.script-mode-btn:hover{background:#f1f5f9;color:#0f172a}.script-mode-btn.active{background:#eff6ff;border-color:#3b82f6;color:#1d4ed8;font-weight:700;box-shadow:0 1px 3px #2563eb26}.script-mode-btn .mode-symbol{font-family:inherit;font-size:14px;letter-spacing:-.5px}.float-mode-wrap{position:relative}.float-mode-selector{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border:1px solid transparent;border-radius:6px;background:transparent;color:#334155;font-size:13px;font-weight:600;cursor:pointer;transition:all .12s ease;line-height:1}.float-mode-selector:hover{background:#f1f5f9;color:#0f172a}.float-mode-menu{position:absolute;top:calc(100% + 6px);left:0;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:4px;box-shadow:0 10px 24px #0f172a24;z-index:120;width:260px;display:flex;flex-direction:column;gap:3px;animation:fadeInDown .12s ease-out}.mode-menu-item{display:flex;align-items:center;gap:8px;padding:7px 9px;border-radius:6px;border:1px solid transparent;background:transparent;text-align:left;cursor:pointer;color:#334155;transition:all .1s}.mode-menu-item:hover{background:#f8fafc;border-color:#e2e8f0}.mode-menu-item.active{background:#eff6ff;border-color:#bfdbfe;color:#2563eb}.mode-menu-text{flex:1}.mode-menu-text strong{display:block;font-size:12px;font-weight:700;line-height:1.25}.mode-menu-text small{display:block;font-size:10.5px;color:#64748b;line-height:1.25;margin-top:1px}.mode-check{color:#2563eb;flex-shrink:0}.script-mode-divider{width:1px;height:18px;background:#e2e8f0;margin:0 2px}.float-palette-wrap{position:relative}.symbols-palette-popover{position:absolute;top:calc(100% + 6px);right:0;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:8px 10px;box-shadow:0 10px 28px #0f172a29;z-index:130;width:270px;animation:fadeInDown .12s ease-out;-webkit-user-select:none;user-select:none}.palette-tabs-header{display:flex;background:#f1f5f9;border-radius:7px;padding:2px;gap:2px;margin-bottom:8px}.palette-tab-btn{flex:1;padding:4px 6px;border:1px solid transparent;border-radius:5px;background:transparent;color:#64748b;font-size:11.5px;font-weight:600;cursor:pointer;transition:all .1s ease;text-align:center;white-space:nowrap}.palette-tab-btn:hover{color:#1e293b}.palette-tab-btn.active{background:#fff;color:#2563eb;font-weight:700;border-color:#e2e8f0;box-shadow:0 1px 3px #00000014}.palette-grid{display:flex;flex-wrap:wrap;gap:4px}.palette-char-btn{width:28px;height:28px;display:grid;place-items:center;border:1px solid #e2e8f0;border-radius:6px;background:#f8fafc;font-size:14px;font-weight:600;color:#1e293b;cursor:pointer;transition:all .1s ease;padding:0;line-height:1}.palette-char-btn:hover{background:#eff6ff;border-color:#3b82f6;color:#1d4ed8;transform:scale(1.12)}.board-modal-backdrop{position:fixed;inset:0;z-index:1000;background:#0f172a7a;display:grid;place-items:center;padding:20px;animation:fadeIn .15s ease-out}.board-modal-card{width:min(580px,100%);background:#fff;border-radius:16px;box-shadow:0 20px 40px #0003;padding:22px;border:1px solid #e2e8f0}.board-modal-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}.board-modal-header h3{margin:0 0 4px;font-size:18px;font-weight:750;color:#0f172a}.board-modal-header p{margin:0;font-size:12px;color:#64748b}.board-bg-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.board-bg-option{display:flex;align-items:center;gap:12px;padding:12px;border:2px solid #e2e8f0;border-radius:12px;background:#fff;cursor:pointer;text-align:left;transition:all .15s ease}.board-bg-option:hover{border-color:#cbd5e1;background:#f8fafc}.board-bg-option.active{border-color:var(--primary, #3b5bdb);background:#f5f7ff}.bg-preview-box{width:58px;height:44px;border-radius:8px;border:1px solid #cbd5e1;position:relative;flex-shrink:0}.bg-preview-box.preview-grid{background-color:#fff;background-size:8px 8px;background-image:linear-gradient(to right,rgba(82,118,182,.3) 1px,transparent 1px),linear-gradient(to bottom,rgba(82,118,182,.3) 1px,transparent 1px)}.bg-preview-box.preview-lines{background-color:#fff;background-size:100% 10px;background-image:linear-gradient(to bottom,rgba(82,118,182,.35) 1px,transparent 1px)}.bg-preview-box.preview-dots{background-color:#fff;background-size:8px 8px;background-image:radial-gradient(circle,#64748b 1.2px,transparent 1.4px)}.bg-preview-box.preview-none{background-color:#fff}.bg-preview-box.preview-chalkboard{background-color:#1a241f;background-size:8px 8px;background-image:linear-gradient(to right,rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.12) 1px,transparent 1px)}.selected-check{position:absolute;bottom:2px;right:2px;width:18px;height:18px;border-radius:50%;background:var(--primary, #3b5bdb);color:#fff;display:grid;place-items:center}.bg-option-info{display:flex;flex-direction:column;gap:2px}.bg-option-info strong{font-size:13px;font-weight:700;color:#1e293b}.bg-option-info small{font-size:11px;color:#64748b;line-height:1.3}.close-btn{background:none;border:none;padding:4px;border-radius:6px;cursor:pointer;color:#94a3b8;display:grid;place-items:center;transition:all .12s}.close-btn:hover{background:#f1f5f9;color:#0f172a}.room-canvas-wrap .canvas-holder,.room-canvas-wrap .excalidraw{width:100%!important;height:100%!important;background-color:transparent!important}.room-canvas-wrap .excalidraw-container,.room-canvas-wrap .excalidraw__canvas{background-color:transparent!important}.room-canvas-wrap .excalidraw .shapes-section{position:absolute!important;left:14px!important;top:50%!important;transform:translateY(-50%)!important;width:auto!important;margin:0!important;z-index:5!important}.room-canvas-wrap .excalidraw .shapes-section .App-toolbar-container{width:auto!important;margin:0!important;display:flex!important;flex-direction:column!important;align-items:center!important}.room-canvas-wrap .excalidraw .shapes-section .App-toolbar-container>.Island{margin-left:0!important;margin-top:8px!important;align-self:center!important;width:52px!important;max-width:58px!important;border-radius:16px!important;padding:4px!important;display:flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;background:#fff!important;border:1px solid var(--border, #e2e8f0)!important;box-shadow:0 4px 24px #0000001a!important}.room-canvas-wrap .excalidraw .shapes-section .ToolIcon__LaserPointer{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;border-radius:10px!important;margin:0 auto!important}.room-canvas-wrap .excalidraw .shapes-section .App-toolbar{width:auto!important;min-width:52px!important;max-width:58px!important;border-radius:16px!important;background:#fff!important;border:1px solid var(--border, #e2e8f0)!important;box-shadow:0 4px 24px #0000001a!important;padding:8px 4px!important;display:flex!important;flex-direction:column!important;align-items:center!important}.room-canvas-wrap .excalidraw .shapes-section .App-toolbar-content{display:flex!important;flex-direction:column!important;gap:4px!important;padding:0!important;width:100%!important}.room-canvas-wrap .excalidraw .shapes-section .Stack,.room-canvas-wrap .excalidraw .shapes-section .Stack_horizontal,.room-canvas-wrap .excalidraw .shapes-section .Stack_vertical{display:flex!important;flex-direction:column!important;grid-auto-flow:row!important;grid-template-columns:auto!important;grid-template-rows:none!important;gap:4px!important;width:100%!important;align-items:center!important}.room-canvas-wrap .excalidraw .shapes-section .ToolIcon,.room-canvas-wrap .excalidraw .shapes-section .ToolIcon_type_radio,.room-canvas-wrap .excalidraw .shapes-section .ToolIcon_type_button,.room-canvas-wrap .excalidraw .shapes-section .ToolIcon__icon{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;border-radius:10px!important}.room-canvas-wrap .excalidraw .shapes-section .ToolIcon__icon svg{width:24px!important;height:24px!important}.room-canvas-wrap .excalidraw .shapes-section .ToolIcon__keybinding{font-size:11px!important;top:3px!important;left:4px!important;color:#7b8ab8!important}.room-canvas-wrap .excalidraw .shapes-section .App-toolbar__divider{width:28px!important;height:1px!important;min-height:1px!important;max-height:1px!important;margin:4px auto!important;background-color:#e5e7eb!important}.room-canvas-wrap .excalidraw .shapes-section .HintViewer{display:none!important}.room-canvas-wrap .excalidraw .App-toolbar__extra-tools-dropdown{position:absolute!important;left:calc(100% + 12px)!important;right:auto!important;top:auto!important;bottom:0!important;margin:0!important;min-width:190px!important;background:#fff!important;border:1px solid var(--border, #e2e8f0)!important;border-radius:12px!important;box-shadow:0 10px 30px #00000026!important;z-index:100!important}.room-canvas-wrap .excalidraw .App-toolbar__extra-tools-dropdown>div[style*=font-weight],.room-canvas-wrap .excalidraw .App-toolbar__extra-tools-dropdown [data-testid=toolbar-magicframe],.room-canvas-wrap .excalidraw [data-testid=toolbar-ttd]{display:none!important}.room-canvas-wrap .excalidraw .layer-ui__wrapper__top-left,.room-canvas-wrap .excalidraw .dropdown-menu,.room-canvas-wrap .excalidraw .dropdown-menu-container{z-index:100!important}.room-canvas-wrap .excalidraw .dropdown-menu-group--links,.room-canvas-wrap .excalidraw a[href*="github.com/excalidraw"],.room-canvas-wrap .excalidraw a[href*="discord.gg"],.room-canvas-wrap .excalidraw a[href*="twitter.com"],.room-canvas-wrap .excalidraw .sidebar-trigger,.room-canvas-wrap .excalidraw .UserList__wrapper,.room-canvas-wrap .excalidraw .follow-mode,.room-canvas-wrap .excalidraw .layer-ui__wrapper__top-right{display:none!important}.room-canvas-wrap .excalidraw .App-menu__left{left:74px!important;top:52px!important;border-radius:12px!important;border:1px solid var(--border, #e2e8f0)!important;box-shadow:0 6px 20px #00000017!important}.room-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:12px;color:var(--text-secondary, #888)}.room-loading-spinner{width:36px;height:36px;border:3px solid var(--border, #e5e5e2);border-top-color:var(--accent, #6c63ff);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.attendance-section{margin-top:28px;padding:24px;background:#fff;border:1px solid var(--border, #e5e5e2);border-radius:14px}.attendance-section h2{font-size:17px;margin:0 0 4px}.attendance-buttons{display:flex;gap:12px;margin-top:16px;flex-wrap:wrap}.attendance-saved{display:flex;align-items:center;gap:6px;margin-top:12px;font-size:14px;color:#2c7a4b;font-weight:500}.button.success{background:#e6f5ec;color:#2c7a4b;border:1px solid #a8d9bc}.button.success:hover:not(:disabled){background:#d0eddb}.button.danger{background:#fdecea;color:#a1200c;border:1px solid #f5b7b0}.button.danger:hover:not(:disabled){background:#faccc8}.detail-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.create-lesson-form{display:flex;flex-direction:column;gap:16px}.create-lesson-form label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:500;color:var(--text-primary, #1a1a18)}.create-lesson-form label small{font-weight:400;color:var(--text-secondary, #888)}.create-lesson-form input,.create-lesson-form select,.create-lesson-form textarea{padding:9px 12px;border:1px solid var(--border, #ddd);border-radius:8px;font-size:14px;font-family:inherit;background:#fff;transition:border-color .15s}.create-lesson-form input:focus,.create-lesson-form select:focus,.create-lesson-form textarea:focus{outline:none;border-color:var(--accent, #6c63ff)}.create-lesson-form textarea{resize:vertical}.time-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.profile-avatar-wrap{position:relative;display:flex;flex-direction:column;align-items:center;margin:4px auto 14px;transition:all .2s ease}.profile-avatar-wrap.is-dragging-avatar{outline:3px dashed var(--primary, #3b50df);outline-offset:4px;border-radius:32px;transform:scale(1.05)}.profile-avatar-img{width:92px;height:92px;border-radius:28px;object-fit:cover;border:2px solid #fff;box-shadow:0 4px 14px #3852c924}.profile-avatar-actions{display:flex;align-items:center;gap:6px;margin-top:10px}.avatar-upload-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:8px;background:var(--primary-soft);color:var(--primary);font-size:11px;font-weight:700;cursor:pointer;transition:all .15s ease;border:1px solid #c9d4ff}.avatar-upload-btn:hover{background:#dfe6ff}.avatar-delete-btn{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;border-radius:8px;background:#fff0f0;color:#c93b3b;border:1px solid #ffd0d0;cursor:pointer;transition:all .15s ease}.avatar-delete-btn:hover{background:#ffe3e3}.avatar-error-hint{margin-top:6px;padding:4px 8px;border-radius:6px;background:#fff0f0;color:#c93b3b;font-size:11px;text-align:center}.profile-bio-section{margin-top:22px;display:flex;flex-direction:column;gap:8px}.profile-bio-section label>span{display:flex;align-items:center;gap:7px;margin-bottom:7px;color:var(--muted);font-size:12px;font-weight:700}.profile-bio-textarea{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:12px;font-family:inherit;font-size:13px;line-height:1.6;color:#1e293b;background:var(--surface-2);resize:vertical;min-height:110px;transition:border-color .15s ease}.profile-bio-textarea:focus{outline:none;border-color:#aab7f3;background:#fff;box-shadow:0 0 0 3px #edf0ff}.bio-char-hint{color:var(--muted);font-size:11px;line-height:1.4}.documents-tab-grid{display:grid;grid-template-columns:380px 1fr;gap:18px;align-items:start}@media(max-width:960px){.documents-tab-grid{grid-template-columns:1fr}}.document-upload-card,.documents-list-card{padding:26px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-sm)}.document-upload-form{display:flex;flex-direction:column;gap:16px;margin-top:20px}.document-upload-form label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:700;color:#475467}.document-upload-form input[type=text]{width:100%;padding:11px 13px;border:1px solid var(--line);border-radius:10px;font-size:13px;color:#1e293b;background:var(--surface-2)}.document-upload-form input[type=text]:focus{outline:none;border-color:#aab7f3;background:#fff;box-shadow:0 0 0 3px #edf0ff}.file-drop-area{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 16px;border:2px dashed #cbd5e1;border-radius:14px;background:#f8fafc;cursor:pointer;text-align:center;transition:all .15s ease}.file-drop-area:hover{border-color:var(--primary);background:#f0f4ff}.file-drop-area.is-dragging{border-color:#3b50df;border-style:dashed;background:#eef2ff;transform:scale(1.02);box-shadow:0 6px 18px #3b50df2e}.file-drop-area.is-dragging .file-drop-placeholder{color:#3b50df}.file-drop-area.is-dragging strong{color:#1d4ed8}.file-drop-area.has-file{border-style:solid;border-color:#86efac;background:#f0fdf4}.file-drop-placeholder{display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--muted)}.file-drop-placeholder strong{font-size:13px;color:#334155}.file-drop-placeholder span{font-size:11px;max-width:260px}.file-selected-info{display:flex;align-items:center;gap:12px;width:100%;padding:4px}.file-ok-icon{color:#16a34a;flex-shrink:0}.file-selected-info>div{display:flex;flex-direction:column;text-align:left;overflow:hidden;flex:1}.file-selected-info strong{font-size:12px;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-selected-info small{color:var(--muted);font-size:10px}.file-clear-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;background:#0000000d;border:none;cursor:pointer;color:#64748b}.file-clear-btn:hover{background:#0000001a;color:#0f172a}.document-form-actions{display:flex;justify-content:flex-end;margin-top:4px}.document-form-actions .button{width:100%;padding:12px;font-size:13px}.empty-documents{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 24px;border:1px dashed var(--line);border-radius:14px;background:var(--surface-2);margin-top:20px}.empty-icon-gray{color:#94a3b8;margin-bottom:12px}.empty-documents h3{margin:0 0 6px;font-size:15px;color:#334155}.empty-documents p{margin:0;max-width:380px;font-size:12px;color:var(--muted);line-height:1.5}.documents-grid{display:flex;flex-direction:column;gap:12px;margin-top:20px}.document-item-card{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;transition:all .15s ease}.document-item-card:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0000000a}.doc-icon-wrap{flex-shrink:0}.doc-badge-pdf,.doc-badge-img{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;font-size:11px;font-weight:800;letter-spacing:.02em}.doc-badge-pdf{background:#fee2e2;color:#dc2626;border:1px solid #fca5a5}.doc-badge-img{background:#e0f2fe;color:#0284c7;border:1px solid #bae6fd}.doc-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.doc-content h4{margin:0;font-size:13px;font-weight:700;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-meta{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.doc-action-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:var(--surface-2);border:1px solid var(--line);color:#475467;cursor:pointer;text-decoration:none;transition:all .15s ease}.doc-action-btn:hover{background:var(--primary-soft);color:var(--primary);border-color:#aab7f3}.doc-action-btn.delete{color:#ef4444}.doc-action-btn.delete:hover{background:#fef2f2;border-color:#fca5a5;color:#b91c1c}.room-nav-tabs{display:flex;align-items:center;gap:4px;background:#f1f3f9;padding:3px;border-radius:10px;margin:0 12px}.room-nav-tab{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:none;background:transparent;color:#64748b;font-size:13px;font-weight:500;border-radius:7px;cursor:pointer;transition:all .15s ease}.room-nav-tab:hover{color:#1e293b;background:#ffffff80}.room-nav-tab.active{background:#fff;color:var(--primary, #3b50df);font-weight:600;box-shadow:0 1px 3px #00000014}.room-tab-content-wrap{width:100%;min-height:calc(100vh - 52px);max-height:calc(100vh - 52px);overflow-y:auto;background:#f8fafc;padding:24px 32px;box-sizing:border-box}.materials-panel-container{max-width:1100px;margin:0 auto}.panel-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:16px}.panel-title{margin:0 0 4px;font-size:22px;font-weight:700;color:#1e293b}.panel-subtitle{margin:0;font-size:14px;color:#64748b}.material-card{display:flex;align-items:center;gap:14px;padding:16px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000a;transition:all .15s ease}.material-card:hover{border-color:#cbd5e1;box-shadow:0 4px 10px #0000000f}.material-card-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:#eef2ff;color:#4f46e5;flex-shrink:0}.material-card-title{margin:0 0 4px;font-size:14px;font-weight:600;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-card-meta{display:flex;align-items:center;gap:6px;font-size:12px;color:#64748b}.material-card-meta .dot{font-size:14px}.icon-action-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;background:#f1f5f9;border:1px solid #e2e8f0;color:#475569;cursor:pointer;text-decoration:none;transition:all .15s ease}.icon-action-btn:hover{background:#e0e7ff;color:#3b50df;border-color:#c7d2fe}.icon-action-btn.delete:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}.materials-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 24px;background:#fff;border:1px dashed #cbd5e1;border-radius:14px;color:#64748b}.materials-empty-state .empty-icon{color:#94a3b8;margin-bottom:12px}.materials-empty-state h3{margin:0 0 6px;color:#1e293b}.materials-empty-state p{margin:0;max-width:480px;font-size:14px}.assignments-panel-container{max-width:1000px;margin:0 auto}.assignments-subtabs{display:inline-flex;align-items:center;gap:6px;background:#e2e8f0;padding:4px;border-radius:10px;margin-bottom:24px}.subtab-btn{padding:8px 18px;border:none;background:transparent;color:#475569;font-size:14px;font-weight:500;border-radius:8px;cursor:pointer;transition:all .15s ease}.subtab-btn.active{background:#fff;color:#1e293b;font-weight:600;box-shadow:0 1px 3px #00000014}.assignments-section-box{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:0 1px 3px #00000008}.section-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.section-title-wrap{display:flex;flex-direction:column;gap:4px}.section-heading{margin:0;font-size:18px;font-weight:700;color:#1e293b}.section-tip{font-size:13px;color:#64748b}.text-action-btn{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:var(--primary, #3b50df);font-size:14px;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:6px}.text-action-btn:hover{background:#eef2ff}.topic-pill{display:inline-block;padding:4px 12px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:20px;font-size:13px;color:#334155;font-weight:500}.topics-empty-notice{font-size:13px;color:#94a3b8;font-style:italic}.assignments-empty-collapse{padding:16px;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:10px}.empty-collapse-row{display:flex;align-items:center;justify-content:space-between;color:#64748b;font-size:14px}.assignments-list{display:flex;flex-direction:column;gap:16px}.assignment-card{padding:18px;border:1px solid #e2e8f0;border-radius:12px;background:#fafafa}.assignment-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.assignment-topic-tag{display:inline-block;font-size:11px;font-weight:600;text-transform:uppercase;color:var(--primary, #3b50df);background:#eef2ff;padding:2px 8px;border-radius:4px;margin-bottom:6px}.assignment-card-title{margin:0 0 6px;font-size:16px;font-weight:700;color:#0f172a}.assignment-deadline-tag{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#d97706;font-weight:500}.assignment-description{font-size:14px;line-height:1.5;color:#334155;margin-bottom:12px;white-space:pre-wrap}.assignment-files-box{margin-top:10px;padding:10px;background:#fff;border:1px solid #e2e8f0;border-radius:8px}.assignment-files-box .box-title{font-size:12px;font-weight:600;color:#64748b;margin-bottom:6px}.files-chips{display:flex;flex-wrap:wrap;gap:8px}.file-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;font-size:12px;color:#1e293b;text-decoration:none}.file-chip:hover{background:#e2e8f0}.remove-chip-btn{border:none;background:none;cursor:pointer;font-size:16px;color:#94a3b8}.remove-chip-btn:hover{color:#ef4444}.status-badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:600}.status-badge.assigned{background:#f1f5f9;color:#475569}.status-badge.submitted{background:#e0f2fe;color:#0284c7}.status-badge.needs-work{background:#fef3c7;color:#b45309}.student-submission-section{margin-top:14px;padding-top:14px;border-top:1px dashed #cbd5e1}.reviewed-success-box{padding:12px 16px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px}.reviewed-success-box .box-header{display:flex;align-items:center;gap:8px;font-size:14px}.grade-pill{margin-left:auto;padding:2px 10px;background:#22c55e;color:#fff;border-radius:12px;font-size:12px;font-weight:700}.tutor-feedback{margin:6px 0 0;font-size:13px;color:#166534}.active-submit-form{display:flex;flex-direction:column;gap:10px;background:#fff;padding:14px;border:1px solid #e2e8f0;border-radius:10px}.active-submit-form textarea{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:8px;font-family:inherit;font-size:13px;box-sizing:border-box}.attach-solution-row{display:flex;align-items:center;gap:10px}.upload-btn-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px dashed var(--primary);border-radius:6px;background:#eef2ff;color:var(--primary);font-size:13px;font-weight:500;cursor:pointer}.form-action-row{display:flex;justify-content:flex-end;gap:8px;margin-top:6px}.submit-invitation-row{display:flex;align-items:center;justify-content:space-between}.tutor-submissions-section{margin-top:14px;padding-top:14px;border-top:1px dashed #cbd5e1}.subs-header{font-size:13px;color:#475569;margin-bottom:10px}.subs-list{display:flex;flex-direction:column;gap:10px}.sub-item-card{padding:12px;background:#fff;border:1px solid #e2e8f0;border-radius:8px}.sub-user-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.sub-user-row .user-name{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#0f172a}.sub-comment-text{font-size:13px;color:#334155;background:#f8fafc;padding:8px 12px;border-radius:6px;margin:6px 0}.sub-grade-info{font-size:13px;color:#15803d;margin:6px 0}.sub-actions-row{display:flex;justify-content:flex-end;margin-top:8px}.modal-backdrop{position:fixed;inset:0;background:#0f172a66;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.modal-content{background:#fff;border-radius:14px;width:100%;max-width:520px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 25px #00000026}.modal-content.large{max-width:720px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e2e8f0}.modal-header h3{margin:0;font-size:17px;color:#0f172a}.modal-body{padding:20px;overflow-y:auto}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid #e2e8f0;background:#f8fafc;border-radius:0 0 14px 14px}.library-item-row{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.lib-item-icon{color:var(--primary)}.lib-item-title{font-size:14px;font-weight:600;color:#1e293b}.lib-item-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:#64748b;margin-top:2px}.history-page-container{max-width:1100px;margin:0 auto;padding:8px 0}.page-header-row{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.page-header-row h1{margin:6px 0 8px;font-size:clamp(26px,3.5vw,36px);line-height:1.15;letter-spacing:-.03em}.page-header-row .page-subtitle{margin:0;color:var(--muted);font-size:14px}@media(max-width:640px){.page-header-row{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:20px}}.page-tabs-bar{display:flex;align-items:center;gap:8px;margin:16px 0 20px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;max-width:100%;width:100%;box-sizing:border-box;padding:2px 2px 6px}.page-tabs-bar::-webkit-scrollbar{display:none}.page-tabs-bar .tab-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 18px;border:1px solid #e2e8f0;background:#fff;border-radius:12px;font-size:13px;font-weight:600;color:#64748b;cursor:pointer;transition:all .15s ease;white-space:nowrap;flex-shrink:0;-webkit-user-select:none;user-select:none}.page-tabs-bar .tab-btn:hover{border-color:#cbd5e1;color:var(--primary)}.page-tabs-bar .tab-btn.active{background:var(--primary, #3b50df);color:#fff;border-color:var(--primary, #3b50df);font-weight:700;box-shadow:0 4px 12px #3b50df38}.search-filter-box{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#fff;border:1px solid #cbd5e1;border-radius:10px;margin-bottom:20px}.search-filter-box input{border:none;outline:none;width:100%;font-size:14px;font-family:inherit}.assignments-filters-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.status-filter-select-wrap{display:flex;align-items:center;gap:6px;background:#fff;border:1px solid #cbd5e1;padding:6px 12px;border-radius:8px;font-size:13px;color:#475569}.status-filter-select-wrap select{border:none;outline:none;background:transparent;font-size:13px;font-family:inherit;color:inherit;cursor:pointer}.assignments-history-list{display:flex;flex-direction:column;gap:14px}.history-assignment-card{padding:18px 20px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #00000008}.card-top-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.left-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.type-tag{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.type-tag.classwork{background:#e0f2fe;color:#0369a1}.type-tag.homework{background:#fef3c7;color:#b45309}.topic-tag{font-size:12px;color:#475569;background:#f1f5f9;padding:2px 8px;border-radius:4px}.target-tag{font-size:12px;color:#64748b}.card-title{margin:0 0 6px;font-size:16px;font-weight:700;color:#0f172a}.card-desc{margin:0 0 12px;font-size:14px;color:#475569;line-height:1.5}.card-bottom-row{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding-top:10px;border-top:1px solid #f1f5f9}.deadline-info{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:#d97706;font-weight:500}.no-deadline{font-size:13px;color:#94a3b8}.pastel-hero-banner{position:relative;width:100%;margin-bottom:28px;padding:26px 30px;border-radius:20px;background:linear-gradient(135deg,#f4f7ff,#eef2ff 45%,#f5f3ff);border:1px solid #dbeafe;box-shadow:0 4px 20px -3px #6366f114,0 1px 3px #00000005;overflow:hidden;box-sizing:border-box}.pastel-hero-banner.empty{padding:24px 28px}.pastel-hero-ambient{position:absolute;top:-60px;right:-50px;width:260px;height:260px;background:radial-gradient(circle,#a5b4fc47,#e0e7ff00 70%);border-radius:50%;pointer-events:none}.pastel-hero-content{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:32px}.pastel-hero-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:10px}.pastel-hero-badges{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pastel-tag-kicker{display:inline-flex;align-items:center;padding:4px 10px;border-radius:6px;background:#4f46e51a;color:#4338ca;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.pastel-countdown-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;background:#fff;color:#2563eb;border:1px solid #bfdbfe;box-shadow:0 1px 3px #2563eb14}.pastel-countdown-badge.is-live{background:#ecfdf5;border-color:#a7f3d0;color:#059669}.pastel-live-pulse{width:8px;height:8px;border-radius:50%;background:#10b981;box-shadow:0 0 #10b981b3;animation:live-pulse-pastel 1.6s infinite}@keyframes live-pulse-pastel{0%{transform:scale(.95);box-shadow:0 0 #10b981b3}70%{transform:scale(1.05);box-shadow:0 0 0 6px #10b98100}to{transform:scale(.95);box-shadow:0 0 #10b98100}}.pastel-hero-title{margin:0;font-size:27px;font-weight:800;color:#0f172a;letter-spacing:-.03em;line-height:1.2}.pastel-hero-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pastel-meta-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:10px;background:#fff;border:1px solid #e2e8f0;font-size:13px;font-weight:600;color:#1e293b;box-shadow:0 1px 2px #00000008}.pastel-meta-chip.muted{background:#ffffffbf;font-weight:500;color:#64748b}.pastel-avatar-mini{width:22px;height:22px;border-radius:6px;background:#eef2ff;color:#4f46e5;display:flex;align-items:center;justify-content:center}.pastel-hero-side{display:flex;flex-direction:column;align-items:flex-end;gap:14px;flex-shrink:0}.pastel-time-block{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.pastel-time-digits{font-size:30px;font-weight:800;color:#0f172a;letter-spacing:-.04em;line-height:1}.pastel-date-caption{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:#64748b}.pastel-hero-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pastel-btn-primary{display:inline-flex;align-items:center;gap:8px;padding:11px 22px;border-radius:12px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-size:14px;font-weight:700;text-decoration:none;box-shadow:0 4px 14px #2563eb47;transition:all .15s ease}.pastel-btn-primary:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);transform:translateY(-1px);box-shadow:0 6px 18px #2563eb61}.pastel-btn-primary.pulse-cta{background:linear-gradient(135deg,#16a34a,#15803d);box-shadow:0 4px 14px #16a34a59}.pastel-btn-primary.pulse-cta:hover{background:linear-gradient(135deg,#15803d,#166534);box-shadow:0 6px 18px #16a34a73}.pastel-btn-outline{display:inline-flex;align-items:center;gap:6px;padding:11px 18px;border-radius:12px;background:#fff;border:1px solid #cbd5e1;color:#334155;font-size:14px;font-weight:600;text-decoration:none;box-shadow:0 1px 2px #00000008;transition:all .15s ease}.pastel-btn-outline:hover{border-color:#94a3b8;background:#f8fafc;color:#0f172a}.pastel-hero-empty{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%}.pastel-empty-icon-wrap{width:48px;height:48px;border-radius:12px;background:#e0e7ff;color:#4f46e5;display:flex;align-items:center;justify-content:center;flex-shrink:0}.pastel-empty-text{flex:1}.pastel-empty-text h3{margin:0 0 4px;font-size:16px;font-weight:700;color:#1e293b}.pastel-empty-text p{margin:0;font-size:13px;color:#64748b}@media(max-width:860px){.pastel-hero-content{flex-direction:column;align-items:flex-start;gap:20px}.pastel-hero-side{align-items:flex-start;width:100%;padding-top:16px;border-top:1px solid rgba(219,234,254,.8)}.pastel-hero-actions{width:100%}.pastel-btn-primary,.pastel-btn-outline{flex:1;justify-content:center}.pastel-hero-empty{flex-direction:column;align-items:flex-start}}.profile-editor-section{margin-top:24px;padding-top:20px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:12px}.section-subtitle-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.section-subheading{margin:0 0 3px;display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:#0f172a}.section-subtext{margin:0;font-size:12px;color:var(--muted)}.subject-search-box{position:relative;display:flex;align-items:center;background:var(--surface-2);border:1px solid var(--line);border-radius:8px;padding:4px 10px;width:220px;transition:all .15s ease}.subject-search-box:focus-within{border-color:#aab7f3;background:#fff;box-shadow:0 0 0 2px #edf0ff}.subject-search-box svg{color:var(--muted);flex-shrink:0;margin-right:6px}.subject-search-box input{border:none;background:transparent;padding:2px 0;font-size:12px;width:100%;color:#1e293b;outline:none}.search-clear-btn{background:transparent;border:none;cursor:pointer;color:#94a3b8;display:flex;align-items:center;padding:0}.selectable-chips-grid{display:flex;flex-wrap:wrap;gap:8px;max-height:240px;overflow-y:auto;padding:4px 1px}.selectable-chips-grid.directions-grid{max-height:none;overflow-y:visible}.select-chip-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:20px;background:var(--surface-2);border:1px solid var(--line);color:#334155;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none}.select-chip-btn:hover{background:#f1f5f9;border-color:#cbd5e1;color:#0f172a}.select-chip-btn.selected{background:#eef2ff;border-color:#a5b4fc;color:#3730a3;box-shadow:0 1px 2px #4f46e514}.select-chip-btn.selected .chip-check{color:#4f46e5}.select-chip-btn.direction-chip.selected{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.select-chip-btn.direction-chip.selected .chip-check{color:#059669}.profile-directions-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:6px}.direction-pill{display:inline-flex;align-items:center;padding:3px 8px;border-radius:6px;background:#ecfdf5;border:1px solid #d1fae5;color:#047857;font-size:11px;font-weight:600}.floating-video-card{position:fixed;right:28px;bottom:78px;z-index:60;width:340px;height:270px;max-height:calc(100vh - 120px);background:#373d4d;border:1px solid rgba(255,255,255,.12);border-radius:16px;box-shadow:0 16px 36px -4px #00000073,0 0 0 1px #0000001a;display:flex;flex-direction:column;overflow:hidden;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:all .2s cubic-bezier(.16,1,.3,1)}.floating-video-card.layout-grid{width:min(440px,calc(100vw - 32px));height:min(330px,calc(100vh - 120px))}.floating-video-card:not(.is-fullscreen):not(.layout-minimized){min-width:280px;min-height:210px;max-width:calc(100vw - 24px);max-height:calc(100vh - 90px);resize:both}.floating-video-card.layout-minimized{height:42px!important;width:280px!important;resize:none!important}.floating-video-card.is-fullscreen{right:20px;bottom:80px;width:calc(100vw - 40px)!important;height:calc(100vh - 140px)!important;resize:none!important}.card-top-bar{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:#1c202a99;border-bottom:1px solid rgba(255,255,255,.08);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.floating-video-card.is-dragging{transition:none!important;cursor:grabbing!important;box-shadow:0 24px 48px #0009,0 0 0 2px var(--primary, #3b5bdb)!important;opacity:.96}.floating-video-card.is-dragging .card-top-bar{cursor:grabbing!important}.card-drag-indicator{display:flex;align-items:center;justify-content:center;color:#64748b;flex:1;padding:0 6px;cursor:grab;transition:color .15s ease}.card-drag-indicator:hover{color:#cbd5e1}.floating-video-card.is-dragging .card-drag-indicator{cursor:grabbing!important;color:#fff}.card-top-bar .layout-actions,.card-top-bar .card-top-right{display:flex;align-items:center;gap:4px}.card-top-bar .layout-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:4px 6px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease}.card-top-bar .layout-btn:hover{color:#fff;background:#ffffff1f}.card-top-bar .layout-btn.active{color:#fff;background:#fff3}.openvidu-frame-wrap{flex:1;position:relative;width:100%;height:100%;min-height:0;background:#11141b}.openvidu-embedded-frame{width:100%;height:100%;border:none}.video-tiles-grid{flex:1;display:grid;gap:6px;padding:6px;min-height:0;background:#2b303d}.video-tiles-grid.split{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.floating-video-card.is-fullscreen .video-tiles-grid.split{grid-template-columns:1fr 1fr;grid-template-rows:1fr}.video-tiles-grid.single{grid-template-columns:1fr;grid-template-rows:1fr}.video-tiles-grid.grid{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.video-tile{position:relative;border-radius:10px;overflow:hidden;background:#1b1e27;display:flex;align-items:center;justify-content:center;min-height:0;min-width:0;border:1px solid rgba(255,255,255,.06)}.tile-video-feed,.video-tile video{width:100%;height:100%;object-fit:cover;display:block}.screenshare-tile-wrap{position:relative;flex:1;width:100%;height:100%;min-height:0;background:#0f1117;display:flex;align-items:center;justify-content:center;overflow:hidden}.tile-screenshare-feed{width:100%;height:100%;object-fit:contain;background:#000}.tile-screenshare-overlay{position:absolute;top:8px;left:8px;right:8px;display:flex;align-items:center;justify-content:space-between;pointer-events:none;z-index:10}.screenshare-badge{background:#0f172ae0;color:#38bdf8;font-size:11px;font-weight:600;padding:4px 8px;border-radius:6px;border:1px solid rgba(56,189,248,.3);display:inline-flex;align-items:center;gap:5px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.screenshare-expand-btn{pointer-events:auto;background:#0f172ae0;color:#f1f5f9;font-size:11px;font-weight:500;padding:4px 8px;border-radius:6px;border:1px solid rgba(255,255,255,.2);display:inline-flex;align-items:center;gap:5px;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .15s ease}.screenshare-expand-btn:hover{background:#1e293bf2;border-color:#fff6;color:#fff}.screenshare-pip-cam{position:absolute;right:10px;bottom:10px;width:84px;height:60px;border-radius:8px;overflow:hidden;background:#1e293b;border:2px solid rgba(255,255,255,.25);box-shadow:0 4px 12px #00000080;z-index:10}.screenshare-pip-cam .pip-video-feed{width:100%;height:100%;object-fit:cover}.screenshare-pip-cam .pip-avatar-circle{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;color:#fff;background:#334155}.tile-avatar-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:radial-gradient(circle at center,#262b37,#171a22)}.tile-avatar-circle{width:58px;height:58px;border-radius:50%;background:#181b22;color:#f8fafc;font-size:26px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #00000080;border:2px solid rgba(255,255,255,.12);-webkit-user-select:none;user-select:none}.video-tiles-grid.single .tile-avatar-circle{width:84px;height:84px;font-size:38px}.tile-cam-off-badge{font-size:11px;color:#fca5a5;background:#ef444433;padding:2px 8px;border-radius:4px}.waiting-state{color:#94a3b8;font-size:12px}.tile-bottom-overlay{position:absolute;bottom:0;left:0;right:0;padding:4px 8px;background:linear-gradient(180deg,transparent 0%,rgba(12,15,22,.9) 100%);display:flex;align-items:center;gap:6px;z-index:5}.tile-status-icons{display:flex;align-items:center;gap:4px}.signal-icon{color:#38bdf8}.status-muted-icon{color:#ef4444}.tile-name-label{color:#e2e8f0;font-size:11px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.tutor-tile-moderation-bar{position:absolute;top:6px;right:6px;display:flex;gap:4px;z-index:10}.mod-pill-btn{background:#0f172ad9;border:1px solid rgba(255,255,255,.15);color:#e2e8f0;padding:3px 8px;border-radius:6px;font-size:10px;display:inline-flex;align-items:center;gap:4px;cursor:pointer;transition:all .15s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);white-space:nowrap}.mod-pill-btn:hover{background:#1e293bf2;border-color:#ffffff4d}.mod-pill-btn.is-muted{background:#ef444440;border-color:#ef4444;color:#fca5a5}.video-tiles-grid.grid .tutor-tile-moderation-bar,.floating-video-card:not(.is-fullscreen) .tutor-tile-moderation-bar{top:4px;right:4px;gap:3px}.video-tiles-grid.grid .mod-pill-btn,.floating-video-card:not(.is-fullscreen) .mod-pill-btn{padding:3px 5px;min-width:22px;height:22px;justify-content:center}.video-tiles-grid.grid .mod-pill-btn span,.floating-video-card:not(.is-fullscreen) .mod-pill-btn span{display:none}.tutor-action-toast{position:absolute;top:40px;left:50%;transform:translate(-50%);background:#0f172aeb;color:#38bdf8;padding:4px 10px;border-radius:9999px;font-size:11px;display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(56,189,248,.3);box-shadow:0 4px 12px #0006;z-index:20;white-space:nowrap;animation:fadeIn .2s ease}.card-bottom-bar{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:#1c202ab3;font-size:11px;color:#94a3b8;border-top:1px solid rgba(255,255,255,.06)}.card-bottom-bar .status-indicator{display:flex;align-items:center;gap:6px;color:#cbd5e1}.card-bottom-bar .info-icon{color:#f59e0b}.participants-count-badge{display:flex;align-items:center;gap:4px;background:#ffffff1a;padding:2px 7px;border-radius:4px;color:#e2e8f0;font-weight:600;font-size:11px}.bottom-call-controls-bar{position:fixed;bottom:18px;left:24px;z-index:60;display:flex;align-items:center;gap:8px;background:#fffffff5;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:5px 12px;border-radius:9999px;box-shadow:0 8px 30px #00000024,0 0 0 1px #0000000f;box-sizing:border-box}.call-timer-display{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:15px;font-weight:700;color:#0f172a;padding:0 8px 0 4px;min-width:50px;text-align:center;-webkit-user-select:none;user-select:none;flex-shrink:0}.call-end-pill-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#ef4444;color:#fff;border:none;border-radius:9999px;padding:6px 16px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s ease;box-shadow:0 2px 8px #ef444459;white-space:nowrap;flex-shrink:0}.call-end-pill-btn:hover{background:#dc2626;transform:translateY(-1px)}.call-end-text-short{display:none}.call-end-text-full{display:inline}.call-circle-btn{width:36px;height:36px;min-width:36px;border-radius:50%;border:1px solid #e2e8f0;background:#f8fafc;color:#334155;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;flex-shrink:0;padding:0}.call-circle-btn svg{width:16px;height:16px}.call-circle-btn:hover{background:#f1f5f9;color:#0f172a}.call-circle-btn:disabled{cursor:not-allowed;opacity:.65}.call-circle-btn:disabled:hover{transform:none}.call-circle-btn.is-muted-danger{background:#fee2e2;border-color:#fecaca;color:#dc2626}.call-circle-btn.is-screenshare-active{background:#eff6ff;border-color:#bfdbfe;color:#2563eb}.call-btn-with-dropdown{display:inline-flex;align-items:center;position:relative;gap:2px;flex-shrink:0}.control-dropdown-chevron{color:#64748b;cursor:pointer;margin-left:-2px}.call-rejoin-pill-btn{display:inline-flex;align-items:center;gap:8px;background:#10b981;color:#fff;border:none;border-radius:9999px;padding:7px 18px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s ease;box-shadow:0 2px 8px #10b9814d;white-space:nowrap}.call-rejoin-pill-btn:hover{background:#059669}@media(max-width:780px){.bottom-call-controls-bar{left:12px;bottom:12px}}@media(max-width:560px){.bottom-call-controls-bar{bottom:0;left:0;right:0;width:100%;height:38px;min-height:38px;border-radius:0;border-top:1px solid rgba(0,0,0,.08);box-shadow:0 -2px 10px #0000000a;padding:0 6px;gap:4px;justify-content:center}.call-end-text-full{display:none}.call-end-text-short{display:inline}.call-end-pill-btn{height:28px;padding:0 9px;font-size:11px;gap:4px;box-shadow:0 2px 6px #ef44444d}.call-timer-display{font-size:12px;padding:0 4px;min-width:38px}.call-circle-btn{width:28px;height:28px;min-width:28px}.call-circle-btn svg{width:14px;height:14px}.control-dropdown-chevron{display:none}.call-btn-with-dropdown{gap:0}.room-canvas-wrap .excalidraw .layer-ui__wrapper__footer-left,.room-canvas-wrap .excalidraw .layer-ui__wrapper__footer-right{bottom:46px!important}}.attendance-modal-backdrop{position:fixed;inset:0;z-index:100;background:#0f172aa6;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:16px;animation:fadeIn .15s ease}.attendance-modal-card{width:100%;max-width:530px;background:#fff;border-radius:16px;box-shadow:0 24px 48px -12px #00000040,0 0 0 1px #0000000d;overflow:hidden;display:flex;flex-direction:column;animation:modalPopIn .2s cubic-bezier(.16,1,.3,1)}@keyframes modalPopIn{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.attendance-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.attendance-modal-header .header-title-box{display:flex;align-items:center;gap:12px}.header-icon-badge{width:40px;height:40px;border-radius:10px;background:#eef2ff;color:#4f46e5;display:flex;align-items:center;justify-content:center;flex-shrink:0}.attendance-modal-header h3{margin:0;font-size:16px;font-weight:700;color:#0f172a}.attendance-modal-header p{margin:2px 0 0;font-size:12px;color:#64748b}.modal-close-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:6px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.modal-close-btn:hover{background:#e2e8f0;color:#0f172a}.attendance-lesson-badge{margin:16px 24px 0;padding:10px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:flex;flex-direction:column;gap:6px}.lesson-badge-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.badge-subject{font-size:13px;font-weight:700;color:#1e293b;background:#fff;padding:2px 8px;border-radius:6px;border:1px solid #cbd5e1}.badge-user{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:600;color:#334155}.lesson-badge-time{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#64748b}.attendance-modal-form{display:flex;flex-direction:column}.attendance-choices-title{font-size:14px;font-weight:700;color:#1e293b;padding:16px 24px 10px}.attendance-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 24px}@media(max-width:520px){.attendance-choice-grid{grid-template-columns:1fr}}.attendance-choice-card{border:2px solid #e2e8f0;border-radius:12px;padding:14px;background:#fff;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:6px;transition:all .15s ease;position:relative}.attendance-choice-card .choice-header{display:flex;align-items:center;gap:8px;font-size:14px;color:#1e293b}.attendance-choice-card p{margin:0;font-size:12px;color:#64748b;line-height:1.4}.attendance-choice-card .selected-indicator{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;margin-top:4px}.choice-conducted:hover{border-color:#86efac;background:#f0fdf4}.choice-conducted.is-selected{border-color:#10b981;background:#f0fdf4;box-shadow:0 4px 14px #10b98126}.choice-conducted.is-selected .selected-indicator{color:#059669}.choice-icon.success{color:#10b981}.choice-missed:hover{border-color:#fca5a5;background:#fef2f2}.choice-missed.is-selected{border-color:#ef4444;background:#fef2f2;box-shadow:0 4px 14px #ef444426}.choice-missed.is-selected .selected-indicator{color:#dc2626}.choice-icon.danger{color:#ef4444}.attendance-comment-field{padding:16px 24px 0;display:flex;flex-direction:column;gap:6px}.attendance-comment-field label{font-size:13px;font-weight:600;color:#334155}.attendance-comment-field label small{font-weight:400;color:#94a3b8}.attendance-comment-field textarea{width:100%;border:1px solid #cbd5e1;border-radius:8px;padding:10px 12px;font-size:13px;font-family:inherit;color:#0f172a;resize:vertical;min-height:70px;outline:none;transition:border-color .15s ease}.attendance-comment-field textarea:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.comment-counter{font-size:11px;color:#94a3b8;text-align:right}.attendance-error-banner{margin:12px 24px 0;padding:10px 12px;border-radius:8px;background:#fef2f2;border:1px solid #fee2e2;color:#b91c1c;font-size:12px;display:flex;align-items:center;gap:8px}.attendance-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:18px 24px;margin-top:14px;border-top:1px solid #f1f5f9;background:#fafbfc}.attendance-modal-actions .btn-secondary{padding:8px 16px;background:#fff;border:1px solid #cbd5e1;color:#475569;font-size:13px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .15s ease}.attendance-modal-actions .btn-secondary:hover{background:#f1f5f9;color:#0f172a}.attendance-modal-actions .btn-primary{padding:8px 18px;background:#10b981;border:none;color:#fff;font-size:13px;font-weight:600;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .15s ease;box-shadow:0 2px 6px #10b9814d}.attendance-modal-actions .btn-primary:hover:not(:disabled){background:#059669}.attendance-modal-actions .btn-primary:disabled{opacity:.6;cursor:not-allowed}.attendance-success-box{padding:36px 24px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}.success-icon-circle{width:60px;height:60px;border-radius:50%;background:#dcfce7;color:#15803d;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #15803d33}.attendance-success-box h4{margin:6px 0 0;font-size:18px;font-weight:700;color:#0f172a}.attendance-success-box p{margin:0;font-size:14px;color:#64748b}.finish-lesson-header-btn{display:inline-flex;align-items:center;gap:6px;background:#ecfdf5!important;color:#065f46!important;border-color:#a7f3d0!important;font-weight:600!important}.finish-lesson-header-btn:hover{background:#d1fae5!important;border-color:#6ee7b7!important}.precall-modal-backdrop{position:fixed;inset:0;z-index:999;display:flex;align-items:center;justify-content:center;background:#0f172ab8;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:16px;animation:precallFadeIn .25s cubic-bezier(.16,1,.3,1)}@keyframes precallFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.precall-modal-card{width:100%;max-width:820px;max-height:92vh;display:flex;flex-direction:column;background:#fff;border-radius:20px;box-shadow:0 25px 50px -12px #0f172a59,0 0 0 1px #0000000f;overflow:hidden}.precall-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 26px 16px;border-bottom:1px solid #f1f5f9;flex-shrink:0}.precall-header-info{display:flex;align-items:center;gap:14px}.precall-header-badge{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;background:#eff6ff;color:#2563eb;flex-shrink:0}.precall-modal-title{margin:0;font-size:19px;font-weight:700;color:#0f172a;line-height:1.3}.precall-modal-subtitle{margin:3px 0 0;font-size:13px;color:#64748b}.precall-close-btn{background:none;border:none;color:#94a3b8;cursor:pointer;padding:8px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.precall-close-btn:hover{background:#f1f5f9;color:#0f172a}.precall-lesson-banner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:10px 26px;background:#f8fafc;border-bottom:1px solid #f1f5f9;flex-shrink:0}.precall-lesson-badge{display:flex;align-items:center;gap:8px;font-size:13px;color:#334155}.precall-subject-name{font-weight:700;color:#2563eb}.precall-dot{color:#cbd5e1}.precall-role-chip{font-size:12px;color:#475569;background:#fff;padding:4px 10px;border-radius:6px;border:1px solid #e2e8f0}.precall-alert-banner{display:flex;align-items:center;gap:12px;margin:12px 26px 0;padding:10px 14px;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#991b1b;font-size:13px;flex-shrink:0}.precall-alert-icon{flex-shrink:0;color:#ef4444}.precall-alert-text{flex:1}.precall-retry-btn{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid #fca5a5;color:#b91c1c;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s}.precall-retry-btn:hover{background:#fee2e2}.precall-body-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:22px;padding:22px 26px;overflow-y:auto;align-items:start;flex:1;min-height:0}.precall-camera-box{display:flex;flex-direction:column;gap:12px}.precall-video-wrapper{position:relative;width:100%;aspect-ratio:16 / 10;background:#0f172a;border-radius:14px;overflow:hidden;box-shadow:0 4px 12px #0f172a26;display:flex;align-items:center;justify-content:center}.precall-video-element{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.precall-video-off-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.precall-avatar-circle{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;font-size:28px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 16px #2563eb40}.precall-camera-off-label{font-size:13px;color:#94a3b8;font-weight:500}.precall-video-controls-overlay{position:absolute;bottom:12px;left:12px;right:12px;display:flex;align-items:center;justify-content:center;gap:10px;z-index:2}.precall-overlay-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:10px;font-size:12px;font-weight:600;border:none;cursor:pointer;transition:all .15s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.precall-overlay-btn.btn-active{background:#2563ebe0;color:#fff;box-shadow:0 2px 8px #2563eb59}.precall-overlay-btn.btn-active:hover{background:#1d4ed8}.precall-overlay-btn.btn-muted{background:#ef4444e0;color:#fff;box-shadow:0 2px 8px #ef444459}.precall-overlay-btn.btn-muted:hover{background:#dc2626}.precall-overlay-btn:disabled{cursor:not-allowed;opacity:.7}.precall-overlay-btn.btn-muted:disabled:hover{background:#ef4444e0}.precall-cam-status-pill{position:absolute;top:12px;left:12px;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#0f172aa6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:20px;color:#fff;font-size:11px;font-weight:600}.precall-green-dot{width:7px;height:7px;border-radius:50%;background:#10b981;box-shadow:0 0 8px #10b981}.precall-select-group{display:flex;flex-direction:column;gap:6px}.precall-select-label{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#475569}.precall-select-input{width:100%;padding:9px 12px;background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;font-size:13px;color:#0f172a;outline:none;transition:all .15s ease}.precall-select-input:focus{border-color:#2563eb;background:#fff;box-shadow:0 0 0 3px #2563eb26}.precall-select-input:disabled{opacity:.6;cursor:not-allowed}.precall-audio-box{display:flex;flex-direction:column;gap:16px}.precall-section-card{display:flex;flex-direction:column;gap:12px;padding:16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;min-height:154px;box-sizing:border-box}.precall-section-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.precall-section-title{display:flex;align-items:center;gap:8px;font-size:14px;color:#0f172a}.precall-status-badge{font-size:11px;padding:3px 10px;border-radius:6px;background:#e2e8f0;color:#64748b;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:94px;height:24px;box-sizing:border-box;flex-shrink:0}.precall-status-badge.status-active{background:#ecfdf5;color:#059669}.precall-volume-meter-wrap{display:flex;flex-direction:column;gap:6px}.precall-volume-bar-bg{width:100%;height:10px;background:#e2e8f0;border-radius:6px;overflow:hidden}.precall-volume-bar-fill{height:100%;border-radius:6px;transition:width .08s ease-out,background .15s ease}.precall-volume-hint{font-size:11px;color:#64748b;height:18px;line-height:18px;min-height:18px;max-height:18px;display:flex;align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.text-emerald{color:#059669!important;font-weight:600}.text-primary{color:#2563eb!important}.text-violet{color:#7c3aed!important}.text-muted{color:#94a3b8!important}.precall-speaker-test-row{display:flex;align-items:center;gap:12px;height:38px;min-height:38px;max-height:38px;box-sizing:border-box}.precall-test-sound-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:154px;min-width:154px;max-width:154px;height:38px;min-height:38px;max-height:38px;padding:0 14px;border-radius:10px;background:#fff;border:1px solid #cbd5e1;color:#334155;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap;box-shadow:0 1px 2px #0000000d;flex-shrink:0;box-sizing:border-box}.precall-test-sound-btn:hover:not(:disabled){background:#f1f5f9;color:#0f172a;border-color:#94a3b8}.precall-test-sound-btn.is-playing{background:#f5f3ff;border-color:#c4b5fd;color:#7c3aed}.precall-speaker-hint{font-size:12px;color:#64748b;line-height:38px;height:38px;min-height:38px;max-height:38px;display:flex;align-items:center;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex:1;box-sizing:border-box}.precall-sound-active{color:#7c3aed;font-weight:600}.precall-footer-actions{display:flex;align-items:center;justify-content:space-between;padding:16px 26px;background:#f8fafc;border-top:1px solid #f1f5f9;flex-shrink:0}.precall-summary-status{display:flex;align-items:center;gap:16px}.precall-summary-item{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#475569;font-weight:500}.summary-dot{width:8px;height:8px;border-radius:50%}.summary-dot.dot-active{background:#10b981}.summary-dot.dot-off{background:#cbd5e1}.precall-buttons-group{display:flex;align-items:center;gap:12px}.precall-join-primary-btn{display:inline-flex;align-items:center;gap:10px;padding:11px 26px;border-radius:12px;background:#2563eb;color:#fff;border:none;font-size:14px;font-weight:600;cursor:pointer;box-shadow:0 4px 14px #2563eb59;transition:all .15s ease}.precall-join-primary-btn:hover{background:#1d4ed8;box-shadow:0 6px 18px #2563eb73;transform:translateY(-1px)}.precall-join-primary-btn:active{transform:translateY(0)}.precall-mic-warning-hint{margin-top:6px;padding:6px 10px;background:#fffbeb;border:1px solid #fef3c7;border-radius:8px;color:#b45309;font-size:11px;line-height:1.4}.precall-mic-success-hint{margin-top:6px;padding:6px 10px;background:#f0fdf4;border:1px solid #dcfce7;border-radius:8px;color:#15803d;font-size:11px;line-height:1.4}.livekit-start-audio-btn{position:absolute;top:48px;left:50%;transform:translate(-50%);z-index:100;background:#2563eb;color:#fff;padding:8px 18px;font-size:13px;font-weight:600;border-radius:9999px;border:none;cursor:pointer;box-shadow:0 4px 14px #2563eb73;display:flex;align-items:center;gap:6px;transition:transform .15s ease,background .15s ease}.livekit-start-audio-btn:hover{background:#1d4ed8;transform:translate(-50%) scale(1.03)}.precall-btn-text-short{display:none}.precall-btn-text-full{display:inline}@media(max-width:680px){.precall-modal-backdrop{padding:10px}.precall-modal-card{max-height:calc(100dvh - 20px);border-radius:16px}.precall-modal-header{padding:12px 16px 10px}.precall-header-info{gap:10px}.precall-header-badge{width:36px;height:36px;border-radius:10px}.precall-modal-title{font-size:16px}.precall-modal-subtitle{font-size:11px;line-height:1.35}.precall-lesson-banner{padding:8px 16px;gap:8px}.precall-alert-banner{margin:8px 16px 0;padding:8px 12px;font-size:12px;flex-wrap:wrap;gap:8px}.precall-retry-btn{margin-left:auto}.precall-body-grid{grid-template-columns:1fr;gap:14px;padding:14px 16px}.precall-section-card{min-height:auto;padding:14px;gap:10px}.precall-footer-actions{flex-direction:column-reverse;gap:10px;align-items:stretch;padding:12px 16px}.precall-join-primary-btn{width:100%;justify-content:center;padding:11px 18px;font-size:13px}.precall-summary-status{justify-content:center;gap:14px}.precall-summary-item{font-size:12px}}@media(max-width:520px){.precall-btn-text-full{display:none}.precall-btn-text-short{display:inline}.precall-video-controls-overlay{bottom:8px;left:8px;right:8px;gap:6px}.precall-overlay-btn{flex:1;min-width:0;padding:7px 6px;font-size:11px;gap:5px;justify-content:center;border-radius:8px}.precall-overlay-btn span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.precall-overlay-btn svg{width:15px;height:15px;flex-shrink:0}.precall-speaker-test-row{flex-direction:column;align-items:stretch;height:auto;min-height:auto;max-height:none;gap:6px}.precall-test-sound-btn{width:100%;min-width:0;max-width:none;height:36px;min-height:36px}.precall-speaker-hint{height:auto;min-height:auto;max-height:none;line-height:1.35;justify-content:center;text-align:center;white-space:normal}}@media(max-width:440px){.precall-modal-backdrop{padding:6px}.precall-modal-card{max-height:calc(100dvh - 12px);border-radius:14px}.precall-modal-header{padding:10px 12px 8px}.precall-modal-title{font-size:15px}.precall-header-badge{display:none}.precall-lesson-banner{padding:6px 12px;flex-direction:column;align-items:flex-start;gap:4px}.precall-alert-banner{margin:6px 12px 0;padding:7px 10px;font-size:11px}.precall-body-grid{padding:10px 12px;gap:12px}.precall-footer-actions{padding:10px 12px}.precall-video-wrapper{aspect-ratio:16 / 10}.precall-avatar-circle{width:56px;height:56px;font-size:22px}}.materials-panel-container,.assignments-panel-container{padding:24px 32px;max-width:1200px;margin:0 auto;min-height:calc(100vh - 80px);box-sizing:border-box}.panel-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:16px;flex-wrap:wrap}.panel-title{font-size:22px;font-weight:700;color:#0f172a;margin:0 0 6px}.panel-subtitle{font-size:13px;color:#64748b;margin:0}.panel-action-btns{display:flex;align-items:center;gap:10px}.materials-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.material-card{display:flex;align-items:center;gap:14px;padding:16px 18px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000a;transition:all .15s ease}.material-card:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #0000000f;transform:translateY(-1px)}.material-card-icon{width:44px;height:44px;border-radius:10px;background:#eff6ff;color:#2563eb;display:flex;align-items:center;justify-content:center;flex-shrink:0}.material-card-info{flex:1;min-width:0}.material-card-title{font-size:14px;font-weight:600;color:#1e293b;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-card-meta{font-size:12px;color:#64748b;display:flex;align-items:center;gap:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.material-card-meta .dot{color:#cbd5e1}.material-card-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.icon-action-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#f8fafc;color:#64748b;border:1px solid #e2e8f0;cursor:pointer;transition:all .15s ease;text-decoration:none}.icon-action-btn:hover{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}.icon-action-btn.delete:hover{background:#fef2f2;color:#ef4444;border-color:#fecaca}.materials-empty-state{text-align:center;padding:48px 24px;background:#f8fafc;border:2px dashed #e2e8f0;border-radius:16px;margin-top:12px}.materials-empty-state .empty-icon{color:#94a3b8;margin-bottom:14px}.materials-empty-state h3{font-size:16px;font-weight:600;color:#1e293b;margin:0 0 8px}.materials-empty-state p{font-size:13px;color:#64748b;max-width:480px;margin:0 auto;line-height:1.5}.materials-loading{text-align:center;padding:32px;color:#64748b;font-size:14px}.modal-backdrop{position:fixed;inset:0;background:#0f172a8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .15s ease-out}.modal-content{background:#fff;border-radius:16px;box-shadow:0 20px 40px #00000029;width:100%;max-width:540px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:scaleUp .15s ease-out}.modal-content.large{max-width:680px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid #f1f5f9}.modal-header h3{margin:0;font-size:17px;font-weight:700;color:#0f172a}.close-btn{background:none;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .15s}.close-btn:hover{background:#f1f5f9;color:#334155}.modal-body{padding:20px 24px;overflow-y:auto;flex:1}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:16px 24px;background:#f8fafc;border-top:1px solid #f1f5f9}.form-grid{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:13px;font-weight:600;color:#334155}.form-group input[type=text],.form-group input[type=datetime-local],.form-group textarea,.form-group select{width:100%;box-sizing:border-box;padding:10px 14px;border:1px solid #cbd5e1;border-radius:10px;font-size:14px;color:#0f172a;background:#fff;outline:none;transition:border-color .15s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.file-drop-area{border:2px dashed #cbd5e1;border-radius:12px;padding:24px 16px;text-align:center;cursor:pointer;background:#f8fafc;transition:all .15s ease}.file-drop-area:hover,.file-drop-area.is-dragging{border-color:#3b82f6;background:#eff6ff}.file-drop-placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;color:#64748b}.file-drop-placeholder strong{font-size:13px;color:#1e293b}.file-drop-placeholder span{font-size:11px;color:#94a3b8}.file-selected-info{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#fff;border:1px solid #bfdbfe;border-radius:10px;text-align:left}.file-ok-icon{color:#2563eb;flex-shrink:0}.file-selected-info strong{display:block;font-size:13px;color:#0f172a;word-break:break-all}.file-selected-info small{font-size:11px;color:#64748b}.file-clear-btn{margin-left:auto;background:none;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:4px}.file-clear-btn:hover{background:#fee2e2;color:#ef4444}.checkbox-row{margin-top:4px}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:#334155;cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:#2563eb;cursor:pointer}.library-items-list{display:flex;flex-direction:column;gap:10px}.library-item-row{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;transition:all .15s}.library-item-row:hover{background:#fff;border-color:#cbd5e1;box-shadow:0 2px 6px #0000000a}.lib-item-icon{color:#3b82f6;flex-shrink:0}.lib-item-details{flex:1;min-width:0}.lib-item-title{font-size:13px;font-weight:600;color:#1e293b;margin-bottom:2px}.lib-item-meta{font-size:11px;color:#64748b;display:flex;align-items:center;gap:8px}.badge.subject{background:#eff6ff;color:#2563eb;padding:2px 6px;border-radius:4px;font-weight:600}.assignments-subtabs{display:inline-flex;gap:4px;padding:4px;background:#f1f5f9;border-radius:10px;margin-bottom:22px;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;box-sizing:border-box}.assignments-subtabs::-webkit-scrollbar{display:none}.subtab-btn{padding:8px 18px;border-radius:8px;border:none;font-size:13px;font-weight:600;color:#64748b;background:transparent;cursor:pointer;transition:all .15s;white-space:nowrap;flex-shrink:0}.subtab-btn.active{background:#fff;color:#0f172a;box-shadow:0 1px 3px #00000014}.assignments-section-box{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:20px 22px;margin-bottom:20px;box-shadow:0 1px 3px #00000008}.section-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:12px}.section-title-wrap{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.section-heading{font-size:16px;font-weight:700;color:#0f172a;margin:0}.section-tip{font-size:12px;color:#94a3b8}.text-action-btn{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:600;color:#2563eb;background:none;border:none;cursor:pointer;padding:4px 8px;border-radius:6px;transition:background .15s}.text-action-btn:hover{background:#eff6ff}.topics-pills-row{display:flex;flex-wrap:wrap;gap:8px}.topic-pill{padding:5px 12px;background:#f1f5f9;border-radius:9999px;font-size:12px;font-weight:600;color:#334155;border:1px solid #e2e8f0}.topics-empty-notice{font-size:13px;color:#94a3b8;padding:8px 0}.assignments-empty-collapse{padding:16px 18px;background:#f8fafc;border-radius:10px;border:1px dashed #cbd5e1}.empty-collapse-row{display:flex;align-items:center;justify-content:space-between}.empty-collapse-title{font-size:14px;font-weight:600;color:#475569}.empty-collapse-hint{font-size:12px;color:#94a3b8}.assignments-list{display:flex;flex-direction:column;gap:14px}.assignment-card{border:1px solid #e2e8f0;border-radius:12px;padding:16px 18px;background:#fff;box-shadow:0 1px 2px #00000008}.assignment-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.assignment-topic-tag{display:inline-block;font-size:11px;font-weight:600;color:#2563eb;background:#eff6ff;padding:2px 8px;border-radius:4px;margin-bottom:4px}.assignment-card-title{font-size:15px;font-weight:700;color:#0f172a;margin:0 0 6px}.assignment-deadline-tag{font-size:12px;color:#64748b;display:flex;align-items:center;gap:5px}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;white-space:nowrap}.status-badge.assigned{background:#eff6ff;color:#2563eb}.status-badge.submitted{background:#fef3c7;color:#b45309}.status-badge.reviewed{background:#dcfce7;color:#15803d}.status-badge.needs-work{background:#fee2e2;color:#b91c1c}.demo-accounts-box{margin-top:18px;padding:16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px}.demo-box-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:8px;flex-wrap:wrap}.demo-box-title{font-size:13px;font-weight:700;color:#1e293b;display:flex;align-items:center;gap:6px}.demo-count-tag{font-size:11px;font-weight:600;color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;padding:2px 6px;border-radius:6px}.demo-role-segmented{display:inline-flex;background:#e2e8f0;border-radius:6px;padding:2px}.demo-role-pill{padding:3px 8px;font-size:11px;font-weight:600;color:#64748b;border:none;background:transparent;cursor:pointer;border-radius:4px;transition:all .15s}.demo-role-pill.active{background:#fff;color:#0f172a;box-shadow:0 1px 2px #0000000d}.demo-profiles-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;max-height:290px;overflow-y:auto;overflow-x:hidden;padding-right:4px}.demo-profiles-grid.is-tutor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,110px));justify-content:flex-start;gap:8px}.demo-profile-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px 4px;background:#fff;border:1px solid #cbd5e1;border-radius:10px;cursor:pointer;transition:all .15s ease;box-shadow:0 1px 2px #0000000a}.demo-profile-btn:hover{border-color:#3b82f6;background:#eff6ff;transform:translateY(-1px);box-shadow:0 4px 10px #3b82f626}.demo-avatar-circle{width:32px;height:32px;border-radius:50%;background:#3b82f6;color:#fff;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;margin-bottom:6px}.demo-profile-name{font-size:12px;font-weight:600;color:#0f172a;text-align:center;white-space:nowrap}.demo-profile-role-sub{font-size:10px;color:#64748b;margin-top:1px}.video-tiles-grid.single,.video-tiles-grid.count-1{grid-template-columns:1fr;grid-template-rows:1fr}.video-tiles-grid.count-2.split{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.floating-video-card.is-fullscreen .video-tiles-grid.count-2.split,.video-tiles-grid.count-2.grid{grid-template-columns:1fr 1fr;grid-template-rows:1fr}.video-tiles-grid.count-3{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.video-tiles-grid.count-3>:last-child{grid-column:span 2;max-width:65%;justify-self:center;width:100%}.floating-video-card.is-fullscreen .video-tiles-grid.count-3{grid-template-columns:repeat(3,1fr);grid-template-rows:1fr}.floating-video-card.is-fullscreen .video-tiles-grid.count-3>:last-child{grid-column:auto;max-width:none;justify-self:stretch;width:100%}.video-tiles-grid.count-4{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.video-tiles-grid.count-5{grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(2,1fr)}.video-tiles-grid.count-5>:nth-child(1),.video-tiles-grid.count-5>:nth-child(2),.video-tiles-grid.count-5>:nth-child(3){grid-column:span 2}.video-tiles-grid.count-5>:nth-child(4),.video-tiles-grid.count-5>:nth-child(5){grid-column:span 3}.video-tiles-grid.count-6{grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr)}.video-tiles-grid.count-7{grid-template-columns:repeat(12,1fr);grid-template-rows:repeat(2,1fr)}.video-tiles-grid.count-7>:nth-child(-n+4){grid-column:span 3}.video-tiles-grid.count-7>:nth-child(n+5){grid-column:span 4}.video-tiles-grid.count-8{grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,1fr)}.video-tiles-grid.count-9{grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr)}.video-tiles-grid.count-10{grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(2,1fr)}.video-tiles-grid.count-11,.video-tiles-grid.count-12{grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(3,1fr)}.video-tiles-grid.count-13,.video-tiles-grid.count-14,.video-tiles-grid.count-15,.video-tiles-grid.count-16{grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr)}.video-tiles-grid.count-17,.video-tiles-grid.count-18,.video-tiles-grid.count-19,.video-tiles-grid.count-20{grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(4,1fr)}.video-tiles-grid.count-21,.video-tiles-grid.count-22,.video-tiles-grid.count-23,.video-tiles-grid.count-24,.video-tiles-grid.count-25,.video-tiles-grid.count-many{grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(5,1fr)}.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-7,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-8,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-9,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-10,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-11,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-12,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-13,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-14,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-15,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-16,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-17,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-18,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-19,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-20,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-21,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-22,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-23,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-24,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-25,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-many{grid-template-columns:repeat(3,1fr)!important;grid-auto-rows:95px!important;grid-template-rows:none!important;overflow-y:auto!important}.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-7>*,.floating-video-card:not(.is-fullscreen) .video-tiles-grid.count-many>*{grid-column:auto!important}.solo-participants-bar{display:flex;align-items:center;gap:6px;padding:5px 8px;background:#1b1e27;border-bottom:1px solid rgba(255,255,255,.08);overflow-x:auto;scrollbar-width:none;flex-shrink:0}.solo-participants-bar::-webkit-scrollbar{display:none}.solo-bar-hint{font-size:11px;color:#94a3b8;font-weight:500;white-space:nowrap;margin-right:2px}.solo-pill-btn{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:12px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#e2e8f0;font-size:11px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.solo-pill-btn:hover{background:#ffffff24;border-color:#ffffff40}.solo-pill-btn.active{background:#3b82f6;border-color:#60a5fa;color:#fff;font-weight:600;box-shadow:0 1px 4px #3b82f659}.solo-pill-avatar{width:15px;height:15px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;color:#fff}.solo-pill-name{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.solo-pill-muted{color:#f87171;margin-left:2px}.video-tiles-grid.single{display:flex!important;flex-direction:column!important;grid-template-columns:1fr!important;grid-template-rows:1fr!important;flex:1 1 0%!important;height:100%!important;width:100%!important;min-height:0!important;padding:6px!important;box-sizing:border-box!important}.video-tiles-grid.single .solo-tile{flex:1 1 0%!important;height:100%!important;width:100%!important;min-height:0!important;max-height:100%!important;display:flex!important;flex-direction:column!important}.video-tiles-grid.single .solo-tile .tile-video-feed,.video-tiles-grid.single .solo-tile video{flex:1 1 0%!important;width:100%!important;height:100%!important;min-height:0!important;object-fit:cover!important}.video-tiles-grid.single .solo-tile .tile-avatar-placeholder{flex:1 1 0%!important;height:100%!important;width:100%!important}.video-tiles-grid.split{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:1fr 1fr!important;gap:6px!important;flex:1 1 0%!important;height:100%!important;width:100%!important;min-height:0!important;padding:6px!important;box-sizing:border-box!important}.floating-video-card.is-fullscreen .video-tiles-grid.split{grid-template-columns:1fr 1fr!important;grid-template-rows:1fr!important}.video-tiles-grid.split .video-tile{height:100%!important;width:100%!important;min-height:0!important}.split-participants-bar{display:flex;flex-direction:column;gap:4px;padding:4px 8px;background:#0f172af2;border-bottom:1px solid rgba(255,255,255,.08);font-size:11px}.split-slot-row{display:flex;align-items:center;gap:6px;min-width:0}.split-slot-title{color:#94a3b8;font-weight:600;white-space:nowrap;font-size:11px;width:48px;flex-shrink:0}.split-slot-chips{display:flex;align-items:center;gap:4px;overflow-x:auto;min-width:0;scrollbar-width:none}.split-slot-chips::-webkit-scrollbar{display:none}.split-pill-btn{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:9999px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#e2e8f0;cursor:pointer;font-size:11px;white-space:nowrap;transition:all .15s ease;height:22px}.split-pill-btn:hover{background:#ffffff29;border-color:#ffffff40}.split-pill-btn.active{background:#2563eb;border-color:#3b82f6;color:#fff;font-weight:600;box-shadow:0 1px 3px #2563eb66}.split-pill-avatar{width:14px;height:14px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700}.split-pill-name{max-width:70px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-lock-dock-island{margin-top:8px!important;align-self:center!important;width:52px!important;max-width:58px!important;border-radius:16px!important;background:#fff!important;box-shadow:0 4px 24px #0000001a!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:4px!important;box-sizing:border-box!important}.board-lock-tool-btn{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;border-radius:10px!important;display:flex!important;align-items:center!important;justify-content:center!important;border:none!important;background:transparent!important;cursor:pointer!important;transition:all .15s ease!important}.board-lock-tool-btn:hover{background:#f1f5f9!important}.board-lock-tool-btn.is-locked{background:#fee2e2!important;border:1px solid #f87171!important}.board-lock-tool-btn.is-locked:hover{background:#fecaca!important}.lock-board-header-btn{background:#fffbeb!important;border:1px solid #f59e0b!important;color:#b45309!important;font-weight:650!important;box-shadow:0 1px 2px #f59e0b26!important}.lock-board-header-btn:hover{background:#fef3c7!important;border-color:#d97706!important;color:#92400e!important;box-shadow:0 2px 5px #f59e0b40!important}.lock-board-header-btn.is-locked-danger{background:#fee2e2!important;border:1.5px solid #ef4444!important;color:#b91c1c!important;font-weight:700!important;box-shadow:0 0 0 2px #ef444440!important}.lock-board-header-btn.is-locked-danger:hover{background:#fecaca!important;border-color:#dc2626!important;color:#991b1b!important}.board-locked-student-banner{position:absolute;top:14px;left:50%;transform:translate(-50%);z-index:20;display:flex;align-items:center;gap:8px;padding:8px 18px;background:#dc2626f2;color:#fff;border-radius:9999px;font-size:13px;font-weight:600;box-shadow:0 4px 16px #dc262659;pointer-events:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.canvas-holder.board-locked-readonly .excalidraw .shapes-section,.canvas-holder.board-locked-readonly .excalidraw .App-menu_top,.canvas-holder.board-locked-readonly .excalidraw .layer-ui__wrapper__footer-left,.canvas-holder.board-locked-readonly .excalidraw .Island.App-toolbar,.canvas-holder.board-locked-readonly .excalidraw .context-menu,.canvas-holder.board-locked-readonly .excalidraw .App-toolbar-container{display:none!important;pointer-events:none!important}.lesson-waiting-room-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#0f172aa6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:20px}.waiting-room-card{background:#fff;border-radius:20px;max-width:460px;width:100%;padding:36px 32px;text-align:center;box-shadow:0 20px 48px #00000038;display:flex;flex-direction:column;align-items:center}.waiting-room-icon-wrap{position:relative;width:72px;height:72px;border-radius:50%;background:#eff6ff;color:#2563eb;display:flex;align-items:center;justify-content:center;margin-bottom:20px}.waiting-pulse-ring{position:absolute;inset:-6px;border-radius:50%;border:2px solid #3b82f6;opacity:.6;animation:waiting-pulse 2s cubic-bezier(.24,0,.38,1) infinite}@keyframes waiting-pulse{0%{transform:scale(.95);opacity:.8}50%{transform:scale(1.15);opacity:.2}to{transform:scale(.95);opacity:.8}}.waiting-room-card h2{font-size:22px;font-weight:700;color:#0f172a;margin:0 0 10px}.waiting-lesson-info{display:flex;flex-direction:column;gap:4px;padding:10px 16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:16px;width:100%}.waiting-lesson-info strong{color:#1e293b;font-size:15px}.waiting-lesson-info span{color:#64748b;font-size:13px}.waiting-room-text{font-size:14px;color:#475569;line-height:1.5;margin:0 0 24px}.waiting-spinner-row{display:flex;align-items:center;gap:10px;color:#2563eb;font-size:13px;font-weight:500;margin-bottom:24px}.waiting-spinner{width:18px;height:18px;border:2px solid #bfdbfe;border-top-color:#2563eb;border-radius:50%;animation:spin .8s linear infinite}.waiting-actions{display:flex;gap:12px;width:100%}.waiting-actions .button{flex:1}.header-students-dropdown-wrap{position:relative}.students-menu-dropdown{position:absolute;top:calc(100% + 6px);left:0;min-width:230px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 12px 28px #00000026;z-index:100;overflow:hidden;animation:fadeIn .15s ease-out}.students-menu-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#f8fafc;border-bottom:1px solid #e2e8f0;font-size:12px;font-weight:600;color:#475569}.students-menu-list{padding:6px;max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.students-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border-radius:8px;border:none;background:transparent;cursor:pointer;text-align:left;transition:background .15s ease}.students-menu-item:hover{background:#eff6ff}.student-avatar-badge{width:28px;height:28px;border-radius:50%;background:#dbeafe;color:#1d4ed8;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.student-info{display:flex;flex-direction:column;min-width:0}.student-info strong{font-size:13px;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-info small{font-size:11px;color:#64748b}.header-timer-badge{background:#f1f5f9;color:#334155;border:1px solid #cbd5e1;font-variant-numeric:tabular-nums;font-weight:600}.header-timer-badge.is-running{background:#fef3c7;color:#92400e;border-color:#f59e0b;animation:pulse-border 2s infinite}.header-timer-badge.is-finished{background:#fee2e2;color:#b91c1c;border-color:#ef4444}.header-timer-btn.is-running{background:#fef3c7!important;color:#92400e!important;border-color:#f59e0b!important;font-weight:700!important}.board-popover-backdrop{position:fixed;inset:0;z-index:999;background:transparent}.board-locked-interaction-blocker{position:absolute;inset:0;z-index:999;cursor:not-allowed;pointer-events:all!important;background:#ffffff05;display:flex;justify-content:center;align-items:flex-start;padding-top:14px}.room-control-btn:disabled{cursor:not-allowed;opacity:.55}.video-moderation-error{padding:6px 10px;color:#991b1b;background:#fef2f2;font-size:12px}.lesson-ended-modal-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#0f172a8c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:fadeIn .2s ease-out}.lesson-ended-modal-card{background:#fff;border-radius:20px;max-width:440px;width:90%;padding:32px 28px;text-align:center;box-shadow:0 20px 48px #0f172a38;display:flex;flex-direction:column;align-items:center;animation:scaleUp .2s cubic-bezier(.16,1,.3,1)}.lesson-ended-icon-wrap{width:68px;height:68px;border-radius:50%;background:#eff6ff;display:flex;align-items:center;justify-content:center;margin-bottom:18px}.lesson-ended-modal-card h2{font-size:22px;font-weight:700;color:#0f172a;margin:0 0 10px}.lesson-ended-text{font-size:14px;color:#64748b;line-height:1.5;margin:0 0 24px}.lesson-ended-actions{display:flex;gap:12px;width:100%}.lesson-ended-actions .button{flex:1;justify-content:center;padding:10px 16px;font-size:14px;border-radius:10px}.tab-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:6px;border-radius:999px;font-size:10px;font-weight:750;line-height:1;background:#fee2e2;color:#b91c1c;vertical-align:middle;flex-shrink:0}@media(max-width:560px){.tab-count-badge{margin-left:4px;min-width:16px;height:16px;padding:0 4px;font-size:9px}}.segmented button.active .tab-count-badge{background:#dc2626;color:#fff}.tab-btn .tab-count-badge{background:#f1f5f9;color:#475569}.tab-btn.active .tab-count-badge{background:#ffffff40;color:#fff}.room-past-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:8px;background:#f1f5f9;color:#475569;font-size:12px;font-weight:600;border:1px solid #e2e8f0}.security-icon-circle{display:grid;place-items:center;width:76px;height:76px;margin:10px auto 16px;border-radius:24px;background:var(--primary-soft);color:var(--primary);transition:transform .2s ease}.security-icon-circle.is-demo{background:#fef3c7;color:#b45309}.security-summary-badge{display:inline-flex;align-items:center;margin:4px auto 14px;padding:5px 12px;border-radius:999px;font-size:11px;font-weight:700;background:#edf9f5;color:#2b715d}.security-summary-badge.demo{background:#fff4cb;color:#805e00}.security-summary-hint{color:var(--muted);font-size:11px;line-height:1.5;margin:0}.security-demo-banner{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;border-radius:12px;background:#fffbeb;border:1px solid #fde68a;color:#92400e;margin-bottom:22px}.security-demo-banner .demo-banner-icon{flex-shrink:0;color:#b45309;margin-top:2px}.security-demo-banner .demo-banner-content strong{display:block;font-size:13px;font-weight:700;margin-bottom:4px}.security-demo-banner .demo-banner-content p{margin:0;font-size:12px;line-height:1.5;color:#92400e}.disabled-fields input{opacity:.65;cursor:not-allowed;background:#f1f5f9}.profile-fields.single-column{grid-template-columns:1fr;max-width:480px}.password-input-wrap{position:relative;display:flex;align-items:center}.password-input-wrap input{padding-right:42px;font-size:14px}.password-toggle-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;transition:color .15s ease,background-color .15s ease}.password-toggle-btn:hover{color:var(--primary);background:#0000000a}.password-hint{display:block;margin-top:5px;font-size:11px;color:#64748b}.form-error-banner{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:10px;background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;font-size:13px;margin-bottom:18px}.form-success-banner{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:10px;background:#f0fdf4;border:1px solid #bbf7d0;color:#15803d;font-size:13px;font-weight:600;margin-bottom:18px}.profile-form-footer{margin-top:24px;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:flex-start}.schedule-board.day .calendar-body{height:auto;min-height:420px}.schedule-board.day .calendar-event{max-width:560px}.toolbar-left-group{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.schedule-night-toggle{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#475467;font-size:12px;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;box-shadow:0 1px 2px #1018280a;transition:all .15s ease}.schedule-night-toggle:hover{background:#f8fafc;border-color:#cbd5e1}.schedule-night-toggle input[type=checkbox]{width:15px;height:15px;accent-color:var(--primary);cursor:pointer;margin:0}.schedule-hidden-hint{display:flex;align-items:center;gap:8px;margin-top:12px;padding:10px 14px;border-radius:10px;background:#fffbeb;border:1px solid #fde68a;color:#92400e;font-size:12px;font-weight:600}.schedule-legend{display:flex;align-items:center;flex-wrap:wrap;gap:10px 22px;margin-bottom:18px;padding:10px 16px;background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.schedule-legend-item{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:#344054}.legend-indicator{width:11px;height:11px;border-radius:3px;flex-shrink:0}.legend-indicator.individual{background:#3b50df;box-shadow:0 0 0 2px #3b50df33}.legend-indicator.trial{background:#059669;box-shadow:0 0 0 2px #05966933}.legend-indicator.group{background:#7c3aed;box-shadow:0 0 0 2.5px #7c3aed4d}.legend-indicator.closed{background:#64748b;box-shadow:0 0 0 2px #64748b33}.calendar-event{position:absolute;left:3px;right:3px;padding:5px 7px;border-radius:8px;display:flex!important;flex-direction:column;justify-content:flex-start;gap:2px;overflow:hidden;box-sizing:border-box;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease;z-index:2}.calendar-event:hover{transform:translateY(-1px);box-shadow:0 8px 18px #0f172a1f;z-index:5}.calendar-event small{display:block;font-size:10px;font-weight:600;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.calendar-event strong{display:block;font-size:11.5px;font-weight:750;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.calendar-event span{display:block;font-size:11px;font-weight:700;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.calendar-event.individual{color:#1e3a8a;background:#f0f4ff;border:1px solid #c7d7fe;border-left:3.5px solid #3b50df}.calendar-event.individual small{color:#4b63b6}.calendar-event.individual strong{color:#172554}.calendar-event.individual span{color:#1e3a8a;font-weight:700}.calendar-event.trial{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;border-left:3.5px solid #059669}.calendar-event.trial small{color:#047857}.calendar-event.trial strong{color:#064e3b}.calendar-event.trial span{color:#047857;font-weight:700}.calendar-event.group,.calendar-event.violet{color:#4c1d95;background:#ede9fe;border:1.5px solid #c4b5fd;border-left:5px solid #7c3aed;box-shadow:0 4px 14px #7c3aed24}.calendar-event.group:hover,.calendar-event.violet:hover{background:#e9d5ff;border-color:#a855f7;box-shadow:0 8px 20px #7c3aed38}.calendar-event.group small,.calendar-event.violet small{color:#6d28d9;font-weight:700}.calendar-event.group strong,.calendar-event.violet strong{color:#3b0764;font-weight:800;font-size:11.5px}.calendar-event.group span,.calendar-event.violet span{color:#5b21b6;font-weight:650}.calendar-event.closed{color:#334155;background:repeating-linear-gradient(-45deg,#f8fafc,#f8fafc 8px,#f1f5f9 8px 16px);border:1px dashed #cbd5e1;border-left:3.5px solid #64748b;cursor:default}.calendar-event.closed:hover{transform:none;box-shadow:0 4px 10px #64748b14}.calendar-event.closed small{color:#64748b;font-weight:600}.calendar-event.closed strong{color:#1e293b}.calendar-event.closed span{color:#475569}.month-day>div{display:flex;flex-direction:column;gap:3px}.month-day a,.month-day .month-event-item{display:flex;flex-direction:column;gap:1px;padding:3px 6px;border-radius:6px;font-size:10.5px;text-decoration:none;transition:transform .12s ease,box-shadow .12s ease;overflow:hidden;box-shadow:0 1px 3px #0f172a0d;box-sizing:border-box;width:100%;flex-shrink:0}.month-day a:hover,.month-day .month-event-item:hover{transform:translateY(-1px);box-shadow:0 4px 10px #0f172a1a}.month-event-header{display:flex;align-items:center;justify-content:space-between;gap:4px;font-size:9.5px;line-height:1.15}.month-event-time{font-size:9.5px;font-weight:700;opacity:.85}.month-event-title{font-size:11px;font-weight:750;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.month-event-counterparty{font-size:10px;font-weight:550;line-height:1.15;opacity:.9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.month-day a.individual,.month-day .month-event-item.individual{color:#1e3a8a;background:#f0f6ff;border:1px solid #dbeafe;border-left:3.5px solid #2563eb}.month-day a.individual:hover,.month-day .month-event-item.individual:hover{background:#e0edff;border-color:#bfdbfe}.month-day a.individual .month-event-time{color:#2563eb}.month-day a.individual .month-event-title{color:#1e3a8a}.month-day a.individual .month-event-counterparty{color:#3b50df}.month-day a.trial,.month-day .month-event-item.trial{color:#064e3b;background:#ecfdf5;border:1px solid #a7f3d0;border-left:3.5px solid #059669}.month-day a.trial:hover,.month-day .month-event-item.trial:hover{background:#d1fae5}.month-day a.trial .month-event-time{color:#059669}.month-day a.trial .month-event-title{color:#064e3b}.month-day a.trial .month-event-counterparty{color:#047857}.month-day a.group,.month-day .month-event-item.group{color:#3b0764;background:#ede9fe;border:1.5px solid #c4b5fd;border-left:4.5px solid #7c3aed;box-shadow:0 2px 6px #7c3aed14}.month-day a.group:hover,.month-day .month-event-item.group:hover{background:#e9d5ff;border-color:#a855f7}.month-day a.group .month-event-time{color:#6d28d9}.month-day a.group .month-event-title{color:#3b0764}.month-day a.group .month-event-counterparty{color:#5b21b6}.month-day a.closed,.month-day .month-event-item.closed{color:#334155;background:repeating-linear-gradient(-45deg,#f8fafc,#f8fafc 8px,#f1f5f9 8px 16px);border:1px dashed #cbd5e1;border-left:3.5px solid #64748b;cursor:default}.month-day a.closed:hover,.month-day .month-event-item.closed:hover{transform:none;box-shadow:0 2px 6px #64748b1f}.month-day a.closed .month-event-time{color:#64748b}.month-day a.closed .month-event-title{color:#1e293b}.month-day a.closed .month-event-counterparty{color:#475569}.month-more-wrap{position:relative;margin-top:auto;padding-top:2px;display:flex;align-items:center}.month-more-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px 7px;border-radius:6px;font-size:10px;font-weight:700;color:var(--primary);background:var(--primary-soft);border:1px solid rgba(42,66,169,.15);cursor:pointer;line-height:1.3;transition:all .12s ease;-webkit-user-select:none;user-select:none;font-family:inherit}.month-more-badge:hover,.month-more-badge.active{background:var(--primary);color:#fff;border-color:var(--primary)}.month-extra-floating{display:flex;position:absolute;top:calc(100% + 3px);left:-2px;right:auto;width:max(calc(100% + 4px),210px);z-index:100000;background:#fff;border:1.5px solid #c7d2fe;border-radius:10px;padding:6px 6px 7px;box-shadow:0 20px 42px #0f172a42,0 6px 16px #0f172a1f;flex-direction:column;gap:4px;box-sizing:border-box;animation:monthExtraFadeIn .14s ease-out}.month-more-wrap.align-right .month-extra-floating{left:auto;right:-2px}.month-more-wrap.open-up .month-extra-floating{top:auto;bottom:calc(100% + 3px);animation:monthExtraFadeInUp .14s ease-out}@keyframes monthExtraFadeIn{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@keyframes monthExtraFadeInUp{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.month-extra-floating-header{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:10px;font-weight:750;color:var(--primary);padding:1px 4px 4px;border-bottom:1px dashed #e2e8f0;text-transform:uppercase;letter-spacing:.03em}.month-extra-floating-close{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;padding:0;border:0;border-radius:4px;background:transparent;color:var(--muted);font-size:12px;cursor:pointer;transition:all .1s ease;line-height:1}.month-extra-floating-close:hover{background:#fee2e2;color:#dc2626}.month-extra-floating-list{display:flex;flex-direction:column;gap:3px;max-height:220px;overflow-y:auto;padding-right:2px}.subject-dot.individual{background:var(--primary)}.subject-dot.trial{background:#059669}.subject-dot.group{background:#7c3aed}.subject-dot.closed{background:#64748b}.lesson-tag-trial{display:inline-flex;align-items:center;gap:4px;padding:1px 6px;border-radius:6px;color:#065f46;background:#ecfdf5;font-size:11px;font-weight:700}.lesson-tag-group{display:inline-flex;align-items:center;gap:4px;padding:1px 6px;border-radius:6px;color:#5b21b6;background:#ede9fe;font-size:11px;font-weight:700}.meleto-assignments-page{padding:8px 0 40px}.assignments-header-row{margin-bottom:20px}.assignments-title{font-size:28px;font-weight:800;letter-spacing:-.03em;color:var(--ink);margin:0}.meleto-toolbar-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}.meleto-quick-filters{display:flex;align-items:center;gap:12px;flex-wrap:wrap;flex:1}.meleto-input-field{position:relative;display:flex;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:0 14px;height:42px;box-shadow:0 1px 3px #0f172a0a;transition:all .15s ease}.meleto-input-field:focus-within{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1f}.meleto-input-field input{border:none;outline:none;background:transparent;font-size:13.5px;color:var(--ink);width:100%}.meleto-input-field input::placeholder{color:#94a3b8}.meleto-input-field.student-search-field{min-width:240px;max-width:320px;gap:8px}.meleto-input-field.student-search-field .field-icon{color:#94a3b8;flex-shrink:0}.field-clear-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:2px;display:flex;align-items:center;justify-content:center;border-radius:50%}.field-clear-btn:hover{color:#475569}.meleto-input-field.date-field{width:175px;justify-content:space-between}.meleto-input-field.date-field .calendar-icon{color:#64748b;flex-shrink:0;pointer-events:none}.meleto-filter-toggle-btn{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 18px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;font-size:13.5px;font-weight:600;color:#334155;cursor:pointer;box-shadow:0 1px 3px #0f172a0a;transition:all .15s ease}.meleto-filter-toggle-btn:hover{background:#f8fafc;border-color:#cbd5e1}.meleto-filter-toggle-btn.active{background:#f5f3ff;border-color:#c4b5fd;color:#7c3aed}.filter-badge-counter{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#7c3aed;color:#fff;font-size:11px;font-weight:700}.meleto-filter-panel{background:#f4f5fb;border-radius:18px;padding:20px 24px;margin-bottom:24px;box-shadow:inset 0 1px 2px #0f172a08}.meleto-filter-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media(max-width:1024px){.meleto-filter-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.meleto-filter-grid{grid-template-columns:1fr}}.filter-select-wrap{display:flex;flex-direction:column;gap:6px}.filter-select-wrap label{font-size:12px;font-weight:600;color:#64748b}.filter-select-wrap select,.filter-select-wrap input{height:42px;padding:0 14px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;font-size:13.5px;color:var(--ink);outline:none;transition:border-color .15s ease}.filter-select-wrap select:focus,.filter-select-wrap input:focus{border-color:#7c3aed}.filter-panel-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-top:18px}.filter-reset-btn{display:inline-flex;align-items:center;gap:8px;background:transparent;border:none;color:#64748b;font-size:13.5px;font-weight:600;cursor:pointer;transition:color .15s ease}.filter-reset-btn:hover{color:#ef4444}.reset-count-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;background:#8b5cf6;color:#fff;font-size:10px;font-weight:700}.filter-apply-btn{height:40px;padding:0 24px;background:#7c3aed;color:#fff;border:none;border-radius:10px;font-size:13.5px;font-weight:600;cursor:pointer;transition:background .15s ease}.filter-apply-btn:hover{background:#6d28d9}.meleto-kanban-board{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:start}@media(max-width:960px){.meleto-kanban-board{grid-template-columns:1fr}}.kanban-column{background:#f4f5fa;border-radius:18px;padding:18px 16px;min-height:480px;display:flex;flex-direction:column}.kanban-column-header{margin-bottom:14px;padding:0 4px}.kanban-column-title{font-size:14px;font-weight:700;color:#334155;margin:0;display:flex;align-items:center;gap:6px}.kanban-column-count{font-size:13px;font-weight:600;color:#64748b}.kanban-column-body{display:flex;flex-direction:column;gap:12px;flex:1}.kanban-empty-placeholder{display:flex;align-items:center;justify-content:flex-start;padding:18px 12px;color:#94a3b8;font-size:13.5px}.kanban-empty-placeholder p{margin:0}.meleto-kanban-card{background:#fff;border-radius:14px;padding:16px;box-shadow:0 2px 8px #0f172a0d;border:1px solid rgba(226,232,240,.8);cursor:pointer;transition:all .18s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;gap:8px}.meleto-kanban-card:hover{transform:translateY(-2px);box-shadow:0 8px 18px #0f172a17;border-color:#cbd5e1}.card-top-row{display:flex;align-items:center;justify-content:space-between}.card-deadline{font-size:12px;font-weight:600;color:#ef4444}.card-deadline:not(.overdue){color:#e11d48}.card-menu-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:2px;border-radius:6px;display:flex;align-items:center;justify-content:center}.card-menu-btn:hover{background:#f1f5f9;color:#475569}.card-tag-row{display:flex;align-items:center;justify-content:space-between}.card-org-tag{font-size:11px;font-weight:600;color:#94a3b8;letter-spacing:-.01em}.card-icon-tags{display:flex;align-items:center;gap:6px}.card-title{font-size:15px;font-weight:750;color:#0f172a;margin:2px 0 0;line-height:1.35}.card-topic-text{font-size:12px;color:#64748b;line-height:1.4}.card-user-row{display:flex;align-items:center;gap:10px;margin-top:10px;padding-top:10px;border-top:1px solid #f1f5f9}.user-avatar-circle{width:30px;height:30px;border-radius:50%;background:#22c55e;color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;flex-shrink:0}.user-text-info{display:flex;flex-direction:column}.user-role-label{font-size:10.5px;color:#94a3b8;line-height:1.1}.user-name{font-size:12.5px;font-weight:600;color:#6366f1;line-height:1.2}.boards-page-container{padding:8px 0 40px}.boards-toolbar-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0 20px;flex-wrap:wrap}.boards-toolbar-heading h2{font-size:18px;font-weight:750;color:var(--ink);margin:0;display:flex;align-items:center;gap:6px}.boards-toolbar-heading small{font-size:13px;font-weight:500;color:#94a3b8}.boards-toolbar-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.boards-search{width:280px}.sort-dropdown-wrap{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:0 12px;height:40px;color:#64748b}.sort-select{border:none;outline:none;background:transparent;font-size:13px;font-weight:600;color:#334155;cursor:pointer}.boards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}@media(max-width:1200px){.boards-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:860px){.boards-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.boards-grid{grid-template-columns:1fr}}.board-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden;box-shadow:0 2px 6px #0f172a0a;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;text-decoration:none;color:inherit}.board-card:hover{transform:translateY(-3px);box-shadow:0 12px 24px #0f172a14;border-color:#cbd5e1}.board-thumbnail-canvas{position:relative;height:130px;background:#fff;border-bottom:1px solid #eef2f6;display:flex;align-items:center;justify-content:center;overflow:hidden}.board-grid-pattern{position:absolute;inset:0;background-image:radial-gradient(#e2e8f0 1px,transparent 1px);background-size:14px 14px;opacity:.7}.board-preview-sketch{position:relative;z-index:1;width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:10px}.board-svg-sketch{width:80%;height:80%}.board-subject-badge{position:absolute;top:10px;right:10px;z-index:2;font-size:10.5px;font-weight:700;padding:3px 8px;border-radius:999px;background:#ffffffe6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(226,232,240,.9);color:#3b50df}.board-thumbnail-canvas.theme-math .board-subject-badge{color:#3b50df}.board-thumbnail-canvas.theme-phys .board-subject-badge{color:#059669}.board-thumbnail-canvas.theme-chem .board-subject-badge{color:#7c3aed}.board-card-body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:12px;flex:1}.board-card-main{display:flex;flex-direction:column;gap:4px}.board-title{font-size:15px;font-weight:750;color:var(--ink);margin:0;line-height:1.3}.board-last-edited{display:flex;align-items:center;gap:5px;font-size:11.5px;color:#94a3b8}.board-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:10px;border-top:1px solid #f1f5f9}.board-counterpart-chip{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:#475569}.counterpart-avatar-circle{width:24px;height:24px;border-radius:50%;background:#f1f5f9;color:#64748b;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:750}.board-open-btn{width:28px;height:28px;border-radius:8px;background:#f8fafc;color:#64748b;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.board-card:hover .board-open-btn{background:#3b50df;color:#fff}.status.attended{color:#065f46;background:#d1fae5;border:1px solid #a7f3d0;font-weight:800}.status.absent{color:#991b1b;background:#fee2e2;border:1px solid #fecaca;font-weight:800}.status.conducted{color:#374151;background:#f3f4f6;border:1px solid #e5e7eb;font-weight:700}.directions-filter-pills-row{display:flex;align-items:center;gap:8px;margin:14px 0 18px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;padding:2px 2px 6px;width:100%;box-sizing:border-box}.directions-filter-pills-row::-webkit-scrollbar{display:none}.directions-filter-label{font-size:12.5px;font-weight:700;color:#64748b;margin-right:4px;white-space:nowrap;flex-shrink:0}.direction-pill-btn{display:inline-flex;align-items:center;padding:6px 14px;border-radius:999px;border:1px solid #e2e8f0;background:#fff;color:#475569;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap;flex-shrink:0}.direction-pill-btn:hover{border-color:#cbd5e1;color:#1e293b;background:#f8fafc}.direction-pill-btn.active{background:#3b50df;border-color:#3b50df;color:#fff;box-shadow:0 2px 6px #3b50df40}.badge.subject-badge{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe;font-size:10px;font-weight:700;padding:2px 7px;border-radius:6px}.calendar-event.closed.clickable{cursor:pointer;transition:all .15s ease}.calendar-event.closed.clickable:hover{transform:translateY(-2px);border-color:#94a3b8;box-shadow:0 6px 14px #64748b2e}.month-day .month-event-item.closed.clickable{cursor:pointer;transition:all .12s ease}.month-day .month-event-item.closed.clickable:hover{transform:translateY(-1px);border-color:#94a3b8;box-shadow:0 2px 6px #64748b24}.global-toast-container{position:fixed;top:20px;right:24px;z-index:99999;display:flex;flex-direction:column;gap:10px;max-width:440px;width:calc(100% - 48px);pointer-events:none}@media(max-width:640px){.global-toast-container{top:12px;left:16px;right:16px;width:auto;max-width:100%}}.global-toast-item{pointer-events:auto;display:flex;align-items:flex-start;gap:12px;padding:13px 16px;border-radius:14px;font-size:13px;font-weight:550;line-height:1.45;box-shadow:0 12px 32px #0f172a1f,0 4px 10px #0f172a0f;animation:toastSlideIn .24s cubic-bezier(.16,1,.3,1)}.global-toast-item.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.global-toast-item.success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.global-toast-item.info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.toast-icon-box{display:grid;place-items:center;flex-shrink:0;margin-top:1px}.global-toast-item.error .toast-icon-box{color:#dc2626}.global-toast-item.success .toast-icon-box{color:#16a34a}.global-toast-item.info .toast-icon-box{color:#2563eb}.toast-content-text{flex:1;word-break:break-word}.toast-close-btn{border:none;background:transparent;cursor:pointer;padding:2px;border-radius:6px;color:currentColor;opacity:.65;transition:opacity .15s ease,background .15s ease;display:grid;place-items:center}.toast-close-btn:hover{opacity:1;background:#0000000f}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(-12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.confirm-modal-backdrop{z-index:10050!important}.confirm-modal-card{max-width:440px!important;width:92%!important;border-radius:18px!important;box-shadow:0 24px 50px #0f172a38!important;overflow:hidden;background:#fff;border:1px solid var(--line)}.confirm-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 14px;border-bottom:1px solid var(--line)}.confirm-modal-title-row{display:flex;align-items:center;gap:12px}.confirm-icon-badge{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;flex-shrink:0}.confirm-icon-badge.danger{background:#fee2e2;color:#dc2626}.confirm-icon-badge.info{background:#eff6ff;color:#2563eb}.confirm-title{margin:0;font-size:17px;font-weight:750;color:var(--text)}.confirm-modal-body{padding:18px 22px}.confirm-message{margin:0;font-size:14px;line-height:1.5;color:#475569}.confirm-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:14px 22px 18px;border-top:1px solid var(--line);background:#fafbfe}.confirm-btn-danger{background:#dc2626!important;color:#fff!important;border-color:#b91c1c!important;box-shadow:0 4px 14px #dc262640!important}.confirm-btn-danger:hover:not(:disabled){background:#b91c1c!important}.calendar-event .calendar-event-program{display:block;font-size:10px;font-weight:650;line-height:1.2;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.calendar-event.individual .calendar-event-program{color:#2b4ec2}.calendar-event.trial .calendar-event-program{color:#047857}.calendar-event.group .calendar-event-program,.calendar-event.violet .calendar-event-program{color:#6d28d9}.month-event-program{font-size:9.5px;font-weight:650;color:#4b5563;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.month-event-item.violet .month-event-program{color:#7c3aed}.month-event-item.trial .month-event-program{color:#047857}.lesson-program-badge{display:inline-flex;align-items:center;padding:2px 8px;font-size:10.5px;font-weight:700;border-radius:6px;background:#eff4ff;color:#2b4ec2;border:1px solid #d4e0fc;white-space:nowrap;line-height:1.25}.lesson-card.group .lesson-program-badge{background:#f5f0ff;color:#6d28d9;border-color:#ddd0fc}.lesson-card.trial .lesson-program-badge{background:#ecfdf5;color:#047857;border-color:#a7f3d0}.lesson-tag-program{display:inline-flex;align-items:center;gap:4px;color:#4b5563;font-size:11.5px;font-weight:600}.pastel-tag-program{display:inline-flex;align-items:center;padding:3px 9px;font-size:11.5px;font-weight:650;border-radius:999px;background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.header-shapes-wrap{position:relative;display:inline-flex}.all-shapes-popover{position:absolute;top:calc(100% + 8px);left:0;width:480px;max-width:min(480px,calc(100vw - 24px));background:#fff;border:1px solid #cbd5e1;border-radius:16px;box-shadow:0 16px 42px #0f172a2e;padding:16px;z-index:1000;animation:fadeInDown .15s ease-out}.all-shapes-tabs{display:flex;gap:4px;padding:3px;background:#f1f5f9;border-radius:10px;margin-bottom:12px;overflow-x:auto}.all-shapes-tab-btn{border:none;background:transparent;padding:6px 10px;border-radius:8px;font-size:11.5px;font-weight:650;color:#64748b;cursor:pointer;white-space:nowrap;transition:all .15s ease}.all-shapes-tab-btn.is-active{background:#fff;color:#2563eb;box-shadow:0 1px 3px #00000014}.all-shapes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-height:380px;overflow-y:auto;padding-right:2px}.all-shapes-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px 8px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;cursor:pointer;transition:all .15s ease;text-align:center;gap:6px}.all-shapes-card:hover{border-color:#3b82f6;background:#eff6ff;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f61f}.all-shapes-card-icon{width:38px;height:38px;display:grid;place-items:center;color:#1e293b}.all-shapes-card:hover .all-shapes-card-icon{color:#2563eb}.all-shapes-card-title{font-size:11.5px;font-weight:600;color:#334155;line-height:1.25}.all-shapes-card-type-tag{font-size:9.5px;color:#94a3b8;font-weight:500}.board-active-tool-banner{position:absolute;top:14px;left:50%;transform:translate(-50%);z-index:55;display:flex;align-items:center;gap:8px;background:#fffffffa;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:6px 14px;border-radius:9999px;border:1px solid #bfdbfe;box-shadow:0 8px 24px #2563eb24,0 2px 6px #0000000a;font-size:13px;color:#1e293b;animation:fadeInDown .15s ease-out}.board-tool-title{display:flex;align-items:center;gap:6px;font-weight:700;color:#1e40af;margin-right:4px}.board-tool-pill-btn{border:1px solid #e2e8f0;background:#f8fafc;color:#334155;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap}.board-tool-pill-btn:hover{background:#eff6ff;border-color:#93c5fd;color:#2563eb}.board-tool-pill-btn.is-active{background:#2563eb;color:#fff;border-color:#1d4ed8}.board-tool-draw-overlay{position:absolute;inset:0;z-index:45;cursor:crosshair;pointer-events:auto}.excalidraw .Island.App-toolbar,.excalidraw .layer-ui__wrapper__top-right,.excalidraw .layer-ui__wrapper__footer-left{z-index:50!important}.board-tool-close-btn{border:none;background:transparent;color:#94a3b8;cursor:pointer;padding:2px;border-radius:50%;display:grid;place-items:center;margin-left:6px;transition:all .15s ease}.board-tool-close-btn:hover{background:#fee2e2;color:#dc2626}.lines-category-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#64748b;margin-bottom:6px;padding-left:4px}.lines-options-list{display:flex;flex-direction:column;gap:4px}.lines-option-item{display:flex;align-items:center;gap:12px;padding:8px 10px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;cursor:pointer;transition:all .15s ease;text-align:left}.lines-option-item:hover{border-color:#3b82f6;background:#eff6ff;transform:translate(2px)}.lines-option-item.is-active{border-color:#2563eb;background:#eff6ff;box-shadow:0 0 0 1px #2563eb}.lines-option-preview{font-family:monospace;font-size:13px;font-weight:700;color:#2563eb;width:70px;flex-shrink:0;text-align:center}.lines-option-info{display:flex;flex-direction:column;gap:1px}.lines-option-info strong{font-size:12.5px;color:#1e293b}.lines-option-info small{font-size:11px;color:#64748b}.whiteboard-calculator-window{position:fixed;z-index:70;width:290px;background:#fff;border:1px solid #cbd5e1;border-radius:18px;box-shadow:0 16px 48px #0f172a33,0 2px 6px #0000000d;display:flex;flex-direction:column;overflow:hidden;-webkit-user-select:none;user-select:none;animation:fadeIn .15s ease-out}.calc-header-drag{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#f8fafc;border-bottom:1px solid #e2e8f0;cursor:grab}.calc-header-drag:active{cursor:grabbing}.calc-title{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:#1e293b}.calc-header-actions{display:flex;align-items:center;gap:6px}.calc-mode-pill{border:1px solid #cbd5e1;background:#fff;color:#64748b;font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px;cursor:pointer;transition:all .15s ease}.calc-mode-pill.is-active{background:#2563eb;color:#fff;border-color:#1d4ed8}.calc-close-btn{border:none;background:transparent;color:#94a3b8;cursor:pointer;padding:4px;border-radius:6px;display:grid;place-items:center;transition:all .15s ease}.calc-close-btn:hover{background:#fee2e2;color:#dc2626}.calc-display-wrap{padding:12px 14px;background:#0f172a;color:#fff;display:flex;flex-direction:column;align-items:flex-end;gap:4px}.calc-history{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;color:#94a3b8;word-break:break-all;text-align:right;min-height:16px}.calc-result{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:24px;font-weight:700;color:#38bdf8;word-break:break-all;text-align:right;line-height:1.2}.calc-scientific-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:8px 10px 4px;background:#f1f5f9;border-bottom:1px solid #e2e8f0}.calc-keypad-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;padding:10px;background:#fff}.calc-btn{height:38px;border-radius:10px;border:1px solid #e2e8f0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:14px;font-weight:600;cursor:pointer;display:grid;place-items:center;transition:all .12s ease}.calc-btn.num{background:#fff;color:#0f172a}.calc-btn.num:hover{background:#f1f5f9;border-color:#cbd5e1}.calc-btn.zero{grid-column:span 2}.calc-btn.op{background:#f8fafc;color:#2563eb;font-weight:700}.calc-btn.op:hover{background:#eff6ff;border-color:#bfdbfe}.calc-btn.fn{background:#fff;color:#7c3aed;font-size:12px;font-weight:600}.calc-btn.clear{background:#fef2f2;color:#dc2626;border-color:#fecaca}.calc-btn.clear:hover{background:#fee2e2}.calc-btn.backspace{background:#f8fafc;color:#64748b}.calc-btn.equals{grid-column:span 2;background:#2563eb;color:#fff;border-color:#1d4ed8;font-weight:700}.calc-btn.equals:hover{background:#1d4ed8}.calc-footer-actions{padding:0 10px 10px;background:#fff}.calc-insert-board-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:6px;padding:7px 12px;background:#f0fdf4;color:#166534;border:1px solid #bbf7d0;border-radius:9px;font-size:11.5px;font-weight:650;cursor:pointer;transition:all .15s ease}.calc-insert-board-btn:hover{background:#dcfce7;border-color:#86efac}.all-shapes-modal-backdrop{position:fixed;inset:0;background:#0f172a73;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .15s ease-out}.all-shapes-modal-card{background:#fff;border-radius:16px;width:100%;max-width:820px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 45px #0f172a38;border:1px solid #e2e8f0;overflow:hidden;animation:scaleUp .15s ease-out}.all-shapes-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.all-shapes-header-title{display:flex;align-items:center;gap:12px}.all-shapes-header-icon{width:38px;height:38px;border-radius:10px;background:#eff6ff;border:1px solid #bfdbfe;display:flex;align-items:center;justify-content:center}.all-shapes-header-title h3{margin:0;font-size:16px;font-weight:700;color:#0f172a}.all-shapes-header-title p{margin:2px 0 0;font-size:12px;color:#64748b}.all-shapes-close-btn{background:transparent;border:none;color:#64748b;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s}.all-shapes-close-btn:hover{background:#e2e8f0;color:#0f172a}.all-shapes-filter-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;border-bottom:1px solid #f1f5f9;background:#fff;flex-wrap:wrap}.all-shapes-category-tabs{display:flex;gap:6px;flex-wrap:wrap}.all-shapes-tab-btn{padding:6px 12px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#475569;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .12s}.all-shapes-tab-btn:hover{background:#f1f5f9;color:#0f172a}.all-shapes-tab-btn.active{background:#2563eb;color:#fff;border-color:#2563eb;box-shadow:0 1px 3px #2563eb40}.all-shapes-search-wrap{position:relative;display:flex;align-items:center;min-width:220px}.all-shapes-search-wrap .search-icon{position:absolute;left:10px;color:#94a3b8;pointer-events:none}.all-shapes-search-input{width:100%;padding:6px 28px 6px 30px;border-radius:8px;border:1px solid #cbd5e1;font-size:12.5px;color:#0f172a;outline:none;transition:border-color .12s}.all-shapes-search-input:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.clear-search-btn{position:absolute;right:6px;background:#e2e8f0;border:none;border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;color:#64748b;cursor:pointer}.all-shapes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;padding:16px 20px;overflow-y:auto;max-height:calc(85vh - 190px)}.shape-card-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 10px;border-radius:12px;border:1px solid #e2e8f0;background:#fff;cursor:pointer;transition:all .15s ease;text-align:center;gap:8px}.shape-card-btn:hover{border-color:#3b82f6;background:#eff6ff;transform:translateY(-2px);box-shadow:0 4px 12px #2563eb1f}.shape-card-preview{width:44px;height:44px;display:flex;align-items:center;justify-content:center}.shape-card-name{font-size:12px;font-weight:650;color:#1e293b;line-height:1.25}.shape-card-category{font-size:10px;color:#64748b;background:#f1f5f9;padding:2px 6px;border-radius:6px}.shape-card-btn:hover .shape-card-category{background:#dbeafe;color:#1d4ed8}.all-shapes-empty{grid-column:1 / -1;text-align:center;padding:40px 20px;color:#64748b;font-size:13.5px}.all-shapes-modal-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-top:1px solid #e2e8f0;background:#f8fafc;font-size:12px;color:#64748b}.header-lines-dropdown-wrap{position:relative}.lines-dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;background:#fff;border:1px solid #cbd5e1;border-radius:12px;padding:8px;box-shadow:0 10px 28px #0f172a29;z-index:200;width:290px;display:flex;flex-direction:column;gap:2px;animation:fadeInDown .12s ease-out}.lines-dropdown-section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#94a3b8;padding:6px 8px 3px}.lines-dropdown-item{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:8px;border:1px solid transparent;background:transparent;color:#1e293b;font-size:12.5px;font-weight:600;cursor:pointer;text-align:left;transition:all .12s}.lines-dropdown-item:hover{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.lines-dropdown-item.is-active{background:#2563eb;color:#fff}.lines-dropdown-item.is-active .line-preview-sample{border-color:#fff!important}.line-preview-sample{width:32px;height:0;display:inline-block;flex-shrink:0}.line-preview-solid{border-bottom:2.5px solid #2563eb}.line-preview-double{border-bottom:3.5px double #2563eb}.line-preview-wavy{height:8px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M0,3 Q2.5,0 5,3 T10,3' fill='none' stroke='%232563eb' stroke-width='1.8'/%3E%3C/svg%3E") repeat-x center}.line-preview-dashed{border-bottom:2.5px dashed #2563eb}.line-preview-dashdot{height:2px;background:repeating-linear-gradient(to right,#2563eb 0,#2563eb 8px,transparent 8px,transparent 11px,#2563eb 11px,#2563eb 13px,transparent 13px,transparent 16px)}.line-preview-segment{border-bottom:2px solid #2563eb;position:relative}.line-preview-segment:before,.line-preview-segment:after{content:"";position:absolute;top:-4px;width:2px;height:8px;background:#2563eb}.line-preview-segment:before{left:0}.line-preview-segment:after{right:0}.line-preview-ray{border-bottom:2px solid #2563eb;position:relative}.line-preview-ray:before{content:"";position:absolute;top:-3px;left:0;width:6px;height:6px;border-radius:50%;background:#2563eb}.line-preview-vector{border-bottom:2px solid #2563eb;position:relative}.line-preview-vector:after{content:"";position:absolute;right:0;top:-4px;width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:6px solid #2563eb}.lines-dropdown-divider{height:1px;background:#e2e8f0;margin:4px 6px}.room-control-btn.is-active{background:#eff6ff!important;color:#1d4ed8!important;border-color:#3b82f6!important;box-shadow:0 1px 3px #2563eb33!important}.header-more-tools-wrap{position:relative}.more-tools-dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;background:#fff;border:1px solid #cbd5e1;border-radius:14px;padding:8px;box-shadow:0 12px 32px #0f172a2e;z-index:220;width:330px;display:flex;flex-direction:column;gap:4px;animation:fadeInDown .12s ease-out}.more-tools-item{display:flex;align-items:center;gap:12px;padding:9px 12px;border-radius:10px;border:1px solid transparent;background:transparent;cursor:pointer;text-align:left;transition:all .12s ease}.more-tools-item:hover{background:#f1f5f9;border-color:#e2e8f0}.more-tools-item.active-tool{background:#eff6ff;border-color:#bfdbfe}.more-tools-item-icon{width:36px;height:36px;border-radius:9px;background:#eff6ff;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid #dbeafe}.more-tools-item-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.more-tools-item-info strong{font-size:13px;font-weight:700;color:#0f172a}.more-tools-item-info span{font-size:11px;color:#64748b;line-height:1.25}.more-tools-section-divider{height:1px;background:#e2e8f0;margin:4px 6px}.more-tools-group-title{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#64748b;padding:4px 8px 2px}.more-tools-lines-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;padding:2px}.more-tools-subitem{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:7px;border:1px solid #e2e8f0;background:#fff;color:#1e293b;font-size:11.5px;font-weight:600;cursor:pointer;text-align:left;transition:all .12s}.more-tools-subitem:hover{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}.more-tools-subitem.is-active{background:#2563eb;border-color:#2563eb;color:#fff}.more-tools-subitem.is-active .line-preview-sample{border-color:#fff!important}.excalidraw .sidebar-tabs-root button.sidebar-tab-trigger[value=search],.excalidraw .sidebar-tabs-root button.sidebar-tab-trigger[data-value=search],.excalidraw .sidebar-triggers button.sidebar-tab-trigger[value=search],.excalidraw .sidebar-triggers button.sidebar-tab-trigger[id*=search]{display:none!important}.excalidraw .layer-ui__library{display:flex!important;flex-direction:column!important}.excalidraw .layer-ui__library .library-menu-control-buttons{order:-1!important;padding:.75rem .75rem .625rem!important;border-bottom:1px solid var(--sidebar-border-color, #e2e8f0)!important;background:var(--sidebar-bg-color, #ffffff)!important;z-index:2!important;margin:0!important}.excalidraw .layer-ui__library .library-menu-control-buttons--at-bottom:before{display:none!important}.excalidraw .layer-ui__library .library-menu-browse-button{box-shadow:0 1px 3px #00000014!important;font-weight:600!important}
