/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ../../node_modules/.pnpm/next@15.5.19_@babel+core@7.29.7_@opentelemetry+api@1.9.1_@playwright+test@1.60.0_react-_eb05e3ee0e86d344b435219fadea6eec/node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[10].use[2]!../../node_modules/.pnpm/next@15.5.19_@babel+core@7.29.7_@opentelemetry+api@1.9.1_@playwright+test@1.60.0_react-_eb05e3ee0e86d344b435219fadea6eec/node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[10].use[3]!../../node_modules/.pnpm/@physics-learning+physicslive@file+PhysicsLive+upstream-mathlive-src+dist_b6ad85a973c2340153b172b121a8b9e1/node_modules/@physics-learning/physicslive/physicslive-fonts.css ***!
  \************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* 0.110.0-physics.1 */@font-face{font-display:"swap";font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_AMS-Regular.a79f1c31.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/_next/static/media/KaTeX_Caligraphic-Bold.ec17d132.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Caligraphic-Regular.55fac258.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/_next/static/media/KaTeX_Fraktur-Bold.d42a5579.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Fraktur-Regular.d3c882a6.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/_next/static/media/KaTeX_Main-BoldItalic.6f2bb1df.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/_next/static/media/KaTeX_Main-Bold.c3fb5ac2.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/_next/static/media/KaTeX_Main-Italic.8916142b.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Main-Regular.0462f03b.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/_next/static/media/KaTeX_Math-BoldItalic.572d331f.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/_next/static/media/KaTeX_Math-Italic.f28c23ac.woff2) format("woff2")}@font-face{font-display:"swap";font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(/_next/static/media/KaTeX_SansSerif-Bold.8c5b5494.woff2) format("woff2")}@font-face{font-display:"swap";font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(/_next/static/media/KaTeX_SansSerif-Italic.3b1e59b3.woff2) format("woff2")}@font-face{font-display:"swap";font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_SansSerif-Regular.ba21ed5f.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Script-Regular.03e9641d.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Size1-Regular.eae34984.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Size2-Regular.5916a24f.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Size3-Regular.b4230e7e.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Size4-Regular.10d95fd3.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Typewriter-Regular.a8709e36.woff2) format("woff2")}:root{--ML__static-fonts:true}
/*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ../../node_modules/.pnpm/next@15.5.19_@babel+core@7.29.7_@opentelemetry+api@1.9.1_@playwright+test@1.60.0_react-_eb05e3ee0e86d344b435219fadea6eec/node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[10].use[2]!../../node_modules/.pnpm/next@15.5.19_@babel+core@7.29.7_@opentelemetry+api@1.9.1_@playwright+test@1.60.0_react-_eb05e3ee0e86d344b435219fadea6eec/node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[10].use[3]!../../node_modules/.pnpm/@physics-learning+physicslive@file+PhysicsLive+upstream-mathlive-src+dist_b6ad85a973c2340153b172b121a8b9e1/node_modules/@physics-learning/physicslive/physicslive-static.css ***!
  \*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/* 0.110.0-physics.1 */@font-face{font-display:"swap";font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_AMS-Regular.a79f1c31.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/_next/static/media/KaTeX_Caligraphic-Bold.ec17d132.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Caligraphic-Regular.55fac258.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/_next/static/media/KaTeX_Fraktur-Bold.d42a5579.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Fraktur-Regular.d3c882a6.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/_next/static/media/KaTeX_Main-BoldItalic.6f2bb1df.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/_next/static/media/KaTeX_Main-Bold.c3fb5ac2.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/_next/static/media/KaTeX_Main-Italic.8916142b.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Main-Regular.0462f03b.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/_next/static/media/KaTeX_Math-BoldItalic.572d331f.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/_next/static/media/KaTeX_Math-Italic.f28c23ac.woff2) format("woff2")}@font-face{font-display:"swap";font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(/_next/static/media/KaTeX_SansSerif-Bold.8c5b5494.woff2) format("woff2")}@font-face{font-display:"swap";font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(/_next/static/media/KaTeX_SansSerif-Italic.3b1e59b3.woff2) format("woff2")}@font-face{font-display:"swap";font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_SansSerif-Regular.ba21ed5f.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Script-Regular.03e9641d.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Size1-Regular.eae34984.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Size2-Regular.5916a24f.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Size3-Regular.b4230e7e.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Size4-Regular.10d95fd3.woff2) format("woff2")}@font-face{font-display:"swap";font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/_next/static/media/KaTeX_Typewriter-Regular.a8709e36.woff2) format("woff2")}:root{--ML__static-fonts:true}.ML__container{min-height:auto!important;--_hue:var(--hue,212);--_placeholder-color:var(--placeholder-color,hsl(var(--_hue),40%,49%));--_placeholder-opacity:var(--placeholder-opacity,0.4);--_empty-formula-placeholder-color:var(--empty-formula-placeholder-color,#737373);--_empty-formula-placeholder-opacity:var(--empty-formula-placeholder-opacity,1);--_text-font-family:var(--text-font-family,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif)}.ML__sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.ML__base,.ML__is-inline{display:inline-block}.ML__base{border:0;box-sizing:content-box;cursor:text;font-family:inherit;font-style:inherit;font-weight:inherit;margin:0;outline:0;padding:0;position:relative;text-decoration:none;vertical-align:baseline;visibility:inherit;width:min-content}.ML__strut,.ML__strut--bottom{display:inline-block;min-height:0.5em}.ML__line-box{display:inline-block;vertical-align:baseline}.ML__line-strut{display:inline-block;overflow:hidden;pointer-events:none;width:0}.ML__line-strut--bottom{width:0}.ML__small-delim{font-family:KaTeX_Main}.ML__text-line,.ML__text-root{display:block;width:100%}.ML__text-line{line-height:var(--text-line-height,1.5);min-height:1lh}.ML__text-line--align-left{text-align:left}.ML__text-line--align-center{text-align:center}.ML__text{font-family:var(--_text-font-family);overflow-wrap:anywhere;white-space:pre-wrap;word-break:break-word}.ML__text-line-break:after{content:"";display:inline-block;height:1lh;width:0}.ML__text-line-break--marker{display:inline-block;height:1lh;overflow:hidden;vertical-align:top;white-space:normal;width:0}.ML__text-line-break--marker:after{content:none}.ML__cmr{font-family:KaTeX_Main;font-style:normal}.ML__mathit{font-family:KaTeX_Math;font-style:italic}.ML__mathbf{font-family:KaTeX_Main;font-weight:700}.ML__mathbfit,.lcGreek.ML__mathbf{font-family:KaTeX_Math}.ML__mathbfit{font-style:italic;font-weight:700}.ML__ams,.ML__bb{font-family:KaTeX_AMS}.ML__cal{font-family:KaTeX_Caligraphic}.ML__frak{font-family:KaTeX_Fraktur}.ML__tt{font-family:KaTeX_Typewriter}.ML__script{font-family:KaTeX_Script}.ML__sans{font-family:KaTeX_SansSerif}.ML__series_el,.ML__series_ul{font-weight:100}.ML__series_l{font-weight:200}.ML__series_sl{font-weight:300}.ML__series_sb{font-weight:500}.ML__bold{font-weight:700}.ML__series_eb{font-weight:800}.ML__series_ub{font-weight:900}.ML__series_uc{font-stretch:ultra-condensed}.ML__series_ec{font-stretch:extra-condensed}.ML__series_c{font-stretch:condensed}.ML__series_sc{font-stretch:semi-condensed}.ML__series_sx{font-stretch:semi-expanded}.ML__series_x{font-stretch:expanded}.ML__series_ex{font-stretch:extra-expanded}.ML__series_ux{font-stretch:ultra-expanded}.ML__it{font-style:italic}.ML__shape_ol{-webkit-text-stroke:1px #000;text-stroke:1px #000;color:transparent}.ML__shape_sc{font-feature-settings:"smcp";font-variant:small-caps}.ML__shape_sl{font-style:oblique}.ML__emph{color:#bc2612}.ML__emph .ML__emph{color:#0c7f99}.ML__highlight{background:#edd1b0;color:#007cb2}.ML__center{text-align:center}.ML__left{text-align:left}.ML__right{text-align:right}.ML__label_padding{padding:0 0.5em}.ML__frac-line{min-height:1px;width:100%}.ML__frac-line:after{background:currentColor;box-sizing:content-box;content:"";display:block;forced-color-adjust:preserve-parent-color;margin-top:max(-1px,-0.04em);min-height:max(1px,0.04em);print-color-adjust:exact;transform:translate(0)}@media (forced-colors:active){.ML__frac-line{min-height:0px}}.ML__sqrt,.ML__sqrt-sign{display:inline-block}.ML__sqrt-sign{position:relative}.ML__sqrt-line{display:inline-block;height:max(1px,0.04em);width:100%}.ML__sqrt-line:before{background:currentColor;content:"";display:block;forced-color-adjust:preserve-parent-color;margin-top:min(-1px,-0.04em);min-height:max(1px,0.04em);print-color-adjust:exact;transform:translate(0)}@media (forced-colors:active){.ML__sqrt-line:after{background:#fff!important}}.ML__sqrt-line:after{border-bottom-width:1px;content:" ";display:block;margin-top:-0.1em}.ML__sqrt-index{margin-left:0.27777778em;margin-right:-0.55555556em}.ML__delim-size1{font-family:KaTeX_Size1}.ML__delim-size2{font-family:KaTeX_Size2}.ML__delim-size3{font-family:KaTeX_Size3}.ML__delim-size4{font-family:KaTeX_Size4}.ML__delim-mult .delim-size1>span{font-family:KaTeX_Size1}.ML__delim-mult .delim-size4>span{font-family:KaTeX_Size4}.ML__accent-body{font-family:KaTeX_Main}.ML__accent-combining-char{left:0.24em;position:relative}.ML__latex{direction:ltr;display:inline-block;font-family:inherit;font-size-adjust:none;font-stretch:normal;font-style:normal;font-feature-settings:normal;font-variant-caps:normal;letter-spacing:normal;line-height:1.2;text-align:left;text-indent:0;text-rendering:auto;word-wrap:normal;forced-color-adjust:preserve-parent-color;text-shadow:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap;width:min-content;word-spacing:normal}.ML__latex .style-wrap{position:relative}.ML__latex .ML__left-right,.ML__latex .ML__mfrac{display:inline-block}.ML__latex .ML__vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.ML__latex .ML__vlist-r{display:table-row}.ML__latex .ML__vlist{display:table-cell;position:relative;vertical-align:bottom}.ML__latex .ML__vlist>span{display:block;height:0;position:relative}.ML__latex .ML__vlist>span>span{display:inline-block}.ML__latex .ML__vlist>span>.ML__pstrut{overflow:hidden;width:0}.ML__latex .ML__vlist-t2{margin-right:-2px}.ML__latex .ML__vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.ML__latex .ML__msubsup{text-align:left}.ML__latex .ML__negativethinspace{display:inline-block;height:0.71em;margin-left:-0.16667em}.ML__latex .ML__thinspace{display:inline-block;height:0.71em;width:0.16667em}.ML__latex .ML__mediumspace{display:inline-block;height:0.71em;width:0.22222em}.ML__latex .ML__thickspace{display:inline-block;height:0.71em;width:0.27778em}.ML__latex .ML__enspace{display:inline-block;height:0.71em;width:0.5em}.ML__latex .ML__quad{display:inline-block;height:0.71em;width:1em}.ML__latex .ML__qquad{display:inline-block;height:0.71em;width:2em}.ML__latex .ML__llap,.ML__latex .ML__rlap{display:inline-block;position:relative;width:0}.ML__latex .ML__llap>.ML__inner,.ML__latex .ML__rlap>.ML__inner{position:absolute}.ML__latex .ML__llap>.ML__fix,.ML__latex .ML__rlap>.ML__fix{display:inline-block}.ML__latex .ML__llap>.ML__inner{right:0}.ML__latex .ML__rlap>.ML__inner{left:0}.ML__latex .ML__rule{border:0 solid;box-sizing:border-box;display:inline-block;position:relative}.ML__latex .overline .overline-line,.ML__latex .underline .underline-line{width:100%}.ML__latex .overline .overline-line:before,.ML__latex .underline .underline-line:before{border-bottom-style:solid;border-bottom-width:max(1px,0.04em);content:"";display:block;print-color-adjust:exact}.ML__latex .overline .overline-line:after,.ML__latex .underline .underline-line:after{border-bottom-style:solid;border-bottom-width:max(1px,0.04em);content:"";display:block;margin-top:-1px;print-color-adjust:exact}.ML__latex .ML__stretchy{display:block;left:0;overflow:hidden;position:absolute;width:100%}.ML__latex .ML__stretchy:after,.ML__latex .ML__stretchy:before{content:""}.ML__latex .ML__stretchy svg{display:block;fill:currentColor;fill-opacity:1;fill-rule:nonzero;height:inherit;position:absolute;stroke:currentColor;stroke-dasharray:none;stroke-dashoffset:0;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-width:1;width:100%}.ML__latex .slice-1-of-2{left:0}.ML__latex .slice-1-of-2,.ML__latex .slice-2-of-2{display:inline-flex;overflow:hidden;position:absolute;width:50.2%}.ML__latex .slice-2-of-2{right:0}.ML__latex .slice-1-of-3{left:0;width:25.1%}.ML__latex .slice-1-of-3,.ML__latex .slice-2-of-3{display:inline-flex;overflow:hidden;position:absolute}.ML__latex .slice-2-of-3{left:25%;width:50%}.ML__latex .slice-3-of-3{right:0;width:25.1%}.ML__latex .slice-1-of-1,.ML__latex .slice-3-of-3{display:inline-flex;overflow:hidden;position:absolute}.ML__latex .slice-1-of-1{left:0;width:100%}.ML__latex .ML__nulldelimiter,.ML__latex .ML__op-group{display:inline-block}.ML__latex .ML__op-symbol{position:relative}.ML__latex .ML__op-symbol.ML__small-op{font-family:KaTeX_Size1}.ML__latex .ML__op-symbol.ML__large-op{font-family:KaTeX_Size2}.ML__latex:has(.ML__align_environment),.ML__latex:has(.ML__center_environment),.ML__latex:has(.ML__eqnarray_environment),.ML__latex:has(.ML__gather_environment),.ML__latex:has(.ML__multiline_environment){width:100%}.ML__latex .ML__multiline_environment{display:inline-flex;width:100%}.ML__latex .ML__center_environment{display:inline-flex;justify-content:center;width:100%}.ML__latex .ML__align_environment,.ML__latex .ML__eqnarray_environment,.ML__latex .ML__gather_environment{display:inline-block}.ML__latex .ML__mtable .ML__vertical-separator{box-sizing:border-box;display:inline-block;min-width:1px}.ML__latex .ML__mtable .ML__arraycolsep{display:inline-block}.ML__latex .ML__mtable .col-align-m>.ML__vlist-t{text-align:center}.ML__latex .ML__mtable .col-align-c>.ML__vlist-t{text-align:center}.ML__latex .ML__mtable .col-align-l>.ML__vlist-t{text-align:left}.ML__latex .ML__mtable .col-align-r>.ML__vlist-t{text-align:right}[data-href]{cursor:pointer}.ML__error{background-color:rgba(204,0,65,.1);background-image:radial-gradient(ellipse at center,#cc0041,transparent 70%);background-position:0 100%;background-repeat:repeat-x;background-size:3px 3px;display:inline-block;padding-bottom:3px}.ML__error>.ML__error{background:transparent;padding:0}.ML__placeholder,.ML__structural-placeholder{color:var(--_placeholder-color);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;opacity:var(--_placeholder-opacity);padding-left:0.4ex;padding-right:0.4ex}.ML__empty-formula-placeholder{color:var(--_empty-formula-placeholder-color);font-family:var(--_text-font-family);font-style:normal;opacity:var(--_empty-formula-placeholder-opacity);white-space:nowrap}.ML__notation{box-sizing:border-box;line-height:0;position:absolute}.ML__tooltip-container{position:relative;transform:scale(0)}.ML__tooltip-container .ML__tooltip-content{background:var(--_tooltip-background-color);border:var(--_tooltip-border);border-radius:var(--_tooltip-border-radius);display:inline-table;max-width:400px;padding:12px;position:fixed;visibility:hidden;width:max-content;z-index:2;--_selection-color:var(--_tooltip-color);box-shadow:var(--_tooltip-box-shadow);color:var(--_tooltip-color);opacity:0;transition:opacity 0.15s cubic-bezier(0.4,0,1,1)}.ML__tooltip-container .ML__tooltip-content .ML__text{white-space:normal}.ML__tooltip-container .ML__tooltip-content .ML__base{display:contents}.ML__tooltip-container:hover .ML__tooltip-content{font-size:0.75em;opacity:1;transform:scale(1) translateY(3em);visibility:visible}.ML__bg{background-color:transparent!important}.ML__bg:before{background-color:var(--bg-color);bottom:0;box-sizing:border-box;content:"";left:0;position:absolute;right:0;top:0;z-index:-1}
/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ../../node_modules/.pnpm/next@15.5.19_@babel+core@7.29.7_@opentelemetry+api@1.9.1_@playwright+test@1.60.0_react-_eb05e3ee0e86d344b435219fadea6eec/node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[10].use[2]!../../node_modules/.pnpm/next@15.5.19_@babel+core@7.29.7_@opentelemetry+api@1.9.1_@playwright+test@1.60.0_react-_eb05e3ee0e86d344b435219fadea6eec/node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[10].use[3]!./src/app/globals.css ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
@font-face {
  font-family: "Source Han Sans SC";
  src: url("/assets/fonts/SourceHanSansSC-Regular-2.otf") format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

:root {
  --app-topbar-height: 0px;
  --font-hans: "Source Han Sans SC";
  --ink: #111418;
  --paper: #f1f3f2;
  --muted: #9aa1a4;
  --panel: #161b21;
  --panel-2: #242a31;
  --signal: #f05443;
  --cyan: #62d8ff;
  --amber: #ffcc66;
  --line: rgba(255, 255, 255, 0.16);

  /* 亮色主题 token（试点：学习主页，后续逐页替换硬编码颜色） */
  /* 中性层次：页面底 → 卡片 → 内嵌块 */
  --bg-page: #f5f7fb;
  --bg-card: #ffffff;
  --bg-inset: #f8fafc;
  --bg-inset-strong: #f1f5f9;
  --border-default: #dbe3ef;
  --border-subtle: #e2e8f0;
  --border-strong: #cbd5e1;
  /* 文本层次 */
  --text-primary: #0f172a;
  --text-secondary: #475569;
  --text-muted: #64748b;
  --text-faint: #94a3b8;
  /* 主题蓝：仅用于可交互元素（按钮、链接、选中态） */
  --accent: #2563eb;
  --accent-strong: #1d4ed8;
  --accent-soft: #eff6ff;
  --accent-wash: #f8fbff;
  --accent-border: #bfdbfe;
  --focus-ring: 0 0 0 3px rgba(37, 99, 235, 0.16);
  /* 语义色：仅用于状态表达（完成/进行中/异常） */
  --success: #16a34a;
  --success-strong: #15803d;
  --success-soft: #f0fdf4;
  --warning: #b45309;
  --warning-soft: #fffbeb;
  --danger: #dc2626;
  --danger-strong: #991b1b;
  --danger-soft: #fef2f2;
  /* 卡片投影 */
  --shadow-card: 0 1px 2px rgba(15, 23, 42, 0.05), 0 8px 24px rgba(15, 23, 42, 0.04);
  --shadow-card-hover: 0 2px 4px rgba(15, 23, 42, 0.06), 0 12px 28px rgba(15, 23, 42, 0.08);
}

* {
  box-sizing: border-box;
}

html,
body {
  min-height: 100%;
  margin: 0;
  background: var(--ink);
  color: var(--paper);
  font-family: var(--font-hans), "Microsoft YaHei UI", "Noto Sans SC", "PingFang SC", sans-serif;
}

a {
  color: inherit;
  text-decoration: none;
}

button,
textarea {
  font: inherit;
}

math-field::part(menu-toggle),
math-field::part(virtual-keyboard-toggle),
body > .ML__keyboard {
  display: none !important;
}

.app-shell {
  min-height: 100vh;
  background: #080b0f;
}

.top-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-height: var(--app-topbar-height);
  padding: 18px 28px;
  border-bottom: 1px solid var(--line);
  background: rgba(10, 13, 16, 0.86);
}

.brand {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}

.brand strong {
  font-size: 18px;
  letter-spacing: 0;
}

.brand span {
  color: var(--muted);
  font-size: 12px;
}

.nav-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}

.nav-link,
.command-button {
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.04);
  color: var(--paper);
  cursor: pointer;
  padding: 10px 14px;
}

.nav-link:hover,
.command-button:hover {
  border-color: var(--cyan);
}

.command-button.primary {
  border-color: var(--signal);
  background: var(--signal);
  color: white;
}

.command-button:disabled {
  cursor: not-allowed;
  opacity: 0.42;
}

.page {
  width: min(1440px, 100%);
  margin: 0 auto;
  padding: 32px 28px 56px;
}

.terminal {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
  grid-gap: 28px;
  gap: 28px;
  align-items: stretch;
}

.terminal-main,
.terminal-panel,
.lesson-shell,
.dev-panel {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: rgba(17, 20, 24, 0.82);
}

.terminal-main {
  min-height: 520px;
  padding: 36px;
  position: relative;
  overflow: hidden;
}

.terminal-main::before {
  content: "";
  position: absolute;
  inset: auto -10% 42px 14%;
  height: 5px;
  background: var(--signal);
  transform: skewX(-28deg);
}

.eyebrow {
  color: var(--cyan);
  font-size: 13px;
  font-weight: 700;
}

h1,
h2,
h3 {
  margin: 0;
  letter-spacing: 0;
}

h1 {
  margin-top: 18px;
  font-size: 68px;
  line-height: 0.96;
}

.terminal-main p,
.terminal-panel p,
.lesson-copy {
  color: #cdd3d5;
  line-height: 1.75;
}

.terminal-panel {
  padding: 28px;
}

.metric-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 12px;
  gap: 12px;
  margin-top: 24px;
}

.metric {
  border-left: 3px solid var(--signal);
  background: rgba(255, 255, 255, 0.05);
  padding: 16px;
}

.metric strong {
  display: block;
  font-size: 28px;
}

.metric span {
  color: var(--muted);
  font-size: 12px;
}

.status-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 86px;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  padding: 7px 10px;
  font-size: 12px;
}

.status-pill.ready {
  border-color: var(--signal);
  color: var(--paper);
}

.map-viewport {
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: 6px;
  background:
    radial-gradient(circle at 10% 30%, rgba(98, 216, 255, 0.14), transparent 30%),
    linear-gradient(180deg, #293037, #161b20);
}

.stage-map {
  display: block;
  min-width: 1200px;
  width: 100%;
  height: auto;
}

.stage-node {
  transition: transform 160ms ease;
}

.stage-node:hover {
  transform: translateY(-4px);
}

.stage-node rect {
  stroke-width: 3;
}

.stage-node.available rect,
.stage-node.cleared rect,
.stage-node.perfect rect {
  fill: #f4f6f4;
  stroke: var(--signal);
}

.stage-node.locked rect,
.stage-node.placeholder rect {
  fill: #5b6166;
  stroke: #777f85;
}

.stage-node text {
  fill: var(--ink);
  font-size: 34px;
  font-weight: 800;
  text-anchor: middle;
  dominant-baseline: central;
}

.stage-node.locked text,
.stage-node.placeholder text {
  fill: #d6dadb;
}

.map-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-bottom: 18px;
}

.legend {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  color: var(--muted);
  font-size: 13px;
}

.lesson-shell {
  min-height: 650px;
  display: grid;
  grid-template-rows: 1fr auto;
  overflow: hidden;
}

.lesson-stage {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
  grid-gap: 20px;
  gap: 20px;
  padding: 28px;
  background:
    linear-gradient(135deg, rgba(98, 216, 255, 0.12), transparent 40%),
    #111418;
}

.dialogue-area,
.board-area {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.055);
  padding: 24px;
}

.speaker {
  color: var(--amber);
  font-weight: 800;
  margin-bottom: 14px;
}

.operation-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: flex-end;
  border-top: 1px solid var(--line);
  padding: 18px;
  background: rgba(0, 0, 0, 0.22);
}

.answer-area {
  width: 100%;
  min-height: 180px;
  resize: vertical;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: #0c0f12;
  color: var(--paper);
  padding: 14px;
}

.lesson-page {
  width: 100%;
  max-width: none;
  height: 100vh;
  overflow: hidden;
  padding: 0;
}

.stage-map-page {
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

.vn-shell {
  width: 100%;
  height: 100%;
  min-height: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #050608;
  overflow: hidden;
}

.vn-stage {
  position: relative;
  width: min(100vw, 1920px);
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #050608;
  isolation: isolate;
}

@media (min-aspect-ratio: 16 / 9) {
  .vn-stage {
    width: auto;
    height: 100%;
    max-width: 100%;
  }
}

.vn-background {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.vn-character-layer {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}

.vn-character {
  position: absolute;
  object-fit: contain;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  filter: drop-shadow(0 22px 34px rgba(0, 0, 0, 0.48));
}

.vn-blackboard {
  position: absolute;
  z-index: 2;
  border: 2px solid rgba(215, 229, 220, 0.6);
  background: rgba(19, 37, 31, 0.9);
  box-shadow: inset 0 0 0 4px rgba(255, 255, 255, 0.05), 0 18px 38px rgba(0, 0, 0, 0.38);
  color: #f0f6e6;
  line-height: 1.55;
  overflow: auto;
  overflow-wrap: anywhere;
  padding: 30px 34px;
  white-space: pre-wrap;
}

.vn-blackboard-upperright {
  top: 20px;
  right: 54px;
}

.vn-blackboard-upperleft {
  top: 20px;
  left: 54px;
}

.vn-blackboard-lowerright {
  right: 54px;
  bottom: 430px;
}

.vn-blackboard-lowerleft {
  left: 54px;
  bottom: 430px;
}

.vn-blackboard-center {
  top: 16%;
  left: 50%;
  transform: translateX(-50%);
}

.vn-dialogue-layer {
  position: absolute;
  inset: auto 0 0 0;
  z-index: 3;
  height: 37.8556%;
  background:
    linear-gradient(180deg, rgba(8, 12, 18, 0.2), rgba(8, 12, 18, 0.86) 42%, rgba(8, 12, 18, 0.96)),
    url("/assets/lhgf/LocalTemporaryAssets/lhgf-dialog-gradient.png") center / 100% 100% no-repeat;
  border-top: 1px solid rgba(255, 255, 255, 0.22);
  box-shadow: 0 -24px 38px rgba(0, 0, 0, 0.34);
  padding: 42px 92px 96px;
}

.vn-speaker {
  position: absolute;
  top: 22px;
  left: 92px;
  min-width: 180px;
  border-left: 5px solid #f05443;
  background: rgba(3, 6, 10, 0.72);
  color: #f5d37a;
  font-size: 26px;
  font-weight: 800;
  letter-spacing: 0;
  padding: 8px 18px;
}

.vn-dialogue-text {
  max-width: 1360px;
  min-height: 150px;
  margin-top: 58px;
  color: #f2f5f1;
  font-size: 34px;
  line-height: 1.62;
  overflow-wrap: anywhere;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.7);
  white-space: pre-wrap;
}

.vn-next {
  position: absolute;
  right: 86px;
  bottom: 78px;
  width: 54px;
  height: 54px;
  border: 0;
  background: transparent;
  cursor: pointer;
  opacity: 0.36;
  padding: 0;
}

.vn-next.ready {
  opacity: 1;
  animation: vn-next-pulse 980ms ease-in-out infinite alternate;
}

.vn-next img {
  width: 100%;
  height: 100%;
}

.vn-open-layer,
.vn-result-layer,
.vn-missing-report {
  position: absolute;
  z-index: 5;
  color: #f2f5f1;
}

.vn-open-layer {
  top: 12%;
  left: 50%;
  width: min(1040px, 82%);
  transform: translateX(-50%);
  border: 1px solid rgba(255, 255, 255, 0.24);
  background: rgba(8, 12, 16, 0.9);
  box-shadow: 0 28px 60px rgba(0, 0, 0, 0.52);
  padding: 34px;
}

.vn-open-header span,
.vn-result-layer span,
.vn-missing-report span,
.vn-overlay-header span {
  color: #62d8ff;
  font-size: 14px;
  font-weight: 800;
}

.vn-open-header h2 {
  margin-top: 12px;
  font-size: 30px;
  line-height: 1.45;
}

.vn-open-rubric {
  color: #cdd3d5;
  line-height: 1.7;
}

.vn-open-textarea {
  width: 100%;
  min-height: 260px;
  resize: vertical;
  border: 1px solid rgba(255, 255, 255, 0.24);
  border-radius: 4px;
  background: #0c0f12;
  color: #f2f5f1;
  line-height: 1.7;
  padding: 16px;
}

.vn-open-actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 14px;
  margin-top: 18px;
}

.vn-pending {
  color: #ffcc66;
  font-weight: 800;
}

.vn-overlay {
  position: absolute;
  inset: 0;
  z-index: 8;
  display: grid;
  place-items: center;
  background: rgba(2, 5, 8, 0.68);
}

.vn-overlay-panel {
  width: min(880px, 84%);
  max-height: 72%;
  overflow: auto;
  border: 1px solid rgba(255, 255, 255, 0.26);
  background: rgba(12, 16, 20, 0.96);
  color: #f2f5f1;
  padding: 26px;
}

.vn-overlay-panel.compact {
  width: min(520px, 84%);
}

.vn-overlay-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-bottom: 20px;
}

.vn-record-list {
  display: grid;
  grid-gap: 14px;
  gap: 14px;
}

.vn-record-list article {
  border-left: 3px solid #f05443;
  background: rgba(255, 255, 255, 0.05);
  padding: 14px 16px;
}

.vn-record-list strong {
  color: #f5d37a;
}

.vn-record-list p,
.vn-warning-list p {
  margin: 8px 0 0;
  color: #cdd3d5;
  line-height: 1.65;
}

.vn-warning-list {
  margin-top: 18px;
}

.vn-result-layer,
.vn-missing-report {
  top: 28%;
  left: 50%;
  width: min(720px, 82%);
  transform: translateX(-50%);
  background: rgba(8, 12, 16, 0.86);
  border: 1px solid rgba(255, 255, 255, 0.24);
  padding: 34px;
}

.vn-result-layer h1,
.vn-missing-report h1 {
  margin: 12px 0;
  font-size: 56px;
}

.vn-result-layer p,
.vn-missing-report p {
  color: #cdd3d5;
  line-height: 1.65;
}

@keyframes vn-next-pulse {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(8px);
  }
}

.dev-panel {
  padding: 24px;
}

.warning-list {
  display: grid;
  grid-gap: 10px;
  gap: 10px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

.warning-list li {
  border-left: 3px solid var(--amber);
  background: rgba(255, 204, 102, 0.08);
  padding: 12px 14px;
}

@media (max-width: 860px) {
  h1 {
    font-size: 44px;
  }

  .terminal,
  .lesson-stage {
    grid-template-columns: 1fr;
  }

  .vn-stage {
    width: 100%;
    min-height: calc(100vh - var(--app-topbar-height));
    aspect-ratio: auto;
  }

  .vn-character {
    display: none;
  }

  .vn-blackboard {
    top: 18px;
    right: 18px;
    left: 18px;
    width: auto !important;
    height: 38%;
    font-size: 22px !important;
    padding: 18px;
  }

  .vn-dialogue-layer {
    height: 42%;
    padding: 58px 20px 92px;
  }

  .vn-speaker {
    left: 20px;
    font-size: 18px;
  }

  .vn-dialogue-text {
    font-size: 22px;
    min-height: 120px;
  }

  .vn-open-layer {
    top: 16px;
    width: calc(100% - 28px);
    padding: 20px;
  }

}

