/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@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{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--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-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;--tw-ease:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--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-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;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, 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;--spacing:.25rem;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--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{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::-webkit-file-upload-button{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%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, 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;-webkit-text-decoration:inherit;-webkit-text-decoration: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{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}::-webkit-file-upload-button{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:-webkit-any([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:-webkit-any([multiple],[size])) optgroup option{padding-inline-start:20px}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::-webkit-file-upload-button{margin-inline-end:4px}::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-start:0;padding-block-end:0}::-webkit-datetime-edit-year-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-month-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-day-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-hour-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-minute-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-second-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-millisecond-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-meridiem-field{padding-block-start:0;padding-block-end:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button{-webkit-appearance:button;appearance:button}input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::-webkit-file-upload-button{-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance: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{.\@container{container-type:inline-size}.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}.sticky{position:sticky}.start:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--spacing)}.start:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--spacing)}.start:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--spacing)}.start:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--spacing)}.start\!:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--spacing)}.start\!:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--spacing)}.start\!:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--spacing)}.start\!:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--spacing)}.end:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:var(--spacing)}.end:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:var(--spacing)}.end:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:var(--spacing)}.end:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:var(--spacing)}.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}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.table-cell{display:table-cell}.size-1{width:calc(var(--spacing) * 1);height:calc(var(--spacing) * 1)}.h-40{height:calc(var(--spacing) * 40)}.h-84{height:calc(var(--spacing) * 84)}.h-120{height:calc(var(--spacing) * 120)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.transform\!{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)!important}.resize{resize:both}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.text-wrap{text-wrap:wrap}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.italic\!{font-style:italic!important}.line-through{text-decoration-line:line-through}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.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)}.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,)}.blur\!{--tw-blur:blur(8px)!important;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,)!important}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a)) drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f);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,)}.invert{--tw-invert:invert(100%);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))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}:root{--paper:#f4f0e7;--paper-deep:#eae3d5;--card:#fffdf8;--ink:#18302d;--ink-2:#31504b;--muted:#74827c;--line:#dcd5c8;--forest:#173632;--forest-2:#244943;--coral:#ed6b4f;--coral-dark:#c94f36;--gold:#e8b94d;--sage:#83a88c;--sky:#84a7b9;--lavender:#9a92b3;--shadow:0 20px 54px #23302b14;--soft-shadow:0 8px 24px #23302b12;--sidebar-width:292px;--sidebar-collapsed-width:82px}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{background:radial-gradient(circle at 83% 2%, #e8b94d1c, transparent 26rem), var(--paper);color:var(--ink);margin:0;font-family:Avenir Next,Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif;font-size:15px;line-height:1.65}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}button:focus-visible{outline-offset:3px;outline:3px solid #ed6b4f59}a:focus-visible{outline-offset:3px;outline:3px solid #ed6b4f59}input:focus-visible{outline-offset:3px;outline:3px solid #ed6b4f59}select:focus-visible{outline-offset:3px;outline:3px solid #ed6b4f59}.academy-shell{--active-sidebar-width:var(--sidebar-width);min-height:100vh}.course-sidebar{z-index:30;width:var(--active-sidebar-width);overscroll-behavior-x:none;overscroll-behavior-y:contain;color:#f8f3e7;background:linear-gradient(#ffffff05 1px, transparent 1px), linear-gradient(90deg, #ffffff05 1px, transparent 1px), var(--forest);background-size:20px 20px;border-right:1px solid #ffffff12;flex-direction:column;transition:width .22s,transform .22s;display:flex;position:fixed;top:0;bottom:0;left:0;right:auto;overflow:hidden auto}.course-sidebar::-webkit-scrollbar{width:5px}.course-sidebar::-webkit-scrollbar-thumb{background:#ffffff29;border-radius:999px}.brand-lockup{z-index:2;background:linear-gradient(var(--forest) 78%, #17363200);align-items:center;gap:10px;padding:22px 16px 18px;display:flex;position:sticky;top:0}.brand-mark,.mini-mark{width:40px;height:40px;color:var(--forest);background:var(--gold);border-radius:50% 50% 45% 55%;flex:none;place-items:center;display:grid;transform:rotate(-6deg);box-shadow:inset -4px -5px #00000012}.brand-mark span{font-family:Georgia,serif;font-size:24px;transform:rotate(6deg)}.brand-lockup>div:nth-child(2){flex-direction:column;flex:1;min-width:0;line-height:1.2;display:flex}.brand-lockup strong{letter-spacing:.08em;font-family:Songti SC,STSong,serif;font-size:19px}.brand-lockup small{color:#f8f3e78c;letter-spacing:.13em;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:9px;overflow:hidden}.sidebar-collapse{color:#ffffffb8;cursor:pointer;background:#ffffff0e;border:1px solid #ffffff1f;border-radius:9px;flex:none;place-items:center;width:28px;height:28px;padding:0;transition:color .16s,background .16s;display:grid}.sidebar-collapse:hover{color:var(--forest);background:var(--gold)}.sidebar-collapse span{margin-top:-2px;font-family:Georgia,serif;font-size:22px;line-height:1}.sidebar-close{color:#fff;background:0 0;border:0;margin-left:auto;font-size:26px;display:none}.journey-summary{color:inherit;text-align:left;cursor:pointer;background:#ffffff0e;border:1px solid #ffffff17;border-radius:16px;align-items:center;gap:13px;margin:2px 18px 20px;padding:14px;transition:background .18s,transform .18s;display:flex}.journey-summary:hover{background:#ffffff17;transform:translateY(-1px)}.progress-ring{background:conic-gradient(var(--gold) var(--progress), #ffffff1f 0);border-radius:50%;flex:none;place-items:center;width:58px;height:58px;display:grid}.progress-ring:before{content:"";background:#24413e;border-radius:50%;width:44px;height:44px;position:absolute}.progress-ring span{z-index:1;font-size:15px;font-weight:800;position:relative}.progress-ring small{font-size:9px}.journey-summary>div:last-child{flex-direction:column;min-width:0;line-height:1.35;display:flex}.journey-summary>div:last-child small{color:#ffffff8c;font-size:10px}.journey-summary>div:last-child strong{margin:2px 0;font-size:13px}.journey-summary>div:last-child span{color:var(--gold);font-size:10px}.lesson-navigation{width:100%;min-width:0;padding:0 10px 22px;overflow-x:hidden}.lesson-stage{--stage-color:var(--gold);min-width:0;padding:8px 0 14px}.lesson-stage.stage-1{--stage-color:var(--sky)}.lesson-stage.stage-2{--stage-color:var(--coral)}.lesson-stage.stage-3{--stage-color:var(--sage)}.lesson-stage.stage-4{--stage-color:var(--lavender)}.stage-title{align-items:center;gap:10px;min-width:0;padding:4px 8px 9px;display:flex}.stage-title>span{border:1px solid var(--stage-color);place-items:center;width:28px;height:28px;display:grid}@supports (color:color-mix(in lab, red, red)){.stage-title>span{border:1px solid color-mix(in srgb, var(--stage-color), transparent 45%)}}.stage-title>span{color:var(--stage-color);border-radius:9px;font-size:10px;font-weight:800}.stage-title>div{flex-direction:column;min-width:0;line-height:1.25;display:flex}.stage-title strong{letter-spacing:.05em;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12px;overflow:hidden}.stage-title small{color:#ffffff6b;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:2px;font-size:9px;overflow:hidden}.stage-lessons{gap:4px;min-width:0;margin:0;padding:0;display:grid;position:relative}.stage-lessons:before{display:none}.stage-lessons>button{color:#ffffffad;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:11px;align-items:center;gap:10px;width:100%;min-width:0;padding:9px 10px;transition:background .16s,color .16s;display:flex;position:relative}.stage-lessons>button:hover,.stage-lessons>button.active{color:#fff;background:#ffffff13}.stage-lessons>button.active{border-color:#ffffff14}.stage-lessons>button:before{content:"";background:0 0;border-radius:0 3px 3px 0;width:3px;position:absolute;top:9px;bottom:9px;left:0}.stage-lessons>button.active:before{background:var(--stage-color);box-shadow:none}.stage-lessons>button>span{color:#ffffff8c;background:#ffffff0f;border-radius:9px;flex:none;place-items:center;width:28px;height:28px;font-size:10px;font-weight:800;display:grid}.stage-lessons>button.done>span{color:var(--forest);background:var(--stage-color)}.stage-lessons>button>div{flex-direction:column;flex:1;align-items:flex-start;gap:1px;min-width:0;line-height:1.3;display:flex}.stage-lessons strong{text-overflow:ellipsis;white-space:nowrap;width:100%;max-width:100%;font-size:11px;font-weight:600;overflow:hidden}.stage-lessons small{color:#ffffff5c;white-space:nowrap;font-size:8px}.sidebar-note{color:#ffffffad;border:1px dashed #ffffff24;border-radius:12px;align-items:center;gap:10px;margin:auto 18px 20px;padding:12px;display:flex}.sidebar-note>span{color:var(--gold);font-size:22px}.sidebar-note p{flex-direction:column;margin:0;line-height:1.35;display:flex}.sidebar-note strong{font-size:10px}.sidebar-note small{color:#ffffff6b;margin-top:2px;font-size:9px}.sidebar-scrim{display:none}.academy-main{min-width:0;margin-left:var(--active-sidebar-width);transition:margin-left .22s}@media (min-width:901px){.academy-shell.sidebar-collapsed{--active-sidebar-width:var(--sidebar-collapsed-width)}.sidebar-collapsed .brand-lockup{gap:4px;padding:20px 7px 17px}.sidebar-collapsed .brand-mark{width:36px;height:36px}.sidebar-collapsed .brand-lockup>div:nth-child(2),.sidebar-collapsed .journey-summary>div:last-child,.sidebar-collapsed .stage-title>div,.sidebar-collapsed .stage-lessons>button>div,.sidebar-collapsed .sidebar-note{display:none}.sidebar-collapsed .sidebar-collapse{width:24px;height:28px;margin-left:auto}.sidebar-collapsed .journey-summary{border-radius:14px;justify-content:center;margin:2px 8px 14px;padding:7px}.sidebar-collapsed .progress-ring{width:50px;height:50px}.sidebar-collapsed .progress-ring:before{width:38px;height:38px}.sidebar-collapsed .progress-ring span{font-size:12px}.sidebar-collapsed .lesson-navigation{padding-left:9px;padding-right:9px}.sidebar-collapsed .lesson-stage{padding:6px 0 10px}.sidebar-collapsed .stage-title{justify-content:center;padding:3px 0 7px}.sidebar-collapsed .stage-title>span{border-radius:50%;width:27px;height:27px}.sidebar-collapsed .stage-lessons>button{justify-content:center;gap:0;padding:6px}.sidebar-collapsed .stage-lessons>button>span{border-radius:11px;width:34px;height:34px}.sidebar-collapsed .stage-lessons>button:before{top:8px;bottom:8px}.sidebar-collapsed .course-sidebar::-webkit-scrollbar{width:0}}.topbar{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f4f0e7e6;border-bottom:1px solid #18302d17;align-items:center;gap:20px;height:70px;padding:0 30px;display:flex;position:sticky;top:0}.menu-button{cursor:pointer;background:0 0;border:0;font-size:22px;display:none}.lab-navigation{flex:1;justify-content:center;gap:5px;min-width:0;display:flex}.lab-navigation button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:7px;padding:8px 12px;transition:color .16s,background .16s;display:flex}.lab-navigation button span{border-radius:50%;place-items:center;width:22px;height:22px;font-family:Georgia,serif;font-size:15px;display:grid}.lab-navigation button b{white-space:nowrap;font-size:11px;font-weight:700}.lab-navigation button:hover,.lab-navigation button.active{color:var(--forest);background:#18302d11}.lab-navigation button.active span{color:#fff;background:var(--forest)}.audio-status{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:#ffffff85;border-radius:999px;flex:none;align-items:center;gap:7px;padding:8px 11px;display:flex}.audio-status span{color:var(--coral);font-family:monospace;font-size:11px}.audio-status b{font-size:10px;font-weight:700}.audio-status.ready{color:var(--forest);background:#83a88c21;border-color:#83a88c8c}.academy-content{width:min(100%,1260px);min-height:calc(100vh - 140px);margin:0 auto;padding:42px 48px 90px}.eyebrow,.card-kicker{color:var(--coral-dark);letter-spacing:.18em;text-transform:uppercase;margin:0 0 10px;font-size:10px;font-weight:800}.lesson-hero{background:var(--card);min-height:390px;box-shadow:var(--shadow);border:1px solid #18302d1a;border-radius:26px;grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);display:grid;position:relative;overflow:hidden}.lesson-hero:after{content:"";border:38px solid #e8b94d17;border-radius:50%;width:210px;height:210px;position:absolute;bottom:-90px;right:28%}.lesson-hero-copy{z-index:2;flex-direction:column;justify-content:center;padding:54px 56px;display:flex;position:relative}.lesson-meta{flex-wrap:wrap;gap:7px;margin-bottom:16px;display:flex}.lesson-meta span{border:1px solid var(--line);color:var(--muted);background:var(--paper);border-radius:999px;padding:4px 9px;font-size:9px;font-weight:700}.lesson-hero h1,.lab-heading h1{color:var(--ink);letter-spacing:-.04em;margin:0;font-family:Songti SC,STSong,Noto Serif SC,Georgia,serif;font-size:clamp(36px,4.3vw,62px);font-weight:700;line-height:1.13}.lesson-hero-copy>p:last-of-type{max-width:650px;color:var(--ink-2);margin:20px 0 0;font-size:16px;line-height:1.8}.hero-actions,.step-actions,.ear-actions{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.primary-action,.secondary-action{cursor:pointer;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:9px;min-height:43px;padding:10px 17px;font-size:11px;font-weight:800;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.primary-action{color:#fff;background:var(--coral);box-shadow:0 8px 18px #ed6b4f33}.primary-action:hover:not(:disabled),.secondary-action:hover:not(:disabled){transform:translateY(-2px)}.primary-action:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.secondary-action{border-color:var(--line);color:var(--ink-2);background:0 0}.secondary-action:hover{background:#ffffffa6}.primary-action.full{width:100%}.lesson-visual{background:radial-gradient(circle at 72% 20%, #ffffff42, transparent 6rem), linear-gradient(145deg, var(--gold), #d9a83a);min-height:390px;position:relative;overflow:hidden}.lesson-visual:before,.lesson-visual:after{content:"";border-radius:50%;position:absolute}.lesson-visual:before{border:36px solid #ffffff1f;width:210px;height:210px;top:-70px;right:-55px}.lesson-visual:after{background:#1736321a;width:190px;height:190px;bottom:-75px;left:-70px}.staff-lines{gap:20px;display:grid;position:absolute;top:34%;left:0;right:0;transform:rotate(-7deg)scale(1.15)}.staff-lines i{background:#17363230;height:1px}.lesson-number{z-index:2;color:var(--forest);flex-direction:column;align-items:flex-end;display:flex;position:absolute;bottom:28px;right:30px}.lesson-number small{letter-spacing:.2em;font-size:9px;font-weight:900}.lesson-number strong{font-family:Georgia,serif;font-size:84px;line-height:.92}.lesson-number span{color:var(--gold);background:var(--forest);border-radius:999px;margin-top:12px;padding:5px 10px;font-size:9px;font-weight:800}.floating-note{z-index:3;color:var(--forest);place-items:center;font-family:Georgia,serif;display:grid;position:absolute}.note-one{font-size:62px;top:78px;left:18%;transform:rotate(-9deg)}.note-two{width:28px;height:28px;color:var(--coral);background:var(--coral);border-radius:50%;font-size:0;top:177px;left:47%}.note-three{font-size:42px;top:210px;left:22%;transform:rotate(12deg)}.lesson-roadmap{border:1px solid var(--line);color:var(--muted);background:#fffdf885;border-radius:16px;justify-content:center;align-items:center;gap:15px;margin:24px 0 76px;padding:18px 24px;display:flex}.roadmap-label{color:var(--ink-2);letter-spacing:.1em;margin-right:auto;font-size:10px;font-weight:800}.lesson-roadmap>div{align-items:center;gap:6px;display:flex}.lesson-roadmap b{color:#fff;background:var(--forest);border-radius:50%;place-items:center;width:26px;height:26px;font-size:8px;display:grid}.lesson-roadmap span{font-size:10px;font-weight:700}.lesson-roadmap>i{background:var(--line);width:28px;height:1px}.section-heading{justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:26px;display:flex}.section-heading h2,.practice-intro h2,.quiz-heading h2{letter-spacing:-.03em;margin:0;font-family:Songti SC,STSong,serif;font-size:clamp(27px,3vw,39px);line-height:1.25}.section-heading>p{max-width:380px;color:var(--muted);margin:0 0 4px;font-size:11px}.concept-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:82px;display:grid}.concept-cards article{border:1px solid var(--line);background:#fffdf8b3;border-radius:18px;min-height:150px;padding:27px 28px 24px 72px;position:relative;overflow:hidden}.concept-cards article:after{content:"";border:14px solid #e8b94d1a;border-radius:50%;width:74px;height:74px;position:absolute;bottom:-28px;right:-28px}.concept-cards article>span{width:30px;height:30px;color:var(--forest);background:#e8b94d4d;border-radius:10px;place-items:center;font-family:Georgia,serif;font-size:13px;font-weight:800;display:grid;position:absolute;top:25px;left:25px}.concept-cards article:nth-child(2)>span{background:#84a7b94d}.concept-cards article:nth-child(3)>span{background:#ed6b4f3b}.concept-cards article:nth-child(4)>span{background:#83a88c4d}.concept-cards p{z-index:1;color:var(--ink-2);margin:0;font-size:13px;line-height:1.9;position:relative}.steps-section{margin-bottom:82px;scroll-margin-top:95px}.step-workspace{border:1px solid var(--line);background:var(--card);box-shadow:var(--soft-shadow);border-radius:22px;grid-template-columns:310px minmax(0,1fr);display:grid;overflow:hidden}.step-tabs{border-right:1px solid var(--line);background:#eee8dc;flex-direction:column;padding:14px;display:flex}.step-tabs button{width:100%;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:13px;align-items:center;gap:12px;padding:14px;display:flex}.step-tabs button.active{color:var(--forest);background:var(--card);box-shadow:0 5px 16px #18302d12}.step-tabs button>span{border:1px solid var(--line);border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-size:10px;font-weight:800;display:grid}.step-tabs button.active>span{color:#fff;border-color:var(--coral);background:var(--coral)}.step-tabs button>div{flex-direction:column;min-width:0;line-height:1.35;display:flex}.step-tabs small{letter-spacing:.12em;font-size:8px}.step-tabs strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.active-step-card{min-height:320px;padding:46px 52px;position:relative}.step-counter{color:#18302d26;font-family:Georgia,serif;font-size:50px;font-weight:800;line-height:1;position:absolute;top:26px;right:30px}.step-counter span{font-size:16px}.active-step-card h3{max-width:70%;margin:0 0 16px;font-family:Songti SC,serif;font-size:28px}.active-step-card>p:not(.card-kicker){max-width:680px;color:var(--ink-2);white-space:pre-line;margin:0;font-size:14px;line-height:1.9}.practice-section{grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:16px;margin-bottom:82px;scroll-margin-top:90px;display:grid}.practice-intro,.practice-list{border:1px solid var(--line);background:var(--card);border-radius:20px;padding:34px}.practice-intro{background:var(--forest);color:#fff}.practice-intro .eyebrow{color:var(--gold)}.practice-intro h2{color:#fff;font-size:31px}.practice-intro>p:not(.eyebrow){color:#ffffffad;margin:14px 0 25px;font-size:12px}.success-criteria{background:#ffffff0f;border:1px solid #ffffff17;border-radius:13px;align-items:flex-start;gap:11px;padding:15px;display:flex}.success-criteria>span{width:25px;height:25px;color:var(--forest);background:var(--gold);border-radius:50%;flex:none;place-items:center;font-size:10px;font-weight:900;display:grid}.success-criteria>div{flex-direction:column;display:flex}.success-criteria small{color:#ffffff73;letter-spacing:.12em;font-size:8px}.success-criteria strong{margin-top:3px;font-size:10px;line-height:1.55}.practice-list{align-content:center;gap:10px;display:grid}.practice-list button{width:100%;color:var(--ink-2);background:var(--paper);text-align:left;cursor:pointer;border:1px solid #0000;border-radius:13px;align-items:flex-start;gap:13px;padding:14px;display:flex}.practice-list button:hover{border-color:var(--line)}.practice-list button.checked{color:var(--muted);background:#83a88c1f}.practice-list button>span{border:1px solid var(--line);background:var(--card);border-radius:9px;flex:none;place-items:center;width:27px;height:27px;font-size:10px;font-weight:800;display:grid}.practice-list button.checked>span{color:#fff;border-color:var(--sage);background:var(--sage)}.practice-list p{margin:2px 0 0;font-size:11px;line-height:1.65}.quiz-section{border:1px solid var(--line);background:var(--card);box-shadow:var(--soft-shadow);border-radius:24px;overflow:hidden}.quiz-heading{color:#fff;background:var(--forest);justify-content:space-between;align-items:center;gap:30px;padding:36px 40px;display:flex}.quiz-heading .eyebrow{color:var(--gold)}.quiz-heading h2{color:#fff}.quiz-heading>div:first-child>p:last-child{color:#ffffff8c;margin:9px 0 0;font-size:10px}.quiz-score{flex-direction:column;align-items:flex-end;display:flex}.quiz-score small{color:#ffffff80;font-size:9px}.quiz-score strong{color:var(--gold);font-family:Georgia,serif;font-size:43px;line-height:1}.quiz-score span{color:#ffffff6b;font-size:16px}.quiz-list{gap:0;padding:10px 40px;display:grid}.quiz-list article{border-bottom:1px solid var(--line);padding:28px 0}.question-title{align-items:flex-start;gap:12px;display:flex}.question-title>span{width:30px;height:30px;color:var(--coral-dark);background:#ed6b4f1f;border-radius:9px;flex:none;place-items:center;font-size:9px;font-weight:900;display:grid}.question-title h3{margin:3px 0 17px;font-size:14px}.quiz-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-left:42px;display:grid}.quiz-options button{border:1px solid var(--line);width:100%;color:var(--ink-2);text-align:left;cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:9px;padding:10px 12px;display:flex}.quiz-options button:hover:not(:disabled){border-color:var(--coral)}.quiz-options button:disabled{cursor:default}.quiz-options button>span{width:22px;height:22px;color:var(--muted);background:var(--paper);border-radius:7px;flex:none;place-items:center;font-size:9px;font-weight:800;display:grid}.quiz-options button>b{margin-left:auto}.quiz-options button.correct{border-color:var(--sage);color:#315b3f;background:#83a88c1c}.quiz-options button.wrong{color:var(--coral-dark);background:#ed6b4f17;border-color:#ed6b4f8c}.quiz-explanation{border-left:3px solid var(--gold);color:var(--muted);background:#e8b94d14;margin:13px 0 0 42px;padding:11px 13px;font-size:10px}.lesson-finish{border:1px dashed var(--line);background:var(--paper);border-radius:16px;justify-content:space-between;align-items:center;gap:22px;margin:24px 40px 38px;padding:19px;display:flex}.lesson-finish.ready{background:#83a88c14;border-color:#83a88c99}.lesson-finish>div{align-items:center;gap:13px;display:flex}.lesson-finish>div>span{color:#fff;background:var(--sage);border-radius:50%;flex:none;place-items:center;width:39px;height:39px;font-size:18px;display:grid}.lesson-finish p{flex-direction:column;margin:0;display:flex}.lesson-finish strong{font-size:12px}.lesson-finish small{color:var(--muted);font-size:9px}.lab-heading{max-width:850px;margin:8px 0 40px}.lab-heading h1{font-size:clamp(38px,5vw,62px)}.lab-heading>p:last-child{max-width:720px;color:var(--ink-2);margin:18px 0 0;font-size:14px}.lab-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.theory-grid{grid-template-columns:minmax(400px,.94fr) minmax(420px,1.06fr)}.lab-stack{gap:16px;display:grid}.lab-card,.instrument-stage,.rhythm-workbench>article,.ear-challenge-card{border:1px solid var(--line);background:var(--card);box-shadow:var(--soft-shadow);border-radius:22px}.lab-card{padding:28px}.card-heading-row{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.card-heading-row h3,.lab-card>h3,.sequence-card h3{margin:0;font-family:Songti SC,serif;font-size:22px;line-height:1.25}.card-kicker{color:var(--muted);margin-bottom:5px;font-size:8px}.definition-pill{border:1px solid var(--line);color:var(--muted);background:var(--paper);border-radius:999px;flex:none;padding:5px 9px;font-size:8px;font-weight:700}.round-play{color:#fff;background:var(--forest);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;width:42px;height:42px;padding-left:3px;display:grid;box-shadow:0 8px 18px #18302d29}.round-play.coral{background:var(--coral)}.tone-map-card{background:radial-gradient(circle at 50% 52%, #e8b94d14, transparent 15rem), var(--card);min-height:640px}.tone-orbit{border:1px dashed #18302d33;border-radius:50%;width:340px;height:340px;margin:70px auto 48px;position:relative}.tone-orbit:before,.tone-orbit:after{content:"";border:1px solid #18302d14;border-radius:50%;position:absolute;top:43px;bottom:43px;left:43px;right:43px}.tone-orbit:after{top:88px;bottom:88px;left:88px;right:88px}.tone-node{z-index:2;border:1px solid var(--line);width:52px;height:52px;color:var(--ink-2);cursor:pointer;background:#fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;padding:0;transition:transform .15s,color .15s,background .15s;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 4px 12px #18302d17}.tone-node:hover{transform:translate(-50%,-50%)scale(1.1)}.tone-node strong{font-family:Georgia,serif;font-size:13px}.tone-node small{color:var(--muted);font-size:7px}.tone-node.in-scale{border-color:var(--sky);background:#eff6f7}.tone-node.in-chord{box-shadow:0 0 0 4px #ed6b4f21}.tone-node.root{z-index:3;color:#fff;border-color:var(--coral);background:var(--coral)}.tone-node.root small{color:#ffffffb3}.orbit-center{z-index:1;color:#fff;background:var(--forest);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:120px;height:120px;display:flex;position:absolute;top:50%;bottom:50%;left:50%;right:50%;transform:translate(-50%,-50%);box-shadow:0 16px 30px #18302d2e}.orbit-center span{color:var(--gold);letter-spacing:.15em;font-size:8px;font-weight:800}.orbit-center strong{margin:2px 0;font-family:Georgia,serif;font-size:32px;line-height:1}.orbit-center small{color:#ffffff8c;font-size:8px}.map-legend{color:var(--muted);justify-content:center;gap:18px;font-size:9px;display:flex}.map-legend span{align-items:center;gap:6px;display:flex}.legend-dot,.caption-dot{background:var(--sky);border-radius:50%;width:9px;height:9px;display:inline-block}.root-dot{background:var(--coral)}.chord-dot{border:2px solid var(--coral);background:0 0}.selector-card{min-height:302px}.chip-row{flex-wrap:wrap;gap:7px;margin:22px 0 16px;display:flex}.choice-chip{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:#fff;border-radius:999px;padding:7px 10px;font-size:9px}.choice-chip.selected{color:#fff;border-color:var(--forest);background:var(--forest)}.formula-box{background:var(--paper);border-radius:12px;align-items:center;gap:13px;padding:12px 14px;display:flex}.formula-box span{color:var(--muted);font-size:8px}.formula-box strong{letter-spacing:.12em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.note-token-row{flex-wrap:wrap;gap:5px;margin:14px 0;display:flex}.note-token-row button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;place-items:center;width:34px;height:34px;font-family:Georgia,serif;font-size:10px;display:grid}.note-token-row button.tonic{color:#fff;border-color:var(--coral);background:var(--coral)}.plain-note{color:var(--muted);margin:16px 0 0;font-size:9px;line-height:1.65}.plain-note b{color:var(--ink-2)}.root-selector{gap:5px;margin:18px 0 12px;display:flex}.root-selector button{border:1px solid var(--line);min-width:28px;color:var(--muted);cursor:pointer;background:#fff;border-radius:8px;flex:1;padding:7px 3px;font-family:Georgia,serif;font-size:10px}.root-selector button.active{color:#fff;border-color:var(--coral);background:var(--coral)}.select-label{color:var(--muted);grid-template-columns:auto 1fr;align-items:center;gap:12px;font-size:9px;display:grid}.select-label select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:9px;padding:8px 10px;font-size:10px}.chord-result{color:#fff;background:var(--forest);border-radius:12px;grid-template-columns:70px 1fr 1fr;align-items:center;gap:12px;margin-top:15px;padding:13px;display:grid}.chord-result>span{font-family:Georgia,serif;font-size:25px}.chord-result>div{flex-direction:column;display:flex}.chord-result small{color:#ffffff75;font-size:7px}.chord-result strong{margin-top:2px;font-size:9px}.instrument-stage{margin-bottom:18px;overflow:hidden}.instrument-toolbar{border-bottom:1px solid var(--line);background:var(--card);justify-content:space-between;align-items:center;gap:20px;min-height:78px;padding:16px 24px;display:flex}.instrument-toolbar>p{color:var(--muted);margin:0;font-size:9px}.keyboard-icon{color:var(--coral);margin-right:4px}.segmented{background:var(--paper-deep);border-radius:11px;padding:3px;display:flex}.segmented button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 12px;font-size:9px;font-weight:700}.segmented button.active{color:var(--forest);background:#fff;box-shadow:0 3px 8px #18302d14}.piano-stage{background:#ded7c9}.piano-scroll{padding:30px 28px 24px;overflow-x:auto}.piano-board{min-width:840px;height:270px;position:relative}.white-key-row{grid-template-columns:repeat(14,1fr);height:100%;display:grid}.piano-key{touch-action:manipulation;-webkit-user-select:none;user-select:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.piano-key.white{color:var(--ink);background:linear-gradient(90deg,#f4f1ea,#fff 32%,#f9f7f2);border:1px solid #b9b3a8;border-bottom-width:4px;border-radius:0 0 7px 7px;flex-direction:column;justify-content:flex-end;align-items:center;padding:0 3px 15px;display:flex;position:relative;box-shadow:inset 0 -12px 20px #18302d0a}.piano-key.white:first-child{border-radius:7px 0 7px 7px}.piano-key.white:last-child{border-radius:0 7px 7px}.piano-key.white.pressed,.piano-key.white:active{background:#f3ddc7;box-shadow:inset 0 -8px 18px #6741392e}.piano-key.white.highlighted{background:linear-gradient(90deg,#f7ddd6,#fff 38%,#f8e4df)}.piano-key>*{pointer-events:none}.piano-key .key-note{font-family:Georgia,serif;font-size:12px;font-weight:700}.piano-key .key-computer{width:21px;height:21px;color:var(--muted);background:var(--paper);border-radius:6px;place-items:center;margin-top:6px;font-size:8px;font-weight:800;display:grid}.piano-key em{color:var(--coral-dark);white-space:nowrap;font-size:8px;font-style:normal;font-weight:800;position:absolute;bottom:-44px}.piano-key.black{--black-key-width:42px;--black-key-offset:-21px;z-index:2;width:var(--black-key-width);height:165px;margin-left:var(--black-key-offset);color:#fff;background:linear-gradient(90deg,#172522,#34514b 48%,#10201d);border:1px solid #07110f;border-bottom-width:6px;border-radius:0 0 7px 7px;flex-direction:column;justify-content:flex-end;align-items:center;padding:0 3px 12px;display:flex;position:absolute;top:0;box-shadow:0 6px 8px #00000040}.piano-key.black.pressed,.piano-key.black:active{background:#674139;box-shadow:0 3px 5px #00000052,inset 0 -5px 10px #0000002e}.piano-key.black.highlighted{background:linear-gradient(90deg, #873f31, var(--coral), #743529)}.piano-key.black span{font-family:Georgia,serif;font-size:9px}.piano-key.black small{color:#ffffff8c;margin-top:7px;font-size:7px}.keyboard-caption{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:18px;padding:12px 20px 16px;font-size:8px;display:flex}.keyboard-caption span{align-items:center;gap:6px;display:flex}.c-dot{background:var(--coral)}.chord-note-dot{background:#efc2b7}.lower-lab-grid{grid-template-columns:minmax(0,1.22fr) minmax(330px,.78fr)}.big-chord-row{grid-template-columns:repeat(6,1fr);gap:7px;margin:20px 0;display:grid}.big-chord-row button{border:1px solid var(--line);min-height:66px;color:var(--muted);cursor:pointer;background:#fff;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;display:flex}.big-chord-row button.active{color:#fff;border-color:var(--coral);background:var(--coral);box-shadow:0 8px 18px #ed6b4f2e}.big-chord-row strong{font-family:Georgia,serif;font-size:18px}.big-chord-row span{margin-top:2px;font-size:7px}.coach-note{background:var(--paper);border-radius:13px;align-items:flex-start;gap:12px;padding:14px;display:flex}.coach-avatar{width:31px;height:31px;color:var(--forest);background:var(--gold);border-radius:50%;flex:none;place-items:center;font-family:Songti SC,serif;font-size:13px;font-weight:800;display:grid}.coach-note>div{flex-direction:column;display:flex}.coach-note strong{font-size:10px}.coach-note p{color:var(--muted);margin:3px 0 0;font-size:8px}.progression-flow{justify-content:center;align-items:center;gap:3px;margin:24px 0;display:flex}.progression-flow div{border:1px solid var(--line);background:var(--paper);border-radius:50%;place-items:center;width:62px;height:62px;display:grid;position:relative}.progression-flow span{color:#fff;background:var(--forest);border-radius:50%;place-items:center;width:18px;height:18px;font-size:7px;display:grid;position:absolute;top:-6px}.progression-flow strong{font-family:Georgia,serif;font-size:17px}.progression-flow i{color:var(--coral);font-style:normal;position:absolute;right:-12px}.guitar-stage{color:#f8f3e7;background:var(--forest);border-color:#233c37}.guitar-toolbar{color:#fff;background:#ffffff08;border-bottom-color:#ffffff14}.chord-title-lockup{align-items:center;gap:11px;display:flex}.chord-title-lockup>span{color:#ffffff73;font-size:8px}.chord-title-lockup strong{font-family:Georgia,serif;font-size:30px;line-height:1}.chord-title-lockup em{color:var(--gold);background:#e8b94d1a;border-radius:999px;padding:4px 8px;font-size:8px;font-style:normal}.toolbar-actions{gap:8px;display:flex}.soft-toggle{color:#ffffff8c;cursor:pointer;background:0 0;border:1px solid #ffffff1f;border-radius:10px;padding:9px 12px;font-size:8px}.soft-toggle.active{color:var(--gold);background:#e8b94d14;border-color:#e8b94d66}.fretboard-scroll{padding:36px 30px 24px;overflow-x:auto}.fretboard{min-width:960px;position:relative}.fret-number-row,.guitar-string-row{grid-template-columns:52px repeat(13,minmax(57px,1fr));display:grid}.fret-number-row{color:#ffffff59;text-align:center;height:24px;font-size:8px}.fret-number-row>span{text-align:left}.fret-number-row b{font-weight:500}.guitar-string-row{height:45px;position:relative}.tuning-note{color:#fff;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0;display:flex}.tuning-note strong{width:20px;height:20px;color:var(--forest);background:var(--gold);border-radius:50%;place-items:center;font-size:8px;display:grid}.tuning-note span{color:#ffffff73;font-family:Georgia,serif;font-size:8px}.fret-cell{color:#fff;cursor:pointer;background:linear-gradient(#62372633,#371e1652);border:0;border-right:2px solid #dbb97652;place-items:center;padding:0;display:grid;position:relative}.fret-cell:nth-child(2){border-left:3px solid #efe0bf8c}.string-line{z-index:1;background:#c9b99d;height:1px;position:absolute;left:0;right:0;box-shadow:0 1px 1px #0009}.guitar-string-row:nth-of-type(4) .string-line,.guitar-string-row:nth-of-type(5) .string-line{height:2px}.guitar-string-row:nth-of-type(6) .string-line,.guitar-string-row:nth-of-type(7) .string-line{height:3px}.fret-cell i{z-index:2;color:#fff;background:var(--coral);border-radius:50%;place-items:center;width:27px;height:27px;font-size:9px;font-style:normal;font-weight:900;display:grid;position:relative;box-shadow:0 4px 10px #0000003b}.fret-cell .mute-mark{color:var(--coral);box-shadow:none;background:0 0;font-size:15px}.fret-cell small{z-index:2;color:#ffffff8c;background:#ffffff0f;border-radius:50%;place-items:center;width:20px;height:20px;font-family:Georgia,serif;font-size:7px;display:grid;position:relative}.fret-cell:hover,.fret-cell.sounding{background:#e8b94d29}.fret-cell.sounding:after{content:"";border:1px solid var(--gold);border-radius:50%;width:34px;height:34px;animation:.5s ease-out fret-pulse;position:absolute}.fret-markers{z-index:0;pointer-events:none;position:absolute;top:24px;bottom:0;left:52px;right:0}.fret-markers i{background:#e8b94d40;border-radius:50%;width:9px;height:9px;position:absolute;top:49%}.fret-markers .double:after{content:"";background:inherit;border-radius:50%;width:9px;height:9px;position:absolute;top:22px}.guitar-legend{color:#ffffff7a;flex-wrap:wrap;justify-content:center;gap:25px;padding:12px 20px 18px;font-size:8px;display:flex}.guitar-legend span{align-items:center;gap:6px;display:flex}.guitar-legend b{color:var(--gold)}.guitar-chord-list{grid-template-columns:repeat(4,1fr);gap:7px;margin-top:20px;display:grid}.guitar-chord-list button{border:1px solid var(--line);min-height:59px;color:var(--muted);cursor:pointer;background:#fff;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;display:flex}.guitar-chord-list button.active{color:#fff;border-color:var(--forest);background:var(--forest)}.guitar-chord-list strong{font-family:Georgia,serif;font-size:17px}.guitar-chord-list span{font-size:7px}.warning-note{border-left:3px solid var(--coral);color:var(--muted);background:#ed6b4f12;margin:14px 0 0;padding:11px;font-size:8px}.strum-options{gap:7px;margin:18px 0;display:grid}.strum-options button{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:#fff;border-radius:10px;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.strum-options button.active{color:var(--forest);border-color:var(--gold);background:#e8b94d1a}.strum-options small{font-size:7px}.strum-options strong{letter-spacing:.15em;font-family:ui-monospace,monospace;font-size:12px}.count-line{background:var(--paper);text-align:center;border-radius:9px;grid-template-columns:auto repeat(8,1fr);align-items:center;gap:2px;margin:14px 0;padding:9px;display:grid}.count-line span{color:var(--muted);font-size:7px}.count-line b{font-size:9px}.count-line i{color:var(--coral);font-size:8px;font-style:normal}.rhythm-workbench{grid-template-columns:270px minmax(0,1fr);gap:16px;display:grid}.rhythm-workbench>article{padding:29px}.tempo-card{flex-direction:column;align-items:center;display:flex}.metronome-visual{clip-path:polygon(34% 0,66% 0,93% 100%,7% 100%);color:#fff;background:var(--forest);flex-direction:column;justify-content:center;align-items:center;width:160px;height:190px;margin:5px 0 25px;display:flex;position:relative}.metronome-visual:before{content:"";background:var(--gold);transform-origin:bottom;border-radius:2px;width:2px;height:98px;position:absolute;top:22px;transform:rotate(-18deg)}.metronome-visual.running:before{animation:.5s ease-in-out infinite alternate pendulum}.metronome-visual i{background:var(--coral);border-radius:50%;width:12px;height:12px;position:absolute;top:43px;left:56px}.metronome-visual span{z-index:1;margin-top:55px;font-family:Georgia,serif;font-size:39px;line-height:1;position:relative}.metronome-visual small{z-index:1;color:var(--gold);letter-spacing:.18em;font-size:8px;position:relative}.tempo-card label{color:var(--muted);align-self:flex-start;font-size:9px}.tempo-card input{width:100%;accent-color:var(--coral);margin:12px 0 7px}.tempo-labels{width:100%;color:var(--muted);justify-content:space-between;margin-bottom:23px;font-size:7px;display:flex}.sequence-card{min-width:0}.beat-count{color:var(--muted);text-align:center;grid-template-columns:30px repeat(4,1fr);margin:28px 0 7px;display:grid}.beat-count>span{text-align:left;font-size:8px}.beat-count b{flex-direction:column;font-size:10px;display:flex}.beat-count small{letter-spacing:.35em;font-size:6px;font-weight:500}.step-grid{grid-template-columns:repeat(16,1fr);gap:4px;display:grid}.step-grid button{border:1px solid var(--line);color:#18302d38;background:var(--paper);cursor:pointer;border-radius:7px;height:78px;padding:0;position:relative}.step-grid button.beat-start{border-left:2px solid var(--ink-2)}.step-grid button.active{color:#fff;border-color:var(--coral);background:var(--coral)}.step-grid button.playing{transform:translateY(-5px);box-shadow:0 8px 14px #18302d26}.step-grid button:after{content:"";opacity:.35;background:currentColor;border-radius:2px;height:3px;position:absolute;bottom:10px;left:20%;right:20%}.step-grid button span{font-size:9px}.rhythm-presets{grid-template-columns:repeat(3,1fr);gap:7px;margin:24px 0 8px;display:grid}.rhythm-presets button{border:1px solid var(--line);min-height:65px;color:var(--muted);text-align:left;cursor:pointer;background:#fff;border-radius:10px;flex-direction:column;justify-content:center;align-items:flex-start;padding:10px;display:flex}.rhythm-presets button.active{color:var(--forest);border-color:var(--gold);background:#e8b94d17}.rhythm-presets strong{font-size:9px}.rhythm-presets span{font-size:7px}.ear-layout{grid-template-columns:minmax(330px,.72fr) minmax(420px,1.28fr);gap:16px;display:grid}.ear-challenge-card{color:#fff;background:var(--forest);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:520px;padding:42px;display:flex;position:relative;overflow:hidden}.ear-challenge-card:before{content:"";background:repeating-radial-gradient(circle at 50% 48%,#0000 0 27px,#ffffff06 28px 29px);position:absolute;top:-20%;bottom:-20%;left:-20%;right:-20%}.ear-score{z-index:2;flex-direction:column;align-items:flex-end;display:flex;position:absolute;top:26px;right:28px}.ear-score span{color:#ffffff73;font-size:8px}.ear-score strong{color:var(--gold);font-family:Georgia,serif;font-size:28px}.ear-score small{color:#ffffff59;font-size:11px}.sound-rings{z-index:1;place-items:center;width:180px;height:180px;margin-bottom:24px;display:grid;position:relative}.sound-rings i{border:1px solid #e8b94d2e;border-radius:50%;width:100%;height:100%;position:absolute}.sound-rings i:nth-child(2){width:72%;height:72%}.sound-rings i:nth-child(3){background:#e8b94d14;width:44%;height:44%}.sound-rings.ready i{animation:1.6s ease-out infinite sound-wave}.sound-rings.ready i:nth-child(2){animation-delay:.18s}.sound-rings.ready i:nth-child(3){animation-delay:.36s}.sound-rings span{z-index:1;color:var(--gold);font-family:Georgia,serif;font-size:44px;position:relative}.ear-challenge-card h3{z-index:1;margin:0;font-family:Songti SC,serif;font-size:25px;position:relative}.ear-challenge-card>p{z-index:1;color:#ffffff91;max-width:380px;margin:12px 0 0;font-size:10px;position:relative}.ear-actions{z-index:1;justify-content:center;position:relative}.ear-challenge-card .secondary-action{color:#fff;border-color:#ffffff29}.answer-card{padding:36px}.interval-options{grid-template-columns:repeat(2,1fr);gap:9px;margin:25px 0;display:grid}.interval-options button{border:1px solid var(--line);min-height:70px;color:var(--ink-2);text-align:left;cursor:pointer;background:#fff;border-radius:12px;flex-direction:column;justify-content:center;align-items:flex-start;padding:12px 14px;display:flex}.interval-options button:hover:not(:disabled){border-color:var(--coral)}.interval-options button:disabled{cursor:default}.interval-options strong{font-size:11px}.interval-options span{color:var(--muted);font-size:8px}.interval-options button.correct{color:#315b3f;border-color:var(--sage);background:#83a88c1c}.interval-options button.wrong{color:var(--coral-dark);border-color:var(--coral);background:#ed6b4f14}.answer-explanation{background:var(--paper);border-radius:12px;margin:0 0 18px;padding:14px}.answer-explanation.success{border-left:3px solid var(--sage)}.answer-explanation.retry{border-left:3px solid var(--coral)}.answer-explanation strong{font-size:10px}.answer-explanation p{color:var(--muted);margin:3px 0 0;font-size:8px}.ear-tip{border-top:1px solid var(--line);gap:12px;padding-top:17px;display:flex}.ear-tip b{color:var(--coral-dark);flex:none;font-size:9px}.ear-tip span{color:var(--muted);font-size:8px}.site-footer{border-top:1px solid var(--line);min-height:90px;color:var(--muted);justify-content:space-between;align-items:center;gap:20px;padding:20px 48px;display:flex}.site-footer>div{align-items:center;gap:10px;display:flex}.mini-mark{width:31px;height:31px;font-size:14px}.site-footer div p{flex-direction:column;margin:0;line-height:1.25;display:flex}.site-footer strong{color:var(--ink-2);font-family:Songti SC,serif;font-size:12px}.site-footer small{letter-spacing:.08em;font-size:7px}.site-footer>p{margin:0;font-family:Songti SC,serif;font-size:10px}.mobile-tabbar{display:none}.sound-toast{z-index:80;color:#fff;background:var(--forest);opacity:0;pointer-events:none;border:1px solid #ffffff1a;border-radius:14px;align-items:center;gap:12px;min-width:230px;padding:12px 15px;transition:opacity .18s,transform .18s;display:flex;position:fixed;bottom:24px;right:28px;transform:translateY(14px);box-shadow:0 14px 32px #18302d38}.sound-toast.visible{opacity:1;transform:translateY(0)}.sound-toast>span{width:32px;height:32px;color:var(--forest);background:var(--gold);border-radius:50%;place-items:center;font-family:Georgia,serif;font-size:18px;display:grid}.sound-toast p{flex-direction:column;margin:0;line-height:1.25;display:flex}.sound-toast small{color:#ffffff6e;letter-spacing:.12em;font-size:7px}.sound-toast strong{margin-top:3px;font-size:10px}@keyframes pendulum{0%{transform:rotate(-24deg)}to{transform:rotate(24deg)}}@keyframes sound-wave{0%{opacity:.8;transform:scale(.78)}to{opacity:0;transform:scale(1.2)}}@keyframes fret-pulse{0%{opacity:1;transform:scale(.5)}to{opacity:0;transform:scale(1.4)}}.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}.sidebar-reset{color:#ffffff94;width:auto;font:inherit;text-align:left;cursor:pointer;background:0 0;flex:none;margin:-10px 18px 18px;transition:border-color .16s,color .16s,background .16s}.sidebar-reset:hover{color:#ffd8ce;background:#ed6b4f12;border-color:#ed6b4f7a}.related-knowledge{background:linear-gradient(120deg,#e8b94d1a,#0000 52%),#fffdf8b8;border:1px solid #18302d1a;border-radius:22px;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);gap:32px;margin:-34px 0 70px;padding:30px;display:grid}.related-knowledge>div:first-child h2{margin:0;font-family:Songti SC,STSong,serif;font-size:25px;line-height:1.3}.related-knowledge>div:first-child>p:last-child{color:var(--muted);margin:12px 0 0;font-size:11px;line-height:1.75}.related-knowledge-list{align-content:start;gap:8px;display:grid}.related-knowledge-list button{border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);background:var(--card);text-align:left;cursor:pointer;border-radius:14px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px;transition:border-color .16s,transform .16s,box-shadow .16s;display:grid}.related-knowledge-list button:hover{box-shadow:var(--soft-shadow);border-color:#ed6b4f80;transform:translateY(-1px)}.related-knowledge-list button>span{width:38px;height:38px;color:var(--forest);background:#e8b94d57;border-radius:11px;place-items:center;font-size:10px;font-weight:800;display:grid}.related-knowledge-list p{flex-direction:column;min-width:0;margin:0;line-height:1.4;display:flex}.related-knowledge-list strong{font-size:12px}.related-knowledge-list small{color:var(--muted);margin-top:3px;font-size:9px}.related-knowledge-list b{color:var(--coral);font-size:17px}.knowledge-page{--reader-wide:790px;min-width:0}.knowledge-heading{color:#f9f5eb;background:radial-gradient(circle at 84% 22%, #e8b94d3d, transparent 13rem), linear-gradient(135deg, var(--forest), #274b45);min-height:230px;box-shadow:var(--shadow);border-radius:25px;justify-content:space-between;align-items:center;gap:30px;margin-bottom:20px;padding:42px 48px;display:flex;position:relative;overflow:hidden}.knowledge-heading:after{content:"♪";color:#ffffff09;font-family:Georgia,serif;font-size:260px;line-height:1;position:absolute;bottom:-90px;right:18%;transform:rotate(-8deg)}.knowledge-heading>div:first-child{z-index:1;max-width:710px;position:relative}.knowledge-heading .eyebrow{color:#f1c963}.knowledge-heading h1{letter-spacing:-.035em;margin:0;font-family:Songti SC,STSong,Noto Serif SC,Georgia,serif;font-size:clamp(34px,4vw,53px);line-height:1.18}.knowledge-heading>div:first-child>p:last-child{color:#ffffffad;max-width:650px;margin:16px 0 0;font-size:13px}.knowledge-stat{z-index:1;background:#ffffff12;border:1px solid #ffffff29;border-radius:50%;flex-direction:column;flex:none;justify-content:center;align-items:center;width:116px;height:116px;display:flex;position:relative;box-shadow:inset 0 0 0 9px #ffffff06}.knowledge-stat strong{color:var(--gold);font-family:Georgia,serif;font-size:39px;line-height:1}.knowledge-stat span{color:#ffffff9e;margin-top:7px;font-size:9px}.knowledge-toolbar{align-items:center;gap:10px;margin-bottom:18px;display:flex}.knowledge-search{border:1px solid var(--line);background:#fffdf8cc;border-radius:14px;flex:1;align-items:center;gap:10px;min-width:0;padding:0 15px;display:flex;box-shadow:0 5px 15px #23302b09}.knowledge-search>span:first-child{color:var(--coral);font-size:22px;line-height:1}.knowledge-search input{min-width:0;height:47px;color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:12px}.knowledge-search input::placeholder{color:#9ca7a2}.knowledge-search button{width:26px;height:26px;color:var(--muted);background:var(--paper-deep);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid}.knowledge-index-toggle{border:1px solid var(--line);height:47px;color:var(--ink-2);background:var(--card);cursor:pointer;border-radius:13px;padding:0 16px;font-size:11px;font-weight:800;display:none}.knowledge-layout{grid-template-columns:255px minmax(0,1fr);align-items:start;gap:22px;min-width:0;display:grid}.knowledge-index{border:1px solid var(--line);max-height:calc(100vh - 106px);box-shadow:var(--soft-shadow);overscroll-behavior:contain;background:#fffdf8c2;border-radius:18px;padding:18px 12px;position:sticky;top:88px;overflow:hidden auto}.knowledge-index::-webkit-scrollbar{width:4px}.knowledge-index::-webkit-scrollbar-thumb{background:#31504b2e;border-radius:99px}.knowledge-index-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:10px;padding:0 7px 14px;display:flex}.knowledge-index-title>div{flex-direction:column;line-height:1.3;display:flex}.knowledge-index-title small{color:var(--coral-dark);letter-spacing:.16em;font-size:7px;font-weight:800}.knowledge-index-title strong{margin-top:3px;font-family:Songti SC,serif;font-size:16px}.knowledge-index-title>span{color:var(--muted);font-size:8px}.knowledge-group{padding-top:14px}.knowledge-group h2{color:var(--muted);letter-spacing:.13em;margin:0 8px 6px;font-size:8px;font-weight:800}.knowledge-group>div{gap:2px;display:grid}.knowledge-group button{width:100%;min-width:0;color:var(--ink-2);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;grid-template-columns:29px minmax(0,1fr);align-items:center;gap:8px;padding:8px 7px;display:grid}.knowledge-group button:hover{background:#18302d0b}.knowledge-group button.active{color:var(--ink);background:#ed6b4f16;border-color:#ed6b4f29}.knowledge-group button>span{width:27px;height:27px;color:var(--muted);background:var(--paper-deep);border-radius:8px;place-items:center;font-size:8px;font-weight:800;display:grid}.knowledge-group button.active>span{color:#fff;background:var(--coral)}.knowledge-group button p{flex-direction:column;min-width:0;margin:0;line-height:1.3;display:flex}.knowledge-group button strong{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.knowledge-group button small{color:var(--muted);margin-top:2px;font-size:7px}.knowledge-empty{color:var(--muted);text-align:center;flex-direction:column;align-items:center;padding:38px 14px;display:flex}.knowledge-empty strong{color:var(--ink-2);font-size:11px}.knowledge-empty span{margin-top:4px;font-size:8px}.knowledge-reader{border:1px solid var(--line);background:var(--card);min-width:0;box-shadow:var(--shadow);border-radius:20px;padding:26px clamp(26px,5vw,62px) 38px;scroll-margin-top:88px}.reader-meta{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;margin:0 calc(-1*clamp(26px,5vw,62px)) 32px;padding:0 clamp(26px,5vw,62px) 20px;display:flex}.reader-meta>div{flex-wrap:wrap;gap:6px;display:flex}.reader-meta>div span{color:var(--muted);background:var(--paper);border-radius:99px;padding:4px 8px;font-size:8px;font-weight:700}.reader-meta>button{color:#fff;background:var(--forest);cursor:pointer;border:0;border-radius:10px;flex:none;align-items:center;gap:8px;padding:8px 12px;font-size:9px;font-weight:800;display:inline-flex}.knowledge-reader>h1{color:var(--ink);letter-spacing:-.035em;margin:0 0 26px;font-family:Songti SC,STSong,Noto Serif SC,Georgia,serif;font-size:clamp(34px,4vw,49px);line-height:1.18}.knowledge-reader h2{border-bottom:1px solid var(--line);color:var(--ink);margin:48px 0 17px;padding-bottom:9px;font-family:Songti SC,STSong,serif;font-size:27px;line-height:1.3}.knowledge-reader h3{color:var(--ink-2);margin:31px 0 12px;font-size:17px;line-height:1.4}.knowledge-reader h4{color:var(--ink-2);margin:24px 0 9px;font-size:13px}.knowledge-reader p{color:#38504c;margin:12px 0;font-size:13px;line-height:1.95}.knowledge-reader strong{color:var(--ink)}.knowledge-reader em{text-underline-offset:2px;text-decoration-line:underline;text-decoration-color:#ed6b4f61;text-decoration-thickness:3px}.knowledge-reader a{color:var(--coral-dark);text-underline-offset:3px;font-weight:700;-webkit-text-decoration:underline #ed6b4f4d;text-decoration:underline #ed6b4f4d}.knowledge-reader ul,.knowledge-reader ol{color:#38504c;margin:14px 0;padding-left:24px}.knowledge-reader li{margin:7px 0;padding-left:4px;font-size:12px;line-height:1.85}.knowledge-reader li::marker{color:var(--coral);font-weight:800}.knowledge-reader input[type=checkbox]{accent-color:var(--coral);margin-right:7px}.knowledge-reader blockquote{border-left:4px solid var(--gold);background:#fbf5e8;border-radius:0 12px 12px 0;margin:22px 0;padding:14px 18px}.knowledge-reader blockquote p{color:var(--ink-2);margin:0}.knowledge-reader pre{color:#eaf1ed;background:#1d3431;border-radius:13px;margin:20px 0;padding:18px;font-size:11px;line-height:1.75;overflow-x:auto}.knowledge-reader :not(pre)>code{color:var(--coral-dark);background:#ed6b4f12;border:1px solid #c94f3624;border-radius:5px;padding:2px 5px;font-size:.88em}.knowledge-reader table{border-spacing:0;border-collapse:collapse;width:100%;color:var(--ink-2);white-space:normal;margin:20px 0;font-size:10px;display:block;overflow-x:auto}.knowledge-reader th,.knowledge-reader td{border:1px solid var(--line);text-align:left;vertical-align:top;min-width:90px;padding:9px 11px}.knowledge-reader th{color:var(--ink);background:var(--paper-deep);font-weight:800}.knowledge-reader tbody tr:nth-child(2n){background:#f4f0e773}.knowledge-reader hr{background:var(--line);border:0;height:1px;margin:45px 0}.mermaid-diagram{border:1px solid var(--line);text-align:center;background:#fbfaf6;border-radius:16px;margin:26px 0;padding:22px 14px;overflow-x:auto}.mermaid-diagram>div{min-width:430px}.mermaid-diagram svg{max-width:100%;height:auto}.mermaid-loading,.mermaid-fallback{color:var(--muted);text-align:center;background:#f4f0e785;border:1px dashed #31504b3d;border-radius:14px;margin:24px 0;padding:22px;font-size:10px}.mermaid-fallback summary{cursor:pointer}.mermaid-fallback pre{text-align:left}.reader-pagination{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:10px;margin-top:52px;padding-top:22px;display:grid}.reader-pagination button{border:1px solid var(--line);min-width:0;min-height:74px;color:var(--ink-2);background:var(--paper);text-align:left;cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;padding:13px 16px;display:flex}.reader-pagination button:last-of-type{text-align:right}.reader-pagination button:hover{background:#fff9ef;border-color:#ed6b4f73}.reader-pagination small{color:var(--coral-dark);font-size:8px}.reader-pagination strong{text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:10px;overflow:hidden}.knowledge-practice{--kp-accent:var(--coral);--kp-accent-soft:#ed6b4f1a;--kp-stage:#f8f4eb;isolation:isolate;background:radial-gradient(circle at 94% 4%, #e8b94d29, transparent 14rem), var(--card);border:1px solid #18302d21;border-radius:20px;width:100%;min-width:0;margin:8px 0 40px;position:relative;overflow:hidden;box-shadow:0 14px 38px #23302b14}.knowledge-practice:before{content:"";z-index:-1;background:linear-gradient(90deg, var(--kp-accent), var(--gold), var(--sage));height:4px;position:absolute;top:0;left:0;right:0}.knowledge-practice[data-kind=rhythm]{--kp-accent:var(--gold);--kp-accent-soft:#e8b94d24}.knowledge-practice[data-kind=piano]{--kp-accent:var(--sky);--kp-accent-soft:#84a7b924}.knowledge-practice[data-kind=guitar]{--kp-accent:var(--sage);--kp-accent-soft:#83a88c24}.knowledge-practice[data-kind=compose],.knowledge-practice[data-kind=harmony]{--kp-accent:var(--lavender);--kp-accent-soft:#9a92b324}.kp-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;min-width:0;padding:25px 28px 21px;display:flex}.kp-header>div{min-width:0}.knowledge-reader .kp-kicker,.kp-kicker{color:var(--coral-dark);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:7px;margin:0 0 5px;font-size:8px;font-weight:900;line-height:1.4;display:flex}.kp-kicker:before{content:"";background:var(--kp-accent);border-radius:9px;width:15px;height:3px}.knowledge-reader .kp-title,.kp-title{color:var(--ink);border:0;margin:0;font-family:Songti SC,STSong,Noto Serif SC,Georgia,serif;font-size:clamp(21px,3vw,27px);line-height:1.3}.knowledge-reader .kp-description,.kp-description{max-width:610px;color:var(--muted);margin:7px 0 0;font-size:10px;line-height:1.75}.kp-badge{border:1px solid var(--kp-accent);flex:none;align-items:center;gap:6px;min-height:28px;padding:5px 10px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.kp-badge{border:1px solid color-mix(in srgb, var(--kp-accent) 34%, transparent)}}.kp-badge{color:var(--ink-2);background:var(--kp-accent-soft);white-space:nowrap;border-radius:999px;font-size:8px;font-weight:800}.kp-badge i{background:var(--kp-accent);width:7px;height:7px;box-shadow:0 0 0 3px var(--kp-accent-soft);border-radius:50%;flex:none}.kp-layout{grid-template-columns:minmax(0,1.25fr) minmax(185px,.75fr);align-items:stretch;min-width:0;display:grid}.kp-panel,.kp-stage,.kp-controls{min-width:0}.kp-stage{background:linear-gradient(#18302d06 1px, transparent 1px), linear-gradient(90deg, #18302d06 1px, transparent 1px), var(--kp-stage);background-size:22px 22px;place-items:center;min-height:270px;padding:26px;display:grid;position:relative;overflow:hidden}.kp-controls,.kp-panel:not(.kp-stage){background:#fffdf8c7;padding:24px}.kp-layout>.kp-controls,.kp-layout>.kp-panel+.kp-panel{border-left:1px solid var(--line)}.kp-mini-label{color:var(--muted);letter-spacing:.08em;margin:0 0 7px;font-size:8px;font-weight:800;line-height:1.45;display:block}.knowledge-reader .kp-controls h3,.kp-controls h3{color:var(--ink);margin:5px 0 15px;font-family:Songti SC,STSong,serif;font-size:17px;line-height:1.4}.kp-control-row{flex-wrap:wrap;align-items:center;gap:7px;min-width:0;margin:10px 0;display:flex}.kp-control-row:first-child{margin-top:0}.kp-control-row:last-child{margin-bottom:0}.kp-action,.kp-chip,.kp-step,.kp-tone-node,.kp-key,.kp-fret,.kp-chord-card,.kp-motif button{touch-action:manipulation;-webkit-user-select:none;user-select:none}.kp-action{border:1px solid var(--line);min-height:38px;color:var(--ink-2);cursor:pointer;background:#fff;border-radius:11px;justify-content:center;align-items:center;gap:7px;padding:8px 13px;font-size:9px;font-weight:850;line-height:1.25;transition:transform .15s,border-color .15s,background .15s,box-shadow .15s;display:inline-flex;box-shadow:0 3px 10px #23302b0b}.kp-action:hover:not(:disabled){border-color:var(--kp-accent)}@supports (color:color-mix(in lab, red, red)){.kp-action:hover:not(:disabled){border-color:color-mix(in srgb, var(--kp-accent) 52%, var(--line))}}.kp-action:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 14px #23302b14}.kp-action:active:not(:disabled){transform:translateY(1px)}.kp-action.primary,.kp-action--primary{color:#fff;border-color:var(--forest);background:var(--forest)}.kp-action.secondary,.kp-action--secondary{background:var(--paper)}.kp-action.is-playing,.kp-action.playing{color:var(--forest);border-color:var(--gold);background:#e8b94d38;box-shadow:0 0 0 3px #e8b94d1a}.kp-action:disabled{opacity:.48;cursor:not-allowed}.kp-chip{border:1px solid var(--line);min-height:31px;color:var(--muted);cursor:pointer;background:#fff;border-radius:999px;padding:5px 10px;font-size:8px;font-weight:750}.kp-chip:hover{color:var(--ink);border-color:var(--kp-accent)}@supports (color:color-mix(in lab, red, red)){.kp-chip:hover{border-color:color-mix(in srgb, var(--kp-accent) 45%, var(--line))}}.kp-chip.active,.kp-chip.is-active,.kp-chip[aria-pressed=true]{color:#fff;border-color:var(--forest);background:var(--forest)}.kp-chip small{color:inherit;margin-top:1px;font-size:6px;font-weight:600;line-height:1.2;display:block}.kp-status,.kp-result,.kp-formula,.kp-practice-tip{overflow-wrap:anywhere;border-radius:11px;font-size:9px;line-height:1.65}.knowledge-reader .kp-status,.kp-status{color:var(--ink-2);background:var(--kp-accent-soft);align-items:flex-start;gap:8px;margin:13px 0 0;padding:10px 11px;display:flex}.kp-status:before{content:"●";color:var(--kp-accent);flex:none;font-size:7px}.knowledge-reader .kp-formula,.kp-formula{min-width:0;color:var(--ink-2);background:var(--paper);letter-spacing:.05em;flex-direction:column;gap:2px;margin:12px 0;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:750;display:flex}.kp-formula span{color:var(--muted);letter-spacing:0;font-family:inherit;font-size:7px}.kp-formula strong{overflow-wrap:anywhere}.knowledge-reader .kp-result,.kp-result{color:#f6f1e7;background:var(--forest);flex-direction:column;min-width:0;margin:13px 0 0;padding:11px 12px;display:flex}.knowledge-reader .kp-result strong,.kp-result strong{color:var(--gold);font-size:15px}.kp-result>span{color:#ffffff80;font-size:7px}.kp-result>small{color:#ffffffa6;font-size:7px}.kp-note-row{flex-wrap:wrap;gap:6px;min-width:0;margin:10px 0;display:flex}.kp-note-row>span,.kp-note-row>button,.kp-note-token{border:1px solid var(--line);min-width:31px;height:31px;color:var(--ink-2);background:#fff;border-radius:9px;place-items:center;padding:0 7px;font-family:Georgia,serif;font-size:10px;font-weight:750;display:grid}.kp-note-row>span small{color:var(--muted);font-family:inherit;font-size:6px;font-weight:650;line-height:1;display:block}.kp-note-row>span:first-child,.kp-note-row>span.root,.kp-note-row>button:first-child,.kp-note-row>button.root,.kp-note-token.root{color:#fff;border-color:var(--coral);background:var(--coral)}.kp-tone-ring{aspect-ratio:1;background:radial-gradient(circle,#e8b94d14 0 31%,#0000 32%),#fffdf8bf;border:1px dashed #18302d33;border-radius:50%;width:min(100%,304px);position:relative}.kp-tone-ring:before,.kp-tone-ring:after{content:"";border-radius:inherit;pointer-events:none;border:1px solid #18302d11;position:absolute}.kp-tone-ring:before{top:18%;bottom:18%;left:18%;right:18%}.kp-tone-ring:after{top:34%;bottom:34%;left:34%;right:34%}.kp-tone-node{--kp-angle:calc(var(--i,0) * 30deg);z-index:2;border:1px solid var(--line);width:39px;height:39px;color:var(--ink-2);transform:translate(-50%, -50%) rotate(var(--kp-angle)) translateY(-128px) rotate(calc(var(--kp-angle) * -1));cursor:pointer;background:#fff;border-radius:50%;place-items:center;padding:0;font-family:Georgia,serif;font-size:10px;font-weight:800;transition:border-color .15s,color .15s,background .15s,box-shadow .15s;display:grid;position:absolute;top:50%;left:50%;box-shadow:0 4px 12px #18302d17}.kp-tone-node:first-of-type{--i:0}.kp-tone-node:nth-of-type(2){--i:1}.kp-tone-node:nth-of-type(3){--i:2}.kp-tone-node:nth-of-type(4){--i:3}.kp-tone-node:nth-of-type(5){--i:4}.kp-tone-node:nth-of-type(6){--i:5}.kp-tone-node:nth-of-type(7){--i:6}.kp-tone-node:nth-of-type(8){--i:7}.kp-tone-node:nth-of-type(9){--i:8}.kp-tone-node:nth-of-type(10){--i:9}.kp-tone-node:nth-of-type(11){--i:10}.kp-tone-node:nth-of-type(12){--i:11}.kp-tone-node:hover{border-color:var(--kp-accent);box-shadow:0 5px 14px #18302d24}.kp-tone-node.in-scale{border-color:var(--sky);background:#edf4f6}.kp-tone-node.active,.kp-tone-node.is-active{box-shadow:0 0 0 4px var(--kp-accent-soft)}.kp-tone-node.root{color:#fff;border-color:var(--coral);background:var(--coral)}.kp-tone-node strong{color:inherit;font-size:10px;line-height:1}.kp-tone-node small{color:var(--muted);font-size:6px;line-height:1}.kp-tone-node.root small{color:#ffffffad}.kp-tone-center{z-index:1;color:#fff;background:var(--forest);pointer-events:none;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:92px;height:92px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 12px 28px #18302d2e}.kp-tone-center strong{color:#fff;font-family:Georgia,serif;font-size:25px;line-height:1}.kp-tone-center small{color:#ffffff94;margin-top:5px;font-size:7px}.kp-tone-legend,.kp-guitar-legend{min-width:0;color:var(--muted);flex-wrap:wrap;justify-content:center;gap:10px 16px;padding-top:12px;font-size:8px;display:flex}.kp-tone-legend span,.kp-guitar-legend span{align-items:center;gap:5px;display:inline-flex}.kp-tone-legend i{background:var(--sky);border-radius:50%;width:8px;height:8px;display:inline-block}.kp-tone-legend i.root{background:var(--coral)}.kp-tone-legend i.in-scale{background:var(--sky)}.kp-symbol-guide{flex-wrap:wrap;justify-content:center;gap:6px;width:min(100%,440px);margin-top:10px;display:flex}.kp-symbol-guide span{border:1px solid var(--line);color:var(--muted);background:#fffc;border-radius:8px;padding:5px 8px;font-size:7px}.kp-symbol-guide b{color:var(--ink);margin-right:4px}.kp-direction-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.kp-direction-choices .kp-chip{justify-content:center;min-width:0}.kp-direction-choices .kp-chip b{margin-right:5px;font-size:13px}.kp-tempo-row{grid-template-columns:102px minmax(90px,1fr);align-items:center;gap:18px;width:100%;display:grid}.kp-tempo-row label{min-width:0;color:var(--muted);font-size:8px;font-weight:800;display:grid}.kp-tempo-row input[type=range]{width:100%;min-width:0;accent-color:var(--coral)}.kp-tempo-row label>small{color:var(--muted);justify-content:space-between;gap:5px;font-size:6px;font-weight:600;display:flex}.kp-metronome{clip-path:polygon(34% 0,66% 0,92% 100%,8% 100%);color:#fff;background:var(--forest);flex-direction:column;justify-content:flex-end;align-items:center;width:92px;height:108px;padding-bottom:15px;display:flex;position:relative}.kp-metronome i{background:var(--gold);transform-origin:bottom;border-radius:9px;width:2px;height:57px;position:absolute;top:13px;left:50%;transform:rotate(-18deg)}.kp-metronome i:after{content:"";background:var(--coral);border-radius:50%;width:8px;height:8px;position:absolute;top:15px;left:50%;transform:translate(-50%)}.kp-metronome.is-playing i{animation:.48s ease-in-out infinite alternate kp-pendulum}.kp-metronome strong{color:#fff;font-family:Georgia,serif;font-size:23px;line-height:1;position:relative}.kp-metronome span{color:var(--gold);letter-spacing:.14em;margin-top:2px;font-size:6px;font-weight:800;position:relative}@keyframes kp-pendulum{0%{transform:rotate(-20deg)}to{transform:rotate(20deg)}}.kp-step-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:5px;width:100%;min-width:0;margin:14px 0;display:grid}.kp-step{border:1px solid var(--line);color:#18302d57;cursor:pointer;background:#fff;border-radius:8px;min-width:0;height:62px;padding:0;transition:transform .12s,box-shadow .12s,background .12s;position:relative}.kp-step:after{content:"";opacity:.4;background:currentColor;border-radius:9px;height:3px;position:absolute;bottom:10px;left:25%;right:25%}.kp-step.beat-start{border-left:3px solid var(--ink-2)}.kp-step.active,.kp-step.is-active{color:#fff;border-color:var(--coral);background:var(--coral)}.kp-step.playing,.kp-step.is-playing{transform:translateY(-4px);box-shadow:0 7px 15px #18302d29}.kp-step>span{font-family:Georgia,serif;font-size:10px;font-weight:800}.kp-step>small{color:inherit;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:7px;display:block}.kp-step>strong{color:inherit;margin-top:2px;font-size:10px;display:block}.kp-beat-count{color:var(--muted);text-align:center;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:7px;display:grid}.kp-beat-count>span{flex-direction:column;min-width:0;display:flex}.kp-beat-count strong{color:var(--ink-2);font-size:9px}.kp-beat-count small{color:var(--muted);letter-spacing:.16em;font-size:6px}.kp-rhythm-presets{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;min-width:0;margin:10px 0 14px;display:grid}.kp-rhythm-presets .kp-chip{text-align:left;border-radius:9px;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;min-height:48px;display:flex}.kp-piano-scroll{width:100%;min-width:0;padding:5px 3px 8px;overflow:hidden}.kp-piano{width:100%;min-width:0;height:168px;position:relative}.kp-white-keys{grid-template-columns:repeat(14,minmax(0,1fr));height:100%;display:grid}.kp-key{cursor:pointer;-webkit-tap-highlight-color:transparent;flex-direction:column;justify-content:flex-end;align-items:center;display:flex}.kp-key>*{pointer-events:none}.kp-key.white{min-width:0;color:var(--ink-2);background:linear-gradient(90deg,#f1eee7,#fff 34%,#faf8f3);border:1px solid #b9b3a8;border-bottom-width:4px;border-radius:0 0 6px 6px;padding:0 2px 12px;font-family:Georgia,serif;font-size:9px;font-weight:800;box-shadow:inset 0 -10px 16px #18302d0a}.kp-key.black{z-index:2;top:0;left:calc(var(--left,12.5%) - clamp(10px, 3.25%, 16px));color:#fff;background:linear-gradient(90deg,#172522,#34514b 48%,#10201d);border:1px solid #07110f;border-bottom-width:5px;border-radius:0 0 6px 6px;width:clamp(20px,6.5%,32px);height:99px;padding-bottom:9px;font-family:Georgia,serif;font-size:7px;font-weight:800;position:absolute;box-shadow:0 6px 8px #00000038}.kp-key:hover{filter:brightness(.97)}.kp-key.white.active,.kp-key.white.is-active,.kp-key.white:active{background:#f6ded7;box-shadow:inset 0 -7px 15px #6741392b}.kp-key.black.active,.kp-key.black.is-active,.kp-key.black:active{background:var(--coral-dark);box-shadow:0 3px 5px #0000004d,inset 0 -4px 8px #0000002e}.kp-key.white.root{background:linear-gradient(90deg,#eeddd5,#fff4ee 38%,#f2dfd8);box-shadow:inset 0 -10px 22px #ed6b4f33}.kp-key.black.root{background:linear-gradient(90deg, #63382f, var(--coral-dark), #57332c);box-shadow:0 0 0 3px #ed6b4f33}.kp-key small{color:var(--muted);margin-top:5px;font-family:inherit;font-size:6px}.kp-key.black small{color:#ffffff80}.kp-piano-legend{width:100%;min-width:0;color:var(--muted);text-align:center;flex-wrap:wrap;justify-content:center;gap:8px 16px;padding-top:12px;font-size:8px;display:flex}.kp-piano-legend span{align-items:center;gap:5px;display:inline-flex}.kp-piano-legend i{background:var(--coral);border-radius:50%;width:8px;height:8px}.kp-reading-prompt{color:#fff;background:var(--forest);text-align:center;border-radius:13px;place-items:center;margin:8px 0 14px;padding:17px 13px;display:grid}.kp-reading-prompt>span{color:#ffffff8c;font-size:8px}.knowledge-reader .kp-reading-prompt>strong,.kp-reading-prompt>strong{color:var(--gold);margin:2px 0;font-family:Georgia,serif;font-size:30px;line-height:1.1}.kp-reading-prompt>small{color:#ffffff9e;font-size:7px}.kp-voicing-readout>span{align-content:center;gap:3px;min-width:62px;height:auto;min-height:45px}.kp-harmony-controls{border:1px solid var(--line);background:#fffdf8b8;border-radius:12px;gap:7px;margin:12px 0;padding:12px;display:grid}.kp-harmony-controls .kp-mini-label{margin-top:3px}.kp-harmony-controls .kp-control-row{margin:0;display:grid}.kp-chord-controls{grid-template-columns:repeat(4,minmax(0,1fr))}.kp-inversion-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.kp-pattern-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.kp-harmony-controls .kp-chip{justify-content:center;min-width:0;padding-inline-start:6px;padding-inline-end:6px}.kp-pattern-formula{margin:3px 0 0}.kp-fretboard-scroll{background:var(--forest);border-radius:11px;width:100%;min-width:0;overflow:hidden}.kp-fretboard{color:#fff;background:radial-gradient(circle at 65% 0, #e8b94d1f, transparent 15rem), var(--forest);min-width:0;padding:13px 10px}.kp-string-row{grid-template-columns:27px repeat(6,minmax(0,1fr));min-width:0;min-height:35px;display:grid;position:relative}.kp-string-row:after{content:"";z-index:0;pointer-events:none;background:#efe0bfb3;height:1px;position:absolute;top:50%;left:27px;right:0;box-shadow:0 1px 1px #0000008c}.kp-string-row:nth-child(n+4):after{height:2px}.kp-string-label{z-index:1;color:var(--gold);flex-direction:column;justify-content:center;align-items:flex-start;font-family:Georgia,serif;font-size:8px;font-weight:800;display:flex;position:relative}.kp-string-label small{color:#ffffff6b;font-size:6px;line-height:1}.kp-fret{z-index:1;color:#ffffff94;cursor:pointer;background:#6237261f;border:0;border-right:2px solid #dbb97654;place-items:center;min-width:0;min-height:35px;padding:0;display:grid;position:relative}.kp-fret:first-of-type{border-left:3px solid #efe0bf8f}.kp-fret:hover{background:#e8b94d21}.kp-fret.active,.kp-fret.is-active,.kp-fret.root{color:#fff}.kp-fret.active:before,.kp-fret.is-active:before,.kp-fret.root:before{content:"";z-index:-1;background:var(--coral);border-radius:50%;width:24px;height:24px;position:absolute;box-shadow:0 3px 8px #00000038}.kp-fret.root:before{background:var(--gold)}.kp-fret.root{color:var(--forest)}.kp-fret.muted{color:var(--coral);font-size:13px;font-weight:900}.kp-fret.open:before,.kp-fret.is-open:before{border:2px solid var(--sage);background:#fff}.kp-fret.open,.kp-fret.is-open{color:var(--forest)}.kp-fret.root.open:before,.kp-fret.root.is-open:before{background:var(--gold);border:0}.kp-guitar-legend{color:#ffffff8f;background:var(--forest);padding:9px 10px 12px}.kp-chord-diagram{border:1px solid var(--line);background:#fff;border-radius:13px;width:min(100%,270px);margin:12px auto;padding:12px 18px 9px}.kp-chord-string-states,.kp-chord-string-numbers{text-align:center;grid-template-columns:repeat(6,minmax(0,1fr));display:grid}.kp-chord-string-states span{color:var(--muted);font-size:11px;font-weight:900}.kp-chord-string-states .muted{color:var(--coral-dark)}.kp-chord-string-states .open{color:var(--sage)}.kp-chord-string-numbers{color:var(--muted);margin-top:5px;font-size:6px}.kp-chord-neck{border-top:4px solid var(--ink);border-bottom:1px solid var(--line);height:100px;margin:5px 8px 0;position:relative}.kp-chord-fret-line{left:0;right:0;top:calc(var(--fret-index,1) * 33.333%);border-top:1px solid #9b968d;position:absolute}.kp-chord-fret-line:first-child{--fret-index:1}.kp-chord-fret-line:nth-child(2){--fret-index:2}.kp-chord-fret-line:nth-child(3){--fret-index:3}.kp-chord-string-line{top:0;bottom:0;left:calc(var(--kp-chord-string) * 20%);background:#858078;width:1px;position:absolute}.kp-chord-string-line:nth-of-type(n+4):nth-of-type(-n+6){width:2px}.kp-chord-dot{z-index:2;top:calc((var(--kp-chord-fret) - .5) * 33.333%);color:#fff;background:var(--coral-dark);border-radius:50%;place-items:center;width:23px;height:23px;font-style:normal;display:grid;position:absolute;left:50%;transform:translate(-50%,-50%)}.kp-chord-dot b{font-size:0}.kp-chord-dot small{color:#fff;font-size:7px;font-weight:900}.kp-strum-practice{gap:7px;margin:12px 0;display:grid}.kp-strum-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:4px;display:grid}.kp-strum-grid>span{border:1px solid var(--line);min-width:0;min-height:58px;color:var(--muted);background:#fff;border-radius:8px;place-items:center;gap:1px;padding:5px 2px;display:grid}.kp-strum-grid>span small{font-size:6px}.kp-strum-grid>span b{color:var(--ink-2);font-size:14px}.kp-strum-grid>span em{color:var(--muted);font-size:7px;font-style:normal;font-weight:900}.kp-strum-grid>span.sounds{background:#ed6b4f14;border-color:#ed6b4f59}.kp-strum-grid>span.accent em{color:var(--coral-dark)}.kp-strum-grid>span.active{color:#fff;border-color:var(--forest);background:var(--forest);transform:translateY(-2px)}.kp-strum-grid>span.active b,.kp-strum-grid>span.active em{color:var(--gold)}.kp-strum-caption{color:var(--muted);text-align:center;margin:0;font-size:7px}.kp-tab-example{color:#fff;background:var(--forest);border-radius:11px;grid-template-columns:auto minmax(0,1fr);gap:7px 10px;min-width:0;margin:8px 0 14px;padding:13px;display:grid}.kp-tab-example>span{color:var(--gold);font-size:7px}.knowledge-reader .kp-tab-example>strong,.kp-tab-example>strong{color:#fff;letter-spacing:.12em;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;overflow:hidden}.kp-compose-stage{align-content:center}.kp-composer{gap:11px;width:100%;min-width:0;display:grid}.kp-project-timeline{gap:9px;display:grid}.kp-project-phrase{grid-template-columns:68px minmax(0,1fr);align-items:stretch;gap:7px;display:grid}.kp-project-phrase-label{color:#fff;background:var(--forest);text-align:center;border-radius:11px;place-items:center;padding:8px;font-size:8px;font-weight:900;display:grid}.kp-project-phrase:nth-child(2) .kp-project-phrase-label{background:var(--coral-dark)}.kp-project-bars{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;min-width:0;display:grid}.kp-project-bar{min-height:68px}.kp-progression{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;width:100%;min-width:0;display:grid}.kp-chord-card{border:1px solid var(--line);min-width:0;min-height:76px;color:var(--ink-2);cursor:pointer;background:#fff;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;padding:9px 5px;display:flex;position:relative}.kp-chord-card:after{content:"›";z-index:2;color:var(--coral);pointer-events:none;font-size:16px;position:absolute;top:50%;right:-7px;transform:translate(50%,-50%)}.kp-chord-card:last-child:after{display:none}.kp-chord-card:hover{border-color:var(--kp-accent)}.kp-chord-card.active,.kp-chord-card.is-active{color:#fff;border-color:var(--forest);background:var(--forest);box-shadow:0 7px 16px #18302d26}.kp-chord-card>span{width:16px;height:16px;color:var(--muted);background:var(--paper);border-radius:50%;place-items:center;font-size:6px;font-weight:800;display:grid;position:absolute;top:6px;left:7px}.kp-chord-card.active>span,.kp-chord-card.is-active>span{color:var(--forest);background:var(--gold)}.knowledge-reader .kp-chord-card strong,.kp-chord-card strong{max-width:100%;color:inherit;text-overflow:ellipsis;white-space:nowrap;font-family:Georgia,serif;font-size:17px;overflow:hidden}.kp-chord-card small{color:var(--muted);margin-top:3px;font-size:7px}.kp-chord-card.active small,.kp-chord-card.is-active small{color:#ffffff94}.kp-progression-arrow{display:none}.kp-motif{background:var(--paper);border-radius:12px;grid-template-columns:repeat(8,minmax(0,1fr));align-items:end;gap:5px;width:100%;min-width:0;padding:12px;display:grid}.kp-motif button{min-width:0;height:var(--height,50px);border:1px solid var(--line);min-height:30px;color:var(--muted);cursor:pointer;background:#fff;border-radius:7px 7px 3px 3px;flex-direction:column;justify-content:flex-end;align-items:center;padding:4px 1px;font-family:Georgia,serif;font-size:8px;display:flex}.kp-motif button>span{color:var(--muted);font-size:6px;line-height:1}.knowledge-reader .kp-motif button>strong,.kp-motif button>strong{color:inherit;margin-top:3px;font-family:Georgia,serif;font-size:10px;line-height:1}.kp-motif button.active,.kp-motif button.is-active{color:#fff;border-color:var(--coral);background:var(--coral)}.kp-coach-map{width:100%;min-width:0}.kp-task{border-bottom:1px solid var(--line);background:var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;min-width:0;padding:0;display:grid}.kp-task>div{background:var(--kp-accent-soft);min-width:0;padding:13px 18px}@supports (color:color-mix(in lab, red, red)){.kp-task>div{background:color-mix(in srgb, var(--kp-accent-soft) 68%, var(--card))}}.kp-task>div strong{overflow-wrap:anywhere;color:var(--ink-2);font-size:9px;line-height:1.55;display:block}.knowledge-reader .kp-task>strong,.kp-task>strong{color:var(--ink);font-size:10px;display:block}.knowledge-reader .kp-task>p,.kp-task>p{color:var(--ink-2);margin:4px 0 0;font-size:9px;line-height:1.65}.kp-task-list,.kp-checklist{gap:7px;margin:12px 0;padding:0;list-style:none;display:grid}.knowledge-reader .kp-task-list li,.knowledge-reader .kp-checklist li,.kp-task-list li,.kp-checklist li,.kp-check-item{border:1px solid var(--line);min-width:0;color:var(--ink-2);background:#fff;border-radius:10px;align-items:flex-start;gap:9px;margin:0;padding:9px 10px;font-size:9px;line-height:1.55;display:flex}.kp-task-list li>b{color:#fff;background:var(--forest);border-radius:50%;flex:none;place-items:center;width:19px;height:19px;font-family:Georgia,serif;font-size:8px;display:grid}.kp-task-list li>span{min-width:0}.kp-task-list li>span strong{color:var(--ink);font-size:9px;display:block}.kp-check-item{text-align:left;cursor:pointer;width:100%}.kp-check-item:before{content:"";border:1px solid var(--line);color:#fff;background:var(--paper);border-radius:5px;flex:none;place-items:center;width:16px;height:16px;margin-top:1px;font-size:9px;font-weight:900;display:grid}.kp-check-item.done,.kp-check-item.is-done,.kp-check-item[aria-pressed=true]{color:var(--muted);background:#83a88c17;border-color:#83a88c6b}.kp-check-item.done:before,.kp-check-item.is-done:before,.kp-check-item[aria-pressed=true]:before{content:"✓";border-color:var(--sage);background:var(--sage)}.kp-check-item>span{overflow-wrap:anywhere;align-items:center;gap:8px;min-width:0;display:flex}.knowledge-reader .kp-check-item>span>strong,.kp-check-item>span>strong{width:20px;height:20px;color:var(--forest);background:#e8b94d52;border-radius:50%;flex:none;place-items:center;font-family:Georgia,serif;font-size:7px;display:grid}.kp-check-item.is-wrong{color:var(--coral-dark);background:#ed6b4f14;border-color:#ed6b4f85}.kp-check-item.is-wrong:before{content:"×";border-color:var(--coral);background:var(--coral)}.kp-coach-progress{background:var(--paper-deep);border-radius:99px;height:6px;margin:12px 0;overflow:hidden}.kp-coach-progress>span{border-radius:inherit;background:linear-gradient(90deg, var(--coral), var(--gold));height:100%;transition:width .22s;display:block}.kp-quiz-options{gap:7px;min-width:0;margin:10px 0 13px;display:grid}.kp-quiz-options .kp-check-item{align-items:center}.knowledge-reader .kp-practice-tip,.kp-practice-tip{border-top:1px solid var(--line);min-width:0;color:var(--muted);background:var(--paper);border-radius:0;align-items:flex-start;gap:9px;margin:0;padding:12px 18px;display:flex}.kp-practice-tip>span{color:var(--coral-dark);flex:none;font-size:13px;line-height:1.4}.knowledge-reader .kp-practice-tip p,.kp-practice-tip p{min-width:0;color:var(--muted);margin:0;font-size:8px;line-height:1.65}.knowledge-reader .kp-practice-tip strong,.kp-practice-tip strong{color:var(--coral-dark);margin-bottom:2px;display:block}.kp-timer{color:#fff;background:var(--forest);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;margin:12px 0;padding:12px 13px;display:flex}.kp-timer>span{color:#ffffff94;font-size:8px}.kp-timer>strong{color:var(--gold);letter-spacing:.05em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:21px}.kp-timer .kp-action{border-color:#ffffff29;min-height:32px;padding:6px 10px}.kp-coach-notes{border:1px solid var(--line);background:var(--paper);border-radius:13px;gap:10px;margin:13px 0 20px;padding:13px;display:grid}.kp-coach-note-heading{justify-content:space-between;align-items:flex-end;gap:10px;display:flex}.kp-coach-note-heading h3{margin:2px 0 0;font-size:14px}.kp-coach-note-clear{min-height:31px;padding:5px 9px;font-size:7px}.kp-coach-note-grid{gap:8px;display:grid}.kp-coach-note-field{gap:4px;display:grid}.kp-coach-note-field>span{color:var(--ink-2);font-size:8px;font-weight:850}.kp-coach-note-field textarea{resize:vertical;border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:9px;padding:9px 10px;font-size:8px;line-height:1.55}.knowledge-practice button:focus-visible{z-index:5;outline-offset:2px;outline:3px solid #ed6b4f6b;position:relative}.knowledge-practice input:focus-visible{z-index:5;outline-offset:2px;outline:3px solid #ed6b4f6b;position:relative}.knowledge-practice select:focus-visible{z-index:5;outline-offset:2px;outline:3px solid #ed6b4f6b;position:relative}.knowledge-practice textarea:focus-visible{outline-offset:2px;outline:3px solid #ed6b4f6b}@media (max-width:1180px){.kp-layout{grid-template-columns:1fr}.kp-layout>.kp-controls,.kp-layout>.kp-panel+.kp-panel{border-top:1px solid var(--line);border-left:0}.kp-stage{min-height:250px}.kp-controls{padding:21px}}@media (max-width:560px){.knowledge-practice{border-radius:16px;margin-bottom:32px}.kp-header{flex-direction:column;gap:12px;padding:22px 18px 18px}.kp-title{font-size:22px}.kp-badge{min-height:25px}.kp-task{grid-template-columns:1fr}.kp-stage{min-height:230px;padding:18px 12px}.kp-controls,.kp-panel{padding:18px}.kp-action{min-height:40px}.kp-tone-ring{width:min(100%,258px)}.kp-tone-node{width:35px;height:35px;transform:translate(-50%, -50%) rotate(var(--kp-angle)) translateY(-108px) rotate(calc(var(--kp-angle) * -1));font-size:9px}.kp-tone-center{width:80px;height:80px}.kp-tone-center strong{font-size:21px}.kp-step-grid,.kp-beat-count{grid-template-columns:repeat(4,minmax(0,1fr))}.kp-step{height:52px}.kp-piano{height:148px}.kp-key.black{height:88px}.kp-string-row{grid-template-columns:24px repeat(6,minmax(0,1fr))}.kp-string-row:after{left:24px}.kp-fretboard{padding-left:7px;padding-right:7px}.kp-progression{grid-template-columns:repeat(2,minmax(0,1fr))}.kp-project-phrase{grid-template-columns:1fr}.kp-project-phrase-label{justify-items:start}.kp-progression>.kp-chord-card:nth-child(2):after{display:none}.kp-progression>.kp-chord-card:nth-child(3):after{content:"›"}.kp-timer{flex-wrap:wrap}.kp-timer .kp-action{margin-left:auto}}@media (max-width:360px){.kp-stage{padding-left:8px;padding-right:8px}.kp-tone-ring{width:232px}.kp-tone-node{width:32px;height:32px;transform:translate(-50%, -50%) rotate(var(--kp-angle)) translateY(-97px) rotate(calc(var(--kp-angle) * -1))}.kp-tone-center{width:72px;height:72px}.kp-control-row .kp-action{width:100%}.kp-tempo-row{grid-template-columns:80px minmax(0,1fr);gap:10px}.kp-metronome{width:76px;height:94px}.kp-progression{gap:5px}}@media (prefers-reduced-motion:reduce){.knowledge-practice *,.knowledge-practice :before,.knowledge-practice :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:1180px){:root{--sidebar-width:264px}.academy-content{padding-left:28px;padding-right:28px}.lab-navigation button{padding:8px}.lab-navigation button b{display:none}.theory-grid,.lower-lab-grid{grid-template-columns:1fr}.theory-grid .lab-stack{grid-template-columns:repeat(2,1fr)}.tone-map-card{min-height:560px}}@media (max-width:900px){.course-sidebar{visibility:hidden;width:min(330px,88vw);transition:transform .22s,visibility 0s linear .22s;transform:translate(-102%);box-shadow:24px 0 50px #0003}.course-sidebar.open{visibility:visible;transition-delay:0s;transform:translate(0)}.sidebar-collapse{display:none}.sidebar-close{display:block}.sidebar-scrim{z-index:29;opacity:0;pointer-events:none;background:#0d1c1a7a;border:0;transition:opacity .18s;display:block;position:fixed;top:0;bottom:0;left:0;right:0}.sidebar-scrim.visible{opacity:1;pointer-events:auto}.academy-main{margin-left:0}.menu-button{display:block}.lab-navigation{justify-content:flex-start}.topbar{padding:0 20px}.lesson-hero{grid-template-columns:1fr}.lesson-visual{min-height:230px}.lesson-number strong{font-size:66px}.practice-section,.rhythm-workbench,.ear-layout{grid-template-columns:1fr}.knowledge-index-toggle{display:block}.knowledge-layout{grid-template-columns:1fr}.knowledge-index{max-height:54vh;display:none;position:static}.knowledge-index.open{display:block}.related-knowledge{grid-template-columns:1fr}}@media (max-width:700px){body{font-size:14px}.topbar{height:58px}.lab-navigation{display:none}.audio-status{margin-left:auto}.academy-content{padding:24px 14px 105px}.lesson-hero{border-radius:20px}.lesson-hero-copy{padding:35px 25px}.lesson-hero h1,.lab-heading h1{font-size:36px}.lesson-hero-copy>p:last-of-type{font-size:13px}.hero-actions>*{width:100%}.lesson-visual{min-height:210px}.lesson-roadmap{justify-content:flex-start;margin-bottom:55px;padding:14px;overflow-x:auto}.roadmap-label{display:none}.lesson-roadmap>div{flex:none}.lesson-roadmap>i{width:14px}.section-heading{flex-direction:column;align-items:flex-start;gap:7px}.section-heading>p{max-width:none}.concept-cards{grid-template-columns:1fr;margin-bottom:56px}.concept-cards article{min-height:0;padding:22px 20px 22px 59px}.concept-cards article>span{top:20px;left:18px}.step-workspace{grid-template-columns:1fr}.step-tabs{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;overflow-x:auto}.step-tabs button{flex:0 0 155px;padding:10px}.active-step-card{min-height:330px;padding:38px 24px}.active-step-card h3{max-width:75%}.step-counter{font-size:39px;top:23px;right:20px}.practice-intro,.practice-list{padding:26px 22px}.quiz-heading{align-items:flex-start;padding:29px 23px}.quiz-heading h2{font-size:27px}.quiz-list{padding:6px 22px}.quiz-options{grid-template-columns:1fr;padding-left:0}.quiz-explanation{margin-left:0}.lesson-finish{flex-direction:column;align-items:stretch;margin:20px 22px 25px}.lesson-finish>button{width:100%}.related-knowledge{gap:20px;margin-top:-32px;padding:24px 20px}.related-knowledge-list button{grid-template-columns:34px minmax(0,1fr) auto;padding:11px}.related-knowledge-list small{line-height:1.45}.lab-heading{margin-bottom:28px}.lab-heading>p:last-child{font-size:12px}.lab-grid,.theory-grid,.theory-grid .lab-stack{grid-template-columns:1fr}.lab-card{padding:22px}.tone-map-card{min-height:525px}.tone-orbit{width:286px;height:286px;margin:70px auto 40px}.tone-node{width:45px;height:45px}.orbit-center{width:105px;height:105px}.root-selector{overflow-x:auto}.root-selector button{flex:0 0 38px}.chord-result{grid-template-columns:62px 1fr}.chord-result>div:last-child{display:none}.instrument-toolbar{flex-direction:column;align-items:flex-start}.instrument-toolbar>p{display:none}.piano-scroll{padding:20px 16px 15px}.piano-board{min-width:760px;height:235px}.piano-key.black{--black-key-width:38px;--black-key-offset:-19px;height:145px}.big-chord-row{grid-template-columns:repeat(3,1fr)}.guitar-toolbar{flex-direction:row;align-items:center}.toolbar-actions{flex-direction:column;align-items:stretch}.fretboard-scroll{padding:26px 18px 18px}.guitar-chord-list{grid-template-columns:repeat(4,1fr)}.progression-flow div{width:55px;height:55px}.sequence-card{padding:22px!important}.step-grid{gap:2px}.step-grid button{height:62px}.rhythm-presets{grid-template-columns:1fr}.ear-challenge-card{min-height:460px;padding:30px 22px}.answer-card{padding:25px 21px}.interval-options{grid-template-columns:1fr 1fr}.knowledge-heading{align-items:flex-start;min-height:0;padding:32px 24px}.knowledge-heading h1{font-size:34px}.knowledge-heading>div:first-child>p:last-child{font-size:11px}.knowledge-stat{width:76px;height:76px}.knowledge-stat strong{font-size:26px}.knowledge-stat span{font-size:7px}.knowledge-toolbar{align-items:stretch}.knowledge-index-toggle{padding:0 12px}.knowledge-reader{border-radius:16px;padding:22px 20px 30px}.reader-meta{flex-direction:column;align-items:flex-start;margin:0 -20px 26px;padding:0 20px 18px}.knowledge-reader>h1{font-size:34px}.knowledge-reader h2{margin-top:39px;font-size:23px}.knowledge-reader p{font-size:12px}.mermaid-diagram{padding:16px 10px}.reader-pagination{grid-template-columns:1fr}.reader-pagination button:last-of-type{text-align:left}.site-footer{display:none}.mobile-tabbar{z-index:25;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#173632f5;border:1px solid #ffffff1a;border-radius:18px;grid-template-columns:repeat(7,1fr);padding:5px;display:grid;position:fixed;bottom:9px;left:9px;right:9px;box-shadow:0 12px 30px #18302d47}.mobile-tabbar button{color:#ffffff7a;background:0 0;border:0;border-radius:13px;flex-direction:column;justify-content:center;align-items:center;gap:1px;min-width:0;padding:7px 2px;display:flex}.mobile-tabbar button.active{color:var(--forest);background:var(--gold)}.mobile-tabbar span{font-family:Georgia,serif;font-size:15px}.mobile-tabbar b{font-size:7px}.sound-toast{min-width:0;bottom:78px;left:14px;right:14px}}@media (max-width:380px){.tone-orbit{width:246px;height:246px}.tone-node{width:41px;height:41px}.map-legend{gap:9px}.interval-options{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.lesson-hook{background:radial-gradient(circle at 92% 12%, #e8b94d38, transparent 11rem), var(--card);box-shadow:var(--soft-shadow);border:1px solid #e8b94d73;border-radius:20px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px 28px;margin:0 0 28px;padding:28px 32px;scroll-margin-top:92px;display:grid}.lesson-hook>div{padding-left:56px;position:relative}.lesson-hook>div>span{width:40px;height:40px;color:var(--forest);background:var(--gold);border-radius:14px;place-items:center;font-family:Georgia,serif;font-size:23px;font-weight:800;display:grid;position:absolute;top:2px;left:0}.lesson-hook h2{margin:0;font-family:Songti SC,STSong,serif;font-size:clamp(22px,2.7vw,34px);line-height:1.35}.lesson-hook>button{border:1px solid var(--line);min-height:42px;color:var(--ink-2);cursor:pointer;background:#fff;border-radius:12px;padding:9px 15px;font-size:10px;font-weight:800}.lesson-hook>button.open{color:#fff;border-color:var(--forest);background:var(--forest)}.hook-answer{border-left:4px solid var(--gold);color:var(--ink-2);background:#e8b94d17;border-radius:0 12px 12px 0;grid-column:1/-1;margin:0;padding:16px 18px;font-size:13px}.hook-answer b{color:var(--ink);margin-right:7px}.lesson-concept-visual{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);border-radius:24px;margin-bottom:72px;overflow:hidden}.lesson-concept-visual>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:32px;padding:26px 30px 21px;display:flex}.lesson-concept-visual>header span{color:var(--coral-dark);letter-spacing:.15em;font-size:8px;font-weight:900}.lesson-concept-visual>header h2{margin:4px 0 0;font-family:Songti SC,STSong,serif;font-size:clamp(24px,3vw,36px);line-height:1.25}.lesson-concept-visual>header>p{max-width:480px;color:var(--muted);margin:0;font-size:11px;line-height:1.75}.lesson-visual-stage{background-color:#f7f2e8;background-image:linear-gradient(#18302d07 1px,#0000 1px),linear-gradient(90deg,#18302d07 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:24px 24px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;min-width:0;padding:34px}.lesson-visual-audio{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding:15px 28px 18px;display:flex}.lesson-visual-audio>span{color:var(--muted);margin-right:5px;font-size:9px;font-weight:800}.lesson-visual-audio button{border:1px solid var(--line);min-height:34px;color:var(--ink-2);cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:7px;padding:7px 12px;font-size:9px;font-weight:800;display:inline-flex}.lesson-visual-audio button:hover{color:#fff;border-color:var(--coral);background:var(--coral)}.lesson-visual-audio i{font-size:8px;font-style:normal}.keyboard-teaching-map{min-width:0}.keyboard-landmarks{width:min(100%,900px);height:34px;color:var(--coral-dark);margin:0 auto;font-size:9px;font-weight:900;position:relative}.keyboard-landmarks span{position:absolute;top:0}.keyboard-landmarks span:after{content:"↓";color:var(--gold);margin-left:6px;font-size:16px}.keyboard-landmarks .two-black{left:11%}.keyboard-landmarks .three-black{left:51%}.annotated-piano{width:min(100%,900px);height:270px;margin:0 auto;position:relative}.annotated-white-row{grid-template-columns:repeat(8,minmax(66px,1fr));height:100%;display:grid}.annotated-white-row button{min-width:0;color:var(--ink);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:linear-gradient(90deg,#f1eee7,#fff 36%,#fbfaf6);border:1px solid #bcb6aa;border-bottom-width:5px;border-radius:0 0 9px 9px;flex-direction:column;justify-content:flex-end;align-items:center;padding:0 4px 22px;display:flex;position:relative;box-shadow:inset 0 -20px 30px #18302d0a}.annotated-white-row button>*,.annotated-black>*{pointer-events:none}.annotated-white-row button:hover,.annotated-white-row button.active,.annotated-white-row button:active{background:#f8dfd4;box-shadow:inset 0 -10px 20px #6741392b}.annotated-white-row strong{font-family:Georgia,serif;font-size:22px}.annotated-white-row small{color:var(--muted);margin-top:5px;font-size:9px}.annotated-white-row em{color:var(--coral-dark);white-space:nowrap;font-size:8px;font-style:normal;font-weight:900;position:absolute;bottom:-27px}.annotated-black{z-index:2;top:0;left:var(--black-left);color:#fff;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:linear-gradient(90deg,#111d1b,#38544e 48%,#0c1715);border:1px solid #06110f;border-bottom-width:7px;border-radius:0 0 8px 8px;flex-direction:column;justify-content:flex-end;align-items:center;width:clamp(46px,7%,66px);height:168px;margin-left:clamp(-33px,-3.5%,-23px);padding:0 3px 17px;display:flex;position:absolute;box-shadow:0 8px 11px #00000040}.annotated-black:hover,.annotated-black.active,.annotated-black:active{background:linear-gradient(90deg, #7f3a2d, var(--coral), #703127);box-shadow:0 4px 7px #0000004d,inset 0 -5px 10px #0000002e}.annotated-black strong{font-size:9px}.annotated-black small{color:#ffffff94;margin-top:4px;font-size:7px}.semitone-ruler{border:1px solid var(--line);scrollbar-width:thin;background:#fff;border-radius:13px;width:min(100%,940px);margin:52px auto 0;padding:7px;display:flex;overflow-x:auto}.semitone-ruler>div{flex:1 0 52px;justify-content:space-between;align-items:center;min-width:52px;display:flex}.semitone-ruler span{width:32px;height:32px;color:var(--ink);background:var(--paper);border-radius:9px;place-items:center;font-family:Georgia,serif;font-size:11px;font-weight:800;display:grid}.semitone-ruler i{color:var(--coral-dark);font-size:9px;font-style:normal;font-weight:900}.semitone-callouts{grid-template-columns:repeat(3,1fr);gap:9px;width:min(100%,940px);margin:14px auto 0;display:grid}.semitone-callouts p{color:var(--muted);background:#fffc;border-radius:12px;flex-direction:column;margin:0;padding:12px;font-size:9px;display:flex}.semitone-callouts b{color:var(--ink);font-family:Georgia,serif;font-size:14px}.scale-chord-visual{grid-template-columns:minmax(0,1.5fr) minmax(190px,.5fr);align-items:center;gap:28px;display:grid}.scale-path{align-items:center;padding:25px 6px;display:flex;overflow-x:auto}.scale-path>div{flex:1 0 70px;align-items:center;min-width:70px;display:flex}.scale-path strong{color:#fff;background:var(--forest);border-radius:50%;place-items:center;width:45px;height:45px;font-family:Georgia,serif;display:grid}.scale-path span{min-width:24px;color:var(--coral-dark);text-align:center;font-size:9px;font-weight:900}.chord-stack{color:#fff;background:var(--forest);border-radius:17px;flex-direction:column;align-items:stretch;gap:6px;padding:19px;display:flex}.chord-stack small{color:var(--gold);font-size:8px}.chord-stack span{background:#ffffff17;border-radius:8px;padding:7px 10px;font-size:10px}.chord-stack b{margin-top:4px;font-size:11px}.rhythm-picture{width:min(100%,850px);margin:0 auto}.pulse-row,.subdivision-row{gap:8px;display:grid}.pulse-row{grid-template-columns:repeat(4,1fr)}.pulse-row span{color:#fff;background:var(--forest);border-radius:15px;flex-direction:column;justify-content:center;align-items:center;height:80px;font-family:Georgia,serif;font-size:28px;display:flex}.pulse-row span.accent{color:var(--forest);background:var(--gold);transform:translateY(-7px)}.pulse-row small{font-family:inherit;font-size:8px}.subdivision-row{grid-template-columns:repeat(8,1fr);margin-top:12px}.subdivision-row span{color:var(--muted);flex-direction:column;align-items:center;font-size:9px;display:flex}.subdivision-row i{background:var(--coral);border-radius:50%;width:9px;height:9px;margin-top:7px}.subdivision-row i.quiet{border:1px dashed var(--muted);background:0 0}.rhythm-picture>p{text-align:center;color:var(--muted);margin:18px 0 0;font-size:10px}.contour-picture{width:min(100%,830px);margin:0 auto}.contour-picture svg{width:100%;height:auto;display:block;overflow:visible}.contour-picture .contour-grid{fill:none;stroke:#18302d1a;stroke-width:2px}.contour-picture polyline{fill:none;stroke:var(--coral);stroke-linecap:round;stroke-linejoin:round;stroke-width:7px}.contour-picture circle{fill:var(--gold);stroke:var(--forest);stroke-width:4px}.contour-picture>div{justify-content:center;gap:10px;display:flex}.contour-picture span{background:#fff;border-radius:99px;padding:5px 10px;font-size:9px;font-weight:800}.hand-map{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.hand-map>div{border:1px solid var(--line);background:#fff;border-radius:18px;padding:22px}.hand-map>div>small{color:var(--muted);font-size:9px;font-weight:800}.hand-map>div>p{gap:7px;margin:17px 0 0;display:flex}.hand-map>div span{color:#fff;background:var(--forest);border-radius:10px;flex-direction:column;flex:1;align-items:center;min-width:48px;padding:11px 4px;font-family:Georgia,serif;display:flex}.hand-map>div span b{width:23px;height:23px;color:var(--forest);background:var(--gold);border-radius:50%;place-items:center;margin-bottom:4px;font-size:9px;display:grid}.hand-map .hand-reminder{color:var(--ink-2);text-align:center;background:#e8b94d24;border-radius:12px;grid-column:1/-1;margin:0;padding:12px;font-size:10px;font-weight:800}.inversion-picture{grid-template-columns:repeat(3,1fr);gap:13px;display:grid}.inversion-picture>div{border:1px solid var(--line);text-align:center;background:#fff;border-radius:16px;padding:20px}.inversion-picture small{color:var(--coral-dark);font-size:9px;font-weight:900}.inversion-picture p{justify-content:center;align-items:end;gap:7px;min-height:105px;margin:12px 0;display:flex}.inversion-picture p span{color:#fff;background:var(--forest);border-radius:50%;place-items:center;width:45px;height:45px;font-family:Georgia,serif;font-weight:800;display:grid}.inversion-picture p span:nth-child(2){background:var(--coral);transform:translateY(-26px)}.inversion-picture p span:nth-child(3){color:var(--forest);background:var(--gold);transform:translateY(-52px)}.inversion-picture b{font-size:10px}.layer-picture{grid-template-columns:1fr;gap:10px;width:min(100%,900px);margin:0 auto;display:grid}.layer-picture>div{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:60px minmax(0,1fr) 120px;align-items:center;gap:12px;padding:14px;display:grid}.layer-picture>div>span{color:var(--coral-dark);font-size:10px;font-weight:900}.layer-picture p{grid-template-columns:repeat(4,1fr);gap:7px;margin:0;display:grid}.layer-picture p b{color:#fff;background:var(--forest);text-align:center;border-radius:8px;padding:10px 4px;font-size:9px}.layer-picture small{color:var(--muted);font-size:8px}.layer-picture>strong{color:var(--ink-2);text-align:center;padding:9px;font-size:10px}.guitar-map-picture{color:#fff;background:#4b3025;border-radius:15px;min-width:0;padding:15px;position:relative;overflow-x:auto}.fret-numbers,.course-string{grid-template-columns:105px repeat(6,1fr);min-width:700px;display:grid}.fret-numbers span{color:#fff9;text-align:center;padding:0 7px 8px;font-size:8px}.course-string{align-items:center;position:relative}.course-string:after{content:"";height:var(--string-weight);background:#e6d4b0;position:absolute;left:105px;right:0;box-shadow:0 1px #00000080}.course-string b{z-index:1;padding:9px;font-size:8px;position:relative}.course-string i{z-index:2;border-left:3px solid #e2d6bbb3;place-items:center;height:28px;font-style:normal;display:grid;position:relative}.course-string i:after{content:"";z-index:-1;background:#e8b94d33;border-radius:9px;width:31px;height:20px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.course-string i.open-string-note:after{background:var(--gold)}.course-fret-note{color:#fff;text-shadow:0 1px 2px #0000008c;font-family:Georgia,serif;font-size:8px;font-weight:900}.open-string-note .course-fret-note{color:var(--forest);text-shadow:none}.guitar-map-picture>p{color:#f3ce73;min-width:700px;margin:12px 0 0 105px;font-size:9px}.course-chord-diagrams{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.course-chord-diagrams>div{border:1px solid var(--line);background:#fff;border-radius:15px;flex-direction:column;align-items:center;padding:17px;display:flex}.course-chord-diagrams strong{font-family:Georgia,serif;font-size:21px}.course-chord-string-states,.course-chord-string-numbers{width:76px;color:var(--muted);text-align:center;grid-template-columns:repeat(6,1fr);display:grid}.course-chord-string-states{margin-top:8px;font-size:9px;font-weight:900}.course-chord-string-states .muted{color:var(--coral-dark)}.course-chord-string-states .open{color:var(--sage)}.chord-grid-icon{border-top:4px solid var(--forest);border-bottom:1px solid var(--forest);background:repeating-linear-gradient(0deg,#0000 0 14px,#18302d40 15px 16px);grid-template-columns:repeat(6,1fr);width:76px;margin:13px 0;display:grid}.chord-grid-icon i{border-left:1px solid var(--forest);height:68px;position:relative}.chord-grid-icon i:last-child{border-right:1px solid var(--forest)}.course-chord-dot{z-index:2;top:calc((var(--course-chord-fret) - .5) * 22px);color:#0000;background:var(--coral-dark);border-radius:50%;place-items:center;width:17px;height:17px;font-size:0;display:grid;position:absolute;left:50%;transform:translate(-50%,-50%)}.course-chord-dot small{color:#fff;word-spacing:normal;font-size:6px;font-weight:900}.course-chord-string-numbers{margin-top:-7px}.course-chord-string-numbers small{word-spacing:normal;font-size:6px}.course-chord-diagrams small{word-spacing:5px;color:var(--muted);font-size:8px}.course-chord-diagrams>p{text-align:center;background:#e8b94d24;border-radius:10px;grid-column:1/-1;margin:0;padding:10px;font-size:9px}.strum-picture{width:min(100%,880px);margin:0 auto}.count-row,.motion-row,.sound-row{grid-template-columns:repeat(8,1fr);gap:6px;display:grid}.count-row span{color:var(--muted);text-align:center;padding:5px;font-size:9px}.motion-row span{color:#fff;background:var(--forest);border-radius:11px;flex-direction:column;justify-content:center;align-items:center;min-height:75px;font-size:25px;display:flex}.motion-row small{color:#ffffff80;font-size:7px}.sound-row{margin-top:7px}.sound-row span{color:#fff;background:var(--coral);text-align:center;border-radius:8px;padding:8px 3px;font-size:10px;font-weight:900}.sound-row span.silent{color:var(--muted);background:#fff}.strum-picture>p{color:var(--muted);text-align:center;margin:15px 0 0;font-size:10px}.song-form-picture{gap:13px;display:grid}.song-form-picture .phrase{grid-template-columns:120px repeat(4,1fr);align-items:stretch;gap:7px;display:grid}.song-form-picture .phrase>span{color:#fff;background:var(--forest);border-radius:12px;place-items:center;font-size:10px;font-weight:900;display:grid}.song-form-picture .phrase.answer>span{background:var(--coral)}.song-form-picture .phrase b{border:1px solid var(--line);background:#fff;border-radius:11px;flex-direction:column;align-items:center;padding:14px 6px;font-family:Georgia,serif;display:flex}.song-form-picture .phrase small{color:var(--muted);font-family:inherit;font-size:8px}.song-form-picture>p{color:var(--ink-2);text-align:center;background:#e8b94d21;border-radius:10px;margin:0;padding:11px;font-size:10px}.practice-loop-picture{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.practice-loop-picture>div{border:1px solid var(--line);text-align:center;background:#fff;border-radius:15px;flex-direction:column;align-items:center;padding:22px 8px;display:flex;position:relative}.practice-loop-picture span{width:33px;height:33px;color:var(--forest);background:var(--gold);border-radius:50%;place-items:center;margin-bottom:8px;font-family:Georgia,serif;font-weight:900;display:grid}.practice-loop-picture strong{font-size:13px}.practice-loop-picture small{color:var(--muted);font-size:8px}.practice-loop-picture i{color:var(--coral);font-size:20px;font-style:normal;position:absolute;top:50%;right:-25px}.lesson-concepts{margin-bottom:78px}.lesson-concepts .concept-cards{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:0}.lesson-concepts .concept-cards article{min-height:260px;padding:27px 24px 22px 66px}.concept-cards article>small{color:var(--muted);letter-spacing:.14em;font-size:7px;font-weight:900}.concept-cards article h3{margin:3px 0 10px;font-family:Songti SC,STSong,serif;font-size:19px;line-height:1.35}.concept-cards article aside{z-index:1;color:var(--muted);background:var(--paper);border-radius:10px;margin-top:15px;padding:10px 11px;font-size:9px;line-height:1.65;position:relative}.concept-cards article aside b{color:var(--coral-dark);margin-bottom:2px;font-size:8px;display:block}.integrated-steps{margin-bottom:82px}.integrated-steps .step-tabs{border:1px solid var(--line);background:#eae3d7;border-radius:17px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:7px;margin-bottom:10px;padding:10px;display:grid}.integrated-steps .step-tabs button{min-width:0}.inline-step-card{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);border-radius:22px;overflow:hidden}.inline-step-card>header{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(220px,.48fr);gap:24px;padding:34px 35px 29px;display:grid;position:relative}.inline-step-card>header>div:nth-child(2){padding-right:70px}.inline-step-card>header h3{margin:0 0 9px;font-family:Songti SC,STSong,serif;font-size:28px}.inline-step-card>header p:not(.card-kicker){color:var(--ink-2);margin:0;font-size:12px;line-height:1.8}.inline-step-card>header aside{color:var(--muted);background:var(--paper);border-radius:12px;align-self:end;padding:13px 15px;font-size:9px;line-height:1.7}.inline-step-card>header aside b{color:var(--ink);font-size:9px;display:block}.inline-step-card .step-counter{top:28px;left:calc(100% - 330px);right:auto}.inline-step-card>.knowledge-practice{box-shadow:none;border:0;border-radius:0;margin:0}.step-checkpoint{border-top:1px solid var(--line);background:#eee8dc;justify-content:space-between;align-items:center;gap:18px;padding:18px 25px;display:flex}.step-checkpoint>div{align-items:center;gap:10px;display:flex}.step-checkpoint>div>span{color:#fff;background:var(--sage);border-radius:50%;flex:none;place-items:center;width:34px;height:34px;display:grid}.step-checkpoint p{flex-direction:column;margin:0;display:flex}.step-checkpoint small{color:var(--muted);font-size:8px}.step-checkpoint strong{font-size:10px;line-height:1.5}.lesson-recorder{border:0;border-top:1px solid var(--line);background:var(--card);box-shadow:none;border-radius:0;margin:0;padding:30px}.lesson-recorder>header{justify-content:space-between;align-items:flex-end;gap:26px;margin-bottom:20px;display:flex}.lesson-recorder>header h2{margin:0;font-family:Songti SC,STSong,serif;font-size:28px}.lesson-recorder>header>p{max-width:420px;color:var(--muted);margin:0;font-size:9px;line-height:1.65}.lesson-recorder-console{color:#fff;background:var(--forest);border-radius:15px;grid-template-columns:auto auto minmax(220px,1fr);align-items:center;gap:18px;padding:17px 18px;display:grid}.recorder-meter{font-variant-numeric:tabular-nums;align-items:center;gap:8px;display:flex}.recorder-meter i{background:#ffffff57;border-radius:50%;width:10px;height:10px}.recorder-meter.recording i{background:var(--coral);animation:1s ease-in-out infinite recorder-pulse;box-shadow:0 0 0 5px #e66f5129}.recorder-meter span{color:#ffffff9e;letter-spacing:.12em;font-size:8px;font-weight:900}.recorder-meter strong{font-family:Georgia,serif;font-size:20px}.recorder-actions{gap:7px;display:flex}.lesson-recorder .recorder-actions button{min-height:38px}.lesson-recorder .recorder-actions .secondary-action{color:#fff;background:0 0;border-color:#ffffff3d}.lesson-recorder .recorder-actions .stop{background:#c74938}.recorder-message{color:#ffffffbd;margin:0;font-size:9px;line-height:1.6}.recording-takes{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.recording-takes article{border:1px solid var(--line);background:var(--paper);border-radius:13px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:3px 12px;padding:13px 15px;display:grid}.recording-takes span{color:var(--coral-dark);letter-spacing:.1em;grid-row:1/3;font-size:8px;font-weight:900}.recording-takes strong{font-size:10px}.recording-takes audio{width:100%;height:34px}.recording-takes a{color:var(--coral-dark);grid-column:2;font-size:8px;font-weight:850;text-decoration:none}.recording-notes{gap:7px;margin-top:14px;display:grid}.recording-notes>span{color:var(--ink);font-size:10px;font-weight:900}.recording-notes textarea{resize:vertical;border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:11px;padding:12px 13px;font-size:10px;line-height:1.65}.recording-notes small{color:var(--muted);font-size:8px;line-height:1.6}@keyframes recorder-pulse{50%{opacity:.46;transform:scale(.76)}}.lesson-glossary{border:1px solid var(--line);background:#fffdf8b8;border-radius:21px;margin:0 0 72px;padding:28px 30px}.lesson-glossary header h2{margin:0;font-family:Songti SC,STSong,serif;font-size:27px}.lesson-glossary dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:20px 0 0;display:grid}.lesson-glossary dl>div{background:var(--card);border-radius:11px;grid-template-columns:minmax(90px,.4fr) minmax(0,1fr);gap:12px;padding:12px 14px;display:grid}.lesson-glossary dt{color:var(--coral-dark);font-size:10px;font-weight:900}.lesson-glossary dd{color:var(--muted);margin:0;font-size:9px;line-height:1.65}.lesson-reading{margin:0 0 82px;scroll-margin-top:90px}.lesson-reading>header{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:20px;display:flex}.lesson-reading>header h2{margin:0;font-family:Songti SC,STSong,serif;font-size:clamp(26px,3vw,38px)}.lesson-reading>header>p{max-width:470px;color:var(--muted);margin:0 0 3px;font-size:10px}.lesson-reading-list{gap:9px;display:grid}.lesson-reading-list details{border:1px solid var(--line);background:var(--card);border-radius:15px;overflow:hidden}.lesson-reading-list summary{cursor:pointer;grid-template-columns:38px minmax(0,1fr) auto 22px;align-items:center;gap:12px;padding:14px 16px;list-style:none;display:grid}.lesson-reading-list summary::-webkit-details-marker{display:none}.lesson-reading-list summary>span{width:38px;height:38px;color:var(--forest);background:#e8b94d4d;border-radius:10px;place-items:center;font-size:9px;font-weight:900;display:grid}.lesson-reading-list summary p{flex-direction:column;min-width:0;margin:0;display:flex}.lesson-reading-list summary strong{font-size:11px}.lesson-reading-list summary small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.lesson-reading-list summary>b{color:var(--muted);font-size:8px}.lesson-reading-list summary>i{color:var(--coral);font-size:18px;font-style:normal;transition:transform .16s}.lesson-reading-list details[open] summary{border-bottom:1px solid var(--line);background:#eee8dc}.lesson-reading-list details[open] summary>i{transform:rotate(45deg)}.lesson-reading-body{max-width:900px;color:var(--ink-2);margin:0 auto;padding:30px 34px 42px}.lesson-reading-body .reading-document-title{color:var(--ink);margin:0 0 20px;font-family:Songti SC,STSong,serif;font-size:31px;line-height:1.35}.lesson-reading-body h4{color:var(--ink);margin:34px 0 12px;font-family:Songti SC,STSong,serif;font-size:25px;line-height:1.35}.lesson-reading-body h5{color:var(--ink);margin:25px 0 9px;font-size:16px}.lesson-reading-body p,.lesson-reading-body li{font-size:11px;line-height:1.85}.lesson-reading-body table{border-collapse:collapse;width:100%;display:block;overflow-x:auto}.lesson-reading-body th,.lesson-reading-body td{border:1px solid var(--line);text-align:left;padding:8px 10px;font-size:9px}.lesson-reading-body th{background:var(--paper)}.lesson-reading-body blockquote{border-left:4px solid var(--gold);background:#e8b94d14;margin:18px 0;padding:10px 15px}.lesson-reading-body pre{color:#f7f3e8;background:var(--forest);border-radius:10px;padding:15px;overflow-x:auto}.lesson-reading-body a{color:var(--coral-dark);text-decoration:underline}.mobile-tabbar{grid-template-columns:repeat(6,1fr)}@media (max-width:900px){.lesson-concept-visual>header,.lesson-reading>header{flex-direction:column;align-items:flex-start;gap:8px}.lesson-concept-visual>header>p,.lesson-reading>header>p{max-width:none}.lesson-concepts .concept-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.inline-step-card>header{grid-template-columns:1fr}.inline-step-card>header>div:nth-child(2){padding-right:85px}.inline-step-card .step-counter{top:28px;left:auto;right:28px}.scale-chord-visual,.hand-map{grid-template-columns:1fr}.hand-map .hand-reminder{grid-column:auto}.course-chord-diagrams{grid-template-columns:repeat(2,1fr)}.song-form-picture .phrase{grid-template-columns:85px repeat(4,1fr)}.lesson-recorder-console{grid-template-columns:1fr auto}.recorder-message{grid-column:1/-1}}@media (max-width:700px){.lesson-roadmap{grid-template-columns:repeat(2,1fr);gap:8px;display:grid;overflow:visible}.lesson-roadmap>i{display:none}.lesson-roadmap>div{background:#ffffff8c;border-radius:10px;padding:8px}.lesson-hook{grid-template-columns:1fr;padding:22px 19px}.lesson-hook>div{padding-left:49px}.lesson-hook>button{width:100%}.lesson-concept-visual{border-radius:18px;margin-bottom:55px}.lesson-concept-visual>header{padding:22px 20px 17px}.lesson-visual-stage{padding:22px 14px}.lesson-visual-audio{padding:13px 17px 16px}.lesson-visual-audio>span{width:100%}.annotated-piano{min-width:650px;height:230px}.annotated-white-row{grid-template-columns:repeat(8,minmax(70px,1fr))}.annotated-black{width:49px;height:145px;margin-left:-24.5px}.keyboard-teaching-map{padding-bottom:4px;overflow-x:auto}.keyboard-landmarks,.semitone-ruler,.semitone-callouts{min-width:650px}.semitone-callouts{grid-template-columns:repeat(3,1fr)}.lesson-concepts .concept-cards{grid-template-columns:1fr}.lesson-concepts .concept-cards article{min-height:0;padding:22px 18px 20px 58px}.integrated-steps .step-tabs{flex-direction:row;display:flex;overflow-x:auto}.integrated-steps .step-tabs button{flex:0 0 165px}.inline-step-card>header{padding:28px 20px 22px}.inline-step-card>header>div:nth-child(2){padding-right:65px}.inline-step-card>header h3{font-size:23px}.inline-step-card .step-counter{font-size:39px;top:25px;right:18px}.inline-step-card .kp-header{padding:22px 18px 18px}.step-checkpoint{flex-direction:column;align-items:stretch;padding:17px}.step-checkpoint>button{width:100%}.lesson-recorder{margin:0;padding:22px 17px}.lesson-recorder>header{flex-direction:column;align-items:flex-start;gap:8px}.lesson-recorder-console{grid-template-columns:1fr}.recorder-actions{flex-direction:column;align-items:stretch}.recorder-message{grid-column:auto}.recording-takes{grid-template-columns:1fr}.lesson-glossary{padding:23px 18px}.lesson-glossary dl{grid-template-columns:1fr}.lesson-glossary dl>div{grid-template-columns:1fr;gap:3px}.lesson-reading-list summary{grid-template-columns:34px minmax(0,1fr) 18px;padding:12px}.lesson-reading-list summary>b{display:none}.lesson-reading-list summary>i{grid-column:3}.lesson-reading-body{padding:23px 19px 32px}.lesson-reading-body .reading-document-title{font-size:26px}.inversion-picture{grid-template-columns:1fr}.layer-picture>div{grid-template-columns:48px minmax(0,1fr)}.layer-picture>div>small{grid-column:2}.course-chord-diagrams{grid-template-columns:repeat(2,1fr)}.motion-row span{min-height:58px;font-size:19px}.motion-row small{display:none}.song-form-picture{overflow-x:auto}.song-form-picture .phrase{min-width:560px}.practice-loop-picture{grid-template-columns:repeat(2,1fr)}.practice-loop-picture i{display:none}}@media (max-width:430px){.course-chord-diagrams{grid-template-columns:1fr 1fr;gap:7px}.course-chord-diagrams>div{padding:12px 6px}.hand-map>div{padding:17px 10px}.hand-map>div>p{gap:4px}.hand-map>div span{min-width:0}}@media (prefers-reduced-motion:reduce){.lesson-reading-list summary>i{transition:none}.recorder-meter.recording i{animation:none}}@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-border-style{syntax:"*";inherits:false;initial-value:solid}@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-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}@property --tw-ease{syntax:"*";inherits:false}
