:root{--color-bg-sidebar:#1b2a49;--color-bg-canvas:#fff;--color-text:#fff;--color-text-muted:#ffffff8c;--color-border:#ffffff2e;--color-border-strong:#ffffff59;--color-surface:#ffffff14;--color-surface-hover:#ffffff24;--color-focus:#4ecdc4;--font-family:"Computer Modern Sans", serif;--color-number-bg:#4ecdc429;--color-number-border:#4ecdc466;--color-number-hover-bg:#4ecdc447;--color-number-hover-border:#4ecdc48c;--color-operator-bg:#f5a62329;--color-operator-border:#f5a62366;--color-operator-hover-bg:#f5a62347;--color-operator-hover-border:#f5a6238c;--color-standard-bg:#6b7fa829;--color-standard-border:#6b7fa866;--color-standard-hover-bg:#6b7fa847;--color-standard-hover-border:#6b7fa88c;--shadow-menu:0 4px 12px #00000040;--color-canvas-text:#1b2a49;--color-canvas-muted:#1b2a498c;--color-canvas-surface:var(--color-bg-canvas);--color-canvas-border:#1b2a491f;--color-canvas-border-strong:#1b2a4933;--canvas-cell-size:48px;--canvas-selection-width:3px;--canvas-grid-width:1px;--shadow-canvas-float:0 2px 10px #1b2a491a}*{box-sizing:border-box}html,body{height:100dvh;font-family:var(--font-family);margin:0;overflow:hidden}button{cursor:pointer;font-family:inherit}.app-container{height:100%;display:flex}.navbar-container{background-color:var(--color-bg-sidebar);flex-direction:column;flex-shrink:0;width:15rem;transition:width .1s;display:flex}.navbar-container.is-collapsed{--collapsed-size:2.5rem;--collapsed-track:calc(var(--collapsed-size) + 1.75rem);width:var(--collapsed-track)}.navbar-divider{border:none;border-top:1px solid var(--color-border);margin:.5rem 0}.navbar-container.is-collapsed .navbar-divider{width:var(--collapsed-size);margin-inline:auto}.brand-container{flex-shrink:0;align-items:flex-end;gap:.625rem;padding:.75rem .5rem;display:flex}.navbar-container.is-collapsed .brand-container{justify-content:center;width:100%;padding-inline:.375rem;display:flex}.brand-icon{width:32px;height:32px;color:var(--color-text)}.brand-name{height:32px;color:var(--color-text);letter-spacing:.1em;align-items:flex-end;font-size:2rem;line-height:.7;display:flex}.navbar-container.is-collapsed .brand-name{display:none}.search-container{flex-shrink:0;align-items:stretch;gap:.375rem;padding:.75rem .5rem;display:flex}.navbar-container.is-collapsed .search-container{justify-content:center;width:100%;padding-inline:.375rem}.search-field{background:var(--color-surface);border:1px solid var(--color-border);border-radius:.5rem;flex:1;align-items:center;gap:.5rem;min-width:0;padding:0 .625rem;display:flex}.search-field:focus-within{background:var(--color-surface-hover);border-color:var(--color-focus)}.navbar-container.is-collapsed .search-field{display:none}.search-icon{width:.875rem;height:.875rem;color:var(--color-text-muted)}.search-input{min-width:0;color:var(--color-text);background:0 0;border:none;outline:none;flex:1;padding:.5rem 0;font-size:.75rem}.search-input::placeholder{color:var(--color-text-muted)}.search-input:focus-visible{outline:none}.navbar-toggle{border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:.5rem;flex-shrink:0;justify-content:center;align-self:stretch;align-items:center;min-width:2.5rem;padding-inline:.5rem;display:flex}.navbar-toggle:hover{background:var(--color-surface-hover);border-color:var(--color-border-strong)}.navbar-toggle:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px}.navbar-container.is-collapsed .navbar-toggle{aspect-ratio:auto;width:100%;padding:.5rem .625rem}.navbar-toggle-icon{width:.875rem;height:.875rem;color:var(--color-text-muted);transition:transform .1s}.navbar-toggle:hover .navbar-toggle-icon{opacity:1}.navbar-container.is-collapsed .navbar-toggle-icon{transform:rotate(180deg)}.toolbox-container{scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--color-text-muted) transparent;direction:rtl;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden auto}.toolbox-group{direction:ltr}.navbar-container.is-collapsed .toolbox-container{scrollbar-gutter:stable;padding-inline-end:.25rem}.toolbox-group{border-bottom:1px solid var(--color-border)}.navbar-container.is-collapsed .toolbox-group{flex-direction:column;align-items:center;display:flex}.toolbox-group.is-search-hidden,.toolbox-group:not(.is-open) .toolbox-items{display:none}.toolbox-group-title{width:100%;color:var(--color-text);text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;justify-content:space-between;align-items:center;padding:.625rem .75rem;font-family:inherit;font-size:1.25rem;display:flex}.toolbox-group-title:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px}.navbar-container.is-collapsed .toolbox-group-title{width:var(--collapsed-size);justify-content:center;padding:.375rem 0}.toolbox-group-title:after{content:"";border-right:1.5px solid var(--color-text-muted);border-bottom:1.5px solid var(--color-text-muted);width:.4rem;height:.4rem;transition:transform 75ms;transform:rotate(-45deg)}.toolbox-group.is-open .toolbox-group-title:after{transform:rotate(45deg)}.navbar-container.is-collapsed .toolbox-group-title:after{display:none}.toolbox-group-label{align-items:center;gap:.5rem;display:flex}.navbar-container.is-collapsed .toolbox-group-label{justify-content:center;width:100%}.toolbox-group-icon{flex-shrink:0;width:2rem;height:2rem}.navbar-container.is-collapsed .toolbox-group-icon{width:2.5rem;height:2.5rem}.navbar-container.is-collapsed .toolbox-group-text{display:none}.toolbox-items{grid-template-columns:repeat(4,minmax(2rem,1fr));gap:.375rem;padding:0 .75rem .75rem;display:grid}.navbar-container.is-collapsed .toolbox-items{width:var(--collapsed-size);grid-template-columns:1fr;max-width:100%;margin-inline:auto;padding:0 0 .5rem}.toolbox-item{box-sizing:border-box;border:1px solid var(--color-border);background:var(--color-surface);min-height:2.5rem;color:var(--color-text);cursor:pointer;border-radius:.375rem;justify-content:center;align-items:center;padding:.125rem;font-family:inherit;font-size:.875rem;line-height:1.1;display:flex}.toolbox-item:hover{background:var(--color-standard-hover-bg);border-color:var(--color-standard-hover-border)}.toolbox-item:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px}.toolbox-item.is-search-hidden{display:none}.navbar-container.is-collapsed .toolbox-item{width:100%;max-width:var(--collapsed-size);min-height:var(--collapsed-size);margin-inline:auto;padding:0}.toolbox-item-wide{grid-column:span 2}.navbar-container.is-collapsed .toolbox-item-wide{grid-column:span 1}.toolbox-item-number{background:var(--color-number-bg);border-color:var(--color-number-border)}.toolbox-item-number:hover{background:var(--color-number-hover-bg);border-color:var(--color-number-hover-border)}.toolbox-item-operator{background:var(--color-operator-bg);border-color:var(--color-operator-border)}.toolbox-item-operator:hover{background:var(--color-operator-hover-bg);border-color:var(--color-operator-hover-border)}.toolbox-item-icon{flex-shrink:0;width:1.25rem;height:1.25rem}.toolbox-item-nested{box-sizing:border-box;border:1px solid var(--color-standard-border);background:var(--color-standard-bg);min-height:2.5rem;color:var(--color-text);border-radius:.375rem;font-family:inherit;font-size:1rem;display:flex;position:relative}.toolbox-item-nested.is-search-hidden{display:none}.navbar-container.is-collapsed .toolbox-item-nested{width:100%;max-width:var(--collapsed-size);min-height:var(--collapsed-size);margin-inline:auto}.toolbox-item-nested.toolbox-item-number{background:var(--color-number-bg);border-color:var(--color-number-border)}.toolbox-item-nested.toolbox-item-number:hover{background:var(--color-number-hover-bg);border-color:var(--color-number-hover-border)}.toolbox-item-nested.toolbox-item-operator{background:var(--color-operator-bg);border-color:var(--color-operator-border)}.toolbox-item-nested.toolbox-item-operator:hover{background:var(--color-operator-hover-bg);border-color:var(--color-operator-hover-border)}.toolbox-item-nested-main,.toolbox-item-nested-toggle,.toolbox-item-nested-menu button{color:inherit;cursor:pointer;font-family:inherit}.toolbox-item-nested-main{width:100%;height:100%;font-size:inherit;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.toolbox-item-nested-main:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px}.navbar-container.is-collapsed .toolbox-item-nested-main{padding:0}.toolbox-item-nested-toggle{width:1rem;height:1rem;color:var(--color-text-muted);background:0 0;border:none;padding:0;font-size:.625rem;line-height:1;position:absolute;bottom:0;right:0}.toolbox-item-nested-toggle:hover{color:var(--color-text)}.toolbox-item-nested-toggle:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px}.navbar-container.is-collapsed .toolbox-item-nested-toggle{width:.75rem;height:.75rem;font-size:.5rem}.toolbox-item-nested-menu{z-index:10;border:1px solid var(--color-border);background:var(--color-bg-sidebar);min-width:100%;box-shadow:var(--shadow-menu);border-radius:.375rem;margin-top:.25rem;padding:.25rem;position:absolute;top:100%;left:0}.navbar-container.is-collapsed .toolbox-item-nested-menu{min-width:100%;margin-top:.25rem;margin-left:0;margin-right:0;top:100%;left:0;right:auto}.toolbox-item-nested-menu button{text-align:center;background:0 0;border:none;border-radius:.25rem;width:100%;padding:.375rem .5rem;font-size:.875rem;display:block}.toolbox-item-nested-menu button:hover,.toolbox-item-nested-menu button[aria-selected=true]{background:var(--color-surface-hover)}.toolbox-item-nested-menu button:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px}.navbar-footer{border-top:1px solid var(--color-border);flex-direction:column;flex-shrink:0;gap:.125rem;padding:.375rem .5rem .625rem;display:flex}.navbar-container.is-collapsed .navbar-footer{padding-inline:.375rem}.navbar-footer-btn{color:#ffffffd1;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:.375rem;align-items:center;gap:.5rem;width:100%;padding:.5rem .625rem;font-family:inherit;font-size:.825rem;display:flex}.navbar-footer-btn:hover{background:var(--color-surface);color:var(--color-text)}.navbar-footer-btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px}.navbar-container.is-collapsed .navbar-footer-btn{justify-content:center;padding:.5rem}.navbar-footer-icon{flex-shrink:0;width:1.5rem;height:1.5rem}#support-icon{color:#ff2c2c;opacity:.8}.navbar-container.is-collapsed .navbar-footer-label{display:none}.mathgrid-canvas{background-color:var(--color-bg-canvas);flex:1;min-width:0;position:relative}#mathgrid{width:100%;height:100%;display:block}.canvas-controls{border:1px solid var(--color-canvas-border);background:var(--color-canvas-surface);min-height:2.5rem;box-shadow:var(--shadow-canvas-float);border-radius:.625rem;align-items:stretch;display:flex;position:absolute;right:1rem;overflow:hidden}.canvas-controls--top{top:1rem}.canvas-controls--bottom{bottom:1rem}.canvas-control-btn{width:2.5rem;color:var(--color-canvas-text);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:1.125rem;font-weight:500;line-height:1;display:flex}.canvas-control-btn:hover{background:#1b2a490d}.canvas-control-btn:active{background:#1b2a4917}.canvas-control-btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:-2px;z-index:1}.canvas-control-icon{width:1.25rem;height:1.25rem}.canvas-control-divider{background:var(--color-canvas-border);flex-shrink:0;width:1px}.zoom-btn{width:2.25rem}.zoom-level{border-inline:1px solid var(--color-canvas-border);min-width:3.25rem;color:var(--color-canvas-text);font-variant-numeric:tabular-nums;letter-spacing:.02em;background:#1b2a4908;justify-content:center;align-items:center;padding:0 .375rem;font-family:inherit;font-size:.75rem;font-weight:600;display:flex}.zoom-level:focus-visible{outline:2px solid var(--color-focus);outline-offset:-2px;z-index:1}@font-face{font-family:Computer Modern Sans;src:url(/assets/cmunss-BjaB-Km9.woff)format("woff");font-weight:400;font-style:normal}@font-face{font-family:Computer Modern Sans;src:url(/assets/cmunsx--Tq4Sim3.woff)format("woff");font-weight:700;font-style:normal}@font-face{font-family:Computer Modern Sans;src:url(/assets/cmunsi-gISGVATM.woff)format("woff");font-weight:400;font-style:italic}@font-face{font-family:Computer Modern Sans;src:url(/assets/cmunso-BZmbNgwp.woff)format("woff");font-weight:700;font-style:italic}
