@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/archivo-vietnamese-400-normal-BF4g3tCF.woff2) format("woff2"),url(/assets/archivo-vietnamese-400-normal-FGOLYM1a.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/archivo-latin-ext-400-normal-B5tPZzqW.woff2) format("woff2"),url(/assets/archivo-latin-ext-400-normal-DrmqtLj6.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/archivo-latin-400-normal-C81ewxNO.woff2) format("woff2"),url(/assets/archivo-latin-400-normal-Bl602Mgc.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/archivo-vietnamese-500-normal-k0drYPZA.woff2) format("woff2"),url(/assets/archivo-vietnamese-500-normal-7W3lD2kQ.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/archivo-latin-ext-500-normal-RFhg4CpD.woff2) format("woff2"),url(/assets/archivo-latin-ext-500-normal-D7mXw3Kz.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/archivo-latin-500-normal-CGugC8dq.woff2) format("woff2"),url(/assets/archivo-latin-500-normal-pkzA7jw9.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/archivo-vietnamese-600-normal-anCjMumA.woff2) format("woff2"),url(/assets/archivo-vietnamese-600-normal-C8xBVdfP.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/archivo-latin-ext-600-normal-Dm61iqcg.woff2) format("woff2"),url(/assets/archivo-latin-ext-600-normal-D7uErJuz.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/archivo-latin-600-normal-3BBy0ZsW.woff2) format("woff2"),url(/assets/archivo-latin-600-normal-DwYieO8P.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root input[type=checkbox]{appearance:none;box-sizing:border-box;display:inline-grid;place-items:center;flex:0 0 20px;width:20px;min-width:20px;height:20px;min-height:20px;margin:0;padding:0;border:1px solid var(--ink-muted, #50596a);border-radius:5px;background:var(--surface, #fff);color:var(--ink, #151515);vertical-align:middle;cursor:pointer}:root input[type=checkbox]:after{content:"";width:12px;height:10px;background:currentColor;clip-path:polygon(0 45%,15% 27%,40% 57%,85% 0,100% 17%,40% 100%);opacity:0}:root input[type=checkbox]:checked,:root input[type=checkbox]:indeterminate{background:var(--yellow, #ffe56b);border-color:var(--yellow, #ffe56b)}:root input[type=checkbox]:checked:after,:root input[type=checkbox]:indeterminate:after{opacity:1}:root input[type=checkbox]:indeterminate:after{width:10px;height:2px;clip-path:none}:root input[type=checkbox]:focus-visible{outline:3px solid var(--selection, #2463d4);outline-offset:3px}:root input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}@media(forced-colors:active){:root input[type=checkbox]{forced-color-adjust:none;background:Canvas;border-color:ButtonText;color:HighlightText}:root input[type=checkbox]:checked,:root input[type=checkbox]:indeterminate{background:Highlight;border-color:Highlight}:root input[type=checkbox]:focus-visible{outline-color:Highlight}}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/archivo-vietnamese-700-normal-nuAQAQa7.woff2) format("woff2"),url(/assets/archivo-vietnamese-700-normal-Bz2vkKqq.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/archivo-latin-ext-700-normal-DD_nkw6b.woff2) format("woff2"),url(/assets/archivo-latin-ext-700-normal-CgyfnKjw.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/archivo-latin-700-normal-D9cHMWGj.woff2) format("woff2"),url(/assets/archivo-latin-700-normal-lT5TFe7H.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.\!grid{display:grid!important}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.stroke-1{stroke-width:1px}.stroke-1000{stroke-width:1000px}.lowercase{text-transform:lowercase}.italic{font-style:italic}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}@font-face{font-family:Onest;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/onest-cyrillic-XA2Wcfvm.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Onest;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/onest-latin-Cl_J6ReI.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2000-206F,U+20AC,U+2122}@font-face{font-family:Onest;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/onest-cyrillic-XA2Wcfvm.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Onest;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/onest-latin-Cl_J6ReI.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2000-206F,U+20AC,U+2122}:root{--cornflower:#84a5e8;--ink:#151515;--lime:#b5ed45;--selection:#2463d4;--surface:#fff;--workspace:#f5f6f8;--line:#dfe3e8;--yellow:#ffe169;--radius:14px;--radius-auth:24px;--radius-tool:9px;--radius-preview:4px;--radius-option:8px;--radius-control:10px;--radius-notice:12px;--shadow:0 0 0 var(--ink);--control-size:44px;--control-icon:21px;--camera-slab-width: calc(3*max(38px, var(--control-size)) + 64px) ;color:var(--ink);background:var(--workspace);font-synthesis:none;text-rendering:optimizelegibility;font-family:Archivo,Arial,sans-serif}*{box-sizing:border-box}html{background:var(--workspace);min-width:320px}body{background:var(--workspace);min-width:320px;min-height:100dvh;margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--selection);outline-offset:3px}.canvas-panel:focus-visible{outline:3px solid var(--selection);outline-offset:-3px}button:disabled{cursor:not-allowed;opacity:.48}.brand{color:var(--ink);letter-spacing:-.05em;font-size:24px;font-weight:700;line-height:1;text-decoration:none}.public-topbar,.topbar{justify-content:space-between;align-items:center;gap:16px;display:flex}.topbar-actions{align-items:center;gap:12px;display:flex}.canvas-app-shell>.topbar{z-index:20;top:var(--canvas-edge-top);right:var(--canvas-edge-right);left:var(--canvas-edge-left);pointer-events:none;align-items:flex-start;gap:10px;position:absolute}.canvas-app-shell .workspace-heading,.canvas-app-shell .topbar-actions{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);pointer-events:auto;padding:8px}.canvas-app-shell .primary-button,.canvas-app-shell .secondary-button,.canvas-app-shell .icon-text-button,.canvas-app-shell .personal-badge,.canvas-app-shell .presence-badge,.canvas-app-shell .primary-button:hover,.canvas-app-shell .secondary-button:hover,.canvas-app-shell .icon-text-button:hover,.canvas-app-shell .primary-button:active,.canvas-app-shell .secondary-button:active,.canvas-app-shell .icon-text-button:active{box-shadow:none}.canvas-app-shell .workspace-heading{flex:none;gap:10px;padding-right:13px}.canvas-app-shell .topbar-actions{flex-wrap:wrap;flex:0 auto;justify-content:flex-end;gap:8px;min-width:0}.workspace-material-switcher{width:min(240px,40vw);min-height:var(--control-size);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;margin-top:4px;padding:2px 6px;font-size:12px;display:block}.canvas-app-shell .workspace-heading:has(.workspace-material-switcher){flex:0 auto;min-width:0;max-width:100%}.workspace-heading:has(.workspace-material-switcher)>div{flex-wrap:wrap}.workspace-heading:has(.workspace-material-switcher) .workspace-kicker:not(.workspace-page-position){display:none}.workspace-heading:has(.workspace-material-switcher) .icon-text-button{width:var(--control-size);min-width:var(--control-size);gap:0;padding:0;font-size:0}.workspace-heading:has(.workspace-material-switcher) .workspace-kicker{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}@media(pointer:coarse){.workspace-material-switcher{font-size:16px}}.workspace-solution-page{min-height:var(--control-size);border:1px solid var(--ink);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;align-items:center;gap:4px;margin-top:4px;padding:2px 6px;font-size:12px;display:inline-flex}.workspace-solution-page[hidden]{display:none}.status-badge,.personal-badge,.primary-button,.secondary-button,.icon-text-button,.tool-button,.empty-state-label,.small-action-button,.square-action-button,.open-board-button{border:1px solid var(--line);border-radius:var(--radius)}.status-badge,.personal-badge{background:var(--surface);white-space:nowrap;align-items:center;gap:8px;min-height:44px;padding:0 14px;font-size:14px;font-weight:700;display:inline-flex}.personal-badge{background:var(--yellow);box-shadow:var(--shadow)}.status-online{background:var(--surface)}.status-save-error{background:#ffceda}.status-dot{border:1px solid var(--line);background:var(--lime);border-radius:50%;width:10px;height:10px}.canvas-app-shell .status-badge--quiet{width:var(--control-size);min-width:var(--control-size);min-height:var(--control-size);justify-content:center;gap:0;padding:0}.status-badge--connecting .status-dot,.status-badge--syncing .status-dot{background:var(--yellow)}.status-badge--offline .status-dot{background:var(--cornflower)}.primary-button,.secondary-button,.icon-text-button{min-height:44px;color:var(--ink);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:600;transition:transform .14s cubic-bezier(.23,1,.32,1),box-shadow .14s cubic-bezier(.23,1,.32,1),background-color .14s;display:inline-flex}.primary-button{background:var(--yellow);box-shadow:var(--shadow)}.secondary-button,.icon-text-button{background:var(--surface);box-shadow:var(--shadow)}.icon-text-button{min-height:44px;padding:0 13px}.danger-button{background:#ffb6c9}.primary-button:active,.secondary-button:active,.icon-text-button:active{box-shadow:var(--shadow);transform:translateY(1px)}.eyebrow-label,.workspace-kicker,.card-number{border:1px solid var(--line);border-radius:var(--radius);background:var(--yellow);letter-spacing:.11em;width:fit-content;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.eyebrow-label{box-shadow:var(--shadow);padding:9px 11px}.blue-label{background:var(--cornflower)}.connection-shell{align-content:space-between;min-height:100dvh;padding:clamp(22px,4vw,52px);display:grid}.connection-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:min(100%,500px);box-shadow:var(--shadow);text-align:center;gap:12px;margin:auto;padding:clamp(30px,6vw,54px);display:grid}.connection-card strong,.connection-card h1{letter-spacing:-.055em;margin:0;font-size:clamp(26px,5vw,42px);line-height:1}.connection-card p{color:#515151;margin:0;line-height:1.5}.connection-card .primary-button{margin:14px auto 0}.connection-error>svg{color:#db3b63;margin:0 auto 6px}.loading-mark{border:4px solid var(--ink);border-right-color:var(--cornflower);border-radius:50%;width:38px;height:38px;margin:0 auto 8px;animation:.7s linear infinite loading-spin}@keyframes loading-spin{to{transform:rotate(360deg)}}.auth-shell,.library-shell{width:min(100%,1480px);min-height:100dvh;margin:0 auto;padding:clamp(20px,4vw,54px)}.auth-shell{grid-template-rows:auto minmax(0,1fr);gap:48px;display:grid}.auth-layout{grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);align-items:stretch;gap:24px;padding-bottom:clamp(20px,5vw,72px);display:grid}.auth-message{border-radius:var(--radius-auth);background:var(--cornflower);flex-direction:column;justify-content:center;padding:clamp(28px,4vw,56px);display:flex;position:relative}@supports (color:color-mix(in lab,red,red)){.auth-message{background:color-mix(in srgb,var(--cornflower) 18%,var(--surface))}}.auth-message h1{letter-spacing:-.05em;max-width:830px;margin:28px 0 24px;font-size:clamp(34px,4.5vw,64px);line-height:1.08}.auth-message>p{max-width:660px;margin:0;font-size:17px;font-weight:400;line-height:1.65}.formula-strip{flex-wrap:wrap;gap:14px;margin-top:clamp(34px,6vw,70px);display:flex}.formula-strip span{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:48px;box-shadow:var(--shadow);align-items:center;padding:0 16px;font-size:17px;font-weight:700;display:inline-flex}.formula-strip span:nth-child(2),.formula-strip span:nth-child(3){background:var(--surface)}.login-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);flex-direction:column;justify-content:center;padding:clamp(28px,4vw,46px);display:flex;position:relative}.card-number{background:var(--ink);color:var(--surface);padding:7px 9px;position:absolute;top:18px;right:18px}.login-icon,.create-icon{border:1px solid var(--line);border-radius:var(--radius);background:var(--cornflower);width:58px;height:58px;box-shadow:var(--shadow);place-items:center;display:grid}.login-card h2{letter-spacing:-.06em;margin:30px 0 8px;font-size:28px;line-height:1}.login-copy{color:#505050;margin:0;font-size:15px;line-height:1.45}.login-form{gap:12px;margin-top:30px;display:grid}.login-form label,.create-board-card label,.rename-form label{font-size:13px;font-weight:700}.login-form input,.create-board-card input,.rename-form input{border:1px solid var(--line);border-radius:var(--radius);width:100%;min-height:52px;color:var(--ink);background:#f7f9fc;padding:0 14px}.login-form input::placeholder,.create-board-card input::placeholder{color:#777d87}.login-submit{width:100%;margin-top:8px}.form-error,.library-error{border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);background:#ffb6c9;margin:0;font-size:14px;font-weight:700;line-height:1.4}.form-error{padding:10px 12px}.library-shell{grid-template-columns:minmax(0,1fr);align-content:start;gap:28px;display:grid}.library-hero{grid-template-columns:minmax(0,1fr) minmax(360px,.85fr);align-items:center;gap:40px;display:grid}.library-hero h1{letter-spacing:-.045em;margin:12px 0;font-size:clamp(32px,4vw,44px);line-height:1.1}.library-hero>div>p{max-width:540px;color:var(--muted);margin:0;font-size:15px;font-weight:400;line-height:1.6}.create-board-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);padding:clamp(20px,3vw,30px)}.create-card-heading{align-items:center;gap:16px;margin-bottom:22px;display:flex}.create-icon{background:var(--yellow);flex:none;width:50px;height:50px}.create-card-heading div{gap:4px;display:grid}.create-card-heading strong{letter-spacing:-.035em;font-size:22px}.create-card-heading span{color:#606060;font-size:13px}.create-board-card>label{margin-bottom:8px;display:block}.create-board-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.library-error{padding:14px 16px}.board-section{gap:20px;display:grid}.section-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.section-heading>div{align-items:center;gap:9px;display:flex}.section-heading h2{margin:0;font-size:20px}.section-heading>span{border:1px solid var(--line);background:var(--yellow);border-radius:50%;place-items:center;width:34px;height:34px;font-size:13px;font-weight:700;display:grid}.board-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.2vw,30px);display:grid}.board-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:224px;box-shadow:var(--shadow);flex-direction:column;padding:24px;display:flex;position:relative;overflow:hidden}.board-card:before{background:var(--cornflower);content:"";border-bottom:0;height:3px;position:absolute;top:0;left:0;right:0}.board-card-accent-1:before{background:var(--yellow)}.board-card-accent-2:before{background:#ffb6c9}.board-card-accent-3:before{background:#f5a761}.board-card-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.board-index{letter-spacing:.08em;font-size:13px;font-weight:700}.board-date{color:#606060;align-items:center;gap:5px;font-size:12px;font-weight:700;display:inline-flex}.board-card h3{overflow-wrap:anywhere;letter-spacing:-.035em;margin:24px 0 8px;font-size:22px;line-height:1.25}.board-kind{color:#606060;margin:0;font-size:13px;font-weight:700}.board-card-actions{gap:8px;margin-top:auto;padding-top:26px;display:flex}.open-board-button{background:var(--ink);min-height:48px;color:var(--surface);cursor:pointer;flex:1;justify-content:space-between;align-items:center;padding:0 13px;font-weight:700;display:inline-flex}.square-action-button{background:var(--surface);width:48px;min-width:48px;height:48px;color:var(--ink);cursor:pointer;place-items:center;padding:0;display:grid}.danger-action{background:#ffceda}.rename-form{gap:9px;margin-top:23px;display:grid}.rename-form input{background:var(--surface);min-height:46px}.rename-actions{gap:8px;display:flex}.small-action-button{background:var(--yellow);cursor:pointer;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 12px;font-size:13px;font-weight:700;display:inline-flex}.muted-action{background:var(--surface)}.boards-empty-state{border:2px dashed var(--ink);border-radius:var(--radius);text-align:center;background:#ffffffa6;padding:clamp(34px,6vw,72px)}.boards-empty-state h2{letter-spacing:-.06em;margin:22px 0 8px;font-size:clamp(28px,4vw,46px)}.boards-empty-state p{color:#555;max-width:560px;margin:0 auto;line-height:1.5}.canvas-app-shell{--canvas-edge:clamp(10px, 1.2vw, 18px);--canvas-edge-top:max(var(--canvas-edge), env(safe-area-inset-top));--canvas-edge-right:max(var(--canvas-edge), env(safe-area-inset-right));--canvas-edge-bottom:max(var(--canvas-edge), env(safe-area-inset-bottom));--canvas-edge-left:max(var(--canvas-edge), env(safe-area-inset-left));--canvas-chrome-height:60px;--lesson-strip-height:0px;--canvas-chrome-top:calc(var(--canvas-edge-top) + var(--canvas-chrome-height) + var(--canvas-edge) + var(--lesson-strip-height));--canvas-rail-width:calc(var(--control-size) + 22px);--canvas-gutter-left:calc(var(--canvas-edge-left) + var(--canvas-rail-width) + var(--canvas-edge));--canvas-dock-height:58px;--canvas-dock-top:calc(var(--canvas-edge-bottom) + var(--canvas-dock-height) + var(--canvas-edge));--canvas-notebook-panel-width:278px;--canvas-page-panel-width:228px;--canvas-field-left:var(--canvas-gutter-left);--canvas-field-right:var(--canvas-edge-right);background:var(--workspace);height:100dvh;min-height:100dvh;display:block;position:relative;overflow:hidden}.canvas-app-shell.has-lesson-session{--lesson-strip-height:58px}.lesson-strip{z-index:14;top:calc(var(--canvas-edge-top) + var(--canvas-chrome-height) + 6px);right:var(--canvas-edge-right);left:var(--canvas-edge-left);border:1px solid var(--ink);align-items:center;gap:12px;min-height:50px;padding:5px 7px 5px 12px;display:flex;position:absolute;overflow:visible}@supports (color:color-mix(in lab,red,red)){.lesson-strip{border:1px solid color-mix(in srgb,var(--ink) 16%,transparent)}}.lesson-strip{border-radius:var(--radius);background:#fff}@supports (color:color-mix(in lab,red,red)){.lesson-strip{background:color-mix(in srgb,white 94%,var(--workspace))}}.lesson-strip{color:var(--ink)}.lesson-strip__identity{min-width:150px;line-height:1.08;display:grid}.lesson-strip__identity>span:last-child,.lesson-strip__next,.lesson-strip__private-plan{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.lesson-strip__eyebrow{color:var(--accent-strong);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.lesson-strip__topics{min-width:0;color:var(--muted);white-space:nowrap;flex:auto;align-items:center;gap:6px;font-size:12px;display:flex;overflow:hidden}.lesson-strip__topic{background:var(--accent);border-radius:999px;max-width:180px;padding:5px 8px;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.lesson-strip__topic{background:color-mix(in srgb,var(--accent) 13%,white)}}.lesson-strip__topic{color:var(--ink);text-overflow:ellipsis}.lesson-strip__actions{flex:none;gap:6px;display:flex}.lesson-strip__actions button{min-height:44px}.lesson-strip__review{color:var(--muted);flex:none;font-size:12px;position:relative}.lesson-strip__review summary{min-height:44px;color:var(--ink);cursor:pointer;padding:14px 8px 0;font-weight:750}.lesson-strip__review[open]{z-index:2;border:1px solid var(--ink);gap:8px;min-width:min(360px,100vw - 24px);padding:10px;display:grid;position:absolute;top:calc(100% + 6px);right:8px}@supports (color:color-mix(in lab,red,red)){.lesson-strip__review[open]{border:1px solid color-mix(in srgb,var(--ink) 16%,transparent)}}.lesson-strip__review[open]{border-radius:var(--radius);box-shadow:var(--shadow);background:#fff}.lesson-strip__review[open] summary{min-height:0;padding:0}.lesson-strip--error{border-color:var(--danger);justify-content:center}@supports (color:color-mix(in lab,red,red)){.lesson-strip--error{border-color:color-mix(in srgb,var(--danger) 30%,transparent)}}.lesson-artifact-capture{z-index:12;cursor:crosshair;touch-action:none;background:var(--ink);position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.lesson-artifact-capture{background:color-mix(in srgb,var(--ink) 8%,transparent)}}.lesson-artifact-capture__bar{z-index:2;top:var(--canvas-chrome-top);border:1px solid var(--ink);align-items:center;gap:10px;max-width:calc(100% - 32px);min-height:52px;padding:6px 8px 6px 14px;display:flex;position:absolute;left:50%}@supports (color:color-mix(in lab,red,red)){.lesson-artifact-capture__bar{border:1px solid color-mix(in srgb,var(--ink) 18%,transparent)}}.lesson-artifact-capture__bar{border-radius:var(--radius);box-shadow:var(--shadow);cursor:default;background:#fffefa;transform:translate(-50%)}.lesson-artifact-capture__bar>span{white-space:nowrap;font-size:13px;font-weight:750}.lesson-artifact-capture__bar label{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:flex}.lesson-artifact-capture__bar select,.lesson-artifact-capture__bar button{border:1px solid var(--ink);min-height:44px}@supports (color:color-mix(in lab,red,red)){.lesson-artifact-capture__bar select,.lesson-artifact-capture__bar button{border:1px solid color-mix(in srgb,var(--ink) 20%,transparent)}}.lesson-artifact-capture__bar select,.lesson-artifact-capture__bar button{border-radius:var(--radius);color:var(--ink);font:inherit;background:#fff}.lesson-artifact-capture__bar button{cursor:pointer;padding-inline:14px}.lesson-artifact-capture__selection{z-index:1;border:3px solid var(--selection);background:var(--selection);position:absolute}@supports (color:color-mix(in lab,red,red)){.lesson-artifact-capture__selection{background:color-mix(in srgb,var(--selection) 10%,transparent)}}.lesson-artifact-capture__selection{pointer-events:none;outline:9999px solid #1720331f}.lesson-artifact-capture__error{z-index:3;bottom:calc(var(--canvas-dock-top) + 8px);border-radius:var(--radius);color:#8b1731;background:#fff0f2;max-width:min(520px,100% - 32px);padding:10px 14px;font-weight:700;position:absolute;left:50%;transform:translate(-50%)}.canvas-app-shell.is-notebook-space .canvas-panel{background:#2a3040}.canvas-app-shell.is-notebook-space .canvas-grid{display:none}.canvas-sheet-field{z-index:0;top:var(--canvas-chrome-top);right:var(--canvas-field-right);bottom:var(--canvas-dock-top);left:var(--canvas-field-left);pointer-events:none;position:absolute}.canvas-app-shell>.local-recovery-card{top:var(--canvas-chrome-top);right:var(--canvas-edge-right);bottom:var(--canvas-edge-bottom);left:var(--canvas-edge-left);width:min(calc(100% - var(--canvas-edge-left) - var(--canvas-edge-right)),720px);height:fit-content;max-height:100%;position:absolute;overflow:auto}.local-recovery-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:min(100%,720px);box-shadow:var(--shadow);text-align:center;gap:14px;margin:auto;padding:clamp(30px,6vw,64px);display:grid}.recovery-icon{border:1px solid var(--line);border-radius:var(--radius);width:62px;height:62px;box-shadow:var(--shadow);background:#ffb6c9;place-items:center;margin:0 auto 6px;display:grid}.local-recovery-card .empty-state-label{width:fit-content;margin:0 auto}.local-recovery-card h2{letter-spacing:-.07em;margin:8px 0 0;font-size:clamp(34px,6vw,62px);line-height:.95}.local-recovery-card p{color:#555;max-width:560px;margin:0 auto;line-height:1.5}.recovery-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:18px;display:flex}.workspace-heading{flex:auto;align-items:center;gap:16px;min-width:0;display:flex}.workspace-heading>div{align-items:center;gap:9px;min-width:0;display:flex}.workspace-kicker{background:var(--workspace);color:var(--ink-muted);border:0;flex:none;padding:5px 7px;font-size:10px}.workspace-page-position{background:var(--yellow);order:1}.workspace-title{letter-spacing:-.055em;text-overflow:ellipsis;white-space:nowrap;max-width:min(34vw,460px);margin:0;font-size:clamp(18px,1.7vw,25px);line-height:1.1;overflow:hidden}.workspace,.canvas-workspace-column{display:block;position:absolute;inset:0}.tool-rail{z-index:15;top:var(--canvas-chrome-top);bottom:var(--canvas-edge-bottom);left:var(--canvas-edge-left);height:fit-content;max-height:calc(100% - var(--canvas-chrome-top) - var(--canvas-edge-bottom));border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);flex-direction:column;align-items:center;gap:6px;margin:auto 0;padding:10px;display:flex;position:absolute;overflow:hidden auto}.tool-rail>*{flex:none}.workspace-insert-menu{z-index:25;top:var(--canvas-chrome-top);left:calc(var(--canvas-edge-left) + var(--canvas-rail-width) + 10px);width:min(300px,calc(100% - var(--control-size) - 48px));max-height:calc(100% - var(--canvas-chrome-top) - 100px);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:6px;padding:12px;display:grid;position:absolute;overflow:auto}.workspace-insert-menu button{min-height:var(--control-size);text-align:left;background:var(--surface);align-items:center;gap:10px;padding:8px;display:flex}.workspace-insert-menu button span{gap:3px;display:grid}.workspace-insert-menu button small{font-size:12px;font-weight:400}.workspace-insert-menu button svg{flex:none}.tool-button{width:var(--control-size);height:var(--control-size);border-radius:var(--radius-tool);background:var(--surface);color:var(--ink);cursor:pointer;border:0;place-items:center;padding:0;transition:transform .12s cubic-bezier(.23,1,.32,1),background-color .12s;display:grid}.tool-button>svg,.chrome-tab>svg,.canvas-app-shell .topbar-actions button>svg,.canvas-app-shell .presence-badge>svg,.canvas-app-shell .status-badge>svg{width:var(--control-icon);height:var(--control-icon);display:block}.tool-button.is-active{background:var(--selection);color:var(--surface)}.tool-button--laser.is-active{background:#ffb6c9}.tool-button--ai{background:var(--lime)}.tool-button:active{transform:scale(.96)}.tool-divider{background:var(--line);width:30px;height:1px;margin:2px 0;display:block}.hover-tip{z-index:60;border-radius:var(--radius);background:var(--ink);max-width:260px;color:var(--surface);pointer-events:none;transform:var(--hover-tip-transform);padding:5px 9px;font-size:12px;font-weight:700;line-height:1.3;position:fixed}.chrome-tab{z-index:20;width:var(--control-size);height:var(--control-size);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);cursor:pointer;place-items:center;padding:0;display:grid;position:absolute}.chrome-tab:active{transform:translateY(1px)}.canvas-app-shell.is-rail-folded{--canvas-rail-width:var(--control-size)}.canvas-app-shell.is-stage{--canvas-rail-width:0px}.chrome-tab--all{top:var(--canvas-edge-top);left:var(--canvas-edge-left)}.chrome-tab--inline{pointer-events:auto;flex:none;margin-left:auto;position:static}.chrome-tab--rail{top:var(--canvas-chrome-top);bottom:var(--canvas-edge-bottom);left:var(--canvas-edge-left);margin:auto 0}.chrome-tab--dock{bottom:var(--canvas-edge-bottom);left:50%;transform:translate(-50%)}.chrome-tab--dock:active{transform:translate(-50%,1px)}.topbar-chrome-controls{align-items:center;gap:8px;display:flex}.topbar-chrome-controls .secondary-button{width:44px;min-width:44px;min-height:44px;padding:0}.stage-trigger,.cursors-trigger[aria-pressed=true]{background:var(--cornflower)}.ink-fold-button{width:var(--control-size);min-width:var(--control-size);height:var(--control-size);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);cursor:pointer;place-items:center;padding:0;display:grid}.stage-pen{z-index:30;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);touch-action:none;gap:6px;padding:7px;display:grid;position:fixed}.stage-pen-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.stage-pen{width:max-content;max-width:calc(100vw - 32px)}.stage-pen-style{flex-wrap:wrap}.stage-pen-grip{width:26px;height:44px;color:var(--ink);cursor:grab;touch-action:none;background:0 0;border:none;place-items:center;padding:0;display:grid}.stage-pen-grip:active{cursor:grabbing}.stage-pen-leave{background:#ffb6c9}.stage-pen-size{flex:auto;min-width:0}.stage-pen-size input{width:100%;min-height:34px}.ink-style-panel{z-index:15;bottom:var(--canvas-edge-bottom);width:max-content;max-width:calc(100% - var(--canvas-edge-left) - var(--canvas-edge-right) - 2 * (var(--camera-slab-width) + 8px));border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:7px;display:flex;position:absolute;left:50%;overflow-x:auto;transform:translate(-50%)}.selection-order-controls,.image-edit-controls{align-items:center;gap:7px;display:flex}.selection-command-button{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:44px;color:var(--ink);cursor:pointer;align-items:center;gap:7px;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.selection-command-button.is-outbound{background:var(--yellow)}.selection-command-button.is-delete{background:#ffb6c9}.selection-command-button.is-active{background:var(--yellow)}.laser-pointer-tool-icon{place-items:center;width:28px;height:28px;display:grid;position:relative}.laser-pointer-sparkle{color:#d9364f;position:absolute;top:-1px;right:-1px}.ai-watch-status{min-height:var(--control-size);border:1px solid var(--line);border-radius:var(--radius);background:var(--yellow);align-items:center;gap:8px;padding:8px 12px;font-size:12px;font-weight:800;display:flex}.selection-command-button:not(:disabled):active{transform:scale(.97)}.selection-command-button:disabled{cursor:not-allowed;opacity:.45}.selection-shortcut-hint{color:#606a78;white-space:nowrap;padding:0 7px;font-size:11px;font-weight:800}.ink-preset-list,.ink-color-list,.eraser-mode-list{flex:none;align-items:center;gap:4px;display:flex}.eraser-mode-button{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-width:132px;min-height:44px;color:var(--ink);cursor:pointer;padding:0 12px;font-size:12px;font-weight:800;transition:transform .12s cubic-bezier(.23,1,.32,1),background-color .12s}.eraser-mode-button.is-active{background:var(--yellow);box-shadow:inset 0 0 0 2px var(--surface)}.eraser-mode-button:active{transform:scale(.97)}.eraser-limit-notice{color:#8b1731;align-items:center;gap:5px;min-width:max-content;font-size:11px;font-weight:800;display:inline-flex}.ink-preset-button,.ink-color-button{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:44px;min-width:44px;height:44px;color:var(--ink);cursor:pointer;place-items:center;padding:0;display:grid;position:relative}.ink-preset-button.is-active,.ink-color-button.is-active{background:var(--cornflower)}@supports (color:color-mix(in lab,red,red)){.ink-preset-button.is-active,.ink-color-button.is-active{background:color-mix(in srgb,var(--cornflower) 18%,var(--surface))}}.ink-preset-button.is-active,.ink-color-button.is-active{border-color:var(--selection);box-shadow:inset 0 0 0 1px var(--selection)}.ink-preset-mark{width:26px;height:var(--ink-preset-size);background:var(--ink-preset-color);max-height:24px;opacity:var(--ink-preset-opacity);border-radius:999px}.ink-preset-button--highlighter .ink-preset-mark{border-radius:var(--radius)}.ink-preset-button kbd{border-radius:var(--radius);background:var(--surface);min-width:14px;font-size:10px;font-weight:800;line-height:14px;position:absolute;bottom:1px;right:2px}.ink-color-button span{border:1.5px solid var(--ink);background:var(--ink-color);border-radius:50%;width:24px;height:24px}.ink-style-divider{background:var(--ink);flex:0 0 2px;width:2px;height:32px}.ink-width-choices{gap:3px;display:flex}.ink-width-choices button{width:var(--control-size);height:var(--control-size);border:1px solid var(--ink);border-radius:var(--radius);background:var(--surface);color:var(--ink);place-items:center;padding:0;display:grid}.ink-width-choices button[aria-pressed=true]{background:var(--ink);color:var(--surface)}.smart-shape-hold-toggle.is-active{background:var(--yellow)}.ink-size-control{flex:0 0 138px;gap:2px;min-width:138px;font-size:11px;font-weight:800;display:grid}.ink-size-control>span{justify-content:space-between;gap:8px;display:flex}.ink-size-control output{font-variant-numeric:tabular-nums}.ink-size-control input{width:138px;min-height:44px;accent-color:var(--selection);cursor:pointer;margin:0}.ink-smoothing-control{flex:176px;gap:2px;min-width:176px;font-size:11px;font-weight:800;display:grid}.ink-smoothing-control>span{justify-content:space-between;gap:8px;display:flex}.ink-smoothing-control output{font-variant-numeric:tabular-nums}.ink-smoothing-control input{width:100%;min-height:44px;accent-color:var(--selection);cursor:pointer;margin:0}.ink-smoothing-control small{color:var(--muted);font-size:10px;font-weight:600}.ink-smoothing-reset{min-height:44px}.ink-smoothing-trial{flex:220px;align-items:center;gap:6px;min-width:180px;display:flex}.ink-smoothing-trial-canvas{border:1px solid var(--line);border-radius:var(--radius);background-color:var(--surface);width:100%;height:72px;min-height:44px;color:var(--ink);cursor:crosshair;touch-action:none}.ink-smoothing-clear{flex:none;min-height:44px}.ink-preset-save-error{color:#8b1731;align-items:center;gap:5px;min-width:max-content;font-size:11px;font-weight:800;display:inline-flex}.canvas-panel{background:#fcfcfb;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.canvas-grid{z-index:0;opacity:.75;background-image:linear-gradient(#d9e2ef 1px,#0000 1px),linear-gradient(90deg,#d9e2ef 1px,#0000 1px);position:absolute;inset:0}.board-canvas{z-index:1;touch-action:none;position:absolute;inset:0}.board-canvas .konvajs-content{touch-action:none}.board-canvas--pen .konvajs-content,.board-canvas--highlighter .konvajs-content,.board-canvas--arrow .konvajs-content,.board-canvas--connector .konvajs-content,.board-canvas--geometric-shape .konvajs-content,.board-canvas--ellipse .konvajs-content,.board-canvas--line .konvajs-content,.board-canvas--rectangle .konvajs-content{cursor:crosshair}.board-canvas--text .konvajs-content{cursor:text}.board-canvas--laser .konvajs-content{cursor:none}.board-canvas--eraser .konvajs-content{cursor:cell}.board-canvas--selection .konvajs-content{cursor:default}.board-canvas--hand .konvajs-content{cursor:grab}.board-canvas--hand .konvajs-content:active{cursor:grabbing}.canvas-viewport-controls{z-index:3;right:var(--canvas-edge-right);bottom:var(--canvas-edge-bottom);width:var(--camera-slab-width);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);align-items:stretch;display:flex;position:absolute;overflow:visible}.canvas-viewport-controls button{min-width:max(38px,var(--control-size));min-height:max(38px,var(--control-size));background:var(--surface);color:var(--ink);cursor:pointer;font:inherit;border:0;justify-content:center;align-items:center;padding:0 6px;font-size:12px;font-weight:800;display:inline-flex}.canvas-viewport-controls button+button{border-left:1px solid var(--line)}.canvas-viewport-controls button:disabled{color:#93a0b4;cursor:default}.canvas-viewport-controls button:not(:disabled):hover{background:var(--yellow)}.canvas-viewport-scale{white-space:nowrap;font-variant-numeric:tabular-nums;min-width:62px}.canvas-notebook-view-mode{position:absolute;bottom:calc(100% + 8px);right:0}.canvas-notebook-view-mode select{min-height:max(38px,var(--control-size));border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);cursor:pointer;font:inherit;padding:0 28px 0 9px;font-size:12px;font-weight:800}.canvas-viewport-lock[aria-pressed=true]{background:var(--ink);color:var(--surface)}.canvas-viewport-lock[aria-pressed=true]:not(:disabled):hover{background:var(--ink)}.canvas-text-editor{z-index:6;border:1px solid var(--line);border-radius:var(--radius);width:min(320px,100% - 24px);min-height:112px;box-shadow:var(--shadow);color:var(--ink);resize:both;background:#fffefa;outline:0;padding:12px;font:700 18px/1.35 Archivo,sans-serif;position:absolute}.connector-bend-delete{background:var(--surface);border:1px solid var(--line);color:#b42335;cursor:pointer;z-index:8;border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font:700 18px/1 Archivo,sans-serif;display:inline-flex;position:absolute}.connector-bend-delete:focus-visible{outline:3px solid var(--selection);outline-offset:2px}.canvas-text-editor:focus{border-color:var(--selection);box-shadow:0 0 0 2px var(--cornflower),4px 5px 0 var(--ink)}.canvas-rich-text-shell{z-index:9;min-width:160px;position:absolute}.canvas-rich-text-toolbar{z-index:1;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);flex-wrap:wrap;align-items:center;gap:4px;width:max-content;max-width:min(100%,100vw - 24px);margin:0;padding:4px;display:flex;position:absolute;bottom:calc(100% + 6px);left:0;overflow:visible}.canvas-rich-text-shell.is-toolbar-below .canvas-rich-text-toolbar{top:calc(100% + 6px);bottom:auto}.canvas-rich-text-toolbar button,.canvas-rich-text-toolbar select{min-width:var(--control-size);height:var(--control-size);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);cursor:pointer;padding:0 8px;font:800 14px/1 Archivo,sans-serif;transition:background-color .16s ease-out,color .16s ease-out,transform .12s ease-out,box-shadow .16s ease-out}.canvas-rich-text-toolbar button:hover,.canvas-rich-text-toolbar select:hover{background:var(--cornflower)}.canvas-rich-text-toolbar button:active{transform:scale(.97)}.canvas-rich-text-toolbar button:focus-visible,.canvas-rich-text-toolbar select:focus-visible{outline:3px solid var(--selection);outline-offset:2px}.canvas-rich-text-toolbar button[aria-pressed=true]{background:var(--selection);color:var(--surface);box-shadow:inset 0 0 0 2px var(--ink)}.canvas-rich-text-toolbar-label{color:var(--ink);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;align-self:center;margin:0 1px 0 4px;font:800 11px/1 Archivo,sans-serif}.canvas-rich-text-toolbar .canvas-rich-text-color{min-width:var(--control-size);width:var(--control-size);height:var(--control-size);background:var(--surface);border-radius:999px;padding:6px}.canvas-rich-text-toolbar .canvas-rich-text-color[aria-pressed=true]{background:var(--selection)}.canvas-rich-text-swatch{border:1px solid var(--line);border-radius:999px;width:100%;height:100%;display:block}.canvas-rich-text-size-control{min-height:var(--control-size);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);white-space:nowrap;align-items:center;gap:5px;padding:0 4px 0 8px;font:800 11px/1 Archivo,sans-serif;display:inline-flex}.canvas-rich-text-size-control select{background:0 0;border:0;min-width:68px;height:36px;padding:0 4px}.canvas-rich-text-size-control select:hover{background:0 0}.canvas-rich-text-editor{box-sizing:border-box;resize:horizontal;border:1px solid var(--line);border-radius:var(--radius);width:100%;min-height:144px;max-height:min(55vh,520px);box-shadow:var(--shadow);white-space:pre-wrap;overflow-wrap:anywhere;background:#fffefa;outline:0;padding:10px;font-family:Archivo,sans-serif;line-height:1.25;overflow:auto}.canvas-rich-text-editor:empty:before{content:attr(aria-placeholder);color:var(--ink)}@supports (color:color-mix(in lab,red,red)){.canvas-rich-text-editor:empty:before{color:color-mix(in srgb,var(--ink) 52%,transparent)}}.canvas-rich-text-editor:empty:before{pointer-events:none}.canvas-rich-text-editor:focus{border-color:var(--selection);box-shadow:0 0 0 2px var(--cornflower),4px 5px 0 var(--ink)}.presence-badge{border:1px solid var(--line);border-radius:var(--radius);background:var(--yellow);min-height:44px;box-shadow:var(--shadow);white-space:nowrap;align-items:center;gap:8px;padding:0 13px;font-size:13px;font-weight:700;display:inline-flex}.presence-badge--button{cursor:pointer;font-family:inherit}.presence-badge--button[aria-pressed=true]{background:var(--surface)}.follow-button.is-following{background:var(--lime)}.cursor-name-tag{z-index:6;border:1px solid var(--line);background:var(--surface);opacity:0;pointer-events:none;-webkit-user-select:none;user-select:none;white-space:nowrap;border-radius:999px;align-items:center;min-height:26px;padding:0 9px 0 7px;font-size:11px;font-weight:700;display:inline-flex;position:fixed;top:0;left:0}.cursor-name-tag:before{border:1.5px solid var(--ink);background:var(--participant-color,var(--cornflower));content:"";border-radius:50%;width:10px;height:10px;margin-right:6px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.zone-panel{z-index:4;right:var(--canvas-edge-right);width:min(240px,calc(100% - var(--canvas-gutter-left) - var(--canvas-edge-right)));border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);flex-direction:column;gap:6px;padding:8px;display:flex;position:absolute;overflow:hidden auto}.zone-panel-empty{grid-template-columns:1fr auto;align-items:center;max-height:none;display:grid}.zone-panel header{justify-content:space-between;align-items:center;gap:8px;display:flex}.zone-panel ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.zone-panel li{border-radius:var(--radius);justify-content:space-between;align-items:center;gap:6px;padding:4px 6px;display:flex}.zone-panel li.is-selected{outline:2px solid var(--selection);background:#eef3ff}.zone-open-button{cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;flex:auto}.page-notes-panel{z-index:4;right:var(--canvas-edge-right);width:min(320px,calc(100% - var(--canvas-gutter-left) - var(--canvas-edge-right)));border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);flex-direction:column;gap:6px;padding:8px;display:flex;position:absolute;overflow:hidden auto}.page-notes-panel header{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.page-notes-sheet{opacity:.7;font-size:12px;font-weight:700}.page-notes-field textarea{box-sizing:border-box;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--ink);font:inherit;resize:vertical;padding:6px 8px;font-size:13px;line-height:1.4}.page-notes-state{opacity:.7;min-height:16px;margin:0;font-size:12px;font-weight:700}.participants-panel{z-index:4;right:var(--canvas-edge-right);width:min(280px,calc(100% - var(--canvas-gutter-left) - var(--canvas-edge-right)));border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);flex-direction:column;gap:6px;padding:8px;display:flex;position:absolute;overflow:hidden auto}.participants-panel ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.participants-panel li{border-radius:var(--radius);align-items:center;gap:6px;padding:4px 6px;display:flex}.participants-panel li.is-followed{outline:2px solid var(--selection);background:#eef3ff}.participant-open-button{cursor:pointer;min-height:36px;font:inherit;text-align:left;background:0 0;border:0;flex:auto;align-items:center;gap:8px;display:flex}.participant-open-button:disabled{cursor:default;opacity:.5}.participant-dot{border:1px solid var(--line);border-radius:50%;flex:none;width:12px;height:12px}.participant-lines{flex:auto;gap:1px;min-width:0;display:grid}.participant-name{font-weight:700}.participant-place{opacity:.7;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.participant-summon-button{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);cursor:pointer;flex:none;justify-content:center;align-items:center;width:30px;height:30px;padding:0;display:flex}.participant-summon-button:hover{background:var(--yellow)}.participant-pen-button{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);cursor:pointer;flex:none;justify-content:center;align-items:center;width:30px;height:30px;padding:0;display:flex}.participant-pen-button:hover{background:var(--yellow)}.participant-pen-button[aria-pressed=true]{background:var(--lime)}.participants-empty{opacity:.7;margin:0}.participants-summon-all{border:1px solid var(--line);border-radius:var(--radius);background:var(--yellow);cursor:pointer;min-height:36px;font:inherit;justify-content:center;align-items:center;gap:6px;font-weight:700;display:flex}@media(pointer:coarse){.participant-open-button,.participants-summon-all{min-height:var(--control-size)}.participant-pen-button,.participant-summon-button{width:var(--control-size);height:var(--control-size)}}.notebook-assignee select,.zone-assignee select{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);max-width:116px;color:var(--ink);font:inherit;padding:3px 6px;font-size:11px}.zone-actions{gap:2px;display:flex}.zone-actions button,.zone-create-button{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);cursor:pointer;place-items:center;width:26px;height:26px;display:grid}.zone-empty-copy{display:grid}.zone-empty-copy small{color:#4a4a4a}.notebook-panel{z-index:4;left:var(--canvas-gutter-left);width:min(var(--canvas-notebook-panel-width),calc(100% - var(--canvas-gutter-left) - var(--canvas-edge-right)));border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);flex-direction:column;display:flex;position:absolute;overflow:hidden}.notebook-panel-empty{grid-template-columns:36px minmax(58px,1fr) 76px 40px;align-items:center;gap:7px;min-height:54px;max-height:none;padding:6px;display:grid}.notebook-empty-icon,.notebook-empty-create-button{border:1px solid var(--line);border-radius:var(--radius);place-items:center;width:36px;height:36px;padding:0;display:grid}.notebook-empty-icon{background:var(--cornflower)}.notebook-empty-copy{min-width:0;line-height:1.05;display:grid}.notebook-empty-copy strong{font-size:13px}.notebook-empty-copy small{white-space:nowrap;font-size:9px;font-weight:700}.notebook-panel-empty select{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:100%;min-height:36px;color:var(--ink);cursor:pointer;font:inherit;padding:0 22px 0 6px;font-size:10px;font-weight:700}.notebook-empty-create-button{background:var(--lime);width:40px;height:40px;color:var(--ink);cursor:pointer;transition:transform .12s cubic-bezier(.23,1,.32,1)}.notebook-empty-create-button:active{transform:scale(.96)}.notebook-panel-heading{border-bottom:1px solid var(--line);background:var(--cornflower);align-items:center;gap:10px;min-height:58px;padding:8px 10px;display:flex}.notebook-panel-icon{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);flex:none;place-items:center;width:38px;height:38px;display:grid}.notebook-panel-heading>div{gap:1px;min-width:0;display:grid}.notebook-panel-heading strong{letter-spacing:-.03em;font-size:17px}.notebook-panel-heading span{font-size:11px;font-weight:700}.notebook-list{overscroll-behavior:contain;gap:8px;min-height:0;padding:9px;display:grid;overflow:auto}.notebook-card{border:1px solid var(--line);border-radius:var(--radius);background:#edf3fb;gap:7px;padding:7px;display:grid}.notebook-card.is-selected{box-shadow:var(--shadow);background:#fff5bd}.notebook-card-title{border:1px solid var(--line);border-radius:var(--radius);background:var(--cornflower);min-height:96px;color:var(--ink);font:inherit;text-align:left;justify-content:center;align-items:center;gap:6px;padding:15px 14px 15px 34px;transition:transform .12s cubic-bezier(.23,1,.32,1);display:flex;position:relative;overflow:hidden}.notebook-card-title:before{border-right:1px solid var(--line);border-left:1px solid var(--line);content:"";background:#6889cd;width:9px;position:absolute;top:0;bottom:0;left:13px}button.notebook-card-title{cursor:pointer}button.notebook-card-title:active{transform:scale(.98)}.notebook-card-title span{z-index:1;border:1px solid var(--line);border-radius:var(--radius);background:var(--yellow);text-align:center;overflow-wrap:anywhere;width:min(100%,150px);padding:9px 10px;font-size:14px;font-weight:800}.notebook-card-title small{border:1.5px solid var(--ink);border-radius:var(--radius);background:#fffef8;padding:3px 5px;font-size:10px;font-weight:700;position:absolute;bottom:7px;right:8px}.notebook-card-actions>button{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-width:40px;min-height:40px;color:var(--ink);cursor:pointer;place-items:center;padding:0;transition:transform .12s cubic-bezier(.23,1,.32,1);display:grid}.notebook-card-actions>button:active,.notebook-transfer-button:active,.notebook-create-button:active{transform:scale(.96)}.notebook-panel-footer select{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:100%;min-height:40px;color:var(--ink);cursor:pointer;font:inherit;padding:0 30px 0 9px;font-size:12px;font-weight:700}.notebook-transfer-button,.notebook-create-button{border:1px solid var(--line);border-radius:var(--radius);background:var(--lime);min-height:42px;color:var(--ink);cursor:pointer;font:inherit;justify-content:center;align-items:center;gap:7px;padding:0 10px;font-size:12px;font-weight:800;transition:transform .12s cubic-bezier(.23,1,.32,1);display:inline-flex}.notebook-card-actions{justify-content:flex-end;gap:6px;display:flex}.notebook-card-actions>button{padding:0 9px;font-size:11px;font-weight:800}.notebook-rename-button{background:var(--yellow)}.notebook-delete-button{background:#ffceda}.notebook-panel-footer{border-top:1px solid var(--line);background:#f0f4fa;grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:9px;display:grid}.notebook-new-paper{grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:6px;min-width:0;display:grid}.notebook-panel-footer>.notebook-create-button,.notebook-panel-footer>.notebook-transfer-button{grid-column:1/-1}.notebook-panel-footer label{gap:4px;min-width:0;display:grid}.notebook-panel-footer label>span{letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:800}.notebook-create-button{align-self:end}.page-panel{z-index:4;right:var(--canvas-edge-right);width:min(var(--canvas-page-panel-width),calc(100% - var(--canvas-gutter-left) - var(--canvas-edge-right)));border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);flex-direction:column;display:flex;position:absolute;overflow:hidden}.notebook-panel,.page-notes-panel,.page-panel,.participants-panel,.zone-panel{top:var(--canvas-chrome-top);max-height:calc(100% - var(--canvas-chrome-top) - var(--canvas-dock-top))}.page-panel-heading{border-bottom:1px solid var(--line);background:var(--yellow);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1px 8px;padding:8px 10px;display:grid}.page-panel-heading strong{letter-spacing:-.03em;grid-column:1/-1;font-size:15px}.page-panel-heading span{font-size:11px;font-weight:700}.page-panel-heading .page-panel-position{grid-column:1/-1}.page-panel-controls{flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:6px;display:flex}label.page-navigation-mode{cursor:pointer;align-items:center;gap:4px;font-size:11px;font-weight:800;display:inline-flex}.page-present-button,.page-present-badge{border:1px solid var(--line);border-radius:var(--radius);padding:3px 8px;font-size:11px;font-weight:800;line-height:1.2}.page-present-button{background:var(--surface);color:var(--ink);cursor:pointer}.page-present-badge{background:var(--ink);color:var(--surface)}.page-list>li.is-on-air>.page-open-button{outline:2px solid var(--selection);outline-offset:-2px}.page-list{overscroll-behavior:contain;gap:5px;min-height:0;margin:0;padding:8px;list-style:none;display:grid;overflow:auto}.page-list li{border:1px solid var(--line);border-radius:var(--radius);background:#f7f9fc;align-items:stretch;gap:5px;padding:4px 5px;display:grid}.page-list li.is-current{outline:2px solid var(--selection);background:#eef3ff}.page-open-button{min-width:0;color:var(--ink);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;flex:auto;gap:1px;padding:2px 3px;display:grid}div.page-open-button{cursor:default}.page-open-button span{font-size:12px;font-weight:800}.page-open-button small{font-size:10px;font-weight:700}.page-actions{min-width:0}.page-actions summary{min-height:var(--control-size);cursor:pointer;padding:6px;font-size:12px}.page-action-menu{flex-wrap:wrap;gap:4px;padding-block:4px;display:flex}.page-action-menu>button{min-width:var(--control-size);min-height:var(--control-size);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);cursor:pointer;place-items:center;padding:4px 8px;display:grid}.page-action-menu>button:disabled{color:#8a8a8a;cursor:not-allowed;opacity:.45}.page-action-menu>.page-delete-button{background:#ffceda}.page-panel-footer{border-top:1px solid var(--line);background:#f0f4fa;gap:6px;padding:8px;display:grid}.page-ruling-choice{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;display:grid}.page-ruling-choice>span{font-size:11px;font-weight:800}.page-ruling-choice input[type=range]{width:100%;min-height:38px;accent-color:var(--accent);cursor:pointer}.page-ruling-choice output{color:var(--muted);font-variant-numeric:tabular-nums;grid-column:2;font-size:11px;font-weight:700}.page-panel-footer select{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:100%;min-height:38px;color:var(--ink);cursor:pointer;font:inherit;padding:0 28px 0 9px;font-size:12px;font-weight:700}.page-add-button{border:1px solid var(--line);border-radius:var(--radius);background:var(--lime);min-height:40px;color:var(--ink);cursor:pointer;font:inherit;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:800;transition:transform .12s cubic-bezier(.23,1,.32,1);display:inline-flex}.page-add-button:active{transform:scale(.97)}.canvas-system-warning{z-index:5;top:calc(var(--canvas-chrome-top) + 42px);border:1px solid var(--line);border-radius:var(--radius);width:min(100% - 28px,680px);min-height:48px;box-shadow:var(--shadow);background:#ffceda;align-items:center;gap:10px;padding:8px 10px;font-size:13px;font-weight:700;display:flex;position:absolute;left:50%;transform:translate(-50%)}.canvas-system-warning>svg{flex:none}.show-bar{z-index:5;top:var(--canvas-chrome-top);max-width:calc(100% - var(--canvas-edge-left) - var(--canvas-edge-right));border:1px solid var(--line);border-radius:var(--radius);background:var(--yellow);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:6px 10px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.show-bar>button{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:32px;color:var(--ink);cursor:pointer;padding:4px 10px;font-size:12px;font-weight:800}.show-bar>button:disabled{cursor:default;opacity:.45}.show-exit{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:8px;width:max-content;max-width:min(360px,90vw);padding:10px 12px;font-size:13px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.show-exit-stay{color:var(--ink);cursor:pointer;font:inherit;background:0 0;border:0;font-size:13px;font-weight:700;text-decoration:underline}.show-exit-answers{gap:8px;display:flex}.show-exit-answers>button{flex:1;min-height:44px}@media(pointer:fine){.show-exit-answers>button{min-height:34px}}.show-bar-state{font-size:13px;font-weight:800}.show-bar-clock{font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}@media(pointer:coarse){.show-bar>button{min-height:44px}}.show-curtain{z-index:6;background:var(--surface);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:absolute;inset:0}.show-curtain>strong{font-size:24px;font-weight:800}.show-curtain>span{font-size:14px;font-weight:600}.call-invitation{background:#d8ecd2}.call-invitation>.secondary-button{flex:none}.canvas-system-warning span{overflow-wrap:anywhere;flex:1;min-width:0}.canvas-system-warning button{white-space:nowrap;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);cursor:pointer;flex:none;min-height:34px;padding:6px 12px;font-size:12px;font-weight:700}.activity-warning{top:calc(var(--canvas-chrome-top) + 106px);background:var(--yellow)}.material-drop-overlay{z-index:8;border:3px dashed var(--ink);border-radius:var(--radius);width:min(100% - 32px,520px);min-height:210px;box-shadow:var(--shadow);pointer-events:none;text-align:center;background:#ffe169f0;place-items:center;padding:28px;display:grid;position:absolute}.material-drop-overlay strong{letter-spacing:-.05em;font-size:clamp(24px,4vw,38px)}.material-drop-overlay span{color:#4a4a4a;font-size:13px;font-weight:700}.material-upload-notice{z-index:7;bottom:var(--canvas-dock-top);left:var(--canvas-gutter-left);width:min(calc(100% - var(--canvas-gutter-left) - var(--canvas-edge-right)),520px);border:1px solid var(--line);border-radius:var(--radius);background:var(--yellow);min-height:48px;box-shadow:var(--shadow);align-items:center;gap:9px;padding:8px 9px;font-size:13px;font-weight:700;display:flex;position:absolute}.material-upload-notice.is-success{background:#dff7a9}.material-upload-notice.is-error{background:#ffceda}.canvas-clipboard-notice{bottom:calc(var(--canvas-dock-top) + 58px)}.material-upload-notice>span{overflow-wrap:anywhere;flex:1;min-width:0}.material-upload-notice>button{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);cursor:pointer;place-items:center;width:34px;min-width:34px;height:34px;padding:0;transition:transform .12s cubic-bezier(.23,1,.32,1);display:grid}.material-upload-notice>button:active{transform:scale(.95)}.empty-state{z-index:2;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);max-width:460px;box-shadow:var(--shadow);pointer-events:none;text-align:center;padding:clamp(24px,5vw,52px);position:relative}.empty-state-label{background:var(--cornflower);letter-spacing:.12em;padding:7px 10px;font-size:12px;font-weight:700;display:inline-block}.empty-state h2{letter-spacing:-.08em;margin:20px 0 6px;font-size:clamp(34px,6vw,64px);line-height:.95}.empty-state p{margin:0;font-size:clamp(18px,2.5vw,24px);font-weight:700}.guest-join-page{background:radial-gradient(circle at 18% 72%,#ffb6c9 0 82px,transparent 84px),radial-gradient(circle at 86% 18%,var(--yellow) 0 118px,transparent 120px);grid-template-rows:auto minmax(0,1fr);min-height:100dvh;padding:clamp(22px,4vw,54px);display:grid}.guest-join-brand{justify-content:space-between;align-items:center;gap:18px;display:flex}.guest-invite-badge{border:1px solid var(--line);border-radius:var(--radius);background:var(--cornflower);min-height:40px;box-shadow:var(--shadow);letter-spacing:.08em;white-space:nowrap;align-items:center;padding:0 12px;font-size:11px;font-weight:700;display:inline-flex}.guest-join-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:min(100%,760px);box-shadow:var(--shadow);gap:12px;margin:auto;padding:clamp(28px,5vw,58px);display:grid;position:relative}.guest-join-card:after{border:1px solid var(--line);background:var(--lime);content:"";width:74px;height:32px;position:absolute;top:-17px;right:clamp(22px,6vw,60px);transform:rotate(3deg)}.guest-join-icon{border:1px solid var(--line);border-radius:var(--radius);width:66px;height:66px;box-shadow:var(--shadow);background:#ffb6c9;place-items:center;margin-bottom:12px;display:grid}.guest-join-card .empty-state-label{width:fit-content}.guest-join-card h1{overflow-wrap:anywhere;letter-spacing:-.075em;max-width:650px;margin:10px 0 0;font-size:clamp(42px,8vw,82px);line-height:.9}.guest-join-card>p{color:#505761;max-width:590px;margin:2px 0 18px;font-size:clamp(16px,2vw,20px);font-weight:700;line-height:1.4}.guest-join-card form{gap:9px;display:grid}.guest-join-card label{font-size:13px;font-weight:700}.guest-name-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.guest-name-row input{border:1px solid var(--line);border-radius:var(--radius);width:100%;min-width:0;min-height:52px;color:var(--ink);background:#f7f9fc;padding:0 14px}.guest-name-row input::placeholder{color:#777d87}.dialog-backdrop{z-index:100;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#2331497a;justify-content:flex-end;padding:clamp(12px,2.5vw,30px);display:flex;position:fixed;inset:0}.dialog{border:1px solid var(--line);border-radius:var(--radius);height:100%;box-shadow:var(--shadow);background:#f8f9fc;flex-direction:column;padding:clamp(20px,3vw,32px);display:flex;overflow:hidden}.dialog--column{width:min(100%,560px)}.dialog--list{width:min(100%,600px)}.dialog--gallery{width:min(100%,680px)}.dialog--workspace{width:min(100%,clamp(720px,52vw,1040px))}.dialog-body{min-height:0}.dialog-body--scrolls{overscroll-behavior:contain;flex:1;overflow-y:auto}.dialog--loading{align-content:center;justify-items:center;gap:10px;display:grid}.dialog-header,.dialog-heading{align-items:center;display:flex}.dialog-header{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;gap:16px;padding-bottom:18px}.dialog-heading{gap:14px;min-width:0}.dialog-icon{border:1px solid var(--line);border-radius:var(--radius);width:52px;height:52px;box-shadow:var(--shadow);flex:none;place-items:center;display:grid}.dialog-icon--cornflower{background:var(--cornflower)}.dialog-icon--lime{background:var(--lime)}.dialog-icon--pink{background:#ffb6c9}.dialog-eyebrow{border:1.5px solid var(--ink);border-radius:var(--radius);background:var(--yellow);font-weight:700}.dialog-eyebrow--label{letter-spacing:.12em;padding:5px 7px;font-size:9px;display:inline-block}.dialog-eyebrow--banner{border-radius:var(--radius);width:fit-content;box-shadow:var(--shadow);letter-spacing:.11em;border-width:2px;padding:9px 11px;font-size:12px;line-height:1;display:inline-flex}.dialog-heading h2{letter-spacing:-.06em;margin:7px 0 0;font-size:clamp(27px,4vw,38px);line-height:.95}.export-explainer{color:#505761;margin:20px 0 16px;font-size:14px;font-weight:700;line-height:1.45}.export-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);grid-template-columns:48px minmax(0,1fr);gap:12px;margin-bottom:14px;padding:14px;display:grid}.export-card-icon{border:1px solid var(--line);border-radius:var(--radius);place-items:center;width:48px;height:48px;display:grid}.export-card-icon.is-image{background:#ffb6c9}.export-card-icon.is-notebook{background:var(--cornflower)}.export-card-heading{align-content:center;gap:2px;display:grid}.export-card-heading>strong{font-size:17px}.export-card-heading>span{color:#626977;font-size:12px;font-weight:700}.export-scope-options{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.export-scope-options>label{border-radius:var(--radius);cursor:pointer;background:#f7f9fc;border:2px solid #c6ceda;align-items:flex-start;gap:9px;min-width:0;padding:10px;display:flex}.export-scope-options>label.is-selected{border-color:var(--ink);background:#fff5c7}.export-scope-options input{width:17px;height:17px;accent-color:var(--selection);flex:none;margin:1px 0 0}.export-scope-options span{gap:2px;min-width:0;display:grid}.export-scope-options strong{font-size:13px}.export-scope-options small{color:#626977;font-size:10px;font-weight:700;line-height:1.3}.export-card>.primary-button,.export-card>.secondary-button,.export-notebook-select,.export-empty-note{grid-column:1/-1}.export-card>.primary-button,.export-card>.secondary-button{width:100%}.export-notebook-select{gap:6px;font-size:12px;font-weight:700;display:grid}.export-notebook-select select{border:1px solid var(--line);border-radius:var(--radius);width:100%;min-height:46px;color:var(--ink);font:inherit;background:#f7f9fc;padding:0 12px}.export-empty-note{border-radius:var(--radius);color:#626977;border:2px dashed #9ca6b5;margin:0;padding:12px;font-size:12px;font-weight:700;line-height:1.4}.export-progress,.export-message{border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:10px;padding:12px;font-size:12px;font-weight:700;display:flex}.export-progress{background:var(--yellow);grid-template-columns:minmax(0,1fr) auto;display:grid}.export-progress>div{border:1.5px solid var(--ink);background:var(--surface);border-radius:999px;grid-column:1/-1;height:8px;overflow:hidden}.export-progress i{background:var(--selection);transform-origin:0;width:100%;height:100%;transition:transform .16s;display:block}.export-progress button{color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.export-message.is-error{color:#8b1731;background:#fff0f3}.export-message.is-success{background:#dff5b5}.math-template-group{gap:12px;margin-top:24px;display:grid}.ggb-import-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--workspace);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;display:grid}.ggb-import-card h3,.ggb-import-card h4,.ggb-import-card p{margin:0}.ggb-import-card p{color:#526174;margin-top:3px;font-size:13px}.ggb-import-pick,.ggb-import-actions button{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:44px;color:var(--ink);font:inherit;font-weight:700}.ggb-import-pick{justify-content:center;align-items:center;gap:8px;padding:0 13px;display:inline-flex}.ggb-import-error{grid-column:1/-1;color:#a8283d!important}.ggb-import-report{border-top:1px solid #9facbf;grid-column:1/-1;padding-top:12px}.ggb-import-report ul{color:#526174;max-height:180px;margin:10px 0;padding-left:22px;font-size:13px;overflow:auto}.ggb-import-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.ggb-import-actions button{padding:0 13px}.ggb-import-actions button:last-child{background:#d9f455}@media(max-width:640px){.ggb-import-card{grid-template-columns:1fr}.ggb-import-report,.ggb-import-error{grid-column:1}}.math-template-group-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;padding-bottom:7px;display:flex}.math-template-group-heading h3{margin:0;font-size:18px}.math-template-group-heading span{color:var(--muted);font-size:13px;font-weight:700}.math-template-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.math-template-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-rows:150px auto auto;gap:10px;min-width:0;padding:10px;display:grid}.math-template-thumb{background:var(--paper);place-items:center;min-width:0;display:grid;overflow:hidden}.math-template-preview{width:100%;height:100%;display:block;overflow:hidden}.basic-shape-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.basic-shape-grid li{display:flex}.basic-shape-card{border-radius:var(--radius);color:#172033;cursor:pointer;font:inherit;background:#fffefa;border:2px solid #dbe2ee;flex-direction:column;align-items:center;gap:8px;width:100%;min-height:128px;padding:14px;font-weight:700;display:flex}.basic-shape-card:hover,.basic-shape-card.is-active{border-color:var(--selection);background:#f1f6ff}.basic-shape-card svg{stroke:currentColor;stroke-linejoin:round;stroke-width:5px;width:72px;height:72px}.line-pattern-list{align-items:center;gap:6px;display:flex}.line-pattern-button{border-radius:var(--radius);cursor:pointer;height:var(--control-size);width:calc(var(--control-size) + 12px);background:0 0;border:2px solid #0000;justify-content:center;align-items:center;padding:0 8px;display:inline-flex}.line-pattern-button.is-active{border-color:var(--selection);background:#eef4ff}.line-pattern-button span{border-top:3px solid #172033;width:30px;display:block}.line-pattern-button--dashed span{border-top-style:dashed}.line-pattern-button--dotted span{border-top-style:dotted}.math-template-copy h4,.math-template-copy p{margin:0}.math-template-copy h4{font-size:16px;line-height:1.1}.math-template-copy p{color:var(--muted);margin-top:5px;font-size:13px;line-height:1.35}.math-template-insert{border:1px solid var(--line);border-radius:var(--radius);background:var(--lime);min-height:40px;color:var(--ink);cursor:pointer;justify-content:center;align-items:center;gap:7px;font-weight:800;display:inline-flex}.math-template-insert:active{transform:translate(2px,2px)}.math-construction-editor{z-index:14;top:max(92px,calc(var(--canvas-chrome-height,70px) + 12px));width:min(390px,100% - 32px);max-height:calc(100% - var(--control-size,44px) - 42px);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);flex-direction:column;display:flex;position:absolute;right:16px;overflow-y:auto}.math-construction-editor>*{flex-shrink:0}.math-construction-editor>.math-advanced{padding:8px 14px}.math-edit-presence{z-index:13;top:calc(var(--control-size,44px) + 22px);pointer-events:none;gap:5px;display:grid;position:absolute;right:16px}.math-edit-presence span{border:2px solid var(--selection);background:var(--surface);color:#172033;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:700}.math-editor-header,.math-editor-section-heading,.math-editor-command>div,.math-editor-properties{align-items:center;display:flex}.math-editor-header{border-bottom:1px solid var(--line);background:var(--workspace);justify-content:space-between;gap:12px;padding:14px 16px}.math-editor-header h2,.math-editor-header p,.math-editor-section-heading h3,.math-editor-empty{margin:0}.math-editor-header h2{font-size:20px}.math-editor-header p{color:#526174;margin-top:2px;font-size:13px}.math-editor-eyebrow{color:var(--selection);letter-spacing:.08em;font-size:10px;font-weight:700}.math-editor-done,.math-editor-yield,.math-editor-tools button,.math-editor-command button,.math-editor-properties button{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:44px;color:var(--ink);font:inherit;font-weight:700}.math-editor-done,.math-editor-yield,.math-editor-properties button{justify-content:center;align-items:center;gap:7px;padding:0 12px;display:inline-flex}.math-editor-done{background:var(--selection);color:var(--surface)}.math-editor-yield{border:1px solid var(--line);border-radius:var(--radius);background:var(--lime);min-height:44px;color:var(--ink);font:inherit;font-weight:700}.math-editor-tools{scrollbar-width:thin;border-bottom:1px solid #c7ced8;flex-wrap:wrap;flex-shrink:0;gap:7px;padding:10px 12px;display:flex}.math-editor-tools button{flex:none;padding:0 11px;font-size:13px}.math-editor-tools button[aria-pressed=true]{border-color:var(--selection);background:var(--selection);color:var(--surface)}.math-editor-tool-status,.math-editor-tool-message{color:#526174;border-bottom:1px solid #c7ced8;margin:0;padding:7px 12px;font-size:12px}.math-editor-tool-message{color:#a8283d;font-weight:700}.math-editor-algebra{flex:none;min-height:0;padding:12px;overflow:auto}.math-editor-section-heading{justify-content:space-between;margin-bottom:8px}.math-editor-section-heading span{color:#526174;font-size:12px}.math-editor-object-list{gap:6px;display:grid}.math-editor-object{border-radius:var(--radius);background:var(--surface);min-height:44px;color:var(--ink);text-align:left;border:1px solid #c7ced8;grid-template-columns:12px 1fr auto;align-items:center;gap:9px;padding:7px 9px;display:grid}.math-editor-object[aria-pressed=true]{border:2px solid var(--selection);background:#eff5ff}.math-editor-object em{color:#d9364f;font-size:11px}.math-editor-object-mark{border-radius:50%;width:10px;height:10px}.math-editor-empty{color:#526174;text-align:center;padding:18px 8px}.math-editor-properties{background:#f7f9fc;border-top:1px solid #c7ced8;flex-wrap:wrap;gap:8px;padding:10px 12px}.math-editor-properties label{color:#526174;gap:3px;font-size:11px;font-weight:700;display:grid}.math-editor-properties input[type=text],.math-editor-properties input:not([type]){min-height:38px}.math-editor-properties input[type=color]{width:44px;height:38px}.math-editor-properties select,.math-editor-properties input[type=range]{min-height:44px}.math-editor-properties .is-delete{color:#a8283d}.math-editor-command{border-top:1px solid var(--line);gap:6px;padding:12px;display:grid}.math-editor-command label{font-size:12px;font-weight:700}.math-editor-command>div{gap:7px}.math-editor-command input,.math-editor-properties input{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-width:0;color:var(--ink);font:inherit}.math-editor-command input{flex:auto;min-height:44px;padding:0 11px}.math-editor-command button{background:var(--lime);padding:0 12px}.math-editor-command p[role=alert]{color:#a8283d;margin:0;font-size:12px}@media(max-width:720px){.math-construction-editor{border-radius:var(--radius);width:auto;max-height:min(72%,620px);inset:auto 8px 8px}.math-editor-header{padding:10px 12px}}.math-visibility-controls{align-items:center;gap:8px;min-width:0;display:flex}.math-part-visibility-list{gap:4px;max-width:min(420px,45vw);padding:2px;display:flex;overflow-x:auto}.math-part-visibility-button{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:32px;height:32px;color:var(--ink);cursor:pointer;flex:0 0 32px;place-items:center;font-size:12px;font-weight:800;display:grid}.math-part-visibility-button[aria-pressed=false]{background:var(--paper);color:var(--muted);text-decoration:line-through}.template-panel-message{border:1px solid var(--line);border-radius:var(--radius);margin:14px 0 0;padding:11px 13px;font-size:12px;font-weight:700}.template-panel-message.is-error{color:#7d1530;background:#ffceda}.template-panel-message.is-success{background:#dff5b5}.template-library-heading{justify-content:space-between;align-items:center;margin:22px 0 12px;display:flex}.template-library-heading>div{align-items:center;gap:8px;display:flex}.template-library-heading h3{margin:0;font-size:17px}.template-library-heading>span{border:1px solid var(--line);background:var(--cornflower);border-radius:50%;place-items:center;width:32px;height:32px;font-size:12px;font-weight:700;display:grid}.template-library-empty{border:2px dashed var(--ink);border-radius:var(--radius);background:var(--surface);color:#5d6571;text-align:center;align-content:center;justify-items:center;gap:7px;min-height:145px;padding:22px;display:grid}.template-library-empty .loading-mark{width:30px;height:30px;margin-bottom:4px}.template-library-empty strong{color:var(--ink);font-size:17px}.template-library-empty p{margin:0;font-size:12px;font-weight:700}.template-card-list{gap:11px;padding:0 4px 8px 0;display:grid}.template-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-width:0;box-shadow:var(--shadow);grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:13px;padding:13px;display:grid;position:relative;overflow:hidden}.template-card:before{background:var(--yellow);content:"";width:9px;position:absolute;inset:0 auto 0 0}.template-card-accent-1:before{background:#ffb6c9}.template-card-accent-2:before{background:var(--cornflower)}.template-card-index{border:1px solid var(--line);border-radius:var(--radius);letter-spacing:.08em;background:#f0f3f8;place-items:center;width:38px;height:38px;margin-left:5px;font-size:11px;font-weight:800;display:grid}.template-card-copy{gap:3px;min-width:0;display:grid}.template-card-copy h3{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;overflow:hidden}.template-card-copy p,.template-card-copy small{color:#626977;margin:0;font-size:10px;font-weight:700}.template-card-actions{align-items:center;gap:7px;display:flex}.template-card-placement select{border:1px solid var(--line);border-radius:var(--radius);max-width:190px;min-height:40px;font:inherit;background:#fff;padding:0 9px;font-size:11px;font-weight:700}.template-add-button,.template-delete-button{border:1px solid var(--line);border-radius:var(--radius);min-height:40px;color:var(--ink);cursor:pointer;font:inherit;justify-content:center;align-items:center;gap:6px;font-size:11px;font-weight:800;display:inline-flex}.template-add-button{background:var(--lime);box-shadow:var(--shadow);padding:0 11px}.template-delete-button{background:#ffceda;width:40px;padding:0}.snapshot-current-generation{border:1px solid var(--line);border-radius:var(--radius);background:var(--yellow);justify-content:space-between;align-items:center;margin-top:20px;padding:11px 14px;font-size:13px;font-weight:700;display:flex}.snapshot-current-generation strong{letter-spacing:.08em;font-size:20px}.dialog-explainer{color:#4f5662;margin:16px 0;font-size:14px;line-height:1.5}.snapshot-primary-actions{border-bottom:1px solid var(--line);grid-template-columns:1fr;gap:10px;padding-bottom:20px;display:grid}.snapshot-primary-actions .primary-button,.snapshot-primary-actions .secondary-button{width:100%}.dialog-error{border:1px solid var(--line);border-radius:var(--radius);background:#ffceda;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;margin-top:16px;padding:10px;font-size:13px;font-weight:700;display:grid}.dialog-error button{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);cursor:pointer;min-height:34px;font-size:12px;font-weight:700}.ai-draft{--ai-draft-width:min(360px, calc(100% - var(--canvas-gutter-left) - var(--canvas-edge-right)));--ai-draft-height:min(300px, calc(100% - var(--canvas-chrome-top) - var(--canvas-dock-top)));z-index:8;top:clamp(var(--canvas-chrome-top),calc(var(--ai-draft-y) + 16px),max(var(--canvas-chrome-top),calc(100% - var(--ai-draft-height) - var(--canvas-dock-top))));left:clamp(var(--canvas-gutter-left),calc(var(--ai-draft-x) + 16px),max(var(--canvas-gutter-left),calc(100% - var(--ai-draft-width) - var(--canvas-edge-right))));width:var(--ai-draft-width);max-height:var(--ai-draft-height);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);color:var(--ink);background:#eef8d2;display:grid;position:absolute;overflow:hidden}.ai-draft.is-left{left:clamp(var(--canvas-gutter-left),calc(var(--ai-draft-x) - var(--ai-draft-width) - 16px),max(var(--canvas-gutter-left),calc(100% - var(--ai-draft-width) - var(--canvas-edge-right))))}.ai-draft-header{border-bottom:1px solid var(--line);background:var(--lime);justify-content:space-between;align-items:center;min-height:42px;padding:6px 7px 6px 12px;display:flex}.ai-draft-header span{align-items:center;gap:7px;font-size:13px;font-weight:800;display:inline-flex}.ai-draft-header button{border-radius:var(--radius);color:currentColor;cursor:pointer;background:0 0;border:0;place-items:center;width:30px;height:30px;padding:0;display:grid}.ai-draft-header button:hover{background:#ffffff8c}.ai-draft-header button:focus-visible{outline:3px solid var(--selection);outline-offset:2px}.ai-draft-content{gap:12px;padding:14px;display:grid;overflow:auto}.ai-draft-content>p{white-space:pre-wrap;margin:0;line-height:1.45}.ai-draft-actions{grid-template-columns:1fr auto;gap:10px;display:grid}.ai-draft-actions .primary-button,.ai-draft-actions .secondary-button{white-space:nowrap;min-width:0;min-height:40px;padding:8px 11px}.ai-panel-status{border:1px solid var(--line);border-radius:var(--radius);background:var(--yellow);padding:12px;font-weight:700}@media(pointer:coarse){.ai-draft-header button{width:44px;height:44px}.ai-draft-actions .primary-button,.ai-draft-actions .secondary-button{min-height:44px}}.snapshot-list-heading{justify-content:space-between;align-items:center;margin:22px 0 12px;display:flex}.snapshot-list-heading>strong{font-size:17px}.snapshot-list-heading>span{border:1px solid var(--line);background:var(--lime);border-radius:50%;place-items:center;width:30px;height:30px;font-size:12px;font-weight:700;display:grid}.snapshot-loading,.snapshot-empty{border:2px dashed var(--ink);border-radius:var(--radius);background:var(--surface);color:#515866;text-align:center;align-content:center;justify-items:center;gap:8px;min-height:170px;padding:24px;display:grid}.snapshot-loading .loading-mark{width:30px;height:30px;margin:0 0 4px}.snapshot-empty strong{color:var(--ink);font-size:18px}.snapshot-empty p{margin:0;font-size:13px}.snapshot-list{gap:10px;min-height:0;margin:0;padding:0 4px 8px 0;list-style:none;display:grid;overflow-y:auto}.snapshot-list li{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.snapshot-card-copy{gap:4px;min-width:0;display:grid}.snapshot-card-copy>span{border-radius:var(--radius);letter-spacing:.05em;text-transform:uppercase;background:#e2e9f5;width:fit-content;padding:3px 6px;font-size:10px;font-weight:700}.snapshot-card-copy>strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.snapshot-card-copy>small{color:#626977;font-size:11px;font-weight:700}.snapshot-list .small-action-button{flex:none;align-items:center;gap:6px;display:inline-flex}.guest-link-status{border:1px solid var(--line);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:16px;min-height:50px;margin-top:22px;padding:0 14px;font-size:13px;font-weight:700;display:flex}.guest-link-status.is-active{background:var(--lime)}.guest-link-status.is-inactive{background:#e6ebf3}.guest-link-status strong{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);letter-spacing:.08em;place-items:center;min-width:44px;min-height:28px;font-size:10px;display:grid}.guest-invitation-list{gap:10px;margin:18px 0 0;padding:0;list-style:none;display:grid}.guest-invitation-list li{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.guest-invitation-actions{align-items:center;gap:8px;display:flex}.guest-invitation-identity{gap:2px;min-width:0;display:grid}.guest-invitation-identity strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.guest-invitation-identity small{color:#565c66;letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:700}.guest-invitation-link{grid-template-columns:minmax(0,1fr) auto;gap:8px;min-width:0;display:grid}.guest-invitation-link input{border:1px solid var(--line);border-radius:var(--radius);width:100%;min-width:0;min-height:44px;color:var(--ink);background:#f7f9fc;padding:0 12px;font-size:12px}.guest-invitation-elsewhere{color:#565c66;align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.guest-invitation-form{gap:9px;margin-top:18px;display:grid}.guest-invitation-form label{font-size:13px;font-weight:700}.guest-invitation-form input{border:1px solid var(--line);border-radius:var(--radius);width:100%;min-width:0;min-height:52px;color:var(--ink);background:#f7f9fc;padding:0 14px}.teacher-trial-list-section{border-bottom:1px solid var(--line);padding-bottom:18px}.teacher-trial-list-state{border-radius:var(--radius);color:#565c66;text-align:center;border:2px dashed #9aa2af;margin:0;padding:14px;font-size:13px;font-weight:700}.teacher-trial-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.teacher-trial-list li{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.teacher-trial-identity{gap:2px;min-width:0;display:grid}.teacher-trial-identity strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.teacher-trial-identity small,.teacher-trial-expiration{color:#565c66;font-size:11px;font-weight:700}.teacher-trial-identity small{text-transform:uppercase}@media(max-width:620px){.teacher-trial-list li{grid-template-columns:minmax(0,1fr) auto}.teacher-trial-expiration{grid-row:2}.guest-invitation-list li{grid-template-columns:minmax(0,1fr) auto}.guest-invitation-link,.guest-invitation-elsewhere{grid-column:1/-1}}.guest-link-modes{border:1px solid var(--line);border-radius:var(--radius);background:#fffdf7;gap:8px;margin:20px 0 0;padding:12px;display:grid}.guest-link-modes legend{letter-spacing:.08em;text-transform:uppercase;padding:0 6px;font-size:12px;font-weight:700}.guest-link-mode{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.guest-teacher-trial{margin-top:16px}.guest-link-mode input{accent-color:var(--ink);margin-top:3px}.guest-link-mode span{gap:2px;display:grid}.guest-link-mode small{color:#4a4a4a}.guest-link-modes:disabled .guest-link-mode{cursor:default;opacity:.6}.guest-access-actions{grid-template-columns:1fr;gap:10px;padding-top:4px;display:grid}.guest-access-actions .primary-button,.guest-access-actions .secondary-button{width:100%}.call-trigger.is-active{background:var(--lime)}.call-trigger[aria-disabled=true]{cursor:not-allowed;opacity:.48}.call-panel{z-index:90;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));border:3px solid var(--ink);border-radius:var(--radius);width:min(368px,100vw - 36px);height:auto;min-height:360px;max-height:calc(100dvh - 36px);box-shadow:none;background:#f8f9fc;flex-direction:column;display:flex;position:fixed;overflow:hidden}.call-panel.is-minimised{width:min(340px,100vw - 36px);height:auto;min-height:70px}.call-panel.is-screen-focus:not(.is-minimised){width:min(900px,78vw);height:min(680px,76dvh);max-width:calc(100vw - max(10px,env(safe-area-inset-left)) - max(10px,env(safe-area-inset-right)));max-height:calc(100dvh - max(10px,env(safe-area-inset-top)) - max(10px,env(safe-area-inset-bottom)))}.call-panel-header{grid-template-columns:var(--control-size) minmax(0,1fr) var(--control-size) var(--control-size);border-bottom:3px solid var(--ink);background:linear-gradient(#e3eaf5 1px,transparent 1px),linear-gradient(90deg,#e3eaf5 1px,transparent 1px),var(--surface);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background-size:16px 16px;align-items:center;gap:9px;min-height:68px;padding:9px 10px;display:grid}.call-panel-header:active{cursor:grabbing}.is-minimised .call-panel-header{border-bottom:0}.call-panel-mark,.call-panel-icon-button{width:var(--control-size);height:var(--control-size);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);place-items:center;display:grid}.call-panel-mark{background:var(--yellow);box-shadow:var(--shadow)}.call-panel-heading{gap:2px;min-width:0;display:grid}.call-panel-heading strong{letter-spacing:-.025em;font-size:16px}.call-panel-status{color:#535b69;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex;overflow:hidden}.call-panel-status:before{border:1.5px solid var(--ink);background:var(--yellow);content:"";border-radius:50%;flex:none;width:8px;height:8px}.call-panel-status.is-connected:before,.call-panel-status.is-sharing:before{background:var(--lime)}.call-panel-status.is-error:before{background:#ff9db7}.call-panel-icon-button{cursor:pointer;background:#f0f3f8;padding:0}.call-panel-hangup{background:#ff9db7}.call-panel-resize-handle{z-index:7;width:var(--control-size);min-width:44px;height:var(--control-size);cursor:nwse-resize;touch-action:none;background:0 0;border:0;min-height:44px;padding:0;position:absolute;bottom:0;right:0}.call-panel-resize-handle:before,.call-panel-resize-handle:after{border-right:3px solid var(--ink);border-bottom:3px solid var(--ink);content:"";width:13px;height:13px;position:absolute;bottom:7px;right:7px}.call-panel-resize-handle:after{border-width:2px;width:7px;height:7px;bottom:12px;right:12px}.call-panel-body{background-color:#dce6f3;background-image:linear-gradient(#cbd7e8 1px,#0000 1px),linear-gradient(90deg,#cbd7e8 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:20px 20px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;flex-direction:column;flex:1;gap:8px;min-height:0;padding:10px;display:flex;position:relative}.call-live-surface{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex}.call-live-surface[hidden],.is-minimised .call-panel-body{display:none}.call-stage-shell{border:1px solid var(--line);border-radius:var(--radius);background:#171b24;flex:1;min-height:0;position:relative;overflow:hidden}.call-panel:not(.is-screen-focus) .call-stage-shell{flex:1}.call-panel:not(.is-screen-focus) .call-stage{aspect-ratio:16/9;height:auto}.call-stage-shell:after{z-index:1;border-right:2px solid var(--yellow);border-bottom:2px solid var(--yellow);content:"";pointer-events:none;width:12px;height:12px;position:absolute;bottom:8px;right:8px}.call-stage-shell.is-screen-presentation{grid-template-rows:auto 74px;gap:6px;padding:6px;display:grid}.call-stage-shell.is-screen-presentation:after{display:none}.call-stage{overscroll-behavior:contain;scrollbar-width:thin;gap:6px;width:100%;height:100%;min-height:0;display:grid;overflow:auto}.call-stage.is-speaker-view{grid-template-columns:minmax(0,1fr)}.call-stage.is-grid-view{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(108px,1fr);padding:6px}.call-participant-tile{border-radius:var(--radius);color:#fff;contain:layout paint;background:#202633;border:2px solid #0000;min-width:0;min-height:0;position:relative;overflow:hidden}.call-stage.is-speaker-view .call-participant-tile{border:0}.call-stage.is-grid-view .call-participant-tile.is-active-speaker{border-color:var(--lime)}.call-participant-video{object-fit:contain;background:#171b24;width:100%;height:100%;position:absolute;inset:0}.call-participant-tile.is-local:not(.is-screen) .call-participant-video{transform:scaleX(-1)}.call-stage-shell.is-screen-presentation .call-stage>.call-participant-tile.is-screen .call-participant-video{object-fit:contain}.call-participant-avatar{place-items:center;display:grid;position:absolute;inset:0}.call-participant-avatar span{background:var(--selection);width:66px;height:66px;box-shadow:var(--shadow);border:2px solid #fff;border-radius:50%;place-items:center;font-size:25px;font-weight:900;display:grid}.call-participant-avatar svg{box-sizing:content-box;background:#171b24;border:2px solid #fff;border-radius:50%;padding:3px;position:absolute;bottom:calc(50% - 38px);right:calc(50% - 39px)}.call-stage.is-grid-view .call-participant-avatar span{width:46px;height:46px;font-size:18px}.call-participant-caption{z-index:2;border-radius:var(--radius);background:#0d1017d1;border:1.5px solid #0d1017;align-items:center;gap:5px;min-width:0;padding:5px 7px;font-size:11px;font-weight:800;display:flex;position:absolute;bottom:7px;left:7px;right:7px}.call-participant-caption>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.call-participant-caption small{color:var(--yellow);text-transform:uppercase;font-size:9px}.call-participant-caption svg{color:#ff9db7;flex:none;margin-left:auto}.call-screen-badge{z-index:2;border:1.5px solid var(--ink);border-radius:var(--radius);background:var(--lime);color:var(--ink);padding:4px 7px;font-size:10px;font-weight:900;position:absolute;top:7px;left:7px}.call-screen-actions{z-index:3;gap:6px;display:flex;position:absolute;top:7px;right:7px}.call-screen-focus-button,.call-screen-fullscreen-button{width:var(--control-size);height:var(--control-size);border:1.5px solid var(--ink);border-radius:var(--radius);background:var(--yellow);color:var(--ink);cursor:pointer;place-items:center;padding:0;display:grid}.call-screen-fullscreen-button{background:#f0f3f8}.call-participant-tile:fullscreen{width:100vw;min-width:0;height:100vh;min-height:0;padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:#000;border:0;border-radius:0;overflow:hidden}.call-participant-tile:fullscreen::backdrop{background:#000}.call-participant-tile:fullscreen .call-participant-video{object-fit:contain}:is(.call-participant-tile:fullscreen .call-participant-caption,.call-participant-tile:fullscreen .call-screen-badge){display:none}.call-participant-tile:fullscreen .call-screen-actions{top:max(8px,env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right))}.call-participant-tile:fullscreen .call-screen-focus-button{display:none}.call-presentation-filmstrip{overscroll-behavior-inline:contain;scrollbar-width:thin;gap:6px;min-width:0;display:flex;overflow-x:auto}.call-presentation-filmstrip .call-participant-tile{border-color:#3b4352;flex:0 0 94px;width:94px;min-width:94px;height:100%}.call-presentation-filmstrip .call-participant-tile.is-active-speaker{border-color:var(--lime)}.call-presentation-filmstrip .call-participant-avatar span{width:38px;height:38px;font-size:15px}.call-presentation-filmstrip .call-participant-avatar svg{bottom:calc(50% - 27px);right:calc(50% - 28px)}.call-presentation-filmstrip .call-participant-caption{padding:3px 5px;font-size:9px;bottom:4px;left:4px;right:4px}.call-panel.is-screen-focus .call-stage-shell.is-screen-presentation{grid-template-rows:minmax(0,1fr) 96px}.call-panel.is-screen-focus .call-presentation-filmstrip .call-participant-tile{flex-basis:128px;width:128px;min-width:128px}.call-participant-rail{z-index:3;pointer-events:auto;scrollbar-width:none;gap:5px;min-width:0;display:flex;position:absolute;bottom:47px;left:8px;right:8px;overflow-x:auto}.call-participant-rail::-webkit-scrollbar{display:none}.call-participant-chip{background:var(--selection);color:#fff;cursor:pointer;border:2px solid #fff;border-radius:50%;flex:0 0 30px;place-items:center;width:30px;height:30px;padding:0;font-size:10px;font-weight:900;display:grid}.call-participant-chip[aria-pressed=true]{border-color:var(--lime);outline:2px solid var(--lime);outline-offset:1px}.call-stage-empty{color:#fff;text-align:center;align-content:center;justify-items:center;gap:5px;display:grid}.call-stage-empty span{color:#aeb8c9;font-size:11px;font-weight:700}.call-audio-layer,.call-remote-audio{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.call-controls{grid-template-columns:repeat(5,var(--control-size));border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);flex:none;justify-content:center;gap:8px;padding:6px;display:grid}.call-diagnostics{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex;overflow:auto}.call-diagnostics-heading,.call-diagnostic-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.call-diagnostics-heading{justify-content:space-between;align-items:center;gap:10px;padding:8px;display:flex}.call-diagnostics-heading>div,.call-diagnostic-card>div:not(.call-diagnostic-answer){gap:2px;min-width:0;display:grid}.call-diagnostics-heading span,.call-diagnostic-card span,.call-diagnostics-note{color:#535b69;font-size:11px;font-weight:700;line-height:1.35}.call-diagnostic-card{grid-template-columns:28px minmax(0,1fr);align-items:center;gap:7px 9px;padding:9px;display:grid}.call-diagnostic-card>.secondary-button,.call-diagnostic-answer{grid-column:2}.call-diagnostic-card .secondary-button{min-height:44px;padding:5px 9px;font-size:11px}@media(pointer:fine){.call-diagnostic-card .secondary-button{min-height:34px}}.call-diagnostic-card progress{width:100%;height:8px;accent-color:var(--lime)}.call-diagnostic-answer{gap:6px;display:flex}.call-diagnostic-warning{color:#8a4b00!important}.call-diagnostics-note,.call-diagnostics-ready{border:1px solid var(--line);border-radius:var(--radius);background:var(--yellow);align-items:flex-start;gap:6px;margin:0;padding:8px;display:flex}.call-diagnostics-ready{background:var(--lime);color:var(--ink);align-items:center;font-size:12px;font-weight:900}.call-control-button{width:var(--control-size);height:var(--control-size);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);cursor:pointer;background:#edf1f7;place-items:center;padding:0;display:grid}.call-control-button.is-active{background:var(--lime)}.call-control-button:disabled{cursor:wait;opacity:.45}.call-media-error,.call-audio-unlock{border:1px solid var(--line);border-radius:var(--radius);flex:none;font-size:11px;font-weight:800}.call-media-error{background:#ffd2de;align-items:center;gap:6px;padding:6px 8px;display:flex}.call-quality-note{background:var(--yellow);justify-content:space-between}.call-audio-unlock{background:var(--yellow);color:var(--ink);cursor:pointer;padding:7px 9px}.call-panel-state{border:1px solid var(--line);border-radius:var(--radius);background:radial-gradient(circle at 16% 18%,var(--yellow) 0 34px,transparent 36px),#eef2f8;color:var(--ink);text-align:center;align-content:center;justify-items:center;gap:8px;padding:28px;display:grid;position:absolute;inset:10px}.call-panel-state .loading-mark{margin-bottom:8px}.call-panel-state strong{font-size:18px}.call-panel-state span{color:#555d6b;max-width:300px;font-size:12px;font-weight:700;line-height:1.45}.call-panel-error{background:radial-gradient(circle at 84% 20%,#ffb6c9 0 44px,#0000 46px),#eef2f8}.call-panel-error .secondary-button{background:var(--yellow);min-height:42px;margin-top:8px}.call-panel-fallback{place-content:center;align-items:center;gap:8px;height:150px;min-height:150px;padding:20px}@media(hover:hover)and (pointer:fine){:root{--control-size:36px;--control-icon:19px}.primary-button:hover,.secondary-button:hover,.icon-text-button:hover{box-shadow:var(--shadow);transform:translate(2px,2px)}.tool-button:hover:not(.is-active),.square-action-button:hover{background:#f1f4f9;transform:translateY(-1px)}.open-board-button:hover{background:#2b58b7}.call-panel-icon-button:hover{box-shadow:var(--shadow);transform:translate(-1px,-1px)}}@media(max-width:1720px){.canvas-app-shell .danger-button,.export-trigger,.snapshot-trigger,.template-trigger,.invite-trigger,.follow-button,.call-trigger{width:var(--control-size);min-width:var(--control-size);min-height:var(--control-size);gap:0;padding:0;font-size:0}.presence-badge{width:var(--control-size);min-width:var(--control-size);min-height:var(--control-size);justify-content:center;gap:0;padding:0;font-size:0}}@media(max-width:720px){.canvas-app-shell .status-badge{display:none}}@media(max-width:980px){.auth-layout{grid-template-columns:minmax(0,1fr) minmax(330px,.8fr);gap:34px}.library-hero{grid-template-columns:1fr;align-items:start}.board-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){body{background-size:32px 32px}.math-template-grid{grid-template-columns:1fr}.auth-shell,.library-shell{padding:18px}.auth-shell{gap:46px}.auth-layout{grid-template-columns:1fr}.auth-message h1{font-size:clamp(54px,17vw,84px)}.login-card{box-shadow:var(--shadow)}.board-grid,.create-board-row{grid-template-columns:1fr}.create-board-row .primary-button{width:100%}.canvas-app-shell{--canvas-rail-width:0px;--canvas-camera-height:0px;--canvas-dock-top:calc(var(--canvas-edge-bottom) + var(--canvas-camera-height) + var(--canvas-dock-height) + 8px + var(--canvas-rail-height,64px) + var(--canvas-edge))}.canvas-app-shell:has(.canvas-viewport-controls){--canvas-camera-height: calc(max(38px, var(--control-size)) + 12px) }.canvas-app-shell.is-notebook-space:has(.canvas-viewport-controls){--canvas-camera-height: calc(2*max(38px, var(--control-size)) + 20px) }.ink-style-panel,.chrome-tab--dock{bottom:calc(var(--canvas-edge-bottom) + var(--canvas-camera-height))}.ink-style-panel{max-width:calc(100% - var(--canvas-edge-left) - var(--canvas-edge-right))}.canvas-app-shell>.topbar{flex-wrap:wrap}.canvas-app-shell .workspace-heading{flex:auto;min-width:0}.canvas-app-shell .topbar-actions{flex:100%}.workspace-heading .icon-text-button{gap:0;width:46px;min-width:46px;padding:0;font-size:0}.workspace-title{max-width:46vw}.tool-rail{top:auto;right:var(--canvas-edge-right);bottom:calc(var(--canvas-edge-bottom) + var(--canvas-camera-height) + var(--canvas-dock-height) + 8px);left:var(--canvas-edge-left);flex-direction:row;justify-content:flex-start;height:auto;max-height:none;margin:0;overflow:auto hidden}.canvas-app-shell.is-rail-folded{--canvas-rail-width:0px}.chrome-tab--rail{top:auto;bottom:calc(var(--canvas-edge-bottom) + var(--canvas-camera-height) + var(--canvas-dock-height) + 8px);margin:0}.export-scope-options{grid-template-columns:1fr}.tool-divider{width:2px;height:30px;margin:0}.canvas-system-warning{flex-wrap:wrap;align-items:flex-start}.canvas-system-warning span{min-width:calc(100% - 34px)}.dialog-backdrop{padding:8px}.dialog{border-radius:var(--radius);box-shadow:var(--shadow)}.guest-join-page{background:radial-gradient(circle at 8% 82%,#ffb6c9 0 50px,transparent 52px),radial-gradient(circle at 92% 16%,var(--yellow) 0 72px,transparent 74px);padding:18px}.guest-join-card{box-shadow:var(--shadow)}.call-panel{right:max(10px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom));border-radius:var(--radius);width:calc(100vw - 20px);height:auto;min-height:320px;max-height:calc(100dvh - 20px);box-shadow:var(--shadow)}.call-panel.is-minimised{width:min(340px,100vw - 20px);min-height:70px}.call-panel.is-screen-focus:not(.is-minimised){width:calc(100vw - max(10px,env(safe-area-inset-left)) - max(10px,env(safe-area-inset-right)));height:min(620px,72dvh)}}@media(max-width:480px){.public-topbar{flex-wrap:wrap;align-items:flex-start}.public-topbar .topbar-actions{flex-wrap:wrap;min-width:0}.personal-badge,.library-shell .status-badge{display:none}.library-shell .icon-text-button{min-height:42px}.formula-strip{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.formula-strip span{justify-content:center;font-size:14px}.formula-strip span:last-child{display:none}.tool-rail{overscroll-behavior-inline:contain;grid-template-columns:none;grid-auto-columns:44px;grid-auto-flow:column;justify-content:start;overflow-x:auto}.ink-style-panel{justify-content:flex-start;justify-self:stretch;width:100%}.dialog{padding:18px}.dialog-icon{display:none}.template-card{grid-template-columns:40px minmax(0,1fr)}.template-card-actions{grid-column:1/-1;padding-left:5px}.template-add-button{flex:1}.guest-invite-badge{min-height:36px;padding:0 9px;font-size:9px}.guest-name-row{grid-template-columns:1fr}.guest-name-row .primary-button{width:100%}.guest-join-card:after{display:none}.snapshot-list li{flex-direction:column;align-items:stretch}.snapshot-list .small-action-button{justify-content:center}}@media(prefers-reduced-motion:reduce){.primary-button,.secondary-button,.icon-text-button,.tool-button,.notebook-danger-actions>button,.notebook-transfer-button,.notebook-create-button,.notebook-empty-create-button,.material-upload-notice>button{transition:none}.loading-mark{border-right-color:var(--ink);background:var(--cornflower);animation:none}}.pwa-gate-shell{background:radial-gradient(circle at 12% 18%,var(--yellow) 0 64px,transparent 66px),radial-gradient(circle at 88% 82%,#ff79a8 0 82px,transparent 84px),var(--workspace);align-content:center;justify-items:center;gap:28px;min-height:100dvh;padding:24px;display:grid}.pwa-gate-shell>.brand{font-size:clamp(28px,6vw,48px)}.pwa-gate-card{border:3px solid var(--ink);border-radius:var(--radius);width:min(100%,600px);box-shadow:var(--shadow);background:#f8f9fd;grid-template-columns:auto minmax(0,1fr);gap:18px;padding:clamp(22px,5vw,38px);display:grid}.pwa-gate-card h1{margin:3px 0 10px;font-size:clamp(30px,6vw,48px);line-height:.96}.pwa-gate-card p{color:#3f4655;margin:0;line-height:1.5}.pwa-gate-card .primary-button,.pwa-gate-card .secondary-button{grid-column:2;justify-self:start}.pwa-gate-icon,.pwa-notice-mark{border:1px solid var(--line);color:var(--ink);flex:none;place-items:center;display:grid}.pwa-gate-icon{border-radius:var(--radius);background:var(--yellow);width:58px;height:58px;box-shadow:var(--shadow)}.pwa-notice{z-index:1200;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));border:3px solid var(--ink);border-radius:var(--radius);width:min(460px,100vw - 32px);color:var(--ink);box-shadow:var(--shadow);grid-template-columns:auto minmax(0,1fr);gap:13px 15px;padding:16px;display:grid;position:fixed}.pwa-update-notice{background:#e1eaff}.pwa-install-notice{background:var(--yellow)}.pwa-release-notice{background:#eef3ff}.pwa-notice-mark{border-radius:var(--radius);background:#f8f9fd;width:46px;height:46px}.pwa-notice-copy{align-content:center;gap:3px;display:grid}.pwa-notice-copy strong{font-size:17px;line-height:1.1}.pwa-notice-copy span{color:#3f4655;font-size:13px;line-height:1.35}.pwa-release-list{color:#3f4655;gap:5px;margin:6px 0 0;padding:0 0 0 18px;font-size:13px;line-height:1.35;display:grid}.pwa-notice-actions{grid-column:2;align-items:center;gap:13px;display:flex}.pwa-notice-actions .primary-button{min-height:42px;box-shadow:var(--shadow);padding:0 15px;font-size:13px}.pwa-text-button{min-height:40px;color:var(--ink);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:12px;font-weight:700;text-decoration:underline}.pwa-text-button:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.pwa-manual-badge{border:1px solid var(--line);background:#f8f9fd;border-radius:999px;place-items:center;min-height:38px;padding:0 12px;font-size:12px;font-weight:700;display:inline-grid}@media(max-width:540px){.pwa-gate-card{box-shadow:var(--shadow);grid-template-columns:1fr}.pwa-gate-card .primary-button,.pwa-gate-card .secondary-button{grid-column:1;width:100%}.pwa-notice{right:16px;bottom:max(16px,env(safe-area-inset-bottom))}}@media(max-width:720px){.canvas-app-shell.has-lesson-session{--lesson-strip-height:110px}.lesson-strip{flex-wrap:wrap;align-content:center;gap:5px 8px;min-height:102px}.lesson-strip__identity{flex:55%;min-width:0}.lesson-strip__topics{flex-basis:100%;order:3}.lesson-strip__private-plan,.lesson-strip__next{display:none}.lesson-strip__actions{flex:0 auto}.lesson-strip__actions .secondary-button{color:#0000;width:44px;padding-inline:0;overflow:hidden}.lesson-strip__actions .secondary-button:before{content:"＋";color:var(--ink);font-size:22px}.lesson-artifact-capture__bar{flex-wrap:wrap;justify-content:space-between;max-width:none;left:12px;right:12px;transform:none}.lesson-artifact-capture__bar>span{white-space:normal;flex-basis:100%}}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.library-notice{border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);background:#b6ef38;margin:0;padding:14px 16px;font-size:14px;font-weight:700;line-height:1.4}.library-controls{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.library-search{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-width:0;box-shadow:var(--shadow);flex:260px;align-items:center;gap:10px;padding:10px 14px;display:flex}.library-search input{width:100%;min-width:0;color:var(--ink);font:inherit;background:0 0;border:0;outline:none;font-weight:700}.library-sort select,.board-folder-picker select{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;padding:10px 12px;font-weight:700}.library-sort select{box-shadow:var(--shadow)}.folder-rail{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.folder-chip-group{align-items:stretch;display:inline-flex}.folder-chip{margin-left:calc(var(--folder-depth,0) * 14px);border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:14px;font-weight:800;display:inline-flex}.folder-chip.is-open{background:var(--yellow);box-shadow:var(--shadow)}.folder-chip-remove{border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;margin-left:-2px;padding:0 10px;font-size:16px;font-weight:800;line-height:1}.folder-chip-remove:hover:not(:disabled){background:#ffb6c9}.board-folder-picker{margin:14px 0 0;display:block}.board-folder-picker select{width:100%}.board-card-trashed{background:#f2f2f2}.board-card-trashed .board-index{background:#ffb6c9}.notebook-page-preview{border-radius:var(--radius-preview);background:#f5f5f2;border:1px solid #c9cdd3;justify-content:center;align-items:center;width:100%;height:130px;display:flex;overflow:hidden}.notebook-page-preview img{object-fit:contain;max-width:100%;max-height:100%;display:block}.page-open-button:has(.notebook-page-preview),.notebook-open-button:has(.notebook-page-preview){flex-direction:column;align-items:stretch;display:flex}.pdf-import-preview .notebook-page-preview{height:min(46vh,400px)}.pdf-import-preview nav{justify-content:space-between;align-items:center;gap:12px;margin-block:12px 20px;display:flex}.pdf-import-field{gap:8px;margin-block:16px;display:grid}.pdf-import-field input,.pdf-import-field select{width:100%;min-height:var(--control-size);border:1px solid var(--ink);border-radius:var(--radius);font:inherit;padding:8px 10px}.pdf-page-choice{border-radius:var(--radius);border:1px solid #c9cdd3;grid-column:1/-1;gap:10px;min-width:0;padding:12px;display:grid}.export-page-grid{grid-template-columns:repeat(auto-fill,minmax(115px,1fr));grid-auto-rows:max-content;align-content:start;gap:10px;max-height:300px;padding:3px;display:grid;overflow:auto}.pdf-page-choice .export-page-option{border:1px solid var(--line);border-radius:var(--radius-option);cursor:pointer;grid-template-rows:130px auto auto;align-content:start;gap:6px;min-width:0;padding:8px;display:grid}.export-page-option:has(input:checked){background:#eaf1ff;border-color:#2563eb}.export-page-option:focus-within{outline-offset:1px;outline:2px solid #2563eb}.export-page-option>span:not(.notebook-page-preview){min-height:var(--control-size);align-items:center;gap:6px;display:flex}.export-page-option small{overflow-wrap:anywhere}.export-page-option .notebook-page-preview{height:130px}.export-page-pagination{justify-content:space-between;align-items:center;gap:8px;display:flex}.export-page-pagination button{min-height:var(--control-size)}.pdf-page-choice label{min-height:var(--control-size);align-items:center;gap:8px;display:flex}.pdf-page-checkboxes{flex-wrap:wrap;gap:8px;max-height:180px;display:flex;overflow:auto}.pdf-page-checkboxes label{border-radius:var(--radius);border:1px solid #c9cdd3;padding:4px 10px}.pdf-import-hint{color:var(--muted);margin-block:16px;font-size:13px}.ink-settings-toggle{min-width:var(--control-size);min-height:var(--control-size);border:1px solid var(--ink);border-radius:var(--radius);background:var(--surface);cursor:pointer}.ink-custom-color{width:var(--control-size);height:var(--control-size);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;background:conic-gradient(#f33,#ff3,#3f3,#3ff,#33f,#f3f,#f33);padding:4px}.ink-custom-color::-webkit-color-swatch-wrapper{padding:3px}.ink-custom-color::-webkit-color-swatch{border-radius:var(--radius-preview);border:2px solid #fff}.ink-custom-color::-moz-color-swatch{border-radius:var(--radius-preview);border:2px solid #fff}.workspace-more-menu{position:relative}.workspace-more-menu>summary{min-height:var(--control-size);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);cursor:pointer;align-items:center;padding:4px 10px;font-size:13px;display:flex}.workspace-more-actions{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:6px;min-width:190px;padding:10px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.workspace-more-actions .secondary-button{justify-content:flex-start;width:auto;font-size:13px}.workspace-more-actions .topbar-chrome-controls .secondary-button{width:var(--control-size);min-width:var(--control-size);justify-content:center;gap:0;padding:0}.workspace-more-actions .topbar-chrome-controls .secondary-button.cursors-trigger[aria-pressed=true]{background:var(--cornflower)}.page-panel-back{min-height:var(--control-size);text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;grid-column:1/-1}.call-class-content{flex:1;gap:12px;min-width:0;min-height:0;display:flex}.call-class-content>.call-stage-shell{flex:1;min-width:0}.call-view-controls{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:6px;padding:8px 10px;display:flex}.call-view-controls button,.call-chat button,.call-window-return button,.call-unpin{min-height:var(--control-size);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;padding:6px 10px;font-size:13px}.call-view-controls button[aria-pressed=true]{background:var(--lime)}.call-view-controls button:disabled,.call-chat button:disabled{opacity:.55;cursor:default}.call-unread{margin-left:6px;font-weight:800}.call-panel.has-chat:not(.is-minimised){width:min(368px,100vw - 36px);height:min(700px,100dvh - 36px)}.call-panel.is-classroom:not(.is-minimised){max-height:none;width:auto!important;height:auto!important;inset:18px!important}.call-panel.is-classroom .call-stage-shell,.call-panel.is-detached .call-stage-shell,.call-panel.has-chat .call-stage-shell{flex:1}.call-panel.is-classroom .call-stage,.call-panel.is-detached .call-stage,.call-panel.has-chat .call-stage{aspect-ratio:auto;height:100%}.call-panel.is-classroom .call-stage.is-grid-view{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-auto-rows:minmax(90px,1fr)}.call-select-participant{z-index:1;min-height:var(--control-size);color:#0000;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:0;padding:4px 8px;font-size:12px;position:absolute;inset:0}.call-chat{border-left:1px solid var(--line);flex-direction:column;flex:0 0 290px;min-width:0;min-height:0;padding-left:12px;display:flex}.call-chat[hidden]{display:none}.call-chat h3{justify-content:space-between;gap:8px;margin:0 0 10px;font-size:15px;display:flex}.call-chat h3 small{font-size:12px;font-weight:400}.call-chat-messages{overscroll-behavior:contain;flex:1;min-height:80px;overflow-y:auto}.call-chat-message{border-radius:var(--radius);overflow-wrap:anywhere;background:#fff;border:1px solid #d2d7df;margin-bottom:8px;padding:10px}.call-chat-message.is-own{background:#f0f4df}.call-chat-message header{justify-content:space-between;gap:8px;font-size:12px;display:flex}.call-chat-message time{white-space:nowrap;color:#515868}.call-chat-message p{white-space:pre-wrap;margin:5px 0 0;font-size:14px}.call-chat-message a{color:#234eb0;text-decoration:underline}.call-chat-empty{color:#515868;font-size:14px}.call-chat form{flex-direction:column;gap:8px;padding-top:10px;display:flex}.call-chat textarea{resize:vertical;border:1px solid var(--line);border-radius:var(--radius);width:100%;min-height:74px;max-height:150px;color:var(--ink);font:inherit;background:#fff;padding:8px;font-size:14px}.call-chat form button{background:var(--lime);align-self:flex-end}.call-chat>p{margin:6px 0 0;font-size:12px}.call-window-body{margin:0}.call-panel.is-detached:not(.is-minimised){border-radius:0;max-height:none;width:100vw!important;height:100dvh!important;inset:0!important}.call-window-return{z-index:90;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);flex-wrap:wrap;align-items:center;gap:8px;max-width:calc(100vw - 36px);padding:10px;font-size:13px;display:flex;position:fixed;bottom:18px;right:18px}@media(max-width:640px){.call-panel.has-chat .call-class-content{flex-direction:column}.call-panel.has-chat .call-stage-shell{flex:1;min-height:90px}.call-chat{border-left:0;border-top:1px solid var(--line);flex:1.6;padding:8px 0 0}.call-panel.is-classroom .call-stage.is-grid-view{grid-template-columns:repeat(3,minmax(0,1fr))}.call-panel.is-classroom:not(.is-minimised){inset:8px!important}}.call-panel.has-chat:not(.is-classroom):not(.is-detached) .call-class-content{flex-direction:column}.call-panel.has-chat:not(.is-classroom):not(.is-detached) .call-stage-shell{flex:0 0 125px}.call-panel.has-chat:not(.is-classroom):not(.is-detached) .call-chat{border-left:0;border-top:1px solid var(--line);flex:1;padding:8px 0 0}.call-select-participant:hover,.call-select-participant:focus-visible{outline:2px solid var(--lime);outline-offset:-3px}.notebook-delete-actions{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.material-library-nav{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.material-library-nav [aria-current=page]{background:var(--accent,#ffe36b);color:#17191f}.math-figure-inspector{z-index:35;border:1px solid var(--line,#dfe3e8);border-radius:var(--radius);background:#fff;gap:12px;width:min(310px,100vw - 100px);max-height:calc(100dvh - 200px);padding:16px;display:grid;position:absolute;top:92px;right:18px;overflow:auto}.math-figure-inspector header,.math-style-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.math-figure-inspector p{color:#526174;margin:0;font-size:13px;line-height:1.45}.math-figure-inspector label,.math-editor-option,.math-template-detail label{gap:6px;min-width:0;display:grid}.math-figure-inspector select,.math-figure-inspector button,.math-template-detail select,.math-editor-option select{border-radius:var(--radius-control);background:#fff;border:1px solid #dfe3e8;max-width:100%;min-height:44px;padding:8px}.math-figure-inspector button[aria-pressed=true],.math-categories button[aria-pressed=true]{color:var(--selection);border-color:var(--selection);background:#eaf1ff}.math-figure-inspector fieldset{border:0;gap:10px;margin:0;padding:0;display:grid}.math-figure-inspector legend{margin-bottom:10px;font-weight:600}.math-figure-inspector fieldset label,.math-advanced label:has(input[type=checkbox]){align-items:center;gap:8px;min-height:32px;display:flex}.math-categories,.math-starter-tools{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.math-categories button,.math-starter-tools button,.math-editor-more,.math-placement-notice button{border-radius:var(--radius-control);background:#fff;border:1px solid #dfe3e8;min-height:44px;padding:10px 14px}.math-template-detail{gap:16px;display:grid}.math-template-detail h3{margin:0}.math-template-detail>svg{width:100%;height:280px}.math-advanced{border-top:1px solid #dfe3e8;margin-top:16px;padding-top:12px}.math-advanced summary,.math-editor-algebra summary{cursor:pointer;min-height:40px;padding:8px 0;font-weight:600}.math-advanced[open]{gap:12px;display:grid}.math-placement{z-index:25;cursor:crosshair;touch-action:none;position:absolute;inset:0}.math-placement-preview{pointer-events:none;opacity:.75;outline:1px dashed var(--selection);position:absolute}.math-placement-preview svg{width:100%;height:100%;overflow:visible}.math-placement-notice{border-radius:var(--radius-notice);cursor:default;background:#fff;border:1px solid #dfe3e8;align-items:center;gap:16px;padding:8px 12px;display:flex;position:absolute;top:85px;left:50%;transform:translate(-50%)}@media(max-width:600px){.math-figure-inspector{max-height:42dvh;top:auto;bottom:95px;right:12px}.math-placement-notice{width:calc(100% - 110px);font-size:13px;top:100px}}.saved-views{gap:12px;min-width:0;display:grid}.saved-views-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.saved-views-row label{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.saved-views button,.saved-views select,.saved-views input:not([type=checkbox]){max-width:100%;min-height:42px;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:8px 12px}.saved-views select{min-width:150px}.saved-views button{cursor:pointer}.saved-views button[aria-pressed=true]{border:2px solid var(--ink);font-weight:700}.saved-views button:disabled,.saved-views select:disabled{opacity:.55;cursor:default}.saved-views summary{cursor:pointer;padding:8px 0}.saved-views details[open]{gap:10px;display:grid}.saved-views :is(button,input,select,summary):focus-visible{outline:2px solid var(--ink);outline-offset:3px}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
