.math-expression{vertical-align:middle;min-width:0;max-width:100%;color:inherit;align-items:center;display:inline-flex}.math-expression>.visually-hidden{clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.math-expression-drawing{scrollbar-width:thin;max-width:100%;padding:2px 1px;display:inline-flex;overflow:auto hidden}.math-expression-drawing>svg{flex:none;max-width:none;display:block}.math-expression-fallback{overflow-wrap:anywhere;font-family:STIX Two Math,Cambria Math,serif}.math-expression-fallback:before{content:attr(data-fallback)}.math-preview{min-width:0;max-width:100%;color:var(--ink,#24483d);background:#f7faf8;border-inline-start:2px solid #d7e4de;border-radius:3px;flex-direction:column;align-items:flex-start;gap:4px;margin-block:4px;padding:6px 8px;display:flex}.math-example{margin-inline:2px}.interest-math-result{flex-direction:column;align-items:flex-start;gap:4px;min-width:0;display:flex}.math-coordinates{font-variant-numeric:tabular-nums}.math-coordinates sup{font-size:.75em}.point-editor-heading>.math-text-field{flex:1}.math-text-field{width:100%;min-width:0;display:grid;position:relative}.math-text-field>input{box-sizing:border-box;grid-area:1/1;width:100%;min-width:0;height:100%}.math-text-field.is-typeset>input{caret-color:#0000;color:#0000!important}.math-text-value{pointer-events:none;grid-area:1/1;align-items:center;min-width:0;padding:5px 9px;display:flex;overflow:hidden}.math-text-field.is-typeset{min-height:36px}.math-text-value .math-expression{max-height:100px}.data-table-grid .math-text-field{text-align:right}.data-table-grid td .math-text-value{justify-content:flex-end}.data-table-grid th .math-text-value{justify-content:center}.math-select{isolation:isolate;width:100%;min-width:0;display:grid;position:relative}.math-select>select{opacity:0;z-index:1;cursor:pointer;box-sizing:border-box;grid-area:1/1;width:100%;height:100%;min-height:38px}.math-select>.math-select-value{color:#254b40;pointer-events:none;background:#fff;border:1px solid #c8d9d0;border-radius:5px;grid-area:1/1;align-items:center;gap:8px;min-width:0;min-height:38px;padding:6px 30px 6px 10px;display:flex}.math-select-value:after{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:6px;height:6px;position:absolute;inset-inline-end:12px;transform:rotate(45deg)}.math-select-value>.math-option-label{overflow:hidden}.math-select:focus-within>.math-select-value{outline-offset:1px;outline:2px solid #287b6a}.math-select>select:disabled+.math-select-value{opacity:.55}.math-option-label{flex-wrap:wrap;align-items:center;gap:4px;min-width:0;max-width:100%;line-height:1.4;display:flex}.math-option-prefix{font:inherit;opacity:.8;font-size:.85em}.math-select-menu{z-index:10000;box-sizing:border-box;overscroll-behavior:contain;color:#254b40;background:#fff;border:1px solid #b9cfc3;border-radius:7px;margin:0;padding:4px;font:13px/1.4 system-ui,sans-serif;position:fixed;overflow:auto;box-shadow:0 8px 24px #183a2826}.math-select-menu [role=option]{box-sizing:border-box;cursor:pointer;border-radius:4px;align-items:center;min-height:40px;padding:6px 10px;display:flex}.math-select-menu [role=option][data-active=true]{outline-offset:-1px;background:#e9f3ee;outline:1px solid #94b8a7}.math-select-menu [role=option][aria-selected=true]{box-shadow:inset 3px 0 #2e6652}.math-select-menu [role=option][aria-disabled=true]{opacity:.5;cursor:default}@media (pointer:coarse){.math-select-menu [role=option]{min-height:44px}}@media (forced-colors:active){.math-select-value,.math-select-menu{color:canvastext;background:canvas;border-color:buttontext}.math-select-menu [role=option][data-active=true]{outline:2px solid highlight}}body:has(.app-shell[data-contrast=reverse])>.math-select-menu{filter:invert()hue-rotate(180deg)}[data-contrast=high] .math-select-value{color:#111;border-color:#52605b}body:has(.app-shell[data-contrast=high])>.math-select-menu{color:#111;border-color:#52605b}.app-shell [hidden]{display:none!important}.document-title input{color:#405d4c;width:clamp(110px,16vw,240px);font:inherit;background:0 0;border:1px solid #0000;border-radius:5px;padding:6px}.document-title input:hover,.document-title input:focus{background:#f2f5ec;border-color:#d4ddca}.header-actions{gap:10px}.history-controls{display:flex}.history-controls .button{padding:5px 9px;font-size:20px}.save-button{color:#fff;background:#2b5f49;padding:8px 13px}.save-button:hover{background:#1f4938}.workspace-tabs{flex-shrink:0;grid-template-columns:repeat(4,1fr);gap:3px;padding:0 15px 14px;display:grid}.workspace-tabs button{color:#788671;background:0 0;border:1px solid #0000;border-radius:6px;min-height:32px;font-size:11px}.workspace-tabs button[aria-selected=true]{color:#345e42;background:#e7eddf;border-color:#dbe4d1;font-weight:600}.workspace-notice{color:#526f42;background:#edf3e6;border:1px solid #d9e3ce;border-radius:6px;flex-shrink:0;gap:6px;margin:0 15px 12px;padding:9px 17px;font-size:10px;line-height:1.5;display:flex}.workspace-notice button{color:#617f50;background:0 0;border:0;align-self:flex-start;margin-left:auto;font-size:16px}.tool-panel{scrollbar-width:thin;scrollbar-color:#d7ded2 transparent;flex:1;min-height:0;padding:0 17px 24px;overflow-y:auto}.data-toolbar{gap:8px;margin-bottom:14px;display:flex}.data-toolbar .button,.new-document{color:#4e6f3d;background:#eff3e8;border:1px solid #d8e2ce;font-size:11px}.tool-empty{color:#85927c;text-align:center;padding:45px 20px}.tool-empty>span{color:#9baf8b;font-family:Georgia,serif;font-size:45px}.tool-empty h2{color:#5b7452;margin:16px 0 12px;font:25px Georgia,serif}.tool-empty p,.tool-hint{color:#7c8b72;font-size:11px;line-height:1.7}.tool-hint{margin:10px 0 20px}.folder-list{background:#edf1e7;border:1px solid #dce3d4;border-radius:7px;margin:0 0 13px;padding:7px}.folder-row{align-items:center;gap:4px;min-height:31px;display:flex}.folder-row input{width:100%;min-width:0;font:inherit;color:#527043;background:0 0;border:1px solid #0000;border-radius:4px;padding:5px;font-size:11px}.folder-row input:focus{background:#fff;border-color:#c6d4bb}.folder-row button{color:#6b825d;background:0 0;border:0;border-radius:4px;place-items:center;min-width:23px;height:26px;display:grid}.folder-row button:hover{background:#dfe7d8}.folder-assignment{color:#8a977f;background:#f7f9f1;border-top:1px solid #e6ebdf;align-items:center;gap:10px;padding:8px 13px;font-size:10px;display:flex}.folder-assignment select{color:#647d54;width:100%;min-width:0;font:inherit;background:#fcfdf8;border:1px solid #dce4d2;border-radius:4px;padding:4px}.add-folder{color:#839574;background:0 0;border:0;width:100%;padding:11px;font-size:11px}.add-folder:hover{color:#45663b}.table-wrapper{border-radius:8px;margin-bottom:18px;overflow:hidden}.note-card{background:#fcfbf0;border:1px solid #e3dfc4;border-radius:9px;margin-bottom:16px;overflow:hidden}.note-header{color:#a09d72;letter-spacing:1px;justify-content:space-between;align-items:center;padding:9px 13px 0;font-size:9px;display:flex}.note-header button{color:#aaa27b;background:0 0;border:0;font-size:18px}.note-card>input{color:#6f714c;background:0 0;border:0;width:calc(100% - 26px);margin:4px 13px 0;padding:5px 0;font:19px Georgia,serif}.note-card textarea{resize:vertical;color:#7c7e5c;background:0 0;border:0;width:calc(100% - 26px);min-height:85px;max-height:450px;margin:0 13px 12px;font-family:inherit;font-size:12px;line-height:1.8;display:block}.note-card textarea::placeholder{color:#b1b292;font-size:11px}.collapsed-item{color:#88967a;border:1px dashed #dbe3d0;border-radius:6px;margin-bottom:12px;padding:12px;font-size:11px}.document-title,.header-actions,.tool-panel,.expression-list,.library-panel,.analysis-panel{min-width:0}.workspace-notice>span,.tool-hint,.collapsed-item,.expression-error,.relation-note,.dependency-note{overflow-wrap:anywhere}.data-toolbar,.analysis-actions,.library-actions{flex-wrap:wrap}.expression-list,.tool-panel{overscroll-behavior-y:contain}.expression-panel :is(input,textarea,math-field,select){scroll-margin-block:16px}.header-actions .button{white-space:nowrap}.export-button{color:#345b42;background:#f1f5eb;border-color:#ccd9c6}.export-button:hover{background:#e7eedf}.eyebrow,.expression-index,.expression-kind,.panel-heading p,.expression-status,.color-button,.panel-footer,.examples-label,.graph-title,.graph-footer,.viewport-readout,.folder-assignment,.add-folder,.tool-hint,.collapsed-item,.data-table-row-controls,.data-table-color,.data-table-statistics dt,.data-table-fit-note,.data-table-fit-details,.data-table-coefficients dt,.data-table-footnote,.analysis-intro,.analysis-footnote,.analysis-limit,.analysis-value small,.library-hint,.library-entry-info time,.library-empty,.graph-title>span:last-child,.count-badge,.session-badge,.icon-button,.delete-expression,.note-header button{color:#60735e}.expression-status.error-status{color:#a24c35}.workspace-tabs button{color:#53694e}.note-header,.note-card textarea::placeholder{color:#747142}.data-table-grid .data-table-row-number{color:#60735e}@media (width<=1100px){.app-header{flex-wrap:wrap;gap:7px 14px;height:auto;min-height:72px;padding:9px 16px}.document-title{flex:110px}.document-title input{width:100%;min-width:0;max-width:200px}.header-actions{flex-wrap:wrap;gap:4px}.workspace-tabs{padding-left:10px;padding-right:10px}.workspace-tabs button{font-size:11px}}@media (width>=701px) and (height<=650px){.expression-panel{overscroll-behavior-y:contain;overflow-y:auto}.expression-list,.tool-panel{flex:none;min-height:0;overflow:visible}.panel-heading{flex-shrink:0;padding:12px 17px}.panel-heading .eyebrow,.panel-heading p{display:none}.heading-row{margin-top:0}.panel-heading h1{font-size:24px}.workspace-tabs{z-index:4;background:#f8f9f3;padding-top:5px;padding-bottom:5px;position:sticky;top:0}.panel-bottom{flex-shrink:0;padding:12px 16px 0}}@media (pointer:coarse),(width<=700px){.app-shell button,.app-shell summary{min-height:44px}.icon-button,.visibility-button,.folder-row button,.note-header button,.data-table-icon-button,.data-table-row-action .data-table-icon-button,.graph-controls button,.workspace-notice button{min-width:44px;min-height:44px}.app-shell .graph-controls button{width:44px;height:44px}.expression-card-header{height:44px;padding-top:0}.visibility-button{width:44px;height:44px}.expression-input-row{gap:5px;padding-left:8px}.expression-meta{flex-wrap:wrap;gap:6px;min-height:44px;padding:0 12px 6px}.expression-status{min-width:0;font-size:11px;line-height:1.5}.color-button{padding:7px 9px;font-size:11px}.color-palette{grid-template-columns:repeat(3,minmax(44px,1fr));justify-items:center;gap:6px;padding:9px 12px;display:grid}.color-palette button{width:44px;height:44px}.expression-error,.relation-note,.dependency-note{padding-left:12px}.folder-row input,.folder-assignment select,.document-title input,.domain-fields input,.slider-controls input[role=spinbutton],.data-table-title,.data-table-grid input,.data-table-model select,.analysis-fields input,.analysis-fields select,.note-card textarea,.library-import textarea{min-height:44px;font-size:16px}.folder-row{gap:0;min-height:44px}.folder-row input{padding-inline:2px}.folder-assignment{padding-inline:10px;font-size:12px}.slider-play{flex-basis:44px;width:44px;height:44px}.slider-main{gap:7px}.slider-current{width:83px}.slider-range{min-height:44px}.slider-settings summary{justify-content:space-between;align-items:center;gap:6px;font-size:11px;display:flex}.slider-settings summary span{float:none}.slider-settings summary:after,.data-table-fit-details summary:after{content:"⌄";margin-left:6px;font-size:15px}.slider-settings[open] summary:after,.data-table-fit-details[open] summary:after{content:"⌃"}.slider-settings-grid label,.domain-fields label{font-size:11px}.data-table-grid th:last-child,.data-table-row-action{width:44px}.data-table-grid input{height:44px;padding-inline:7px}.data-table-grid thead th{height:38px}.data-table-color input{width:44px;height:44px}.data-table-connect{min-height:44px;font-size:12px}.data-table-connect input{width:20px;height:20px}.data-table-row-controls{flex-wrap:wrap;gap:4px 10px}.data-table-add-row{font-size:12px}.data-table-options{flex-wrap:wrap}.data-table-fit-details summary{align-items:center;display:flex}.library-panel button,.analysis-actions button{font-size:12px}.graph-controls{padding:3px}.help-dialog .icon-button{flex-shrink:0}}@media (width<=700px){#root{height:calc(var(--app-viewport-height,100dvh) - var(--math-keyboard-height,0px));min-height:0}.app-shell{min-height:0;padding-bottom:env(safe-area-inset-bottom);overflow:hidden}.app-header{min-height:0;padding:max(5px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) 4px max(8px, env(safe-area-inset-left));gap:4px 9px}.brand{gap:7px;min-height:44px;font-size:17px}.brand-mark{border-radius:8px;width:30px;height:30px}.brand-mark svg{width:23px;height:23px}.header-divider,.session-badge{display:none}.document-title{flex:100px;justify-content:flex-end;gap:0;display:flex}.document-title input{text-align:right;width:100%;min-width:0;max-width:260px;padding-inline:5px}.header-actions{flex-wrap:wrap;justify-content:space-between;gap:2px;width:100%;margin-left:0;display:flex}.history-controls{flex-shrink:0;display:flex}.history-controls .button{width:44px;min-width:44px;padding-inline:5px;font-size:22px}.header-actions>.button{min-height:44px;padding:7px;font-size:11px}.header-actions>.ghost-button{width:44px;min-width:44px;position:relative}.header-actions>.ghost-button>span{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.header-actions .pause-all{flex:auto}.workspace{min-height:0;display:block;position:relative;overflow:hidden}.workspace>.expression-panel,.workspace>.graph-panel{width:100%;height:100%;min-height:0}.app-shell[data-mobile-view=graph] .workspace>.expression-panel,.app-shell[data-mobile-view=editor] .workspace>.graph-panel{display:none}.expression-panel{overscroll-behavior-y:contain;border:0;overflow-y:auto}.panel-heading{flex-shrink:0;padding:11px 14px 8px}.panel-heading h1{font-size:23px}.panel-heading .eyebrow,.panel-heading p{display:none}.heading-row{margin:0}.workspace-tabs{z-index:4;background:#f8f9f3;padding:4px 8px 7px;position:sticky;top:0}.workspace-tabs button{min-height:44px;padding:5px 2px;font-size:12px}.workspace-notice{align-items:center;margin:0 10px 10px;padding:5px 7px 5px 10px;font-size:11px}.workspace-notice button{flex-shrink:0;align-self:center}.expression-list,.tool-panel{flex:none;min-height:0;padding:0 10px 18px;overflow:visible}.expression-card{margin-bottom:11px}.panel-bottom{flex-shrink:0;padding:12px 12px 0}.examples-label{font-size:10px}.relation-examples{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:8px 0 10px}.relation-examples button{min-width:0;padding:6px;font-size:11px}.panel-footer{min-height:48px;font-size:11px}.keyboard-button{padding:6px 4px;font-size:12px}.library-panel,.analysis-panel{padding:12px 10px}.library-heading h2{font-size:16px}.analysis-heading{flex-wrap:wrap;gap:5px}.analysis-heading h2{font-size:22px}.analysis-fields label{font-size:12px}.analysis-fields input,.analysis-fields select{padding:8px 6px}.analysis-results{padding:10px}.data-toolbar{margin-bottom:10px}.data-toolbar .button,.new-document{font-size:12px}.graph-topbar{flex-shrink:0;gap:8px;height:auto;min-height:52px;padding:3px 10px}.graph-title{gap:6px;min-width:0;font-size:11px}.graph-title>span:last-child{padding-left:6px}.grid-button{flex-shrink:0;padding-inline:9px;font-size:11px}.graph-controls{top:10px;right:10px}.graph-footer{flex-wrap:wrap;flex-shrink:0;gap:3px 10px;height:auto;min-height:44px;padding:6px 10px;font-size:10px;line-height:1.45}.graph-live-status{flex-wrap:wrap;min-width:0;max-width:100%}.viewport-readout{overflow-wrap:anywhere;max-width:100%}.graph-gesture-hint{display:none}.canvas-empty-message{white-space:normal;text-align:center;width:max-content;max-width:calc(100% - 24px);bottom:16px}.help-dialog{width:calc(100% - 20px);max-height:calc(var(--app-viewport-height,100dvh) - 20px);padding:18px}.help-heading{gap:8px}.help-heading h2{font-size:25px}.guide-section code{white-space:normal;overflow-wrap:anywhere}[data-workspace-keyboard=true] .app-header>.brand,[data-workspace-keyboard=true] .app-header>.document-controls,[data-workspace-keyboard=true] .panel-heading{display:none}}.feature-error{color:#663b29;background:#fff8f2;border:1px solid #bd7258;border-radius:8px;margin:12px;padding:14px;font-size:13px;overflow:auto}.feature-error p{margin:8px 0;line-height:1.5}.feature-error>div{flex-wrap:wrap;gap:8px;display:flex}.feature-error .button{color:#503423;border-color:#ac7d69;min-height:44px}.app-shell>.feature-error{z-index:30;max-width:560px;max-height:50dvh;position:fixed;bottom:12px;left:12px;right:12px;box-shadow:0 4px 24px #0002}@media (width<=700px) and (height<=450px){.graph-controls{flex-direction:row;top:7px;right:7px}.graph-controls-divider{width:1px;height:24px;margin:0 3px}.graph-footer{min-height:32px;padding-block:3px}.graph-topbar{min-height:46px}}.session-badge,.grid-button.selected{color:#53665b}.app-shell[data-contrast=reverse]{filter:invert()hue-rotate(180deg);background:#fff}.app-shell[data-contrast=reverse] img{filter:invert()hue-rotate(180deg)}.app-shell[data-contrast=high]{color:#111}.app-shell[data-contrast=high] :is(button,input,select,textarea,fieldset){border-color:#52605b}.app-shell[data-contrast=high] :is(p,label,summary,small,.dependency-note,.settings-hint){color:#263b32}.app-shell[data-display-size=large] math-field{font-size:30px}.app-shell[data-display-size=large] :is(button,input,select,textarea,label,p,summary,.dependency-note){font-size:16px}.app-shell[data-display-size=large] .workspace-editor{--editor-row-height:auto}.workspace-feature{border-block-end:1px solid #d7e0d2;gap:12px;padding:14px;display:grid}.workspace-feature h2{margin:0;font:500 22px Georgia,serif}.workspace-feature :is(p,label){margin:0;font-size:12px;line-height:1.6}.workspace-feature label{gap:6px;display:grid}.workspace-feature :is(input,select,button){color:#294b40;min-width:0;min-height:40px;font:inherit;background:#fff;border:1px solid #aebfb3;border-radius:5px;padding:8px}.workspace-feature svg{width:100%;max-height:280px}.error-explanation,.braille-output{padding:10px 14px;font-size:12px;line-height:1.6}.error-explanation summary{cursor:pointer}.braille-output label{gap:6px;display:grid}.braille-output textarea{box-sizing:border-box;width:100%;font-size:22px}.braille-output button{color:#294b40;background:#fff;border:1px solid #aebfb3;min-height:40px;padding:8px}.curve-intersections label{gap:6px;margin-block:10px;display:grid}.curve-intersections select{width:100%}.workspace-feature :focus-visible{outline-offset:2px;outline:2px solid #367c87}@media (width<=700px){.workspace-feature :is(input,select,button){min-height:44px;font-size:16px}}.braille-actions{flex-wrap:wrap;gap:6px;margin-block:8px;display:flex}.braille-output button:focus-visible,.braille-output :is(input,select,textarea):focus-visible{outline-offset:3px;outline:2px solid #367c87}.braille-editor{border-top:1px solid #ccd9d0;gap:10px;padding-top:12px;display:grid}.braille-editor input:not([type=checkbox]),.braille-editor select{box-sizing:border-box;color:#294b40;background:#fff;border:1px solid #aebfb3;width:100%;min-width:0;min-height:40px;padding:8px}.braille-editor label:has(input[type=checkbox]){align-items:center;gap:8px;display:flex}.braille-output .braille-hint{color:#40594b;font-size:11px;line-height:1.6}.braille-picker{border:1px solid #aebfb3;margin:0;padding:8px}.braille-picker>div{grid-template-columns:44px 44px;gap:6px;margin-bottom:8px;display:grid}.braille-picker button[aria-pressed=true]{color:#fff;background:#315f4a}.braille-error{color:#8a3529}.braille-preview{background:#f0f5ed;border:1px solid #ccd9d0;border-radius:6px;padding:10px}@media (width<=700px){.braille-output :is(button,select,input:not([type=checkbox])){min-height:44px}.braille-output :is(select,input:not([type=checkbox])){font-size:16px}}.folder-row{flex-wrap:wrap}.folder-row[hidden]{display:none}.folder-row>input{flex:1;width:80px}.folder-parent{align-items:center;gap:8px;width:100%;padding:3px 0 6px 28px;font-size:11px;display:flex}.folder-parent select{flex:1;min-width:0;padding:4px}.table-pagination{flex-wrap:wrap;align-items:center;gap:8px;margin-block:10px;display:flex}.table-pagination label{align-items:center;gap:6px;display:flex}.table-pagination input{width:60px}.curve-description label{gap:6px;margin-block:10px;display:grid}.curve-description select{width:100%;min-width:0}.curve-description-table{max-height:360px;overflow:auto}.curve-description-table table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:12px}.curve-description-table th,.curve-description-table td{border-bottom:1px solid #d3dcd0;padding:6px}.data-zoom-fit{color:#294b40;font:inherit;cursor:pointer;background:#fff;border:1px solid #cbd8c7;border-radius:5px;margin:8px 12px;padding:6px 10px;font-size:12px}.data-zoom-fit:disabled{opacity:.45;cursor:default}.data-zoom-fit:focus-visible{outline-offset:2px;outline:2px solid #367c87}@media (width<=700px){.data-zoom-fit{min-height:44px;font-size:14px}}
