:root{--ion-color-primary: #0054e9;--ion-color-primary-rgb: 0, 84, 233;--ion-color-primary-contrast: #fff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #004acd;--ion-color-primary-tint: #1a65eb;--ion-color-secondary: #0163aa;--ion-color-secondary-rgb: 1, 99, 170;--ion-color-secondary-contrast: #fff;--ion-color-secondary-contrast-rgb: 255, 255, 255;--ion-color-secondary-shade: #015796;--ion-color-secondary-tint: #1a73b3;--ion-color-tertiary: #6030ff;--ion-color-tertiary-rgb: 96, 48, 255;--ion-color-tertiary-contrast: #fff;--ion-color-tertiary-contrast-rgb: 255, 255, 255;--ion-color-tertiary-shade: #542ae0;--ion-color-tertiary-tint: #7045ff;--ion-color-success: #2dd55b;--ion-color-success-rgb: 45, 213, 91;--ion-color-success-contrast: #000;--ion-color-success-contrast-rgb: 0, 0, 0;--ion-color-success-shade: #28bb50;--ion-color-success-tint: #42d96b;--ion-color-warning: #ffc409;--ion-color-warning-rgb: 255, 196, 9;--ion-color-warning-contrast: #000;--ion-color-warning-contrast-rgb: 0, 0, 0;--ion-color-warning-shade: #e0ac08;--ion-color-warning-tint: #ffca22;--ion-color-danger: #c5000f;--ion-color-danger-rgb: 197, 0, 15;--ion-color-danger-contrast: #fff;--ion-color-danger-contrast-rgb: 255, 255, 255;--ion-color-danger-shade: #ad000d;--ion-color-danger-tint: #cb1a27;--ion-color-light: #f4f5f8;--ion-color-light-rgb: 244, 245, 248;--ion-color-light-contrast: #000;--ion-color-light-contrast-rgb: 0, 0, 0;--ion-color-light-shade: #d7d8da;--ion-color-light-tint: #f5f6f9;--ion-color-medium: #636469;--ion-color-medium-rgb: 99, 100, 105;--ion-color-medium-contrast: #fff;--ion-color-medium-contrast-rgb: 255, 255, 255;--ion-color-medium-shade: #57585c;--ion-color-medium-tint: #737478;--ion-color-dark: #222428;--ion-color-dark-rgb: 34, 36, 40;--ion-color-dark-contrast: #fff;--ion-color-dark-contrast-rgb: 255, 255, 255;--ion-color-dark-shade: #1e2023;--ion-color-dark-tint: #383a3e}html.ios{--ion-default-font: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Roboto", sans-serif}html.md{--ion-default-font: "Roboto", "Helvetica Neue", sans-serif}html{--ion-dynamic-font: -apple-system-body;--ion-font-family: var(--ion-default-font)}body{background:var(--ion-background-color);color:var(--ion-text-color)}body.backdrop-no-scroll{overflow:hidden}html.ios ion-modal.modal-card ion-header ion-toolbar:first-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:first-of-type,html.ios ion-modal ion-footer ion-toolbar:first-of-type,html.ios ion-footer.modal-footer-moving ion-toolbar:first-of-type{padding-top:6px}html.ios ion-modal.modal-card ion-header ion-toolbar:last-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:last-of-type{padding-bottom:6px}html.ios ion-modal ion-toolbar,html.ios .modal-footer-moving ion-toolbar{padding-right:calc(var(--ion-safe-area-right) + 8px);padding-left:calc(var(--ion-safe-area-left) + 8px)}@media screen and (min-width:768px){html.ios ion-modal.modal-card:first-of-type{--backdrop-opacity: .18}}ion-modal.modal-default.show-modal~ion-modal.modal-default{--backdrop-opacity: 0;--box-shadow: none}html.ios ion-modal.modal-card .ion-page{border-top-left-radius:var(--border-radius)}.ion-color-primary{--ion-color-base: var(--ion-color-primary, #0054e9) !important;--ion-color-base-rgb: var(--ion-color-primary-rgb, 0, 84, 233) !important;--ion-color-contrast: var(--ion-color-primary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-primary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-primary-shade, #004acd) !important;--ion-color-tint: var(--ion-color-primary-tint, #1a65eb) !important}.ion-color-secondary{--ion-color-base: var(--ion-color-secondary, #0163aa) !important;--ion-color-base-rgb: var(--ion-color-secondary-rgb, 1, 99, 170) !important;--ion-color-contrast: var(--ion-color-secondary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-secondary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-secondary-shade, #015796) !important;--ion-color-tint: var(--ion-color-secondary-tint, #1a73b3) !important}.ion-color-tertiary{--ion-color-base: var(--ion-color-tertiary, #6030ff) !important;--ion-color-base-rgb: var(--ion-color-tertiary-rgb, 96, 48, 255) !important;--ion-color-contrast: var(--ion-color-tertiary-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-tertiary-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-tertiary-shade, #542ae0) !important;--ion-color-tint: var(--ion-color-tertiary-tint, #7045ff) !important}.ion-color-success{--ion-color-base: var(--ion-color-success, #2dd55b) !important;--ion-color-base-rgb: var(--ion-color-success-rgb, 45, 213, 91) !important;--ion-color-contrast: var(--ion-color-success-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-success-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-success-shade, #28bb50) !important;--ion-color-tint: var(--ion-color-success-tint, #42d96b) !important}.ion-color-warning{--ion-color-base: var(--ion-color-warning, #ffc409) !important;--ion-color-base-rgb: var(--ion-color-warning-rgb, 255, 196, 9) !important;--ion-color-contrast: var(--ion-color-warning-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-warning-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-warning-shade, #e0ac08) !important;--ion-color-tint: var(--ion-color-warning-tint, #ffca22) !important}.ion-color-danger{--ion-color-base: var(--ion-color-danger, #c5000f) !important;--ion-color-base-rgb: var(--ion-color-danger-rgb, 197, 0, 15) !important;--ion-color-contrast: var(--ion-color-danger-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-danger-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-danger-shade, #ad000d) !important;--ion-color-tint: var(--ion-color-danger-tint, #cb1a27) !important}.ion-color-light{--ion-color-base: var(--ion-color-light, #f4f5f8) !important;--ion-color-base-rgb: var(--ion-color-light-rgb, 244, 245, 248) !important;--ion-color-contrast: var(--ion-color-light-contrast, #000) !important;--ion-color-contrast-rgb: var(--ion-color-light-contrast-rgb, 0, 0, 0) !important;--ion-color-shade: var(--ion-color-light-shade, #d7d8da) !important;--ion-color-tint: var(--ion-color-light-tint, #f5f6f9) !important}.ion-color-medium{--ion-color-base: var(--ion-color-medium, #636469) !important;--ion-color-base-rgb: var(--ion-color-medium-rgb, 99, 100, 105) !important;--ion-color-contrast: var(--ion-color-medium-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-medium-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-medium-shade, #57585c) !important;--ion-color-tint: var(--ion-color-medium-tint, #737478) !important}.ion-color-dark{--ion-color-base: var(--ion-color-dark, #222428) !important;--ion-color-base-rgb: var(--ion-color-dark-rgb, 34, 36, 40) !important;--ion-color-contrast: var(--ion-color-dark-contrast, #fff) !important;--ion-color-contrast-rgb: var(--ion-color-dark-contrast-rgb, 255, 255, 255) !important;--ion-color-shade: var(--ion-color-dark-shade, #1e2023) !important;--ion-color-tint: var(--ion-color-dark-tint, #383a3e) !important}.ion-page{inset:0;display:flex;position:absolute;flex-direction:column;justify-content:space-between;contain:layout size style;z-index:0}.ion-page.ion-page-overlay-passthrough{pointer-events:none}ion-modal>.ion-page{position:relative;contain:layout style;height:100%}.split-pane-visible>.ion-page.split-pane-main{position:relative}ion-route,ion-route-redirect,ion-router,ion-select-option,ion-nav-controller,ion-menu-controller,ion-action-sheet-controller,ion-alert-controller,ion-loading-controller,ion-modal-controller,ion-picker-controller,ion-popover-controller,ion-toast-controller,.ion-page-hidden{display:none!important}.ion-page-invisible{opacity:0}.can-go-back>ion-header ion-back-button{display:block}html.plt-ios.plt-hybrid,html.plt-ios.plt-pwa{--ion-statusbar-padding: 20px}@supports (padding-top: 20px){html{--ion-safe-area-top: var(--ion-statusbar-padding)}}@supports (padding-top: env(safe-area-inset-top)){html{--ion-safe-area-top: var(--safe-area-inset-top, env(safe-area-inset-top));--ion-safe-area-bottom: var(--safe-area-inset-bottom, env(safe-area-inset-bottom));--ion-safe-area-left: var(--safe-area-inset-left, env(safe-area-inset-left));--ion-safe-area-right: var(--safe-area-inset-right, env(safe-area-inset-right))}}ion-card.ion-color .ion-inherit-color,ion-card-header.ion-color .ion-inherit-color{color:inherit}.menu-content{transform:translateZ(0)}.menu-content-open{cursor:pointer;touch-action:manipulation;pointer-events:none;overflow-y:hidden}.menu-content-open ion-content{--overflow: hidden}.menu-content-open .ion-content-scroll-host{overflow:hidden}.ios .menu-content-reveal{box-shadow:-8px 0 42px #00000014}[dir=rtl].ios .menu-content-reveal{box-shadow:8px 0 42px #00000014}.md .menu-content-reveal,.md .menu-content-push{box-shadow:4px 0 16px #0000002e}ion-accordion-group.accordion-group-expand-inset>ion-accordion:first-of-type{border-top-left-radius:8px;border-top-right-radius:8px}ion-accordion-group.accordion-group-expand-inset>ion-accordion:last-of-type{border-bottom-left-radius:8px;border-bottom-right-radius:8px}ion-accordion-group>ion-accordion:last-of-type ion-item[slot=header]{--border-width: 0px}ion-accordion.accordion-animated>[slot=header] .ion-accordion-toggle-icon{transition:.3s transform cubic-bezier(.25,.8,.5,1)}@media(prefers-reduced-motion:reduce){ion-accordion .ion-accordion-toggle-icon{transition:none!important}}ion-accordion.accordion-expanding>[slot=header] .ion-accordion-toggle-icon,ion-accordion.accordion-expanded>[slot=header] .ion-accordion-toggle-icon{transform:rotate(180deg)}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-previous ion-item[slot=header]{--border-width: 0px;--inner-border-width: 0px}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanding:first-of-type,ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanded:first-of-type{margin-top:0}ion-input input::-webkit-date-and-time-value{text-align:start}.ion-datetime-button-overlay{--width: fit-content;--height: fit-content}.ion-datetime-button-overlay ion-datetime.datetime-grid{width:320px;min-height:320px}[ion-last-focus],header[tabindex="-1"]:focus,[role=banner][tabindex="-1"]:focus,main[tabindex="-1"]:focus,[role=main][tabindex="-1"]:focus,h1[tabindex="-1"]:focus,[role=heading][aria-level="1"][tabindex="-1"]:focus{outline:none}.popover-viewport:has(>ion-content){overflow:hidden}@supports not selector(:has(> ion-content)){.popover-viewport{overflow:hidden}}audio,canvas,progress,video{vertical-align:baseline}audio:not([controls]){display:none;height:0}b,strong{font-weight:700}img{max-width:100%}hr{height:1px;border-width:0;box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}label,input,select,textarea{font-family:inherit;line-height:normal}textarea{overflow:auto;height:auto;font:inherit;color:inherit}textarea::placeholder{padding-left:2px}form,input,optgroup,select{margin:0;font:inherit;color:inherit}html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}a,a div,a span,a ion-icon,a ion-label,button,button div,button span,button ion-icon,button ion-label,.ion-tappable,[tappable],[tappable] div,[tappable] span,[tappable] ion-icon,[tappable] ion-label,input,textarea{touch-action:manipulation}a ion-label,button ion-label{pointer-events:none}button{padding:0;border:0;border-radius:0;font-family:inherit;font-style:inherit;font-variant:inherit;line-height:1;text-transform:none;cursor:pointer;-webkit-appearance:button}[tappable]{cursor:pointer}a[disabled],button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}html{width:100%;height:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}html.ion-ce body{display:block}html.plt-pwa{height:100vh}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;margin:0;padding:0;position:fixed;width:100%;max-width:100%;height:100%;max-height:100%;transform:translateZ(0);text-rendering:optimizeLegibility;overflow:hidden;touch-action:manipulation;-webkit-user-drag:none;-ms-content-zooming:none;word-wrap:break-word;overscroll-behavior-y:none;-webkit-text-size-adjust:none;text-size-adjust:none}html{font-family:var(--ion-font-family)}@supports (-webkit-touch-callout: none){html{font:var(--ion-dynamic-font, 16px var(--ion-font-family))}}a{background-color:transparent;color:var(--ion-color-primary, #0054e9)}h1,h2,h3,h4,h5,h6{margin-top:16px;margin-bottom:10px;font-weight:500;line-height:1.2}h1{margin-top:20px;font-size:1.625rem}h2{margin-top:18px;font-size:1.5rem}h3{font-size:1.375rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}small{font-size:75%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}.ion-no-padding{--padding-start: 0;--padding-end: 0;--padding-top: 0;--padding-bottom: 0;padding:0}.ion-padding{--padding-start: var(--ion-padding, 16px);--padding-end: var(--ion-padding, 16px);--padding-top: var(--ion-padding, 16px);--padding-bottom: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-top{--padding-top: var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px)}.ion-padding-start{--padding-start: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px)}.ion-padding-end{--padding-end: var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px)}.ion-padding-bottom{--padding-bottom: var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-vertical{--padding-top: var(--ion-padding, 16px);--padding-bottom: var(--ion-padding, 16px);padding-top:var(--ion-padding, 16px);padding-bottom:var(--ion-padding, 16px)}.ion-padding-horizontal{--padding-start: var(--ion-padding, 16px);--padding-end: var(--ion-padding, 16px);-webkit-padding-start:var(--ion-padding, 16px);padding-inline-start:var(--ion-padding, 16px);-webkit-padding-end:var(--ion-padding, 16px);padding-inline-end:var(--ion-padding, 16px)}.ion-no-margin{--margin-start: 0;--margin-end: 0;--margin-top: 0;--margin-bottom: 0;margin:0}.ion-margin{--margin-start: var(--ion-margin, 16px);--margin-end: var(--ion-margin, 16px);--margin-top: var(--ion-margin, 16px);--margin-bottom: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-top{--margin-top: var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px)}.ion-margin-start{--margin-start: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px)}.ion-margin-end{--margin-end: var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}.ion-margin-bottom{--margin-bottom: var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-vertical{--margin-top: var(--ion-margin, 16px);--margin-bottom: var(--ion-margin, 16px);margin-top:var(--ion-margin, 16px);margin-bottom:var(--ion-margin, 16px)}.ion-margin-horizontal{--margin-start: var(--ion-margin, 16px);--margin-end: var(--ion-margin, 16px);-webkit-margin-start:var(--ion-margin, 16px);margin-inline-start:var(--ion-margin, 16px);-webkit-margin-end:var(--ion-margin, 16px);margin-inline-end:var(--ion-margin, 16px)}.ion-float-left{float:left!important}.ion-float-right{float:right!important}.ion-float-start{float:left!important}:host-context([dir=rtl]) .ion-float-start{float:right!important}[dir=rtl] .ion-float-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-start:dir(rtl){float:right!important}}.ion-float-end{float:right!important}:host-context([dir=rtl]) .ion-float-end{float:left!important}[dir=rtl] .ion-float-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-end:dir(rtl){float:left!important}}@media(min-width:576px){.ion-float-sm-left{float:left!important}.ion-float-sm-right{float:right!important}.ion-float-sm-start{float:left!important}:host-context([dir=rtl]) .ion-float-sm-start{float:right!important}[dir=rtl] .ion-float-sm-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-sm-start:dir(rtl){float:right!important}}.ion-float-sm-end{float:right!important}:host-context([dir=rtl]) .ion-float-sm-end{float:left!important}[dir=rtl] .ion-float-sm-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-sm-end:dir(rtl){float:left!important}}}@media(min-width:768px){.ion-float-md-left{float:left!important}.ion-float-md-right{float:right!important}.ion-float-md-start{float:left!important}:host-context([dir=rtl]) .ion-float-md-start{float:right!important}[dir=rtl] .ion-float-md-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-md-start:dir(rtl){float:right!important}}.ion-float-md-end{float:right!important}:host-context([dir=rtl]) .ion-float-md-end{float:left!important}[dir=rtl] .ion-float-md-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-md-end:dir(rtl){float:left!important}}}@media(min-width:992px){.ion-float-lg-left{float:left!important}.ion-float-lg-right{float:right!important}.ion-float-lg-start{float:left!important}:host-context([dir=rtl]) .ion-float-lg-start{float:right!important}[dir=rtl] .ion-float-lg-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-lg-start:dir(rtl){float:right!important}}.ion-float-lg-end{float:right!important}:host-context([dir=rtl]) .ion-float-lg-end{float:left!important}[dir=rtl] .ion-float-lg-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-lg-end:dir(rtl){float:left!important}}}@media(min-width:1200px){.ion-float-xl-left{float:left!important}.ion-float-xl-right{float:right!important}.ion-float-xl-start{float:left!important}:host-context([dir=rtl]) .ion-float-xl-start{float:right!important}[dir=rtl] .ion-float-xl-start{float:right!important}@supports selector(:dir(rtl)){.ion-float-xl-start:dir(rtl){float:right!important}}.ion-float-xl-end{float:right!important}:host-context([dir=rtl]) .ion-float-xl-end{float:left!important}[dir=rtl] .ion-float-xl-end{float:left!important}@supports selector(:dir(rtl)){.ion-float-xl-end:dir(rtl){float:left!important}}}.ion-text-center{text-align:center!important}.ion-text-justify{text-align:justify!important}.ion-text-start{text-align:start!important}.ion-text-end{text-align:end!important}.ion-text-left{text-align:left!important}.ion-text-right{text-align:right!important}.ion-text-nowrap{white-space:nowrap!important}.ion-text-wrap{white-space:normal!important}@media(min-width:576px){.ion-text-sm-center{text-align:center!important}.ion-text-sm-justify{text-align:justify!important}.ion-text-sm-start{text-align:start!important}.ion-text-sm-end{text-align:end!important}.ion-text-sm-left{text-align:left!important}.ion-text-sm-right{text-align:right!important}.ion-text-sm-nowrap{white-space:nowrap!important}.ion-text-sm-wrap{white-space:normal!important}}@media(min-width:768px){.ion-text-md-center{text-align:center!important}.ion-text-md-justify{text-align:justify!important}.ion-text-md-start{text-align:start!important}.ion-text-md-end{text-align:end!important}.ion-text-md-left{text-align:left!important}.ion-text-md-right{text-align:right!important}.ion-text-md-nowrap{white-space:nowrap!important}.ion-text-md-wrap{white-space:normal!important}}@media(min-width:992px){.ion-text-lg-center{text-align:center!important}.ion-text-lg-justify{text-align:justify!important}.ion-text-lg-start{text-align:start!important}.ion-text-lg-end{text-align:end!important}.ion-text-lg-left{text-align:left!important}.ion-text-lg-right{text-align:right!important}.ion-text-lg-nowrap{white-space:nowrap!important}.ion-text-lg-wrap{white-space:normal!important}}@media(min-width:1200px){.ion-text-xl-center{text-align:center!important}.ion-text-xl-justify{text-align:justify!important}.ion-text-xl-start{text-align:start!important}.ion-text-xl-end{text-align:end!important}.ion-text-xl-left{text-align:left!important}.ion-text-xl-right{text-align:right!important}.ion-text-xl-nowrap{white-space:nowrap!important}.ion-text-xl-wrap{white-space:normal!important}}.ion-text-uppercase{text-transform:uppercase!important}.ion-text-lowercase{text-transform:lowercase!important}.ion-text-capitalize{text-transform:capitalize!important}@media(min-width:576px){.ion-text-sm-uppercase{text-transform:uppercase!important}.ion-text-sm-lowercase{text-transform:lowercase!important}.ion-text-sm-capitalize{text-transform:capitalize!important}}@media(min-width:768px){.ion-text-md-uppercase{text-transform:uppercase!important}.ion-text-md-lowercase{text-transform:lowercase!important}.ion-text-md-capitalize{text-transform:capitalize!important}}@media(min-width:992px){.ion-text-lg-uppercase{text-transform:uppercase!important}.ion-text-lg-lowercase{text-transform:lowercase!important}.ion-text-lg-capitalize{text-transform:capitalize!important}}@media(min-width:1200px){.ion-text-xl-uppercase{text-transform:uppercase!important}.ion-text-xl-lowercase{text-transform:lowercase!important}.ion-text-xl-capitalize{text-transform:capitalize!important}}.ion-align-content-start{align-content:flex-start!important}.ion-align-content-end{align-content:flex-end!important}.ion-align-content-center{align-content:center!important}.ion-align-content-between{align-content:space-between!important}.ion-align-content-around{align-content:space-around!important}.ion-align-content-stretch{align-content:stretch!important}@media(min-width:576px){.ion-align-content-sm-start{align-content:flex-start!important}.ion-align-content-sm-end{align-content:flex-end!important}.ion-align-content-sm-center{align-content:center!important}.ion-align-content-sm-between{align-content:space-between!important}.ion-align-content-sm-around{align-content:space-around!important}.ion-align-content-sm-stretch{align-content:stretch!important}}@media(min-width:768px){.ion-align-content-md-start{align-content:flex-start!important}.ion-align-content-md-end{align-content:flex-end!important}.ion-align-content-md-center{align-content:center!important}.ion-align-content-md-between{align-content:space-between!important}.ion-align-content-md-around{align-content:space-around!important}.ion-align-content-md-stretch{align-content:stretch!important}}@media(min-width:992px){.ion-align-content-lg-start{align-content:flex-start!important}.ion-align-content-lg-end{align-content:flex-end!important}.ion-align-content-lg-center{align-content:center!important}.ion-align-content-lg-between{align-content:space-between!important}.ion-align-content-lg-around{align-content:space-around!important}.ion-align-content-lg-stretch{align-content:stretch!important}}@media(min-width:1200px){.ion-align-content-xl-start{align-content:flex-start!important}.ion-align-content-xl-end{align-content:flex-end!important}.ion-align-content-xl-center{align-content:center!important}.ion-align-content-xl-between{align-content:space-between!important}.ion-align-content-xl-around{align-content:space-around!important}.ion-align-content-xl-stretch{align-content:stretch!important}}.ion-align-items-start{align-items:start!important}.ion-align-items-end{align-items:end!important}.ion-align-items-center{align-items:center!important}.ion-align-items-stretch{align-items:stretch!important}.ion-align-items-baseline{align-items:baseline!important}@media(min-width:576px){.ion-align-items-sm-start{align-items:start!important}.ion-align-items-sm-end{align-items:end!important}.ion-align-items-sm-center{align-items:center!important}.ion-align-items-sm-stretch{align-items:stretch!important}.ion-align-items-sm-baseline{align-items:baseline!important}}@media(min-width:768px){.ion-align-items-md-start{align-items:start!important}.ion-align-items-md-end{align-items:end!important}.ion-align-items-md-center{align-items:center!important}.ion-align-items-md-stretch{align-items:stretch!important}.ion-align-items-md-baseline{align-items:baseline!important}}@media(min-width:992px){.ion-align-items-lg-start{align-items:start!important}.ion-align-items-lg-end{align-items:end!important}.ion-align-items-lg-center{align-items:center!important}.ion-align-items-lg-stretch{align-items:stretch!important}.ion-align-items-lg-baseline{align-items:baseline!important}}@media(min-width:1200px){.ion-align-items-xl-start{align-items:start!important}.ion-align-items-xl-end{align-items:end!important}.ion-align-items-xl-center{align-items:center!important}.ion-align-items-xl-stretch{align-items:stretch!important}.ion-align-items-xl-baseline{align-items:baseline!important}}.ion-align-self-start{align-self:start!important}.ion-align-self-end{align-self:end!important}.ion-align-self-center{align-self:center!important}.ion-align-self-stretch{align-self:stretch!important}.ion-align-self-baseline{align-self:baseline!important}.ion-align-self-auto{align-self:auto!important}@media(min-width:576px){.ion-align-self-sm-start{align-self:start!important}.ion-align-self-sm-end{align-self:end!important}.ion-align-self-sm-center{align-self:center!important}.ion-align-self-sm-stretch{align-self:stretch!important}.ion-align-self-sm-baseline{align-self:baseline!important}.ion-align-self-sm-auto{align-self:auto!important}}@media(min-width:768px){.ion-align-self-md-start{align-self:start!important}.ion-align-self-md-end{align-self:end!important}.ion-align-self-md-center{align-self:center!important}.ion-align-self-md-stretch{align-self:stretch!important}.ion-align-self-md-baseline{align-self:baseline!important}.ion-align-self-md-auto{align-self:auto!important}}@media(min-width:992px){.ion-align-self-lg-start{align-self:start!important}.ion-align-self-lg-end{align-self:end!important}.ion-align-self-lg-center{align-self:center!important}.ion-align-self-lg-stretch{align-self:stretch!important}.ion-align-self-lg-baseline{align-self:baseline!important}.ion-align-self-lg-auto{align-self:auto!important}}@media(min-width:1200px){.ion-align-self-xl-start{align-self:start!important}.ion-align-self-xl-end{align-self:end!important}.ion-align-self-xl-center{align-self:center!important}.ion-align-self-xl-stretch{align-self:stretch!important}.ion-align-self-xl-baseline{align-self:baseline!important}.ion-align-self-xl-auto{align-self:auto!important}}.ion-justify-content-start{justify-content:flex-start!important}.ion-justify-content-end{justify-content:flex-end!important}.ion-justify-content-center{justify-content:center!important}.ion-justify-content-between{justify-content:space-between!important}.ion-justify-content-around{justify-content:space-around!important}.ion-justify-content-evenly{justify-content:space-evenly!important}@media(min-width:576px){.ion-justify-content-sm-start{justify-content:flex-start!important}.ion-justify-content-sm-end{justify-content:flex-end!important}.ion-justify-content-sm-center{justify-content:center!important}.ion-justify-content-sm-between{justify-content:space-between!important}.ion-justify-content-sm-around{justify-content:space-around!important}.ion-justify-content-sm-evenly{justify-content:space-evenly!important}}@media(min-width:768px){.ion-justify-content-md-start{justify-content:flex-start!important}.ion-justify-content-md-end{justify-content:flex-end!important}.ion-justify-content-md-center{justify-content:center!important}.ion-justify-content-md-between{justify-content:space-between!important}.ion-justify-content-md-around{justify-content:space-around!important}.ion-justify-content-md-evenly{justify-content:space-evenly!important}}@media(min-width:992px){.ion-justify-content-lg-start{justify-content:flex-start!important}.ion-justify-content-lg-end{justify-content:flex-end!important}.ion-justify-content-lg-center{justify-content:center!important}.ion-justify-content-lg-between{justify-content:space-between!important}.ion-justify-content-lg-around{justify-content:space-around!important}.ion-justify-content-lg-evenly{justify-content:space-evenly!important}}@media(min-width:1200px){.ion-justify-content-xl-start{justify-content:flex-start!important}.ion-justify-content-xl-end{justify-content:flex-end!important}.ion-justify-content-xl-center{justify-content:center!important}.ion-justify-content-xl-between{justify-content:space-between!important}.ion-justify-content-xl-around{justify-content:space-around!important}.ion-justify-content-xl-evenly{justify-content:space-evenly!important}}.ion-flex-row{flex-direction:row!important}.ion-flex-row-reverse{flex-direction:row-reverse!important}.ion-flex-column{flex-direction:column!important}.ion-flex-column-reverse{flex-direction:column-reverse!important}@media(min-width:576px){.ion-flex-sm-row{flex-direction:row!important}.ion-flex-sm-row-reverse{flex-direction:row-reverse!important}.ion-flex-sm-column{flex-direction:column!important}.ion-flex-sm-column-reverse{flex-direction:column-reverse!important}}@media(min-width:768px){.ion-flex-md-row{flex-direction:row!important}.ion-flex-md-row-reverse{flex-direction:row-reverse!important}.ion-flex-md-column{flex-direction:column!important}.ion-flex-md-column-reverse{flex-direction:column-reverse!important}}@media(min-width:992px){.ion-flex-lg-row{flex-direction:row!important}.ion-flex-lg-row-reverse{flex-direction:row-reverse!important}.ion-flex-lg-column{flex-direction:column!important}.ion-flex-lg-column-reverse{flex-direction:column-reverse!important}}@media(min-width:1200px){.ion-flex-xl-row{flex-direction:row!important}.ion-flex-xl-row-reverse{flex-direction:row-reverse!important}.ion-flex-xl-column{flex-direction:column!important}.ion-flex-xl-column-reverse{flex-direction:column-reverse!important}}.ion-wrap{flex-wrap:wrap!important}.ion-nowrap{flex-wrap:nowrap!important}.ion-wrap-reverse{flex-wrap:wrap-reverse!important}.ion-flex-wrap{flex-wrap:wrap!important}.ion-flex-nowrap{flex-wrap:nowrap!important}.ion-flex-wrap-reverse{flex-wrap:wrap-reverse!important}@media(min-width:576px){.ion-flex-sm-wrap{flex-wrap:wrap!important}.ion-flex-sm-nowrap{flex-wrap:nowrap!important}.ion-flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}}@media(min-width:768px){.ion-flex-md-wrap{flex-wrap:wrap!important}.ion-flex-md-nowrap{flex-wrap:nowrap!important}.ion-flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}}@media(min-width:992px){.ion-flex-lg-wrap{flex-wrap:wrap!important}.ion-flex-lg-nowrap{flex-wrap:nowrap!important}.ion-flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}}@media(min-width:1200px){.ion-flex-xl-wrap{flex-wrap:wrap!important}.ion-flex-xl-nowrap{flex-wrap:nowrap!important}.ion-flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}}.ion-flex-1{flex:1!important}.ion-flex-auto{flex:auto!important}.ion-flex-initial{flex:initial!important}.ion-flex-none{flex:none!important}@media(min-width:576px){.ion-flex-sm-1{flex:1!important}.ion-flex-sm-auto{flex:auto!important}.ion-flex-sm-initial{flex:initial!important}.ion-flex-sm-none{flex:none!important}}@media(min-width:768px){.ion-flex-md-1{flex:1!important}.ion-flex-md-auto{flex:auto!important}.ion-flex-md-initial{flex:initial!important}.ion-flex-md-none{flex:none!important}}@media(min-width:992px){.ion-flex-lg-1{flex:1!important}.ion-flex-lg-auto{flex:auto!important}.ion-flex-lg-initial{flex:initial!important}.ion-flex-lg-none{flex:none!important}}@media(min-width:1200px){.ion-flex-xl-1{flex:1!important}.ion-flex-xl-auto{flex:auto!important}.ion-flex-xl-initial{flex:initial!important}.ion-flex-xl-none{flex:none!important}}.ion-flex-grow-0{flex-grow:0!important}.ion-flex-grow-1{flex-grow:1!important}.ion-flex-shrink-0{flex-shrink:0!important}.ion-flex-shrink-1{flex-shrink:1!important}@media(min-width:576px){.ion-flex-sm-grow-0{flex-grow:0!important}.ion-flex-sm-grow-1{flex-grow:1!important}.ion-flex-sm-shrink-0{flex-shrink:0!important}.ion-flex-sm-shrink-1{flex-shrink:1!important}}@media(min-width:768px){.ion-flex-md-grow-0{flex-grow:0!important}.ion-flex-md-grow-1{flex-grow:1!important}.ion-flex-md-shrink-0{flex-shrink:0!important}.ion-flex-md-shrink-1{flex-shrink:1!important}}@media(min-width:992px){.ion-flex-lg-grow-0{flex-grow:0!important}.ion-flex-lg-grow-1{flex-grow:1!important}.ion-flex-lg-shrink-0{flex-shrink:0!important}.ion-flex-lg-shrink-1{flex-shrink:1!important}}@media(min-width:1200px){.ion-flex-xl-grow-0{flex-grow:0!important}.ion-flex-xl-grow-1{flex-grow:1!important}.ion-flex-xl-shrink-0{flex-shrink:0!important}.ion-flex-xl-shrink-1{flex-shrink:1!important}}.ion-order-first{order:-1!important}.ion-order-0{order:0!important}.ion-order-1{order:1!important}.ion-order-2{order:2!important}.ion-order-3{order:3!important}.ion-order-4{order:4!important}.ion-order-5{order:5!important}.ion-order-6{order:6!important}.ion-order-7{order:7!important}.ion-order-8{order:8!important}.ion-order-9{order:9!important}.ion-order-10{order:10!important}.ion-order-11{order:11!important}.ion-order-12{order:12!important}.ion-order-last{order:13!important}@media(min-width:576px){.ion-order-sm-first{order:-1!important}.ion-order-sm-0{order:0!important}.ion-order-sm-1{order:1!important}.ion-order-sm-2{order:2!important}.ion-order-sm-3{order:3!important}.ion-order-sm-4{order:4!important}.ion-order-sm-5{order:5!important}.ion-order-sm-6{order:6!important}.ion-order-sm-7{order:7!important}.ion-order-sm-8{order:8!important}.ion-order-sm-9{order:9!important}.ion-order-sm-10{order:10!important}.ion-order-sm-11{order:11!important}.ion-order-sm-12{order:12!important}.ion-order-sm-last{order:13!important}}@media(min-width:768px){.ion-order-md-first{order:-1!important}.ion-order-md-0{order:0!important}.ion-order-md-1{order:1!important}.ion-order-md-2{order:2!important}.ion-order-md-3{order:3!important}.ion-order-md-4{order:4!important}.ion-order-md-5{order:5!important}.ion-order-md-6{order:6!important}.ion-order-md-7{order:7!important}.ion-order-md-8{order:8!important}.ion-order-md-9{order:9!important}.ion-order-md-10{order:10!important}.ion-order-md-11{order:11!important}.ion-order-md-12{order:12!important}.ion-order-md-last{order:13!important}}@media(min-width:992px){.ion-order-lg-first{order:-1!important}.ion-order-lg-0{order:0!important}.ion-order-lg-1{order:1!important}.ion-order-lg-2{order:2!important}.ion-order-lg-3{order:3!important}.ion-order-lg-4{order:4!important}.ion-order-lg-5{order:5!important}.ion-order-lg-6{order:6!important}.ion-order-lg-7{order:7!important}.ion-order-lg-8{order:8!important}.ion-order-lg-9{order:9!important}.ion-order-lg-10{order:10!important}.ion-order-lg-11{order:11!important}.ion-order-lg-12{order:12!important}.ion-order-lg-last{order:13!important}}@media(min-width:1200px){.ion-order-xl-first{order:-1!important}.ion-order-xl-0{order:0!important}.ion-order-xl-1{order:1!important}.ion-order-xl-2{order:2!important}.ion-order-xl-3{order:3!important}.ion-order-xl-4{order:4!important}.ion-order-xl-5{order:5!important}.ion-order-xl-6{order:6!important}.ion-order-xl-7{order:7!important}.ion-order-xl-8{order:8!important}.ion-order-xl-9{order:9!important}.ion-order-xl-10{order:10!important}.ion-order-xl-11{order:11!important}.ion-order-xl-12{order:12!important}.ion-order-xl-last{order:13!important}}.ion-hide,.ion-hide-up,.ion-hide-down{display:none!important}@media(min-width:576px){.ion-hide-sm-up{display:none!important}}@media(max-width:575.98px){.ion-hide-sm-down{display:none!important}}@media(min-width:768px){.ion-hide-md-up{display:none!important}}@media(max-width:767.98px){.ion-hide-md-down{display:none!important}}@media(min-width:992px){.ion-hide-lg-up{display:none!important}}@media(max-width:991.98px){.ion-hide-lg-down{display:none!important}}@media(min-width:1200px){.ion-hide-xl-up{display:none!important}}@media(max-width:1199.98px){.ion-hide-xl-down{display:none!important}}.ion-display-none{display:none!important}@media(min-width:576px){.ion-display-sm-none{display:none!important}}@media(min-width:768px){.ion-display-md-none{display:none!important}}@media(min-width:992px){.ion-display-lg-none{display:none!important}}@media(min-width:1200px){.ion-display-xl-none{display:none!important}}.ion-display-inline{display:inline!important}@media(min-width:576px){.ion-display-sm-inline{display:inline!important}}@media(min-width:768px){.ion-display-md-inline{display:inline!important}}@media(min-width:992px){.ion-display-lg-inline{display:inline!important}}@media(min-width:1200px){.ion-display-xl-inline{display:inline!important}}.ion-display-inline-block{display:inline-block!important}@media(min-width:576px){.ion-display-sm-inline-block{display:inline-block!important}}@media(min-width:768px){.ion-display-md-inline-block{display:inline-block!important}}@media(min-width:992px){.ion-display-lg-inline-block{display:inline-block!important}}@media(min-width:1200px){.ion-display-xl-inline-block{display:inline-block!important}}.ion-display-block{display:block!important}@media(min-width:576px){.ion-display-sm-block{display:block!important}}@media(min-width:768px){.ion-display-md-block{display:block!important}}@media(min-width:992px){.ion-display-lg-block{display:block!important}}@media(min-width:1200px){.ion-display-xl-block{display:block!important}}.ion-display-flex{display:flex!important}@media(min-width:576px){.ion-display-sm-flex{display:flex!important}}@media(min-width:768px){.ion-display-md-flex{display:flex!important}}@media(min-width:992px){.ion-display-lg-flex{display:flex!important}}@media(min-width:1200px){.ion-display-xl-flex{display:flex!important}}.ion-display-inline-flex{display:inline-flex!important}@media(min-width:576px){.ion-display-sm-inline-flex{display:inline-flex!important}}@media(min-width:768px){.ion-display-md-inline-flex{display:inline-flex!important}}@media(min-width:992px){.ion-display-lg-inline-flex{display:inline-flex!important}}@media(min-width:1200px){.ion-display-xl-inline-flex{display:inline-flex!important}}.ion-display-grid{display:grid!important}@media(min-width:576px){.ion-display-sm-grid{display:grid!important}}@media(min-width:768px){.ion-display-md-grid{display:grid!important}}@media(min-width:992px){.ion-display-lg-grid{display:grid!important}}@media(min-width:1200px){.ion-display-xl-grid{display:grid!important}}.ion-display-inline-grid{display:inline-grid!important}@media(min-width:576px){.ion-display-sm-inline-grid{display:inline-grid!important}}@media(min-width:768px){.ion-display-md-inline-grid{display:inline-grid!important}}@media(min-width:992px){.ion-display-lg-inline-grid{display:inline-grid!important}}@media(min-width:1200px){.ion-display-xl-inline-grid{display:inline-grid!important}}.ion-display-table{display:table!important}@media(min-width:576px){.ion-display-sm-table{display:table!important}}@media(min-width:768px){.ion-display-md-table{display:table!important}}@media(min-width:992px){.ion-display-lg-table{display:table!important}}@media(min-width:1200px){.ion-display-xl-table{display:table!important}}.ion-display-table-cell{display:table-cell!important}@media(min-width:576px){.ion-display-sm-table-cell{display:table-cell!important}}@media(min-width:768px){.ion-display-md-table-cell{display:table-cell!important}}@media(min-width:992px){.ion-display-lg-table-cell{display:table-cell!important}}@media(min-width:1200px){.ion-display-xl-table-cell{display:table-cell!important}}.ion-display-table-row{display:table-row!important}@media(min-width:576px){.ion-display-sm-table-row{display:table-row!important}}@media(min-width:768px){.ion-display-md-table-row{display:table-row!important}}@media(min-width:992px){.ion-display-lg-table-row{display:table-row!important}}@media(min-width:1200px){.ion-display-xl-table-row{display:table-row!important}}:root{--ion-color-primary: #2a6f5e;--ion-color-primary-rgb: 42, 111, 94;--ion-color-primary-contrast: #ffffff;--ion-color-primary-contrast-rgb: 255, 255, 255;--ion-color-primary-shade: #256253;--ion-color-primary-tint: #3f7d6e;--ion-color-secondary: #f29e4c;--ion-color-secondary-rgb: 242, 158, 76;--ion-color-secondary-contrast: #1c1c1c;--ion-color-secondary-contrast-rgb: 28, 28, 28;--ion-color-secondary-shade: #d58b43;--ion-color-secondary-tint: #f3a85e;--ion-color-tertiary: #3d2c8d;--ion-color-tertiary-rgb: 61, 44, 141;--ion-color-tertiary-contrast: #ffffff;--ion-color-tertiary-contrast-rgb: 255, 255, 255;--ion-color-tertiary-shade: #36277c;--ion-color-tertiary-tint: #504196;--ion-color-medium: #7a5b46;--ion-color-medium-rgb: 122, 91, 70;--ion-color-medium-contrast: #ffffff;--ion-color-medium-contrast-rgb: 255, 255, 255;--ion-color-medium-shade: #6b503e;--ion-color-medium-tint: #876b59;--ion-color-danger: #b13d3d;--ion-color-danger-rgb: 177, 61, 61;--ion-color-danger-contrast: #ffffff;--ion-color-danger-contrast-rgb: 255, 255, 255;--ion-color-danger-shade: #9c3636;--ion-color-danger-tint: #b95050;--ion-background-color: #f6f2ec;--ion-text-color: #1f1b16;--ion-font-family: "Alegreya", "Georgia", serif}ion-content{--background: var(--ion-background-color)}@media(prefers-color-scheme:dark){:root{--ion-color-primary: #57b39b;--ion-color-primary-rgb: 87, 179, 155;--ion-color-primary-contrast: #0f0d0a;--ion-color-primary-contrast-rgb: 15, 13, 10;--ion-color-primary-shade: #4d9e88;--ion-color-primary-tint: #68bba5;--ion-color-secondary: #f7b267;--ion-color-secondary-rgb: 247, 178, 103;--ion-color-secondary-contrast: #0f0d0a;--ion-color-secondary-contrast-rgb: 15, 13, 10;--ion-color-secondary-shade: #d99d5b;--ion-color-secondary-tint: #f8ba76;--ion-color-tertiary: #5f4bb6;--ion-color-tertiary-rgb: 95, 75, 182;--ion-color-tertiary-contrast: #ffffff;--ion-color-tertiary-contrast-rgb: 255, 255, 255;--ion-color-tertiary-shade: #5442a0;--ion-color-tertiary-tint: #6f5dbc;--ion-color-medium: #d7c4b7;--ion-color-medium-rgb: 215, 196, 183;--ion-color-medium-contrast: #14100d;--ion-color-medium-contrast-rgb: 20, 16, 13;--ion-color-medium-shade: #bdaca1;--ion-color-medium-tint: #dbcabe;--ion-color-danger: #f08f8f;--ion-color-danger-rgb: 240, 143, 143;--ion-color-danger-contrast: #1f0d0d;--ion-color-danger-contrast-rgb: 31, 13, 13;--ion-color-danger-shade: #d37e7e;--ion-color-danger-tint: #f29a9a;--ion-background-color: #14100d;--ion-text-color: #f3ede6}ion-content{--background: var(--ion-background-color)}}:root{--triad-accent: #f29e4c;--triad-accent-strong: #a85f1c;--triad-muted: #7a5b46;--triad-muted-strong: #5a4031;--triad-strong: #1f1b16;--triad-panel: #fffaf4;--triad-focus-panel: rgba(255, 250, 244, .9);--triad-panel-gradient: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(255, 250, 244, .96));--triad-panel-edge: rgba(31, 27, 22, .08);--triad-shadow: 0 10px 24px rgba(31, 27, 22, .08);--triad-shadow-soft: 0 3px 12px rgba(31, 27, 22, .05);--triad-radius: 18px;--triad-border: 1px solid rgba(31, 27, 22, .08);--triad-fretboard: #f5efe6;--triad-fretline: rgba(31, 27, 22, .2);--triad-string: rgba(31, 27, 22, .5);--triad-fret-label: #6d5748;--triad-toolbar: rgba(252, 247, 241, .94);--triad-chip-bg: rgba(255, 255, 255, .72);--triad-chip-border: rgba(31, 27, 22, .14);--triad-chip-active-text: #1f1b16;--triad-note-label: #1f1b16}.open-color-content{--background: #f8f4ec;--color: #211a17;--ion-text-color: #211a17;--triad-accent: #f29e4c;--triad-accent-strong: #a85f1c;--triad-muted: #7a5b46;--triad-muted-strong: #5a4031;--triad-strong: #1f1b16;--triad-panel: #fffaf4;--triad-focus-panel: rgba(255, 250, 244, .9);--triad-panel-gradient: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(255, 250, 244, .96));--triad-panel-edge: rgba(31, 27, 22, .08);--triad-shadow: 0 10px 24px rgba(31, 27, 22, .08);--triad-shadow-soft: 0 3px 12px rgba(31, 27, 22, .05);--triad-border: 1px solid rgba(31, 27, 22, .08);--triad-fretboard: #f5efe6;--triad-fretline: rgba(31, 27, 22, .2);--triad-string: rgba(31, 27, 22, .5);--triad-fret-label: #6d5748;--triad-note-label: #1f1b16;--triad-toolbar: rgba(252, 247, 241, .94);--triad-chip-bg: rgba(255, 255, 255, .72);--triad-chip-border: rgba(31, 27, 22, .14);--triad-chip-active-text: #1f1b16;color:#211a17;color-scheme:light}.open-color-content ion-button{--background: #2a6f5e;--background-hover: #286b5b;--background-activated: #245f51;--border-radius: 999px;--box-shadow: 0 12px 24px rgba(42, 111, 94, .2);--color: #fffaf3;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.9rem;font-weight:800}.open-color-content ion-button[fill=outline]{--background: rgba(255, 250, 244, .88);--background-hover: rgba(255, 250, 244, .96);--background-activated: rgba(244, 236, 226, .96);--border-color: rgba(31, 27, 22, .14);--border-style: solid;--border-width: 1px;--box-shadow: var(--triad-shadow-soft);--color: #2a6f5e}.open-color-shell{width:min(100%,1240px);margin:0 auto;padding:calc(env(safe-area-inset-top) + 16px) calc(18px + env(safe-area-inset-right)) calc(env(safe-area-inset-bottom) + 28px) calc(16px + env(safe-area-inset-left))}.open-color-home-content .open-color-shell{padding-top:16px}.open-color-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;min-width:0}.open-color-header-title-only{justify-content:flex-start}.open-color-header-brand{display:inline-flex;align-items:center;gap:10px;min-width:0}.open-color-header-app-icon{width:34px;height:34px;flex:0 0 auto;border:1px solid rgba(31,27,22,.08);border-radius:10px;background:#ffffffc2;box-shadow:0 8px 18px #1f1b1624;object-fit:cover}.open-color-header-copy{min-width:0;display:grid;gap:3px}.open-color-header-action{flex:0 0 auto}.open-color-eyebrow{display:block;color:var(--triad-muted-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.open-color-header h1,.open-color-practice-top h2{margin:0;color:var(--triad-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;letter-spacing:0}.open-color-header h1{max-width:34rem;font-size:clamp(1.28rem,3vw,2rem);line-height:1.04;font-weight:800}.open-color-nav-pill::part(native){min-height:42px;padding-inline:15px}.open-color-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,390px);gap:14px;align-items:stretch;padding:14px;border:1px solid rgba(31,27,22,.08);border-radius:18px;background:radial-gradient(circle at 12% 10%,rgba(42,111,94,.08),transparent 30%),linear-gradient(180deg,#ffffffe6,#fff9f2f0);box-shadow:var(--triad-shadow-soft)}.open-color-hero p{max-width:44ch;margin:2px 0 12px;color:var(--triad-muted-strong);font-size:.92rem;line-height:1.48}.open-color-hero-actions,.open-color-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.open-color-hero-actions{display:grid;justify-items:start}.open-color-create-card{box-sizing:border-box;min-width:min(100%,420px);min-height:88px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;padding:16px;border:1px solid rgba(42,111,94,.16);border-radius:18px;background:linear-gradient(180deg,#e7f4ebe0,#f4f9f1f0);box-shadow:0 16px 30px #2a6f5e1f;color:var(--triad-strong);text-align:left;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.open-color-create-card:hover{transform:translateY(-1px);border-color:#2a6f5e42;box-shadow:0 18px 32px #2a6f5e29}.open-color-create-card:focus-visible{outline:2px solid rgba(42,111,94,.42);outline-offset:3px}.open-color-create-icon{width:52px;height:52px;border-radius:999px;background:#2a6f5e;color:#fffaf3;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 12px 22px #2a6f5e3d;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.6rem;font-weight:800;line-height:1}.open-color-create-copy{min-width:0;display:grid;gap:4px}.open-color-create-copy strong{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.08rem;font-weight:800;line-height:1.05}.open-color-create-copy span{color:var(--triad-muted-strong);font-size:.84rem;line-height:1.34}.open-color-mini-progression{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.open-color-mini-progression span{min-height:76px;display:grid;place-items:center;border:1px solid rgba(242,158,76,.22);border-radius:16px;background:linear-gradient(180deg,#fff8eefa,#fff2e3f5);color:var(--triad-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:clamp(1.4rem,5vw,2.4rem);font-weight:800;box-shadow:var(--triad-shadow-soft)}.open-color-section{padding:18px 0 0}.open-color-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:10px}.open-color-section-head h2,.open-color-suggestions h3{margin:0;color:var(--triad-muted-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.9rem;font-weight:800}.open-color-section-head span{color:var(--triad-muted);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.open-color-list,.open-color-builtins{display:grid;gap:10px}.open-color-builtins{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.open-color-progression-row,.open-color-empty,.open-color-builtin,.open-color-suggestion-grid button,.open-color-step-chip-strip button,.open-color-step-arrow,.open-color-picker button{border:1px solid rgba(31,27,22,.1);background:#ffffffc7;color:var(--triad-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;text-align:left;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background-color .18s ease}.open-color-progression-row:hover,.open-color-empty:hover,.open-color-builtin:hover,.open-color-suggestion-grid button:hover,.open-color-step-chip-strip button:hover,.open-color-step-arrow:hover,.open-color-picker button:hover{transform:translateY(-1px);box-shadow:var(--triad-shadow-soft)}.open-color-progression-row,.open-color-empty,.open-color-builtin,.open-color-suggestion-grid button{padding:15px;border-radius:18px;box-shadow:var(--triad-shadow-soft)}.open-color-progression-row strong,.open-color-builtin strong,.open-color-suggestion-grid strong{display:block;color:var(--triad-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1rem;line-height:1.15}.open-color-progression-row span,.open-color-builtin span,.open-color-suggestion-grid span{display:block;margin-top:6px;color:var(--triad-muted-strong);font-size:.84rem;line-height:1.35}.open-color-builder{display:grid;gap:14px;padding:16px;border:1px solid rgba(31,27,22,.08);border-radius:18px;background:#ffffffb8;box-shadow:var(--triad-shadow-soft)}.open-color-builder ion-input{--background: rgba(255, 250, 244, .82);--border-color: rgba(31, 27, 22, .1);--border-radius: 14px;--color: var(--triad-strong);--highlight-color-focused: #2a6f5e;--placeholder-color: var(--triad-muted);--placeholder-opacity: .72;--padding-start: 12px;--padding-end: 12px;border:1px solid rgba(31,27,22,.1);border-radius:14px;font-family:Space Grotesk,Trebuchet MS,sans-serif;color-scheme:light}.open-color-builder-summary{display:grid;gap:10px;padding:12px 14px;border:1px solid rgba(42,111,94,.18);border-radius:16px;background:#2a6f5e0f}.open-color-builder-summary>span,.open-color-picker-group>span,.open-color-suggestions-head span{color:var(--triad-muted-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.open-color-preview-line{display:flex;flex-wrap:wrap;gap:8px}.open-color-preview-line span,.open-color-step-chip-strip button,.open-color-step-arrow{padding:10px 14px;font-weight:800}.open-color-preview-line span{border-radius:999px;border:1px solid rgba(31,27,22,.1);background:#fffaf4d1;color:var(--triad-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif}.open-color-picker{display:grid;gap:14px}.open-color-picker-group{display:grid;gap:8px}.open-color-picker-group>div{display:flex;flex-wrap:wrap;gap:8px}.open-color-picker button{min-width:58px;min-height:46px;display:grid;place-items:center;padding:9px 12px;border-radius:14px;background:linear-gradient(180deg,#fff8eefa,#fff2e3f5);border-color:#f29e4c3d;font-weight:800;text-align:center}.open-color-primary-action::part(native){min-height:50px;box-shadow:0 16px 30px #2a6f5e2e}.open-color-secondary-action::part(native){min-height:44px}.open-color-practice-shell{width:100%;max-width:1180px;padding:calc(env(safe-area-inset-top) + 22px) calc(22px + env(safe-area-inset-right)) calc(env(safe-area-inset-bottom) + 26px) calc(22px + env(safe-area-inset-left))}.open-color-practice-page-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:12px}.open-color-practice-top{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:0;margin-bottom:14px;padding:12px 14px;border:1px solid rgba(31,27,22,.08);border-radius:16px;background:var(--triad-panel-gradient);box-shadow:var(--triad-shadow-soft)}.open-color-practice-title-copy{min-width:0;display:grid;gap:4px}.open-color-practice-title-copy h1{margin:0;color:var(--triad-strong);font-family:Alegreya,Georgia,serif;font-size:clamp(1.28rem,3vw,2.25rem);font-weight:800;letter-spacing:0;line-height:1}.open-color-current-chord{flex:1 1 auto;min-width:118px;min-inline-size:0}.open-color-practice-top h2{margin:0;color:var(--triad-strong);font-family:Alegreya,Georgia,serif;font-size:clamp(3.05rem,7vw,4.45rem);font-weight:800;letter-spacing:0;line-height:.76;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.open-color-practice-top p{margin:7px 0 0;color:var(--triad-muted-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.62rem;font-weight:800;letter-spacing:.07em;line-height:1;text-transform:uppercase}.open-color-step-strip{display:flex;align-items:center;gap:8px;min-width:0;flex:0 0 auto}.open-color-step-chip-strip{display:flex;align-items:center;gap:8px;min-width:0;overflow-x:auto;scrollbar-width:none}.open-color-step-chip-strip::-webkit-scrollbar{display:none}.open-color-step-chip-strip button,.open-color-step-arrow{display:grid;place-items:center;padding:0;border-radius:999px;cursor:pointer;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.18rem;font-weight:800;line-height:1}.open-color-step-chip-strip button{width:auto;min-width:44px;max-width:88px;height:38px;min-height:38px;padding-inline:9px;border-radius:10px;font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.open-color-step-arrow{width:30px;height:30px;min-height:30px;border-color:transparent;background:transparent;color:#2a6f5e;box-shadow:none}.open-color-step-arrow:disabled{cursor:default;opacity:.38}.open-color-step-chip-strip button.active{border-color:#2a6f5e7a;background:#2a6f5e;color:#fff;box-shadow:0 10px 22px #2a6f5e2e}.open-color-primary-controls{margin:0 0 14px;padding:0;display:grid;grid-template-columns:minmax(150px,1fr) minmax(190px,1fr);align-items:center;justify-content:stretch;gap:10px}.open-color-transport-button::part(native),.open-color-toggle-button::part(native){min-height:50px;min-width:0;padding-inline:22px}.open-color-transport-button,.open-color-toggle-button,.open-color-nav-pill{font-size:.9rem}.open-color-action-content{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:0}.open-color-action-icon{flex:0 0 auto}.open-color-action-label{min-width:0}.open-color-content ion-button[disabled]{--box-shadow: none;opacity:.45}.open-color-content ion-button.open-color-progress-button{--background: #f38f98;--background-hover: #eb828c;--background-activated: #dc747f;--border-color: rgba(220, 116, 127, .2);--color: var(--triad-strong);--box-shadow: 0 14px 28px rgba(220, 116, 127, .22)}.open-color-content ion-button.open-color-progress-button.is-playing{--background: #dc747f;--background-hover: #d46d78;--background-activated: #c8636e}.open-color-content ion-button.open-color-hear-button{--background: rgba(255, 250, 244, .9);--background-hover: rgba(255, 250, 244, .98);--background-activated: rgba(244, 236, 226, .88);--border-color: rgba(31, 27, 22, .14);--box-shadow: var(--triad-shadow-soft);--color: #2a6f5e}.open-color-content ion-button.open-color-direction-button::part(native){min-width:150px}.open-color-content ion-button.open-color-hear-button::part(native){min-width:150px}.open-color-content ion-button.open-color-progress-button::part(native){min-width:190px}.open-color-content ion-button.open-color-toggle-button{--background: rgba(255, 250, 244, .88);--background-hover: rgba(255, 250, 244, .96);--background-activated: rgba(244, 236, 226, .96);--border-color: rgba(42, 111, 94, .26);--box-shadow: var(--triad-shadow-soft);--color: #2a6f5e}.open-color-content ion-button.open-color-direction-button[disabled]{opacity:.46;--color: #2a6f5e;--background: transparent;--border-color: rgba(42, 111, 94, .18);--box-shadow: none}.open-color-header-icon-button::part(native){width:38px;min-width:38px;min-height:38px;padding:0;border-radius:999px}.open-color-workspace{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:start}.open-color-diagram-stack{display:grid;gap:22px}.open-chord-diagram{padding:16px 16px 12px;border:1px solid rgba(31,27,22,.08);border-radius:18px;background:#fffaf2;box-shadow:var(--triad-shadow)}.open-chord-nut-row,.open-chord-grid,.open-chord-string-labels{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}.open-chord-string-marker,.open-chord-string-labels span{min-height:22px;display:grid;place-items:center;color:var(--triad-muted-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-weight:800;text-transform:uppercase}.open-chord-grid{border-top:6px solid var(--triad-strong);border-left:1px solid rgba(50,40,34,.45)}.open-chord-string{display:grid;grid-template-rows:repeat(5,58px);border-right:1px solid rgba(50,40,34,.45)}.open-chord-fret{position:relative;display:grid;place-items:center;border:0;border-bottom:1px solid rgba(50,40,34,.22);background:transparent;color:transparent;font-weight:900}.open-chord-fret.active:before,.open-chord-fret.ghost:before{content:"";position:absolute;width:36px;height:36px;border-radius:999px;box-shadow:0 8px 18px #2d231c2e}.open-chord-fret.active{color:#fff}.open-chord-fret.active:before{background:#2d7c68}.open-chord-fret.active.degree-r:before{background:#f0a14a}.open-chord-fret.active.degree-3:before,.open-chord-fret.active.degree-b3:before{background:#6fa99b}.open-chord-fret.active.degree-5:before{background:#405c82}.open-chord-fret.active.color:before{background:#9d4f62}.open-chord-fret.ghost{color:#2a6f5e;cursor:pointer}.open-chord-fret.ghost:before{border:2px dashed rgba(42,111,94,.55);background:#2a6f5e14;box-shadow:none}.open-chord-fret.active,.open-chord-fret.ghost{z-index:1;font-size:.82rem}.open-color-library-shell .library-card{appearance:none;font:inherit;text-align:left}.open-color-library-shell .library-card-body{width:100%}@media(prefers-color-scheme:dark){.open-color-content .open-color-library-shell .library-create-card{border-color:#2a6f5e29;background:linear-gradient(180deg,#e7f4ebdb,#f4f9f1f0);box-shadow:0 16px 30px #2a6f5e1f;color:var(--triad-strong)}.open-color-content .open-color-library-shell .library-create-card-explorer{border-color:#f29e4c33;background:linear-gradient(180deg,#fffaf4eb,#f8f1e7f0);box-shadow:0 14px 26px #674b301a}.open-color-content .open-color-library-shell .library-create-icon{background:#2a6f5e;color:#fffaf3;box-shadow:0 12px 22px #2a6f5e3d}.open-color-content .open-color-library-shell .library-create-icon-secondary{background:#f29e4c;color:#1f1b16;box-shadow:0 12px 22px #f29e4c33}.open-color-content .open-color-library-shell .library-card-user{border-color:#1f1b161a;background:linear-gradient(180deg,#ffffffeb,#f8f4edf5)}.open-color-content .open-color-library-shell .library-card-preset{border-color:#8968412e;background:linear-gradient(180deg,#f2ecdef0,#fffaf2f5)}.open-color-content .open-color-library-shell .library-preset-tile:nth-child(3n+1){border-color:#2a6f5e2e;background:linear-gradient(180deg,#e7f4ebf0,#fafdf9f5)}.open-color-content .open-color-library-shell .library-preset-tile:nth-child(3n+2){border-color:#af6f2c2e;background:linear-gradient(180deg,#fff3def0,#fffaf2f5)}.open-color-content .open-color-library-shell .library-preset-tile:nth-child(3n){border-color:#4563802e;background:linear-gradient(180deg,#eaf1f8f0,#fafcfdf5)}.open-color-content .open-color-library-shell .library-card-tag{background:#1f1b160d;color:var(--triad-strong)}.open-color-content .open-color-library-shell .library-empty{background:#ffffff8a;border-color:#1f1b161f;color:var(--triad-muted-strong)}}.open-color-fretboard,.open-color-fretboard-panel{display:grid;gap:16px;padding:18px 20px 22px;border:1px solid rgba(31,27,22,.08);border-radius:22px;background:#fffaf2;box-shadow:var(--triad-shadow);overflow-x:auto}.open-color-fretboard-panel .fretboard-wrapper{margin-top:0}.open-color-fretboard-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.open-color-fretboard-head h3{margin:0;color:#2a6f5e;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.05rem;font-weight:800}.open-color-fretboard-head p{margin:2px 0 0;color:var(--triad-muted);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.74rem;line-height:1.25}.open-color-fretboard-head span,.open-color-fret-label,.open-color-string-label{color:var(--triad-muted);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.open-color-fretboard-head span{white-space:nowrap}.open-color-fretboard-grid{display:grid;grid-template-columns:26px repeat(6,minmax(38px,1fr));gap:0;min-width:310px;padding:4px 0 0}.open-color-fretboard-row{display:contents}.open-color-fret-label,.open-color-string-label,.open-color-fret-cell{min-height:36px;display:grid;place-items:center}.open-color-fret-cell{position:relative;display:flex;align-items:center;justify-content:center;gap:3px;border-left:1px solid rgba(50,40,34,.28);border-bottom:0;background:linear-gradient(180deg,#fffaf49e,#f4ebe06b);overflow:visible}.open-color-fret-cell:last-child{border-right:1px solid rgba(50,40,34,.28)}.open-color-fret-cell:before{content:"";position:absolute;left:0;right:0;top:50%;height:2px;transform:translateY(-50%);background:#45362c57}.open-color-fret-note{position:relative;z-index:1;width:25px;height:25px;display:grid;place-items:center;border-radius:999px;background:#2d7c68;color:#fff;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.62rem;font-weight:900;box-shadow:0 5px 10px #2d231c24}.open-color-fret-note.degree-r{background:#f0a14a}.open-color-fret-note.degree-3,.open-color-fret-note.degree-b3{background:#6fa99b}.open-color-fret-note.degree-5{background:#405c82}.open-color-fret-note.color{background:#9d4f62}.open-color-fret-cell button{position:relative;z-index:2;width:38px;min-height:34px;display:grid;place-items:center;gap:1px;border:1px dashed rgba(42,111,94,.48);border-radius:999px;background:#2a6f5e14;color:#2a6f5e;cursor:pointer;font-family:Space Grotesk,Trebuchet MS,sans-serif;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease}.open-color-fret-cell button strong{font-size:.78rem;line-height:.8}.open-color-fret-cell button span{font-size:.56rem;font-weight:800;line-height:1}.open-color-fret-cell button.selected,.open-color-suggestion-grid button.selected{border-color:#2a6f5eeb;background:#2a6f5e;color:#fffaf3;box-shadow:inset 0 0 0 1px #fffaf342}.open-color-fret-cell button.selected span,.open-color-fret-cell button.selected strong,.open-color-suggestion-grid button.selected span,.open-color-suggestion-grid button.selected strong{color:#fffaf3}.open-color-suggestions{display:grid;gap:14px;padding:18px 20px 22px;border:1px solid rgba(31,27,22,.08);border-radius:22px;background:#fffaf4;box-shadow:var(--triad-shadow)}.open-color-suggestions-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.open-color-suggestion-toggles{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap}.open-color-suggestion-toggles button{min-height:28px;padding:5px 9px;border:1px solid rgba(42,111,94,.18);border-radius:999px;background:#ffffffc7;color:var(--triad-muted-strong);cursor:pointer;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.68rem;font-weight:800;line-height:1}.open-color-suggestion-toggles button.active{border-color:#2a6f5e6b;background:#2a6f5e1f;color:var(--triad-strong)}.open-color-suggestion-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.open-color-suggestion-section{display:grid;gap:5px;padding-top:2px}.open-color-suggestion-section-title{color:var(--triad-muted);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.64rem;font-weight:800;letter-spacing:.08em;line-height:1;text-transform:uppercase}.open-color-suggestion-grid button{cursor:pointer;min-height:76px;padding:16px 18px 14px;border-color:#2a6f5e29;background:#fff;text-align:left;box-shadow:var(--triad-shadow-soft)}.open-color-suggestion-grid button strong{display:block;font-size:1.24rem;line-height:1.05;-webkit-hyphens:none;hyphens:none;max-width:100%;overflow:hidden;overflow-wrap:normal;text-overflow:ellipsis;white-space:nowrap;word-break:normal}.open-color-suggestion-grid button span{margin-top:8px;font-size:.92rem;color:#9b8a7a}.open-color-suggestion-grid button.selected{border-color:#2a6f5eeb;background:#2a6f5e;color:#fffaf3;box-shadow:inset 0 0 0 1px #fffaf342}.open-color-message{margin:22px 0 0;padding:18px 22px;border:1px solid rgba(42,111,94,.16);border-left:4px solid #2a6f5e;border-radius:15px;background:#2a6f5e14;color:#3a2b24;font-family:Alegreya,Georgia,serif;font-size:1.18rem;font-weight:700;line-height:1.3}.open-color-controls{margin-top:0}.open-color-progress-button::part(native){padding-inline:10px}.open-color-save-bar{display:flex;justify-content:flex-end;gap:14px;margin-top:18px;flex-wrap:wrap}@media(max-width:760px){.open-color-shell{padding-inline:calc(16px + env(safe-area-inset-left)) calc(16px + env(safe-area-inset-right))}.open-color-header,.open-color-hero,.open-color-workspace{grid-template-columns:1fr}.open-color-header-brand{gap:8px}.open-color-header-app-icon{width:30px;height:30px;border-radius:9px}.open-color-practice-title-row,.open-color-current-row{align-items:stretch;flex-direction:column}.open-color-practice-title-row{align-items:center;flex-direction:row}.open-color-top-actions{gap:4px}.open-color-practice-top{align-items:center;flex-direction:row;gap:8px;min-height:0;padding:12px;border-radius:18px}.open-color-practice-title-copy .open-color-eyebrow,.open-color-current-chord .open-color-eyebrow{display:none}.open-color-practice-title-copy h1{font-size:clamp(1.16rem,5vw,1.38rem)}.open-color-current-chord{flex:1 1 auto;width:auto;min-width:82px;min-inline-size:0}.open-color-practice-top h2{font-size:clamp(2.8rem,12vw,3.35rem)}.open-color-practice-top-long-name,.open-color-practice-top-extra-long-name{align-items:center;flex-direction:row}.open-color-practice-top-long-name .open-color-current-chord,.open-color-practice-top-extra-long-name .open-color-current-chord{flex:1 1 auto;min-width:0}.open-color-practice-top-long-name h2{font-size:clamp(2.18rem,9.2vw,2.65rem)}.open-color-practice-top-extra-long-name h2{font-size:clamp(1.64rem,7vw,2.08rem)}.open-color-practice-top p{margin-top:6px;font-size:.56rem}.open-color-primary-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;justify-content:stretch;width:100%}.open-color-transport-button::part(native),.open-color-toggle-button::part(native),.open-color-nav-pill::part(native){min-height:46px;min-width:0;padding-inline:10px}.open-color-content ion-button.open-color-direction-button::part(native),.open-color-content ion-button.open-color-hear-button::part(native),.open-color-content ion-button.open-color-progress-button::part(native),.open-color-sound-pill::part(native){min-width:0}.open-color-direction-label,.open-color-sound-label{display:none}.open-color-content ion-button.open-color-direction-button::part(native),.open-color-sound-pill::part(native){padding-inline:0}.open-color-content ion-button.open-color-hear-button::part(native),.open-color-content ion-button.open-color-progress-button::part(native){padding-inline:10px;white-space:nowrap}.open-color-direction-button ion-icon,.open-color-sound-pill ion-icon{margin:0}.open-color-action-content{gap:6px;width:100%}.open-color-hear-button .open-color-action-label,.open-color-progress-button .open-color-action-label{white-space:nowrap}.open-color-sound-pill::part(native){min-height:40px}.open-color-transport-button,.open-color-toggle-button,.open-color-nav-pill,.open-color-sound-pill{font-size:.7rem}.open-color-step-strip{flex:1 1 auto;width:auto;justify-content:flex-end;gap:4px;min-width:0}.open-color-step-chip-strip{flex:0 1 auto;gap:6px}.open-color-step-chip-strip button{flex:0 0 auto;min-width:34px;max-width:76px;width:auto;height:32px;min-height:32px;padding-inline:8px;font-size:.72rem}.open-color-practice-top-long-name .open-color-step-strip,.open-color-practice-top-extra-long-name .open-color-step-strip{flex:0 1 150px;max-width:46%;width:auto;justify-content:flex-end}.open-color-practice-top-long-name .open-color-step-chip-strip,.open-color-practice-top-extra-long-name .open-color-step-chip-strip{flex:1 1 auto;min-width:0}.open-color-step-arrow{flex:0 0 24px;width:24px;height:24px;min-height:24px;padding:0;font-size:.66rem}.open-color-header{align-items:center}.open-color-header h1{font-size:clamp(1.22rem,7vw,1.68rem)}.open-color-hero{padding:12px}.open-color-create-card{min-width:100%}.open-color-builtins{grid-template-columns:1fr}.open-color-suggestion-grid,.open-color-suggestion-grid-advanced{grid-template-columns:repeat(2,minmax(0,1fr))}.open-color-suggestion-grid button{min-height:54px;padding:10px 12px 9px}.open-color-suggestion-grid button strong{font-size:clamp(.82rem,3.7vw,1.02rem)}.open-color-suggestion-grid button span{margin-top:4px;font-size:.72rem}.open-color-suggestions{gap:12px;padding:14px;border-radius:16px}.open-color-suggestion-toggles button{min-height:30px;padding:6px 12px;font-size:.68rem}.open-color-save-bar{position:sticky;z-index:5;bottom:calc(env(safe-area-inset-bottom) + 8px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0 0;padding:0}.open-color-save-bar ion-button{margin:0}.open-color-primary-action::part(native),.open-color-secondary-action::part(native){min-height:42px;padding-inline:10px}.open-chord-string{grid-template-rows:repeat(5,48px)}}@media(orientation:landscape)and (max-height:500px)and (max-width:950px){.open-color-content::part(scroll){overflow:hidden}.open-color-practice-shell{display:grid;grid-template-areas:"header header" "current controls" "fretboard colors" "message save";grid-template-columns:minmax(0,1fr) minmax(250px,30vw);grid-template-rows:30px 50px minmax(0,1fr) 32px;gap:5px 8px;height:100dvh;max-height:100dvh;overflow:hidden;padding:calc(env(safe-area-inset-top) + 8px) calc(env(safe-area-inset-right) + 12px) calc(env(safe-area-inset-bottom) + 8px) calc(env(safe-area-inset-left) + 12px)}.open-color-practice-page-header{grid-area:header;align-items:center;gap:12px;min-height:0;margin-bottom:0}.open-color-practice-title-copy{gap:1px;min-width:0}.open-color-practice-title-copy .open-color-eyebrow,.open-color-current-chord .open-color-eyebrow{display:none}.open-color-practice-title-copy h1{font-size:clamp(.95rem,3vw,1.18rem)}.open-color-header-icon-button::part(native){width:30px;min-width:30px;min-height:30px;padding:0}.open-color-header-icon-button{font-size:.72rem}.open-color-practice-top{grid-area:current;align-items:center;flex-direction:row;gap:10px;height:100%;min-height:0;margin-bottom:0;padding:6px 8px 6px 14px;border-radius:14px}.open-color-current-chord{flex:1 1 auto;width:auto;min-width:64px;min-inline-size:0}.open-color-practice-top h2{margin-top:0;font-size:clamp(1.75rem,5.5vw,2.25rem);line-height:.82}.open-color-practice-top p{margin-top:2px;font-size:.62rem}.open-color-step-strip{width:auto;gap:4px;justify-content:flex-end;min-width:0}.open-color-step-chip-strip{flex:0 1 auto;gap:4px;min-width:0}.open-color-step-chip-strip button{flex:0 0 auto;min-width:32px;max-width:62px;width:auto;height:32px;min-height:32px;padding-inline:7px;font-size:.72rem}.open-color-step-arrow{flex:0 0 24px;width:24px;height:24px;min-height:24px;font-size:.68rem}.open-color-primary-controls{grid-area:controls;display:grid;grid-template-columns:minmax(72px,.74fr) minmax(118px,1fr);align-self:center;gap:3px;justify-content:stretch;width:100%;max-width:none;margin-bottom:0}.open-color-transport-button::part(native),.open-color-toggle-button::part(native),.open-color-nav-pill::part(native){min-height:30px;min-width:0;padding-inline:4px}.open-color-content ion-button.open-color-direction-button::part(native),.open-color-content ion-button.open-color-hear-button::part(native),.open-color-content ion-button.open-color-progress-button::part(native),.open-color-sound-pill::part(native){min-width:0}.open-color-content ion-button.open-color-direction-button::part(native),.open-color-sound-pill::part(native){padding-inline:0}.open-color-action-content{gap:4px;width:100%}.open-color-hear-button .open-color-action-label,.open-color-progress-button .open-color-action-label{white-space:nowrap}.open-color-transport-button,.open-color-toggle-button,.open-color-nav-pill,.open-color-sound-pill{font-size:.64rem}.open-color-diagram-stack,.open-color-workspace{display:contents}.open-color-fretboard-panel{grid-area:fretboard;min-height:0}.open-color-suggestions{grid-area:colors;min-height:0;overflow:hidden}.open-color-fretboard,.open-color-fretboard-panel,.open-color-suggestions{gap:8px;padding:7px 9px;border-radius:14px}.open-color-fretboard-panel .fretboard-wrapper{height:100%;min-height:0;border-radius:12px}.open-color-fretboard-panel .fretboard-svg{height:100%;min-height:0}.open-color-fretboard-head h3,.open-color-suggestions h3{font-size:.9rem}.open-color-fretboard-head span,.open-color-suggestions-head span{font-size:.54rem}.open-color-suggestions-head{gap:6px}.open-color-suggestion-toggles{gap:4px}.open-color-suggestion-toggles button{min-height:20px;padding:3px 7px;font-size:.56rem}.open-color-suggestion-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.open-color-suggestion-grid button{min-height:42px;padding:7px 9px 6px}.open-color-suggestion-grid button strong{font-size:clamp(.72rem,1.8vw,.86rem)}.open-color-suggestion-grid button span{margin-top:2px;font-size:.58rem}.open-color-save-bar{grid-area:save;align-items:stretch;justify-content:flex-end;gap:5px;min-height:0;margin-top:0;flex-wrap:nowrap}.open-color-primary-action,.open-color-secondary-action{margin:0;font-size:.64rem}.open-color-primary-action::part(native),.open-color-secondary-action::part(native){min-height:30px;padding-inline:10px;box-shadow:none}.open-color-message{grid-area:message;align-self:stretch;margin:0;overflow:hidden;padding:5px 8px;border-radius:10px;font-size:.72rem;line-height:1.05}}body{font-family:Alegreya,Georgia,serif;background:linear-gradient(180deg,#fcf7f1,#f4ede4)}h1,h2,h3,h4,ion-title{font-family:Space Grotesk,Trebuchet MS,sans-serif;letter-spacing:.02em}ion-toolbar{--background: var(--triad-toolbar);--border-color: rgba(31, 27, 22, .08);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}ion-header{background:var(--triad-toolbar)}.app-toolbar-brand{display:inline-flex;align-items:center;gap:10px;padding-inline-start:16px;min-width:0}.app-toolbar-brand-icon{width:30px;height:30px;border-radius:9px;object-fit:cover;box-shadow:0 8px 18px #1f1b1624;border:1px solid rgba(31,27,22,.08);background:#ffffffbf}.app-toolbar-brand-name{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.02rem;font-weight:700;letter-spacing:.02em;color:var(--triad-strong);white-space:nowrap}.app-toolbar-end{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;padding-inline-end:8px}.open-tuning-selector{display:inline-flex;align-items:center;gap:7px;min-height:34px;max-width:min(58vw,430px);padding:3px 9px;border:1px solid var(--triad-chip-border);border-radius:999px;background:var(--triad-chip-bg);box-shadow:0 7px 18px #1f1b1614;font-family:Space Grotesk,Trebuchet MS,sans-serif;color:var(--triad-strong);cursor:pointer}.open-tuning-selector.compact{max-width:190px;padding-inline:8px}.open-tuning-selector-label{flex:0 0 auto;font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--triad-muted-strong)}.open-tuning-selector-select{min-width:0;max-width:118px;border:0;outline:0;background:transparent;color:var(--triad-strong);font:inherit;font-size:.83rem;font-weight:700;cursor:pointer}.open-tuning-selector:focus-within{border-color:#f29e4ca6;box-shadow:0 0 0 3px #f29e4c29}.open-tuning-selector-notes{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--triad-muted-strong);font-size:.78rem;font-weight:600}.open-tuning-selector.compact .open-tuning-selector-notes{display:none}.open-tuning-page-selector{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.62fr);gap:12px;align-items:center;padding:14px;border:1px solid rgba(42,111,94,.16);border-radius:18px;background:linear-gradient(180deg,#ebf6efe6,#faf7eff5);box-shadow:var(--triad-shadow-soft)}.open-tuning-page-selector-copy{min-width:0;display:grid;gap:3px}.open-tuning-page-selector-title{color:var(--triad-muted-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.open-tuning-page-selector-notes{overflow:hidden;color:var(--triad-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.12rem;font-weight:800;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap}.open-tuning-page-selector-controls{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.open-tuning-page-selector .open-tuning-selector{width:100%;max-width:none;min-height:46px;justify-content:space-between;padding:7px 11px;border-radius:15px;background:#fffc}.open-tuning-page-selector .open-tuning-selector-select{max-width:none;font-size:.98rem}.open-tuning-tune-action{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:86px;min-height:46px;padding:8px 14px;border:1px solid rgba(42,111,94,.22);border-radius:15px;background:#2a6f5e;color:#fffaf3;box-shadow:0 12px 24px #2a6f5e33;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.92rem;font-weight:800;cursor:pointer;white-space:nowrap}.open-tuning-tune-action:focus-visible{outline:2px solid rgba(42,111,94,.42);outline-offset:3px}.open-tuning-tune-action ion-icon{font-size:1.12rem}.practice-tuning-selector{display:grid;margin-bottom:2px}.route-tuning-selector{display:none}.open-tuning-warning-backdrop{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:max(18px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));background:#1f1b164d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.open-tuning-warning{width:min(420px,100%);max-height:calc(100vh - max(36px,env(safe-area-inset-top)) - max(36px,env(safe-area-inset-bottom)));overflow:auto;display:grid;gap:12px;padding:18px;border:var(--triad-border);border-radius:8px;background:var(--triad-panel-gradient);box-shadow:0 24px 70px #1f1b1638;color:var(--triad-strong)}.open-tuning-warning-eyebrow{color:var(--triad-muted-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.open-tuning-warning h2{margin:0;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.2rem;line-height:1.1;letter-spacing:0}.open-tuning-warning p{margin:0;color:var(--triad-muted-strong);line-height:1.45}.open-tuning-warning-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:4px}.open-tuning-warning-actions .library-secondary-action,.open-tuning-warning-actions .library-primary-action{min-height:38px;padding:0 16px;border-radius:999px;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.84rem;font-weight:800;cursor:pointer}.open-tuning-warning-actions .library-secondary-action{border:1px solid rgba(31,27,22,.14);background:#fffaf4d1;color:var(--triad-muted-strong)}.open-tuning-warning-actions .library-primary-action{border:1px solid rgba(42,111,94,.22);background:#2a6f5e;color:#fffaf3;box-shadow:0 12px 24px #2a6f5e33}@media(max-width:700px){.app-toolbar-brand{gap:7px;padding-inline-start:10px}.app-toolbar-brand-name{max-width:min(70vw,20rem);overflow:hidden;text-overflow:ellipsis}.practice-toolbar-title{padding-inline:48px}.practice-toolbar-title .practice-header-title{font-size:.68rem;line-height:1}.practice-toolbar-title .practice-header-subtitle{max-width:min(48vw,14rem);margin-inline:auto;font-size:.95rem;line-height:1.06}.open-tuning-selector{max-width:44vw}.app-toolbar-end .open-tuning-selector.compact{display:none}.open-tuning-page-selector{grid-template-columns:minmax(0,1fr);gap:10px;padding:12px}.open-tuning-page-selector-controls{grid-template-columns:minmax(0,1fr) auto}.open-tuning-tune-action{min-width:76px;padding-inline:12px}.route-tuning-selector{display:grid}.route-tuning-selector .open-tuning-selector-notes,.practice-tuning-selector .open-tuning-page-selector-copy,.practice-tuning-selector .open-tuning-selector-notes,.open-tuning-selector-notes{display:none}}.practice-header-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-weight:600;line-height:1.1;color:var(--triad-muted-strong);text-transform:uppercase;letter-spacing:.06em}.practice-header-subtitle{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1.05rem;text-transform:none;letter-spacing:.02em;color:var(--triad-strong);font-weight:700}.practice-toolbar-title{min-width:0;text-align:center}ion-button{--border-radius: 999px;font-weight:600;letter-spacing:.01em;text-transform:none}ion-button::part(native){min-height:44px;text-transform:none;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease}ion-button:active::part(native){transform:translateY(1px)}ion-button[disabled],ion-button.button-disabled{opacity:1;--background: rgba(31, 27, 22, .08);--background-hover: rgba(31, 27, 22, .08);--background-activated: rgba(31, 27, 22, .08);--border-color: rgba(31, 27, 22, .12);--box-shadow: none;--color: rgba(31, 27, 22, .48);--color-activated: rgba(31, 27, 22, .48);--color-focused: rgba(31, 27, 22, .48);--color-hover: rgba(31, 27, 22, .48)}ion-toolbar ion-button::part(native){min-width:44px}.builder-back-pill{height:44px}.triad-page{padding:16px calc(18px + env(safe-area-inset-right)) calc(28px + env(safe-area-inset-bottom)) calc(16px + env(safe-area-inset-left))}.builder-page{padding-bottom:calc(12px + env(safe-area-inset-bottom))}.practice-page{padding-bottom:calc(16px + env(safe-area-inset-bottom))}.practice-page.voice-intro-visible{padding-top:92px}.panel{background:var(--triad-panel-gradient);border:1px solid var(--triad-panel-edge);border-radius:var(--triad-radius);box-shadow:var(--triad-shadow);padding:18px}.app-route-layer{min-height:100%}.onboarding-route-inert{pointer-events:none;-webkit-user-select:none;user-select:none}.onboarding-overlay{position:fixed;inset:0;z-index:30000;color:var(--triad-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;pointer-events:auto}.onboarding-overlay.card-step{display:grid;grid-template-rows:1fr auto;padding:calc(28px + env(safe-area-inset-top)) calc(22px + env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) calc(22px + env(safe-area-inset-left));background:linear-gradient(180deg,#fcf7f1,#f4ede4)}.onboarding-live-region{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.onboarding-card{align-self:center;justify-self:center;display:grid;justify-items:center;gap:16px;max-width:320px;text-align:center}.onboarding-card.done{gap:14px}.onboarding-icon{width:96px;height:96px;border-radius:24px;object-fit:cover;border:1px solid rgba(31,27,22,.08);box-shadow:0 22px 44px #a85f1c4d}.onboarding-done-mark{display:grid;place-items:center;width:72px;height:72px;border-radius:999px;background:#2a6f5e1f;border:1px solid rgba(42,111,94,.2);color:var(--ion-color-primary);font-size:2rem;font-weight:800}.onboarding-card-title{margin:0;font-family:Alegreya,Georgia,serif;font-size:clamp(2rem,9vw,2.55rem);line-height:1.04;letter-spacing:0;font-weight:800;color:var(--triad-strong)}.onboarding-card-body{margin:0;max-width:285px;color:var(--triad-muted-strong);font-size:.96rem;line-height:1.5}.onboarding-bottom-actions{display:grid;gap:12px;width:min(100%,346px);justify-self:center}.onboarding-bottom-row{display:grid;grid-template-columns:60px 1fr 60px;align-items:center}.onboarding-progress-dots{display:inline-flex;justify-content:center;align-items:center;gap:5px}.onboarding-progress-dot{width:6px;height:6px;border-radius:999px;background:#1f1b162e;transition:width .18s ease,background-color .18s ease}.onboarding-progress-dot.active{width:18px;background:var(--ion-color-primary)}.onboarding-primary-button,.onboarding-ghost-button,.onboarding-link-button{min-height:44px;border:0;font:inherit;cursor:pointer}.onboarding-primary-button{border-radius:999px;padding:0 22px;background:var(--ion-color-primary);color:var(--ion-color-primary-contrast);font-weight:800;box-shadow:0 14px 26px #2a6f5e38}.onboarding-primary-button.compact{min-height:40px;padding:0 17px;box-shadow:none}.onboarding-ghost-button,.onboarding-link-button{background:transparent;color:var(--ion-color-primary);font-weight:800}.onboarding-ghost-button{justify-self:center;padding:0 14px}.onboarding-link-button{padding:0}.onboarding-spotlight{position:absolute;border-radius:16px;pointer-events:none;box-shadow:0 0 0 9999px #1c1814a3;outline:2px solid var(--ion-color-secondary);transition:opacity .22s ease}.onboarding-coachmark{position:absolute;top:max(var(--coachmark-top),calc(env(safe-area-inset-top) + 12px));left:var(--coachmark-left);width:var(--coachmark-width);padding:14px;border-radius:16px;background:#fffaf4;border:1px solid rgba(31,27,22,.08);box-shadow:0 18px 38px #1f1b162e;animation:onboarding-coach-in .2s ease both}.onboarding-coachmark-tail{position:absolute;left:calc(var(--coachmark-tail-left) - 8px);width:16px;height:16px;background:inherit;border:inherit;transform:rotate(45deg)}.onboarding-coachmark.below .onboarding-coachmark-tail{top:-8px;border-right:0;border-bottom:0}.onboarding-coachmark.above .onboarding-coachmark-tail{bottom:-8px;border-left:0;border-top:0}.onboarding-coachmark-title{font-size:.88rem;line-height:1.2;font-weight:800;color:var(--triad-strong)}.onboarding-coachmark-body{margin:5px 0 13px;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.82rem;line-height:1.5;color:var(--triad-muted-strong)}.onboarding-coachmark-footer,.onboarding-coachmark-actions{display:flex;align-items:center;gap:12px}.onboarding-coachmark-footer{justify-content:space-between}.onboarding-coachmark-progress{color:var(--triad-muted);font-size:.78rem;font-weight:800}.settings-row-button{display:flex;width:100%;min-height:54px;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--triad-chip-border);border-radius:14px;padding:10px 12px;background:var(--triad-chip-bg);color:var(--triad-strong);font:inherit;font-weight:800;text-align:left;cursor:pointer}.settings-row-button-note{color:var(--triad-muted-strong);font-size:.78rem;font-weight:700}@keyframes onboarding-coach-in{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.onboarding-progress-dot,.onboarding-spotlight,.onboarding-coachmark{animation:none;transition:none}}@media(prefers-color-scheme:dark){.onboarding-overlay.card-step{background:radial-gradient(circle at top,#1b1511,#14100d 55%,#0f0c0a)}.onboarding-coachmark{background:#1c1c1e;border-color:#f3ede61f;box-shadow:0 18px 38px #0000006b}.onboarding-progress-dot{background:#f3ede638}.settings-row-button{background:#241d18;border-color:#f3ede624}}@media(orientation:landscape)and (max-height:500px){.onboarding-overlay.card-step{grid-template-columns:minmax(0,1fr) minmax(228px,300px);grid-template-rows:1fr;align-items:center;gap:16px;padding:calc(14px + env(safe-area-inset-top)) calc(18px + env(safe-area-inset-right)) calc(14px + env(safe-area-inset-bottom)) calc(18px + env(safe-area-inset-left))}.onboarding-card{grid-template-columns:auto minmax(0,1fr);align-items:center;justify-items:start;gap:10px 12px;max-width:none;text-align:left}.onboarding-icon,.onboarding-done-mark{grid-row:span 2;width:58px;height:58px;border-radius:17px}.onboarding-done-mark{border-radius:999px;font-size:1.55rem}.onboarding-card-title{font-size:clamp(1.45rem,5vw,1.85rem)}.onboarding-card-body{max-width:330px;font-size:.84rem;line-height:1.38}.onboarding-bottom-actions{align-self:center;justify-self:stretch;width:100%}.onboarding-bottom-row{grid-template-columns:28px 1fr 58px}}.purchase-modal{--height: auto;--max-width: 430px;--border-radius: 22px;align-items:end}.purchase-modal::part(content){margin:16px;border-radius:22px;overflow:hidden}.purchase-sheet{display:grid;gap:12px;padding:22px;background:linear-gradient(180deg,#fffdf9,#f0f8ef);color:var(--triad-strong)}.purchase-icon{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:18px;background:#2a6f5e1f;color:#2a6f5e;font-size:1.55rem}.purchase-eyebrow,.purchase-locked-kicker{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.72rem;font-weight:800;letter-spacing:.08em;color:#2a6f5e;text-transform:uppercase}.purchase-title{margin:0;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.45rem;line-height:1.08;letter-spacing:0}.purchase-copy,.purchase-note{margin:0;font-size:.95rem;line-height:1.45;color:var(--triad-muted-strong)}.purchase-benefits{display:grid;gap:8px;padding:10px 0 2px}.purchase-benefit{display:grid;grid-template-columns:22px 1fr;align-items:start;gap:8px;font-size:.9rem;line-height:1.35;color:var(--triad-strong)}.purchase-benefit ion-icon{color:#2a6f5e;font-size:1.05rem;margin-top:1px}.purchase-actions{display:grid;gap:8px;padding-top:2px}.purchase-primary{--background: #2a7c67;--background-hover: #256d5b;--background-activated: #215f50;--box-shadow: 0 12px 22px rgba(42, 124, 103, .2);--color: #fffdf9}.purchase-restore,.purchase-secondary{min-height:42px;border:0;border-radius:999px;background:transparent;color:#2a6f5e;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.9rem;font-weight:800}.purchase-restore{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(42,111,94,.24);background:#ffffffa8}.purchase-restore[disabled]{opacity:.55}.purchase-error{padding:10px 12px;border-radius:12px;background:#a2354514;color:#8b2436;font-size:.86rem;line-height:1.35}.paywall-modal{--height: auto;--max-width: 430px;--border-radius: 30px 30px 0 0;--backdrop-opacity: .46;align-items:flex-end;justify-content:flex-end}.paywall-modal::part(content){align-self:flex-end;position:fixed;right:12px;bottom:0;left:12px;width:auto;max-width:430px;margin:0 auto;border-radius:30px 30px 0 0;overflow:hidden;background:transparent;box-shadow:0 -16px 48px #1c18143d}.paywall-sheet{display:grid;gap:11px;max-height:min(88vh,720px);overflow-y:auto;padding:12px 22px calc(env(safe-area-inset-bottom,0px) + 22px);border-top:1px solid rgba(31,27,22,.08);border-radius:30px 30px 0 0;background:linear-gradient(180deg,#fffffffa,#fffaf4f5);color:var(--triad-strong);overscroll-behavior:contain}.paywall-grabber{justify-self:center;width:38px;height:5px;border-radius:999px;background:#1f1b1626}.paywall-eyebrow{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.72rem;font-weight:800;letter-spacing:.13em;color:var(--ion-color-primary);text-transform:uppercase}.paywall-eyebrow-accent{color:#a85f1c}.paywall-title{margin:0;font-family:Alegreya,Georgia,serif;font-size:clamp(1.75rem,6vw,2.12rem);font-weight:900;line-height:1;letter-spacing:0;color:var(--triad-strong)}.paywall-title:focus{outline:none}.paywall-copy{margin:0;font-size:.96rem;line-height:1.42;color:var(--triad-muted-strong)}.paywall-centered-copy{text-align:center}.paywall-centered-copy .paywall-eyebrow,.paywall-centered-copy .paywall-title,.paywall-centered-copy .paywall-copy{margin-right:auto;margin-left:auto}.paywall-centered-copy .paywall-copy{max-width:310px}.paywall-minimal-copy{display:grid;gap:7px}.paywall-fretboard-card{display:grid;gap:9px;padding:9px 9px 10px;border:1px solid rgba(42,111,94,.16);border-radius:16px;background:linear-gradient(180deg,#e7f4ebdb,#f4f9f1f0)}.paywall-fretboard-card.hero{border-radius:18px}.paywall-fretboard-card .fretboard-wrapper{margin-top:0;border-radius:14px;box-shadow:none}.paywall-fretboard-card .fretboard-svg{display:block;width:100%;height:126px}.paywall-fretboard-card .fretboard-watermark{font-size:50px;opacity:.1}.paywall-fretboard-card .note-dot{cursor:default}.paywall-fretboard-bg{fill:#fffdf9b8;stroke:#2a6f5e14}.paywall-fretboard-string,.paywall-fretboard-fret{stroke:#1f1b1657;stroke-width:1}.paywall-fretboard-label,.paywall-fretboard-number{fill:var(--triad-muted-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:9px;font-weight:800;text-anchor:middle}.paywall-fretboard-label{text-anchor:middle}.paywall-fretboard-watermark{fill:#1f1b1614;font-family:Alegreya,Georgia,serif;font-size:54px;font-weight:900;text-anchor:middle}.paywall-degree-dot.degree-r,.paywall-legend-dot.degree-r{fill:#f29e4c;background:#f29e4c}.paywall-degree-dot.degree-3,.paywall-legend-dot.degree-3{fill:#6c9a8b;background:#6c9a8b}.paywall-degree-dot.degree-5,.paywall-legend-dot.degree-5{fill:#355070;background:#355070}.paywall-degree-label{fill:#fffdf9;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:9px;font-weight:900;text-anchor:middle}.paywall-fretboard-legend{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 16px;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.72rem;font-weight:700;color:var(--triad-muted-strong)}.paywall-fretboard-legend>span{display:inline-flex;align-items:center;gap:5px}.paywall-legend-dot{display:inline-flex;align-items:center;justify-content:center;width:18px;min-width:18px;height:18px;border-radius:999px;color:#fffdf9;font-size:.62rem;font-weight:900;line-height:1;text-align:center}.paywall-benefits{display:grid;gap:8px}.paywall-benefit{display:grid;grid-template-columns:24px 1fr;align-items:center;gap:9px;font-size:.95rem;line-height:1.34;color:var(--triad-strong)}.paywall-benefit-icon{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:999px;background:#2a6f5e1f;color:var(--ion-color-primary);font-size:1rem}.paywall-action-stack{display:grid;gap:8px}.paywall-unlock-note{margin:0;color:var(--triad-muted-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.82rem;font-weight:700;line-height:1.3;text-align:center}.paywall-success{display:grid;gap:14px;padding-top:6px;text-align:center}.paywall-success-badge{display:inline-grid;place-items:center;justify-self:center;width:62px;height:62px;border-radius:999px;border:1px solid rgba(42,111,94,.18);background:radial-gradient(circle at 36% 28%,#69c4aa6b,#2a6f5e29);color:var(--ion-color-primary);font-size:2rem;box-shadow:0 14px 28px #2a6f5e2e}.paywall-success-offer{display:grid;gap:3px;padding:13px 16px;border:1px solid rgba(42,111,94,.16);border-radius:18px;background:linear-gradient(180deg,#e7f4ebdb,#fffdf9f0);color:var(--triad-muted-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.75rem;font-weight:800;text-transform:uppercase}.paywall-success-offer strong{color:var(--triad-strong);font-family:Alegreya,Georgia,serif;font-size:1.2rem;font-weight:900;line-height:1.05;text-transform:none}.paywall-primary-button,.paywall-secondary-button,.paywall-footer-button{min-height:44px;border:0;border-radius:999px;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-weight:800;letter-spacing:0}.paywall-primary-button{width:100%;padding:0 18px;background:var(--ion-color-primary);box-shadow:0 14px 26px #2a6f5e42;color:var(--ion-color-primary-contrast);font-size:.95rem}.paywall-secondary-button{width:100%;padding:0 16px;background:transparent;color:var(--triad-muted-strong);font-size:.88rem}.paywall-secondary-outline{border:1.5px solid rgba(31,27,22,.14);background:#ffffff80;color:var(--triad-muted-strong)}.paywall-primary-button:disabled,.paywall-secondary-button:disabled,.paywall-footer-button:disabled{opacity:.56}.paywall-offer-strip{display:flex;flex-wrap:wrap;justify-content:center;gap:5px 8px;padding:10px 0;border-top:1px solid rgba(31,27,22,.08);border-bottom:1px solid rgba(31,27,22,.08);color:var(--triad-muted-strong);font-size:.82rem;line-height:1.25;text-align:center}.paywall-offer-free{color:var(--ion-color-primary);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.75rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.paywall-offer-free:before{content:"";display:inline-block;width:6px;height:6px;margin-right:4px;border-radius:999px;background:currentColor;vertical-align:1px}.paywall-price-card{display:grid;grid-template-columns:minmax(136px,.95fr) 1px minmax(0,1fr);align-items:center;gap:12px;padding:16px 18px;border:1px solid rgba(31,27,22,.08);border-radius:18px;background:#fff;box-shadow:0 10px 28px #1f1b1614}.paywall-price-card:before{content:"";width:1px;height:58px;grid-column:2;grid-row:1;background:#1f1b161f}.paywall-price{grid-column:1;grid-row:1;font-family:Alegreya,Georgia,serif;font-size:clamp(2.1rem,9.5vw,2.7rem);font-weight:900;line-height:.9;text-align:center;white-space:nowrap;color:var(--triad-strong)}.paywall-price-copy{display:grid;gap:3px;grid-column:3;grid-row:1;font-size:.86rem;line-height:1.25;color:var(--triad-muted-strong)}.paywall-price-copy strong{color:var(--triad-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.82rem}.paywall-trust-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:7px}.paywall-trust-pills span{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border:1px solid rgba(31,27,22,.1);border-radius:999px;color:var(--triad-muted-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.72rem;font-weight:800}.paywall-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px}.paywall-footer-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;background:transparent;color:var(--ion-color-primary);font-size:.78rem}.paywall-footer-dot{width:4px;height:4px;border-radius:999px;background:#1f1b163d}@media(max-height:660px){.paywall-sheet{gap:9px}.paywall-fretboard-card:not(.hero){padding-block:5px 7px}.paywall-fretboard-card.hero svg{max-height:116px}}@media(max-width:360px){.paywall-modal::part(content){margin:0 8px}.paywall-sheet{padding-right:18px;padding-left:18px}.paywall-price-card{grid-template-columns:1fr;gap:8px;text-align:center}.paywall-price-card:before{display:none}.paywall-price,.paywall-price-copy{grid-column:1}}.purchase-locked-panel{display:grid;gap:12px;max-width:520px;margin:0 auto}.practice-panel{padding:14px 16px 12px}.progression-builder-stack{display:grid;gap:12px;min-height:calc(100dvh - 116px);align-content:start}.builder-panel{display:grid;gap:10px;padding:16px}.builder-quickbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 10px}.builder-quickbar-lower{padding-top:2px}.builder-intro-copy{display:grid;gap:8px}.builder-title{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.3rem;font-weight:700;color:var(--triad-strong)}.builder-status-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.builder-status-chip{display:inline-flex;align-items:center;gap:6px;min-height:26px;padding:4px 9px;border-radius:999px;border:1px solid rgba(31,27,22,.1);background:#1f1b160b;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.72rem;font-weight:700;color:var(--triad-muted-strong)}.builder-key-chip{padding-left:7px}.builder-key-label{display:inline-flex;align-items:center;min-height:18px;padding:2px 6px;border-radius:999px;background:#2a6f5e1f;color:#286d58;font-size:.62rem;letter-spacing:.06em;text-transform:uppercase}.builder-count-chip{min-height:40px;padding:6px 12px;background:#1f1b1609}.builder-copy{max-width:46ch;font-size:.88rem;line-height:1.5;color:var(--triad-muted-strong)}.builder-intro-line{flex:1 1 280px}.builder-example{display:inline-flex;align-items:center;justify-self:start;border-radius:999px;border:1px solid rgba(31,27,22,.12);background:#ffffffbd;padding:6px 12px;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.78rem;color:var(--triad-strong)}.builder-grid{display:grid;gap:12px;align-items:start}.builder-settings-card{display:grid;gap:8px;padding:12px 14px;border-radius:16px;border:1px solid rgba(31,27,22,.08);background:#fff9;box-shadow:var(--triad-shadow-soft)}.builder-settings-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px}.builder-settings-copy-block{display:grid;gap:4px;flex:1 1 280px}.builder-settings-title{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.88rem;font-weight:700;color:var(--triad-strong)}.builder-settings-copy,.builder-settings-note{font-size:.8rem;line-height:1.45;color:var(--triad-muted-strong)}.builder-more-options{display:grid;gap:10px}.builder-more-options-toggle{justify-self:start}.builder-more-options-panel{display:grid;gap:14px;padding:14px;border-radius:18px;border:1px solid rgba(31,27,22,.08);background:#ffffff94;box-shadow:var(--triad-shadow-soft)}.builder-more-options-divider{height:1px;background:#1f1b1614}.builder-tempo-strip{display:inline-grid;grid-template-columns:auto minmax(72px,96px);align-items:center;gap:8px;justify-self:start;min-height:40px;padding:4px 6px 4px 12px;border-radius:999px;border:1px solid rgba(31,27,22,.12);background:#ffffffad;box-shadow:var(--triad-shadow-soft)}.builder-options-icon-button{appearance:none;width:48px;height:48px;border-radius:18px;border:1px solid rgba(31,27,22,.12);background:#ffffffb8;box-shadow:var(--triad-shadow-soft);color:var(--triad-strong);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background-color .18s ease}.builder-options-icon-button ion-icon{font-size:1.28rem}.builder-options-icon-button:hover{transform:translateY(-1px)}.builder-tempo-label{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.08em;color:var(--triad-muted-strong)}.builder-tempo-input{width:100%;min-height:32px;border:0;border-radius:999px;background:#1f1b160f;color:var(--triad-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.9rem;font-weight:700;padding:4px 10px;text-align:center}.builder-tempo-input:focus{outline:none;box-shadow:0 0 0 3px #f29e4c29}.builder-form{display:grid;gap:12px}.builder-timeline-card{position:relative;overflow:hidden;padding:14px;border-radius:22px;border:1px solid rgba(42,111,94,.18);background:linear-gradient(180deg,#e6efe2db,#f1f6eeb8);box-shadow:0 16px 30px #2a6f5e1f,inset 0 1px #ffffff9e}.builder-timeline-help{position:absolute;top:10px;right:10px;z-index:2}.builder-timeline-card.empty{overflow:visible;padding:14px;background:linear-gradient(180deg,#e7f0e3bd,#f6f9f3b3)}.builder-timeline-card.empty:after{content:"";position:absolute;left:50%;bottom:-7px;width:16px;height:16px;transform:translate(-50%) rotate(45deg);border-right:1px solid rgba(42,111,94,.18);border-bottom:1px solid rgba(42,111,94,.18);border-radius:3px;background:#f6f9f3d1;box-shadow:6px 6px 14px #2a6f5e14}.builder-timeline-track{display:flex;align-items:center;gap:10px;overflow-x:auto;overflow-y:visible;padding:10px 2px 2px;scrollbar-width:none}.builder-timeline-track::-webkit-scrollbar{display:none}.builder-timeline-list{display:flex;align-items:stretch;gap:10px}.builder-timeline-item{position:relative;flex:0 0 auto;display:grid;grid-template-columns:minmax(76px,1fr) auto;align-items:center;gap:4px;min-width:94px}.builder-timeline-item:after{content:"";position:absolute;top:24px;right:-13px;width:16px;height:1px;background:#2a6f5e57}.builder-timeline-item:last-child:after{display:none}.builder-timeline-button,.builder-timeline-empty,.builder-timeline-add{appearance:none;border:none;cursor:pointer;font-family:Space Grotesk,Trebuchet MS,sans-serif;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background-color .18s ease}.builder-timeline-button{position:relative;display:grid;align-content:center;justify-items:center;gap:4px;min-height:68px;padding:20px 14px 10px;border-radius:18px;border:1px solid rgba(31,27,22,.1);background:#ffffffdb;box-shadow:var(--triad-shadow-soft);color:var(--triad-strong)}.builder-timeline-item.active .builder-timeline-button,.builder-timeline-item.previewing .builder-timeline-button{border-color:#2a6f5e52;background:#fffdf8f5;box-shadow:0 14px 24px #2a6f5e24}.builder-timeline-button:hover,.builder-timeline-empty:hover,.builder-timeline-add:hover{transform:translateY(-1px)}.builder-timeline-index{position:absolute;top:-12px;left:50%;transform:translate(-50%);display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:999px;border:2px solid rgba(246,244,239,.96);background:#286d58;box-shadow:0 8px 18px #2a6f5e38;color:#fffaf3;font-size:.82rem;font-weight:800}.builder-timeline-item.active .builder-timeline-index,.builder-timeline-item.previewing .builder-timeline-index{background:var(--triad-accent);color:var(--triad-chip-active-text)}.builder-timeline-chord{font-size:1.5rem;font-weight:800;line-height:1;letter-spacing:0}.builder-timeline-remove{appearance:none;position:absolute;top:4px;right:4px;width:24px;height:24px;border:1px solid rgba(31,27,22,.08);border-radius:999px;background:#ffffffad;color:#1f1b1680;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.builder-timeline-remove ion-icon{font-size:.9rem}.builder-timeline-reorder{color:#2a6f5e80;align-self:center;padding-inline:0 2px}.builder-timeline-add{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:58px;min-height:68px;border-radius:18px;border:1px dashed rgba(42,111,94,.34);background:#ffffff6b;color:#286d58}.builder-timeline-empty{flex:1 1 auto;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;justify-content:start;gap:12px;width:100%;min-height:68px;padding:10px 14px;border-radius:18px;border:1px dashed rgba(42,111,94,.34);background:#ffffff8f;color:#286d58;text-align:left;box-shadow:inset 0 1px #ffffff94}.builder-timeline-first-action{position:relative;justify-content:center;grid-template-columns:auto auto;gap:14px;min-height:76px;padding:12px 18px;border-color:#2a6f5e7a;background:#ffffff9e;box-shadow:inset 0 1px #ffffffa8,0 10px 22px #2a6f5e14}.builder-timeline-first-action:hover,.builder-timeline-first-action:focus-visible{border-color:#2a6f5ead;background:#ffffffc7}.builder-timeline-add-ring{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:999px;border:2px solid rgba(42,111,94,.68);background:#ffffffa3;color:#286d58;box-shadow:0 8px 18px #2a6f5e1f}.builder-timeline-add-ring ion-icon{font-size:1.35rem}.builder-timeline-empty-index{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;background:#2a6f5e29;color:#286d58;font-size:.86rem;font-weight:800}.builder-timeline-empty-label{font-size:1.05rem;font-weight:800;color:var(--triad-strong)}.builder-timeline-first-action .builder-timeline-empty-label{color:#286d58}.builder-timeline-add-symbol{font-size:1.7rem;line-height:1}.builder-timeline-card.compact .builder-timeline-track{align-items:stretch;overflow-x:visible;flex-wrap:wrap;padding-top:0}.builder-timeline-card.compact .builder-timeline-help{position:static;display:flex;justify-content:flex-end;margin-bottom:4px}.builder-timeline-card.compact .builder-timeline-list{flex:1 1 100%;width:100%;min-width:0;flex-wrap:wrap;gap:8px}.builder-timeline-card.compact .builder-timeline-item{flex:1 1 calc((100% - 24px)/4);max-width:calc((100% - 24px)/4);min-width:68px;grid-template-columns:minmax(0,1fr)}.builder-timeline-card.compact .builder-timeline-item:after{display:none}.builder-timeline-card.compact .builder-timeline-button{width:100%;min-height:56px;padding:18px 8px 10px;border-radius:16px}.builder-timeline-card.compact .builder-timeline-index{top:-10px;width:28px;height:28px;font-size:.76rem}.builder-timeline-card.compact .builder-timeline-chord{font-size:1.15rem}.builder-timeline-card.compact .builder-timeline-remove{top:-3px;right:-3px;width:22px;height:22px}.builder-timeline-card.compact .builder-timeline-reorder{position:absolute;left:50%;bottom:3px;transform:translate(-50%);opacity:.35}.builder-timeline-card.compact .builder-timeline-add{flex:1 1 100%;width:100%;min-height:42px;border-radius:15px}.builder-section{display:grid;gap:12px;padding:12px;border-radius:16px;border:1px solid rgba(31,27,22,.08);background:#ffffff9e;box-shadow:inset 0 1px #fff9}.builder-picker-section{min-height:260px;padding:16px;border-radius:20px;background:#ffffffc2;box-shadow:inset 0 1px #ffffffb8}.builder-section-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;padding:0;margin:0;border:0;background:transparent;box-shadow:none}.builder-heading-with-help{display:inline-flex;align-items:center;gap:8px}.builder-help-button{appearance:none;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;border:1px solid rgba(42,111,94,.18);background:#ffffffad;color:#286d58;box-shadow:var(--triad-shadow-soft);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.76rem;font-weight:800;line-height:1;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background-color .18s ease}.builder-help-button:hover{transform:translateY(-1px);border-color:#2a6f5e4d}.builder-section-head-compact{align-items:center}.builder-subsection-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px}.builder-subsection{display:grid;gap:8px;padding-top:10px;border-top:1px solid rgba(31,27,22,.08)}.builder-suggestions-subsection{padding-top:2px;border-top:0}.builder-section-title{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.96rem;font-weight:700;color:var(--triad-strong)}.builder-section-copy{max-width:58ch;font-size:.78rem;line-height:1.45;color:var(--triad-muted-strong)}.builder-empty-progression{padding:12px;border-radius:12px;border:1px dashed rgba(31,27,22,.14);background:#fffaf4bd;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.8rem;font-weight:700;line-height:1.45;color:var(--triad-muted-strong)}.builder-start-row{display:flex;align-items:center;justify-content:flex-start}.builder-start-copy{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.8rem;font-weight:700;color:var(--triad-strong)}.builder-step-list{display:grid;gap:10px}.builder-step-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:4px;border-radius:16px;border:1px solid transparent;background:#ffffffc7;box-shadow:var(--triad-shadow-soft)}.builder-step-item.active{border-color:#f29e4c57;background:#fff7e9fa}.builder-step-button{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;width:100%;padding:8px 10px;border:none;background:none;text-align:left;color:inherit}.builder-step-index{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:999px;background:#1f1b1614;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.78rem;font-weight:700;color:var(--triad-muted-strong)}.builder-step-content{display:grid;gap:2px;min-width:0}.builder-step-label{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.98rem;font-weight:700;color:var(--triad-strong)}.builder-step-meta{font-size:.74rem;color:var(--triad-muted-strong)}.builder-step-remove,.builder-step-add,.builder-suggestion-button,.builder-quality-button,.builder-root-button,.builder-more-chords-button,.builder-manual-toggle,.builder-secondary-button,.builder-primary-button{appearance:none;border:none;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background-color .18s ease,color .18s ease}.builder-step-remove{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:999px;border:1px solid rgba(31,27,22,.1);background:#fffaf4eb;color:var(--triad-muted-strong)}.builder-step-remove:hover,.builder-step-add:hover,.builder-suggestion-button:hover,.builder-quality-button:hover,.builder-root-button:hover,.builder-more-chords-button:hover,.builder-secondary-button:hover,.builder-primary-button:hover{transform:translateY(-1px)}.builder-step-reorder{color:var(--triad-muted);padding-inline:8px}.builder-step-add{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;border:1px solid rgba(31,27,22,.12);background:#fffaf4eb;box-shadow:var(--triad-shadow-soft);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.8rem;font-weight:700;color:var(--triad-strong)}.builder-step-add.active{border-color:#f29e4c61;background:#f29e4c2e}.builder-step-add:disabled,.builder-suggestion-button:disabled,.builder-quality-button:disabled,.builder-root-button:disabled,.builder-more-chords-button:disabled,.builder-secondary-button:disabled,.builder-primary-button:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.builder-suggestion-grid{display:flex;flex-wrap:wrap;gap:10px}.builder-suggestion-button{display:inline-flex;align-items:center;justify-content:center;min-width:56px;min-height:52px;padding:10px 14px;border-radius:18px;border:1px solid rgba(242,158,76,.26);background:linear-gradient(180deg,#fff8eefa,#fff2e3f5);box-shadow:var(--triad-shadow-soft);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1rem;font-weight:700;color:var(--triad-strong)}.builder-quality-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.builder-quality-button{min-height:44px;padding:9px 12px;border-radius:999px;border:1px solid rgba(31,27,22,.1);background:#ffffffbd;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.84rem;font-weight:700;color:var(--triad-muted-strong)}.builder-quality-button.active{border-color:#f29e4c66;background:var(--triad-accent);color:var(--triad-chip-active-text)}.builder-root-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.builder-root-button{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 8px;border-radius:12px;border:1px solid rgba(31,27,22,.1);background:#fffc;box-shadow:var(--triad-shadow-soft);text-align:center}.builder-root-button.active{border-color:#f29e4c66;background:#fff7e9fa}.builder-root-label{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1rem;font-weight:700;color:var(--triad-strong)}.builder-more-chords-button{display:inline-flex;align-items:center;justify-content:center;justify-self:start;gap:8px;min-height:46px;padding:9px 16px;border-radius:18px;border:1px solid rgba(31,27,22,.12);background:#ffffffb8;color:var(--triad-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.82rem;font-weight:700}.builder-manual-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;padding:0;background:none;color:var(--triad-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.96rem;font-weight:700}.builder-manual-panel{display:grid;gap:10px}.builder-manual-examples{display:flex;flex-wrap:wrap;gap:8px}.builder-manual-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.builder-secondary-button,.builder-primary-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 14px;border-radius:999px;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.82rem;font-weight:700}.builder-secondary-button{border:1px solid rgba(31,27,22,.12);background:#ffffffb8;color:var(--triad-strong)}.builder-primary-button{background:var(--triad-accent);color:var(--triad-chip-active-text);box-shadow:0 12px 24px #f29e4c3d}.builder-preview-tray{position:relative;bottom:auto;z-index:4;display:grid;gap:12px;margin-top:0;padding:12px 14px 14px;border-radius:24px;border:1px solid rgba(42,111,94,.18);background:linear-gradient(180deg,#e4eee0f0,#f1f6eef0);box-shadow:0 -10px 30px #2a6f5e1f,var(--triad-shadow-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.builder-preview-tray.empty{opacity:.96}.builder-preview-grabber{justify-self:center;width:54px;height:7px;border-radius:999px;background:#1f1b1629}.builder-preview-row{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px}.builder-preview-play{appearance:none;display:grid;justify-items:center;gap:5px;min-width:74px;border:0;background:none;color:#286d58;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.78rem;font-weight:700;cursor:pointer}.builder-preview-play ion-icon{width:52px;height:52px;padding:14px;border-radius:999px;border:2px solid rgba(42,111,94,.8);background:#ffffff5c;box-shadow:var(--triad-shadow-soft)}.builder-preview-play.active ion-icon{background:#286d58;color:#fffaf3}.builder-preview{display:grid;gap:10px;align-content:start;padding:12px;border-radius:16px;border:1px solid rgba(31,27,22,.08);background:#ffffffbd}.builder-preview-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px}.builder-preview-label{font-size:.72rem;letter-spacing:.04em;color:var(--triad-muted-strong);font-weight:700}.builder-preview-title{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.1rem;font-weight:700;color:var(--triad-strong)}.builder-preview-button{flex-shrink:0}.builder-preview-meta,.builder-preview-chords{display:flex;flex-wrap:wrap;gap:8px}.builder-preview-tray .builder-preview-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.builder-preview-meta-pill,.builder-preview-chord-pill{display:inline-flex;align-items:center;border-radius:999px;font-family:Space Grotesk,Trebuchet MS,sans-serif}.builder-preview-meta-pill{padding:5px 10px;border:1px solid rgba(31,27,22,.12);background:#fffaf4e6;font-size:.74rem;color:var(--triad-muted-strong)}.builder-preview-tray .builder-preview-meta-pill{justify-content:center;gap:8px;min-height:48px;padding:8px 12px;background:#fffaf4c7;box-shadow:var(--triad-shadow-soft);font-size:.82rem;font-weight:700;color:var(--triad-strong)}.builder-preview-meta-pill ion-icon{font-size:1rem;color:#2a6f5ed1}.builder-preview-chord-pill{padding:6px 12px;background:#1f1b1612;color:var(--triad-strong);font-size:.9rem;font-weight:700;transition:background-color .16s ease,color .16s ease}.builder-preview-chord-pill.active{background:var(--triad-accent);color:var(--triad-chip-active-text)}.builder-preview-empty{font-size:.86rem;line-height:1.45;color:var(--triad-muted-strong)}.builder-preview-note{font-size:.78rem;line-height:1.45;color:var(--triad-muted-strong)}.builder-save-button{margin:0;--border-radius: 999px;--background: #286d58;--background-hover: #22604d;--background-activated: #1d5544;--box-shadow: 0 16px 28px rgba(42, 111, 94, .28);--color: #fffaf3;min-height:56px;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-weight:800}.builder-help-modal{--background: rgba(17, 13, 10, .28);--backdrop-opacity: .32;--height: auto;align-items:flex-end}.builder-help-sheet{display:grid;gap:14px;width:100%;max-width:520px;margin:auto auto 0;padding:12px 18px calc(18px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0;border:1px solid rgba(42,111,94,.16);background:linear-gradient(180deg,#fffdf9fa,#f4f9f1fa);box-shadow:0 -20px 42px #1f1b1629;color:var(--triad-strong)}.builder-help-sheet-grabber{justify-self:center;width:52px;height:6px;border-radius:999px;background:#1f1b1629}.builder-help-title{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.12rem;font-weight:800;color:var(--triad-strong)}.builder-help-list{display:grid;gap:9px}.builder-help-item{padding:10px 12px;border-radius:14px;background:#ffffff9e;color:var(--triad-muted-strong);font-size:.9rem;line-height:1.35}.builder-help-dismiss{margin:2px 0 0;--border-radius: 999px;--background: #286d58;--background-hover: #22604d;--background-activated: #1d5544;--box-shadow: 0 12px 22px rgba(42, 111, 94, .2);--color: #fffaf3;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-weight:800}.builder-preview-normalized{padding:10px 12px;border-radius:12px;background:#1f1b160d;color:var(--triad-strong)}.builder-step-button:focus-visible,.builder-step-remove:focus-visible,.builder-step-add:focus-visible,.builder-suggestion-button:focus-visible,.builder-quality-button:focus-visible,.builder-root-button:focus-visible,.builder-more-chords-button:focus-visible,.builder-manual-toggle:focus-visible,.builder-secondary-button:focus-visible,.builder-primary-button:focus-visible,.builder-options-icon-button:focus-visible,.builder-preview-play:focus-visible,.builder-timeline-button:focus-visible,.builder-timeline-empty:focus-visible,.builder-timeline-add:focus-visible,.builder-timeline-remove:focus-visible,.builder-help-button:focus-visible,.progression-entry-pill:focus-visible{outline:2px solid rgba(242,158,76,.55);outline-offset:3px}.custom-progression-card{display:grid;gap:12px;padding:18px;border:1px solid rgba(42,111,94,.35);background:linear-gradient(135deg,#2a6f5e2e,#fff7edf5);box-shadow:0 20px 34px #2a6f5e2e;position:relative;overflow:hidden}.custom-progression-card:after{content:"";position:absolute;right:-48px;top:-64px;width:200px;height:200px;background:radial-gradient(circle,#f29e4c59,#f29e4c00);opacity:.75;pointer-events:none}.custom-progression-content,.custom-progression-actions{position:relative;z-index:1}.custom-progression-content{display:grid;gap:6px}.custom-progression-eyebrow{font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;color:var(--triad-muted-strong);font-weight:700}.custom-progression-title{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.25rem;font-weight:700;color:var(--triad-strong)}.custom-progression-copy{font-size:.9rem;color:var(--triad-muted-strong);line-height:1.4}.custom-progression-example{display:inline-flex;align-items:center;border-radius:999px;border:1px solid rgba(31,27,22,.12);background:#ffffffb3;padding:4px 10px;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.82rem;color:var(--triad-strong);justify-self:start}.custom-progression-button::part(native){box-shadow:0 12px 22px #2a6f5e47}.helper-text{font-size:.85rem;color:var(--triad-muted-strong);margin-bottom:12px;line-height:1.4}.section-title{font-size:1rem;text-transform:uppercase;letter-spacing:.08em;color:var(--triad-muted-strong);margin-bottom:8px;font-weight:600}.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.help-popover-button{width:36px;height:36px;border-radius:999px;border:1px solid rgba(31,27,22,.2);background:#1f1b160d;color:var(--triad-muted-strong);font-size:.75rem;font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;opacity:.78;transition:opacity .18s ease,border-color .18s ease,background-color .18s ease}.help-popover-button:hover{opacity:1;border-color:#1f1b1647}.help-popover-button:focus-visible{outline:2px solid rgba(242,158,76,.6);outline-offset:2px}.help-popover{--width: 260px;--max-width: 82vw;--background: var(--triad-panel);--box-shadow: var(--triad-shadow-soft)}.help-popover-content{padding:12px 14px;display:grid;gap:8px;color:var(--triad-strong)}.help-popover-title{font-size:.85rem;font-weight:700;color:var(--triad-strong)}.help-popover-body{font-size:.8rem;line-height:1.4;color:var(--triad-muted-strong)}.help-popover-list{margin:0;padding-left:16px;display:grid;gap:4px;font-size:.78rem;color:var(--triad-muted-strong)}.chord-display{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-bottom:12px}.practice-controls{display:grid;gap:8px;margin-top:8px}.practice-session-layout{display:grid;gap:14px;grid-template-areas:"main" "controls"}.practice-main-column{display:grid;gap:10px;grid-area:main}.practice-controls-panel{align-self:start;grid-area:controls;padding:0;background:transparent;border:none;box-shadow:none}.practice-controls-header-leading{display:flex;align-items:center;gap:8px}.practice-panel-collapse{width:44px;height:44px;border-radius:999px;border:1px solid rgba(31,27,22,.14);background:#ffffffb8;color:var(--triad-strong);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--triad-shadow-soft)}.practice-panel-collapse ion-icon{font-size:1rem}.practice-transport-row,.practice-settings-row,.practice-toggle-group{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.practice-settings-row{justify-content:space-between;gap:8px 10px;padding-top:2px}.practice-toggle-group{flex:1 1 260px}.practice-transport-button::part(native){min-width:96px;min-height:44px;box-shadow:none}.practice-transport-icon-button::part(native){min-width:52px;width:52px;padding-left:0;padding-right:0}.practice-transport-button-primary::part(native){box-shadow:0 8px 18px #2a6f5e29}.practice-section-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:2px}.practice-section-title{font-size:.92rem;letter-spacing:.01em;color:var(--triad-muted-strong);font-weight:700}.practice-controls-right{margin-left:auto;display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end;flex:1 1 280px}.practice-options-toggle{margin-left:auto}.practice-section-header-detailed{align-items:flex-start}.practice-section-copy-block{display:grid;gap:2px}.practice-section-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.practice-section-lead{max-width:60ch;font-size:.78rem;line-height:1.3;color:var(--triad-muted-strong)}.listen-strip{margin-top:8px;display:grid;gap:6px;padding:8px 10px;border-radius:12px;border:1px solid rgba(31,27,22,.12);background:#fff9}.listen-status{justify-self:start;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;padding:4px 10px;border-radius:999px;border:1px solid rgba(31,27,22,.12);background:#1f1b160f;color:var(--triad-muted-strong)}.listen-status.listen-pass{background:var(--triad-accent);border-color:transparent;color:var(--triad-chip-active-text)}.listen-status.listen-fail{background:#b13d3d29;border-color:#b13d3d4d;color:#b13d3d}.listen-status.listen-cooldown{background:#2a6f5e29;border-color:#2a6f5e4d;color:var(--triad-strong)}.listen-meter{width:100%;height:6px;border-radius:999px;background:#1f1b162e;overflow:hidden}.listen-meter-fill{display:block;height:100%;background:linear-gradient(90deg,#f29e4ce6,#2a6f5ed9);transition:width .12s ease}.listen-note{font-size:.78rem;color:var(--triad-muted-strong)}.listen-options{margin-top:12px;display:grid;gap:10px}.listen-slider{display:grid;gap:6px}.listen-calibration{margin-top:12px;display:grid;gap:8px;padding:10px 12px;border-radius:12px;border:1px solid rgba(31,27,22,.12);background:#1f1b160a}.calibration-overlay{position:fixed;inset:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:20px;background:#1f1b1666;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.calibration-card{width:min(420px,94vw);background:var(--triad-panel-gradient);border:1px solid var(--triad-panel-edge);border-radius:20px;box-shadow:var(--triad-shadow);padding:16px;display:grid;gap:14px}.intro-overlay{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:18px;background:#1f1b1673;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.voice-intro-banner{position:fixed;z-index:60;left:calc(12px + env(safe-area-inset-left));right:calc(12px + env(safe-area-inset-right));top:calc(76px + env(safe-area-inset-top));display:flex;justify-content:flex-end;pointer-events:none}.intro-card{width:min(360px,90vw);background:var(--triad-panel-gradient);border:1px solid var(--triad-panel-edge);border-radius:24px;box-shadow:var(--triad-shadow);padding:24px;display:grid;gap:18px;align-items:center;justify-items:center}.voice-intro-card{width:min(390px,100%);grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-items:stretch;padding:10px 12px;gap:6px 10px;border-radius:18px;text-align:left;pointer-events:auto}.voice-intro-kicker{display:none}.voice-intro-title{font-size:.92rem;font-weight:700;color:var(--triad-strong);line-height:1.15}.voice-intro-text{display:none}.voice-intro-actions{display:flex;justify-content:flex-end;gap:6px;flex-wrap:nowrap;grid-column:2;grid-row:1}.voice-intro-actions ion-button::part(native){min-height:44px;padding-left:10px;padding-right:10px}.loading-card{text-align:center}.loading-icon-wrap{width:120px;height:120px;border-radius:32px;background:#ffffffb3;border:1px solid rgba(31,27,22,.12);display:grid;place-items:center;box-shadow:var(--triad-shadow-soft)}.loading-icon{width:84px;height:84px;object-fit:contain;animation:triadPulse 1.4s ease-in-out infinite}.loading-monogram{display:grid;width:100%;height:100%;place-items:center;border-radius:inherit;background:linear-gradient(135deg,#2d7e652e,#f7a54933);color:var(--gtt-green-700);font-family:var(--font-display);font-size:clamp(2rem,9vw,3.8rem);font-weight:800;letter-spacing:0;animation:triadPulse 1.4s ease-in-out infinite}.loading-text{font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;color:var(--triad-muted-strong);font-weight:700}@keyframes triadPulse{0%,to{transform:scale(1);opacity:.92}50%{transform:scale(1.06);opacity:1}}.calibration-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.calibration-title{font-size:1rem;font-weight:700;color:var(--triad-strong)}.calibration-subtitle{font-size:.8rem;color:var(--triad-muted-strong)}.calibration-close{border:none;background:transparent;color:var(--triad-muted-strong);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;padding:2px 4px}.calibration-content{display:grid;gap:10px}.calibration-step-count{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--triad-muted-strong)}.calibration-step-title{font-size:1.2rem;font-weight:700;color:var(--triad-strong)}.calibration-chord{font-size:2.2rem;font-weight:700;color:var(--triad-strong)}.calibration-instruction{font-size:.85rem;color:var(--triad-muted-strong)}.calibration-countdown{font-size:2rem;font-weight:700;color:var(--triad-accent)}.calibration-recording{display:inline-flex;align-items:center;gap:8px;font-size:.85rem;font-weight:600;color:var(--triad-strong)}.calibration-dot{width:8px;height:8px;border-radius:999px;background:var(--triad-accent);box-shadow:0 0 0 6px #f29e4c33;animation:calibration-pulse 1.1s ease-in-out infinite}.calibration-progress{width:100%;height:6px;border-radius:999px;background:#1f1b1629;overflow:hidden}.calibration-progress-fill{display:block;height:100%;background:linear-gradient(90deg,#f29e4ce6,#2a6f5ed9);transition:width .2s ease}@keyframes calibration-pulse{0%{transform:scale(.9);opacity:.7}70%{transform:scale(1.2);opacity:1}to{transform:scale(.9);opacity:.7}}.practice-bpm,.practice-key{display:flex;align-items:center;gap:6px;min-height:46px;padding:4px 10px;border-radius:999px;border:1px solid var(--triad-chip-border);background:var(--triad-chip-bg);font-family:Space Grotesk,Trebuchet MS,sans-serif;transition:border-color .2s ease,box-shadow .2s ease}.practice-bpm:focus-within,.practice-key:focus-within{border-color:#f29e4ca6;box-shadow:0 0 0 3px #f29e4c29}.practice-bpm-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--triad-muted-strong);font-weight:600}.practice-bpm-input{width:64px;min-height:32px;border:none;outline:none;background:transparent;color:var(--triad-strong);font-size:.9rem;font-family:inherit;text-align:left}.practice-bpm-input::placeholder{color:var(--triad-muted-strong)}.practice-key-select{min-height:32px;border:none;outline:none;background:transparent;color:var(--triad-strong);font-size:.9rem;font-family:inherit;cursor:pointer}.practice-fretboard{margin-top:6px}.practice-progression{margin-top:0}.practice-section-badge{display:inline-flex;align-items:center;margin-bottom:10px;padding:6px 10px;border-radius:999px;border:1px solid rgba(31,27,22,.1);background:#fffaf4eb;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.78rem;font-weight:700;color:var(--triad-muted-strong)}.practice-footer{margin-top:12px;padding:8px 12px;border-radius:12px;border:1px solid rgba(31,27,22,.12);background:#1f1b160f;display:grid;gap:4px;box-shadow:var(--triad-shadow-soft)}.practice-footer-row{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline}.practice-footer-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--triad-muted-strong);font-weight:600;min-width:84px}.practice-footer-value{font-size:.9rem;color:var(--triad-strong)}.option-label{font-size:.76rem;letter-spacing:.02em;color:var(--triad-muted-strong);font-weight:700;margin-bottom:0}.option-header{display:flex;align-items:center;gap:6px;margin-bottom:6px}.option-help-button{width:36px;height:36px;border-radius:999px;border:1px solid rgba(31,27,22,.2);background:#1f1b160d;color:var(--triad-muted-strong);font-size:.7rem;font-weight:700;line-height:1;cursor:pointer;opacity:.72;transition:opacity .18s ease,border-color .18s ease,background-color .18s ease}.option-help-button:hover{opacity:1}.option-help-button:focus-visible{outline:2px solid rgba(242,158,76,.6);outline-offset:2px}.option-help-text{margin-top:4px;font-size:.8rem;color:var(--triad-muted-strong)}.option-fretboard{display:grid;gap:10px}.option-fretboard-visual{position:relative;border-radius:12px;border:1px solid rgba(31,27,22,.12);background:#1f1b160a;padding:26px 10px 12px;overflow:hidden;--fret-count: 16;background-image:linear-gradient(to right,rgba(31,27,22,.12) 1px,transparent 1px);background-size:calc(100% / var(--fret-count)) 100%}.option-fretboard-frets{position:absolute;top:6px;left:10px;right:10px;display:grid;grid-template-columns:repeat(var(--fret-count),minmax(0,1fr));font-size:.6rem;color:var(--triad-muted-strong);font-weight:600;letter-spacing:.04em;z-index:3;pointer-events:none}.option-fretboard-fret{text-align:center}.option-fretboard-fret.active{color:var(--triad-strong)}.option-fretboard-fret.inactive{opacity:.4}.option-fretboard-window{position:absolute;top:24px;bottom:6px;border-radius:8px;background:#f29e4c24;border:1px solid rgba(242,158,76,.6);z-index:1}.option-fretboard-strings{position:relative;z-index:2;display:grid;gap:8px}.option-fretboard-string{display:grid;grid-template-columns:20px 1fr;align-items:center;gap:8px}.option-fretboard-label{font-size:.65rem;font-weight:700;text-transform:uppercase;color:var(--triad-muted-strong)}.option-fretboard-line{height:2px;border-radius:999px;background:#1f1b1647}.option-fretboard-string.active .option-fretboard-label{color:var(--triad-strong)}.option-fretboard-string.active .option-fretboard-line{background:#1f1b1699;box-shadow:0 0 0 1px #1f1b161f}.option-fretboard-controls{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.range-slider{position:relative;height:26px;margin-top:6px}.range-slider-track{position:absolute;top:50%;left:0;right:0;height:6px;transform:translateY(-50%);border-radius:999px;background:#1f1b162e}.range-slider-range{position:absolute;top:50%;height:6px;transform:translateY(-50%);border-radius:999px;background:var(--triad-accent)}.range-slider-input{position:absolute;left:0;top:0;width:100%;height:26px;margin:0;background:transparent;pointer-events:none;-webkit-appearance:none;appearance:none}.range-slider-input::-webkit-slider-thumb{pointer-events:auto;-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--triad-accent);border:2px solid var(--triad-panel)}.range-slider-input::-moz-range-thumb{pointer-events:auto;width:16px;height:16px;border-radius:50%;background:var(--triad-accent);border:2px solid var(--triad-panel)}.range-slider-input::-moz-range-track{background:transparent}.range-slider-input.range-min{z-index:2}.range-slider-input.range-max{z-index:3}.chord-current{font-size:2.5rem;font-weight:700;color:var(--triad-strong)}.chord-next{font-size:1.4rem;color:var(--triad-muted-strong)}.fretboard-wrapper{margin-top:8px;background:var(--triad-fretboard);border-radius:var(--triad-radius);border:var(--triad-border);overflow:hidden;position:relative;box-shadow:var(--triad-shadow-soft)}.fretboard-svg{width:100%;height:220px}.string-label-pill{fill:var(--triad-panel);stroke:var(--triad-strong);stroke-width:1}.string-line.inactive{opacity:.35}.string-label.selectable{cursor:pointer}.string-label.inactive .string-label-pill{fill:var(--triad-panel);stroke:var(--triad-muted-strong)}.string-label-text{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.7rem;font-weight:700;fill:var(--triad-strong)}.string-label.inactive .string-label-text{fill:var(--triad-muted-strong);opacity:1}.string-label.open .string-label-pill{fill:var(--string-degree-color);stroke:var(--string-degree-color)}.string-label.open .string-label-text{fill:#fffaf3}.string-toggle-hit{fill:transparent;pointer-events:all;cursor:pointer}.note-dot{cursor:pointer;transition:opacity .2s ease}.note-hit-target{stroke:transparent;pointer-events:all}.note-dot.ghost{opacity:.25}.note-dot.next-ghost{opacity:.2}.note-dot.next-ghost circle{stroke:var(--triad-accent);stroke-width:1.5;stroke-dasharray:4 3}.note-dot.next-ghost .note-label{opacity:.65}.note-dot.overview-ghost .overview-dot{stroke-linecap:round}.overview-note{display:flex;flex-direction:column;gap:6px}.open-ring{fill:none;stroke:var(--triad-note-label);stroke-width:1.6;opacity:.6;stroke-dasharray:3 3}.note-dot.focused{opacity:1}.note-dot.focused circle:not(.note-hit-target){stroke:var(--triad-note-label);stroke-width:2}.note-label{font-size:.68rem;font-weight:700;fill:#fffaf3;stroke:#1f1b1673;stroke-width:.8;paint-order:stroke}.fret-zone{fill:transparent;pointer-events:none}.fret-zone.inactive{fill:#1f1b160f}.fret-toggle-hit{fill:transparent;pointer-events:all;cursor:pointer}.fretboard-watermark{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:54px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;fill:var(--triad-muted);opacity:.14;pointer-events:none}.fretboard-floating-label{position:absolute;transform:translate(-50%,-50%);pointer-events:none;z-index:2}.fretboard-floating-pill{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:2px 12px;border-radius:999px;background:#1f1b1633;border:1px solid rgba(255,255,255,.14);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-weight:700;color:var(--triad-strong);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}.chord-fade{position:relative;display:inline-block;line-height:1;text-align:inherit}.chord-layer{position:absolute;inset:0;width:100%;text-align:inherit;line-height:inherit;color:inherit;will-change:opacity}.chord-layer.fade-in{animation:chordFadeIn .26s ease-out forwards;opacity:0}.chord-layer.fade-out{animation:chordFadeOut .26s ease-in forwards;opacity:1}.chord-fade-spacer{visibility:hidden}@keyframes chordFadeIn{0%{opacity:0}to{opacity:1}}@keyframes chordFadeOut{0%{opacity:1}to{opacity:0}}.fret-label{font-size:.65rem;fill:var(--triad-fret-label);transition:opacity .15s ease,fill .15s ease}.fret-label.selectable{cursor:pointer}.fret-label.active{fill:var(--triad-strong);font-weight:700}.fret-label.inactive{opacity:.35}.fret-label.open-fret{font-size:.55rem;letter-spacing:.12em;font-weight:700;fill:var(--triad-muted-strong)}.fret-label.open-fret.active{fill:var(--triad-strong)}.fret-label.open-fret.inactive{opacity:.35}.filters-grid{display:grid;gap:12px}.filters-summary{font-size:.85rem;color:var(--triad-muted-strong)}.recommendations-grid{display:grid;gap:12px}.recommendation-card{appearance:none;-webkit-appearance:none;border:var(--triad-border);border-radius:16px;padding:14px 16px;background:#ffffff94;box-shadow:0 18px 30px #1f1b161f;display:grid;gap:8px;text-align:left;cursor:pointer;width:100%;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;color:inherit;font-family:inherit}.recommendation-card:focus-visible{outline:2px solid rgba(242,158,76,.8);outline-offset:2px}.recommendation-card:hover{transform:translateY(-1px);border-color:#f29e4c99;box-shadow:0 20px 32px #1f1b1629}.recommendation-card:active{transform:translateY(0)}.recommendation-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.recommendation-title{font-size:1.1rem;font-weight:700;color:var(--triad-strong)}.recommendation-roman{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--triad-muted-strong);font-weight:600}.recommendation-tags{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.recommendation-tag{font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--triad-strong);border:1px solid rgba(31,27,22,.18);background:#1f1b160f;border-radius:999px;padding:2px 8px}.recommendation-chords{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.2rem;font-weight:600;color:var(--triad-strong)}.recommendation-description{font-size:.85rem;color:var(--triad-muted-strong);line-height:1.4}.recommendation-meta{font-size:.75rem;color:var(--triad-muted-strong);text-transform:uppercase;letter-spacing:.08em;font-weight:600}.filters-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.filters-header .section-title{margin-bottom:0}.filters-options-toggle{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;padding:4px 12px;border-color:#f29e4c99;background:#f29e4c1f;color:var(--triad-strong)}.filter-row{display:flex;flex-wrap:wrap;gap:8px}.filter-chip-group{display:inline-flex;align-items:center;gap:6px}.filter-chip-group .help-popover-button{width:32px;height:32px;font-size:.65rem;flex-shrink:0;border-color:#f29e4c99;background:#f29e4c1f;color:var(--triad-strong)}.filter-chip-group .help-popover-button:hover{border-color:#f29e4cd9}.filter-chip{border-radius:999px;min-height:44px;padding:6px 12px;border:1px solid var(--triad-chip-border);background:var(--triad-chip-bg);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.82rem;cursor:pointer;transition:border-color .16s ease,background-color .16s ease}.filter-chip:hover{border-color:#f29e4c66}.filter-chip.active{background:var(--triad-accent);color:var(--triad-chip-active-text);border-color:transparent}.triad-card,.practice-options{margin-top:12px}.practice-options-group{border:var(--triad-border);border-radius:14px;padding:14px;display:grid;gap:12px;background:#ffffff8a}.practice-options-group+.practice-options-group{margin-top:16px}.practice-options-group-title{font-size:.82rem;letter-spacing:.02em;color:var(--triad-muted-strong);font-weight:700}.practice-options-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.practice-options-title{font-size:.92rem;letter-spacing:.02em;color:var(--triad-muted-strong);font-weight:700}.practice-options-close{border-radius:999px;min-height:44px;padding:6px 12px;border:1px solid var(--triad-chip-border);background:var(--triad-chip-bg);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.8rem;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background-color .16s ease}.practice-options-close:hover{border-color:#f29e4c66;transform:translateY(-1px)}.triad-card strong{font-family:Space Grotesk,Trebuchet MS,sans-serif}.focus-shell{min-height:calc(100vh - 24px);display:flex;flex-direction:column;gap:0}.fretboard-stack{position:relative}.fretboard-stack .fretboard-wrapper{margin-top:0;position:relative;z-index:1}.chord-badge,.chord-watermark{position:absolute;pointer-events:none}.chord-badge{top:12px;left:12px;z-index:3;background:#0f0c0a1a;border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:8px 12px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);min-width:120px}.chord-badge .focus-chord{font-size:2rem;line-height:1.05}.chord-badge .focus-next{font-size:1.2rem}.chord-badge.next{right:12px;left:auto;text-align:right}.chord-watermark{inset:0;display:flex;align-items:center;justify-content:center;z-index:2;font-size:clamp(3.5rem,10vw,6.5rem);font-weight:700;color:#1f1b161f;letter-spacing:.04em;text-transform:uppercase}.chord-watermark.next{justify-content:flex-end;align-items:flex-start;padding:16px 20px;font-size:clamp(1.6rem,5vw,2.8rem);color:#1f1b1633}.focus-panel{background:var(--triad-focus-panel);border:var(--triad-border);border-radius:var(--triad-radius);box-shadow:var(--triad-shadow);padding:12px 16px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.focus-panel.chord-strip-panel{padding:4px 10px;margin-top:-6px;margin-bottom:0;border-top-left-radius:0;border-top-right-radius:0;border-top:none}.focus-panel.focus-controls{padding-top:10px;margin-top:0}.focus-footer{margin-top:auto;display:grid;gap:10px}.focus-progression{padding:0 2px}.focus-progression .chord-strip{margin:0;width:100%}.focus-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.focus-label{text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;color:var(--triad-muted-strong);font-weight:600}.focus-chord{font-size:2.6rem;font-weight:700;color:var(--triad-strong)}.focus-next{font-size:1.4rem;color:var(--triad-muted-strong)}.focus-controls{display:grid;gap:12px}.chord-strip{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:#ffffffc7;border:1px solid rgba(31,27,22,.08)}.chord-strip.overlay{margin:4px 14px 0;width:calc(100% - 28px);box-sizing:border-box}.chord-strip-item{display:flex;flex-direction:column;gap:2px}.chord-strip-item.next{align-items:flex-end;text-align:right}.chord-strip-item.next .strip-chord{align-items:flex-end}.strip-chord{font-size:1.45rem;font-weight:700;color:var(--triad-strong);display:flex;flex-direction:column;gap:1px;align-items:flex-start}.strip-chord .chord-fade{line-height:1.05}.strip-inversion{font-size:.72rem;font-weight:600;color:var(--triad-muted-strong);letter-spacing:.02em}.strip-inversion-row{display:inline-flex;align-items:center;gap:4px}.chord-strip-item.next .strip-inversion-row{justify-content:flex-end}.strip-inversion-row .help-popover-button{width:16px;height:16px;font-size:.6rem;border-color:#f29e4c80;background:#f29e4c1f;color:var(--triad-strong)}.strip-action{min-height:44px;border:1px solid rgba(242,158,76,.4);border-radius:999px;padding:5px 11px;font-size:.7rem;font-weight:600;letter-spacing:.02em;background:#fffaf4e6;color:var(--triad-strong);transition:background-color .15s ease,opacity .15s ease}.strip-action.active{background:#f29e4c3d;box-shadow:0 0 0 1px #f29e4c4d}.strip-action:disabled{opacity:.5}.strip-action-header{padding:6px 12px;letter-spacing:.02em}.chord-strip.watermark .strip-chord{opacity:.78;letter-spacing:.02em}.chord-strip.both .strip-chord,.chord-strip.all .strip-chord{opacity:.9}.chord-strip-divider{width:1px;height:100%;background:#1f1b1633}.progression-strip-full{display:flex;grid-template-columns:none;gap:8px;overflow-x:auto;padding:8px;scroll-snap-type:x proximity}.progression-strip-step{flex:1 0 74px;min-width:74px;display:grid;gap:3px;padding:8px 10px;border:1px solid rgba(31,27,22,.08);border-radius:12px;background:#fffaf4c7;color:var(--triad-strong);scroll-snap-align:start}.progression-strip-step.current{border-color:#2a6f5e57;background:#2a6f5e1f;box-shadow:inset 0 0 0 1px #2a6f5e1f}.progression-strip-step.next{border-color:#f29e4c4d;background:#fff5e5db}.progression-strip-status{color:var(--triad-muted-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.58rem;font-weight:900;letter-spacing:.1em;line-height:1;text-transform:uppercase}.progression-strip-chord{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.28rem;font-weight:900;line-height:1;color:var(--triad-strong)}.progression-strip-detail{min-height:.78rem;color:var(--triad-muted-strong);font-size:.68rem;font-weight:800;line-height:1.1}.focus-options{display:grid;gap:8px}.focus-advanced{display:grid;gap:10px;padding:10px 12px;border-radius:12px;background:#1f1b161f;border:1px solid rgba(255,255,255,.08)}.focus-range{display:grid;gap:6px}.focus-toggle-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.focus-toggle-label{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;letter-spacing:.02em;color:var(--triad-muted-strong);font-weight:700;min-width:120px}.focus-toggle-group{display:flex;flex-wrap:wrap;gap:8px}.focus-meta{font-size:.95rem;color:var(--triad-strong)}.focus-buttons{display:flex;flex-wrap:wrap;gap:8px}.focus-note{font-size:.8rem;color:var(--triad-muted-strong)}.fretboard-wrapper.focus{box-shadow:0 18px 36px #1f1b161f}.fretboard-wrapper.focus .fretboard-svg{height:min(62vh,560px)}.range-stack{display:grid;gap:8px;margin-top:4px}.range-row{display:flex;align-items:center;gap:12px}.range-label{font-size:.75rem;color:var(--triad-muted-strong);font-weight:600;min-width:32px}input[type=range]{width:100%;accent-color:var(--triad-accent)}.library-list ion-item{--background: var(--triad-panel);margin-bottom:8px;border-radius:12px;--border-color: transparent}.library-scroll{display:flex;gap:12px;overflow-x:auto;padding:6px 2px 12px;margin:10px 0 12px;scroll-snap-type:x proximity}.library-section+.library-section{margin-top:12px}.library-shell{display:grid;gap:18px;width:min(100%,1240px);margin:0 auto}.library-shell>*,.library-panels,.library-section-block,.library-section{min-width:0}.library-hero{display:grid;gap:12px;align-items:start;padding:14px;border-radius:18px;border:1px solid rgba(31,27,22,.08);background:radial-gradient(circle at 12% 10%,rgba(242,158,76,.07),transparent 28%),linear-gradient(180deg,#ffffffe0,#fff9f2eb);box-shadow:var(--triad-shadow-soft)}.library-hero-copy{display:grid;gap:8px;max-width:34rem}.library-hero-kicker{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--triad-muted)}.library-hero-title{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:clamp(1.32rem,3vw,2rem);line-height:1.04;letter-spacing:0;color:var(--triad-strong);max-width:20ch}.library-hero-subtitle{max-width:46ch;font-size:.9rem;line-height:1.45;color:var(--triad-muted-strong)}.library-hero-actions{display:grid;gap:8px;justify-self:start;width:min(100%,680px)}.library-hero-action-note{max-width:38ch;font-size:.78rem;line-height:1.45;color:var(--triad-muted-strong)}.library-start-card{display:grid;width:100%;padding:10px;border-radius:22px;border:1px solid rgba(31,27,22,.08);background:linear-gradient(180deg,#ffffffe0,#fff9f2f0);box-shadow:var(--triad-shadow-soft)}.library-start-card .library-primary-action{margin:0}.library-start-card .library-primary-action::part(native){min-height:54px;border-radius:17px}.library-create-block{display:grid;gap:8px;min-width:0}.library-create-actions{display:grid;gap:10px}.library-create-card{box-sizing:border-box;min-width:0;width:100%;min-height:92px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;padding:18px;border-radius:18px;border:1px solid rgba(42,111,94,.16);background:linear-gradient(180deg,#e7f4ebdb,#f4f9f1f0);box-shadow:0 16px 30px #2a6f5e1f;color:var(--triad-strong);text-align:left;cursor:pointer}.library-create-card-explorer{background:linear-gradient(180deg,#fffaf4eb,#f8f1e7f0);border-color:#f29e4c33;box-shadow:0 14px 26px #674b301a}.library-create-card-tuner{background:linear-gradient(180deg,#eef6f9eb,#f6f8f0f5);border-color:#335d8333;box-shadow:0 14px 26px #335d831a}.library-create-card:hover{border-color:#2a6f5e42;box-shadow:0 18px 32px #2a6f5e29}.library-create-card:focus-visible{outline:2px solid rgba(42,111,94,.42);outline-offset:3px}.library-create-icon{width:54px;height:54px;border-radius:999px;background:#2a6f5e;color:#fffaf3;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 12px 22px #2a6f5e3d}.library-create-icon-tuner{background:#335d83;box-shadow:0 12px 22px #335d8338}.library-create-icon-secondary{background:#f29e4c;color:#1f1b16;box-shadow:0 12px 22px #f29e4c33}.library-create-icon ion-icon{font-size:1.45rem}.explorer-page{padding-bottom:calc(16px + env(safe-area-inset-bottom))}.explorer-shell{display:grid;gap:10px;width:min(100%,1120px);margin:0 auto}.explorer-toolbar{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:18px;border:1px solid rgba(42,111,94,.12);background:#fffaf4d1}.explorer-kicker{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.62rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#2a6f5e}.explorer-current{min-width:0;display:grid;gap:2px}.explorer-current h1{margin:0;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:clamp(1.7rem,7.5vw,2.45rem);line-height:1;color:var(--triad-strong)}.explorer-current p{margin:0;color:var(--triad-muted-strong);font-size:.78rem;font-weight:700;line-height:1.2}.explorer-quality-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.explorer-root-panel .explorer-quality-toggle{width:min(52vw,192px)}.explorer-root-button{min-height:40px;border:1px solid rgba(31,27,22,.12);border-radius:12px;background:#fffaf4e6;color:var(--triad-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.96rem;font-weight:800;cursor:pointer}.explorer-root-button.active{border-color:#2a6f5e6b;background:#2a6f5e1f;box-shadow:inset 0 0 0 1px #2a6f5e1a}.explorer-fretboard-panel{display:grid;gap:8px;padding:12px}.explorer-fretboard-panel .fretboard-wrapper{margin-top:0}.explorer-fretboard-panel .fretboard-svg{height:clamp(300px,58vw,520px)}.explorer-shape-nav{display:inline-grid;grid-template-columns:38px minmax(104px,auto) 38px;align-items:center;gap:4px;margin-left:auto;border-radius:999px;padding:4px;background:#2a6f5e1f;color:#2a6f5e}.explorer-shape-nav-button{--border-radius: 999px;--color: #2a6f5e;--padding-start: 0;--padding-end: 0;width:34px;height:34px;min-height:34px;margin:0}.explorer-shape-summary{display:grid;justify-items:center;gap:1px;min-width:104px;padding:0 4px;font-family:Space Grotesk,Trebuchet MS,sans-serif;line-height:1.05}.explorer-shape-count{font-size:.76rem;font-weight:800}.explorer-shape-inversion{color:var(--triad-muted-strong);font-size:.66rem;font-weight:700}.explorer-root-panel{display:grid;gap:8px;padding:10px 12px 12px;border-radius:18px;border:1px solid rgba(31,27,22,.08);background:#fffaf494}.explorer-root-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.explorer-root-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.key-explorer-tuning-notes{color:#2a6f5e;letter-spacing:0}.key-explorer-title{font-size:1rem}.key-explorer-fretboard-panel .fretboard-svg{height:clamp(280px,52vw,500px)}.key-explorer-shape-summary{min-width:140px}.key-explorer-panel-meta{color:var(--triad-muted-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.72rem;font-weight:800}.key-explorer-chord-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:6px}.key-explorer-chord-button{min-width:0;min-height:78px;display:grid;align-content:center;gap:3px;border:1px solid rgba(31,27,22,.12);border-radius:12px;padding:8px 6px;background:#fffaf4e0;color:var(--triad-strong);cursor:pointer;text-align:center}.key-explorer-chord-button.active{border-color:#2a6f5e6b;background:#2a6f5e1f;box-shadow:inset 0 0 0 1px #2a6f5e1a}.key-explorer-degree,.key-explorer-chord-name,.key-explorer-chord-meta{display:block;min-width:0;overflow-wrap:anywhere}.key-explorer-degree{color:#2a6f5e;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.68rem;font-weight:900;text-transform:uppercase}.key-explorer-chord-name{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.04rem;font-weight:900;line-height:1}.key-explorer-chord-meta{color:var(--triad-muted-strong);font-size:.62rem;font-weight:800;line-height:1.12}.toolbar-tune-button{min-width:0;--padding-start: 8px;--padding-end: 8px;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.78rem;font-weight:800;color:#2a6f5e}.tuner-page{padding-bottom:calc(24px + var(--ion-safe-area-bottom, 0px))}.tuner-shell{width:min(100%,980px);margin:0 auto;display:grid;gap:14px}.tuner-toolbar{align-items:center}.tuner-current h1{margin-bottom:4px}.tuner-title{font-size:1rem}.tuner-mode-control{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.tuner-warning{border:1px solid rgba(189,107,42,.2);border-radius:18px;padding:12px 14px;background:#fff6eaeb;color:#65452d;box-shadow:0 12px 24px #674b3014}.tuner-warning p{margin:3px 0 0;font-size:.84rem;line-height:1.35}.tuner-meter-panel{display:grid;gap:14px;padding:clamp(16px,4vw,24px)}.tuner-meter-status{min-height:70px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;border-radius:18px;padding:12px 16px;background:#fffaf4e6;border:1px solid rgba(31,27,22,.1)}.tuner-meter-status span{color:var(--triad-muted-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.86rem;font-weight:800}.tuner-meter-status strong{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:clamp(2.2rem,10vw,4.6rem);line-height:.95;color:var(--triad-strong);letter-spacing:0}.tuner-meter-status.tuner-in-tune{border-color:#2a6f5e57;background:#2a6f5e1f}.tuner-meter-status.tuner-flat,.tuner-meter-status.tuner-sharp{border-color:#f29e4c57;background:#fff8edf0}.tuner-meter{position:relative;height:74px;border-radius:999px;border:1px solid rgba(31,27,22,.12);background:linear-gradient(90deg,#335d8326,#fffaf4f2 42%,#2a6f5e2e,#fffaf4f2 58%,#bd6b2a26);overflow:hidden}.tuner-meter-zone{position:absolute;top:50%;transform:translateY(-50%);color:#1f1b167a;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.72rem;font-weight:900;text-transform:uppercase}.tuner-meter-zone-flat{left:18px}.tuner-meter-zone-sharp{right:18px}.tuner-meter-center{position:absolute;top:9px;bottom:9px;left:50%;width:3px;border-radius:999px;background:#2a6f5e;transform:translate(-50%)}.tuner-meter-needle{position:absolute;top:8px;bottom:8px;width:5px;border-radius:999px;background:#1f1b16;transform:translate(-50%);box-shadow:0 8px 18px #1f1b1633;transition:left 90ms ease-out}.tuner-readout{min-height:30px;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;color:var(--triad-muted-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.86rem;font-weight:800}.tuner-readout span:last-child{text-align:right}.tuner-readout strong{color:var(--triad-strong);font-size:1rem}.tuner-level{height:8px;border-radius:999px;background:#1f1b1614;overflow:hidden}.tuner-level span{display:block;height:100%;min-width:2px;border-radius:inherit;background:#335d83;transition:width 80ms ease-out}.tuner-actions,.tuner-guided-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px}.tuner-actions ion-button,.tuner-guided-actions ion-button{min-height:44px;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-weight:800}.tuner-actions ion-button.library-primary-action{--background: #2a6f5e;--background-hover: #245f51;--background-activated: #1f5448;--color: #fffaf3;--border-radius: 18px;--box-shadow: 0 14px 24px rgba(42, 111, 94, .2)}.tuner-actions ion-button.library-secondary-action{--color: #2a6f5e;--border-color: rgba(42, 111, 94, .42);--border-radius: 18px}.tuner-guided-actions ion-button{--color: #2a6f5e}.tuner-guided-panel,.tuner-advanced-panel{display:grid;gap:14px;padding:clamp(16px,4vw,22px)}.tuner-guided-main{min-height:112px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;border-radius:18px;background:#fffaf4db;border:1px solid rgba(31,27,22,.1);padding:16px}.tuner-string-badge{width:74px;height:74px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#2a6f5e;color:#fffaf3;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.9rem;font-weight:900;text-align:center}.tuner-guided-main h2{margin:0;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:clamp(2.5rem,14vw,5.4rem);line-height:.9;letter-spacing:0;color:var(--triad-strong)}.tuner-guided-main p{margin:7px 0 0;color:var(--triad-muted-strong);font-size:.84rem;font-weight:800}.tuner-step-list{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.tuner-step{min-width:0;min-height:64px;display:grid;place-items:center;gap:2px;border:1px solid rgba(31,27,22,.1);border-radius:14px;background:#fffaf4db;color:var(--triad-strong);cursor:pointer}.tuner-step span,.tuner-step strong{display:block;font-family:Space Grotesk,Trebuchet MS,sans-serif;line-height:1}.tuner-step span{color:var(--triad-muted-strong);font-size:.67rem;font-weight:900;text-transform:uppercase}.tuner-step strong{font-size:1.05rem;font-weight:900}.tuner-step.active{border-color:#2a6f5e6b;background:#2a6f5e1f}.tuner-step.complete{border-color:#335d833d;background:#eef6f9f0}.tuner-target-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tuner-target-card{min-width:0;min-height:92px;display:grid;align-content:center;gap:4px;border:1px solid rgba(31,27,22,.1);border-radius:14px;background:#fffaf4e0;color:var(--triad-strong);cursor:pointer;text-align:center}.tuner-target-card span,.tuner-target-card strong,.tuner-target-card em{display:block;min-width:0;overflow-wrap:anywhere;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-style:normal}.tuner-target-card span{color:var(--triad-muted-strong);font-size:.68rem;font-weight:900;text-transform:uppercase}.tuner-target-card strong{font-size:1.35rem;font-weight:900;line-height:1}.tuner-target-card em{color:var(--triad-muted-strong);font-size:.7rem;font-weight:800}.tuner-target-card.active{border-color:#2a6f5e6b;background:#2a6f5e1f}.tuner-target-card.closest{box-shadow:inset 0 0 0 2px #335d8333}.library-create-copy{min-width:0;display:grid;gap:4px}.library-create-title{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.16rem;font-weight:800;line-height:1.05}.library-create-subtitle{color:var(--triad-muted-strong);font-size:.85rem;line-height:1.35}.library-section-title{font-size:.84rem;letter-spacing:.01em;color:var(--triad-muted-strong);font-weight:700}.library-section-block{display:grid;gap:12px}.library-section-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px}.library-section-copy-block{display:grid;gap:3px}.library-section-copy{max-width:40ch;font-size:.82rem;line-height:1.45;color:var(--triad-muted-strong)}.library-section-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.library-section-actions{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap;justify-content:flex-end}.library-section-actions-saved{align-items:center}.library-section-meta{display:inline-flex;align-items:center;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--triad-muted-strong)}.library-panels{display:grid;gap:24px}.library-grid{display:grid;gap:12px;margin:8px 0 0;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.library-preset-grid{box-sizing:border-box;width:100%;min-width:0;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(min(158px,100%),1fr));padding:9px 0 6px;margin:6px 0 0}.library-grid .library-empty{grid-column:1 / -1}.library-session-list{margin-top:8px}.library-grid-sessions{margin-top:0}.library-card-user{background:linear-gradient(180deg,#ffffffeb,#f8f4edf5);border-color:#1f1b161a}.library-card-session .library-card-title{max-width:18ch;font-size:.96rem}.library-card-body-session{min-height:132px;padding:14px;gap:7px;align-content:start}.library-card{box-sizing:border-box;flex:0 0 min(260px,72vw);border-radius:20px;border:var(--triad-border);background:linear-gradient(180deg,#ffffffd6,#fff9f2eb);padding:0;display:grid;gap:0;box-shadow:var(--triad-shadow-soft);cursor:pointer;scroll-snap-align:start;overflow:hidden;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.library-grid .library-card,.library-preset-grid .library-card{flex:initial;width:100%}.library-card:hover{transform:translateY(-1px);border-color:#1f1b1629;box-shadow:0 12px 24px #1f1b1614}.library-card:focus-visible{outline:2px solid rgba(242,158,76,.5);outline-offset:2px}.library-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.library-card-title{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1.02rem;font-weight:700;letter-spacing:.01em;color:var(--triad-strong);min-width:0;flex:1 1 auto;line-height:1.1}.library-card-body{padding:16px;display:grid;gap:9px}.library-card-body-preset{min-height:126px;align-content:start}.library-preset-tile{background:linear-gradient(180deg,#f2ecdef0,#fffaf2f5);border-color:#8968412e}.library-preset-tile .library-card-body{padding:12px;gap:6px}.library-preset-tile .library-card-meta-name{font-size:.72rem}.library-preset-tile .library-card-chords.prominent{font-size:.98rem;line-height:1.1}.library-preset-tile .library-card-preview{width:34px;height:34px}.library-preset-tile .library-card-preview ion-icon{font-size:.84rem}.library-preset-tile:nth-child(3n+1){background:linear-gradient(180deg,#e7f4ebf0,#fafdf9f5);border-color:#2a6f5e2e}.library-preset-tile:nth-child(3n+2){background:linear-gradient(180deg,#fff3def0,#fffaf2f5);border-color:#af6f2c2e}.library-preset-tile:nth-child(3n){background:linear-gradient(180deg,#eaf1f8f0,#fafcfdf5);border-color:#4563802e}.library-card-chords{font-size:.85rem;color:var(--triad-muted-strong);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.library-card-chords.prominent{font-size:1.18rem;font-weight:700;color:var(--triad-strong);letter-spacing:.01em}.library-card-session .library-card-chords.prominent{font-size:1.08rem;line-height:1.1}.library-card-support,.library-card-description{font-size:.78rem;line-height:1.42;color:var(--triad-muted-strong)}.library-card-support-secondary{opacity:.88}.library-card-number{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.9rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--triad-muted)}.library-card-meta{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--triad-muted)}.library-card-meta-name{font-size:.82rem;font-weight:600;letter-spacing:.01em;text-transform:none;color:var(--triad-strong);min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.library-card-footer{display:grid;gap:8px}.library-preset-meta-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.library-card-tags{display:flex;flex-wrap:wrap;gap:6px}.library-card-tag{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.68rem;letter-spacing:.04em;background:#1f1b160d;color:var(--triad-strong)}.library-card-preview{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;border-radius:999px;border:1px solid rgba(31,27,22,.14);background:#ffffffad;color:var(--triad-strong);padding:0;cursor:pointer;transition:border-color .16s ease,background-color .16s ease}.library-card-preview:hover{border-color:#1f1b163d}.library-card-preview.active{background:#f29e4c2e;border-color:#f29e4c80}.library-card-preview ion-icon{font-size:1rem}.library-preset-chord-strip{display:flex;flex-wrap:wrap;gap:5px;overflow:hidden;padding-top:3px;margin-top:auto}.library-preset-chord-pill{flex:0 0 auto;min-width:27px;min-height:25px;display:inline-flex;align-items:center;justify-content:center;padding:3px 7px;border-radius:999px;border:1px solid rgba(31,27,22,.1);background:#ffffff94;color:var(--triad-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.72rem;font-weight:700;line-height:1}.library-card-actions{display:flex;flex-wrap:wrap;gap:6px}.library-card-action{display:inline-flex;align-items:center;border-radius:999px;border:1px solid var(--triad-chip-border);background:#ffffffa3;color:var(--triad-strong);font-size:.75rem;padding:0;cursor:pointer;width:44px;height:44px;justify-content:center}.library-card-action ion-icon{font-size:.9rem}.library-card-action.danger{color:#b13d3d;border-color:#b13d3d52}.library-empty{font-size:.82rem;line-height:1.45;color:var(--triad-muted-strong);padding:12px;border-radius:12px;border:1px dashed rgba(31,27,22,.12);background:#ffffff73}.library-primary-action::part(native){min-height:48px;border-radius:15px;font-size:.95rem;font-weight:700;letter-spacing:.01em;text-transform:none;box-shadow:0 14px 30px #2a6f5e2e}.library-primary-action-inline::part(native){min-height:42px;border-radius:14px;font-size:.86rem;padding-inline:14px;box-shadow:0 10px 20px #2a6f5e24}.builder-back-pill::part(native){min-height:34px;border-radius:999px;border:1px solid rgba(42,111,94,.2);background:#2a6f5e14;color:#2a6f5e;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.88rem;font-weight:700;letter-spacing:.01em;text-transform:none;padding-inline:9px 12px;box-shadow:0 5px 14px #1f1b160d}.builder-back-pill ion-icon{font-size:.98rem;margin-inline-end:2px}.library-inline-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;padding-top:2px}.library-inline-copy{font-size:.76rem;color:var(--triad-muted-strong)}.library-inline-link-group{display:flex;flex-wrap:wrap;gap:4px}.info-page{display:grid;gap:16px}.info-panel{display:grid;gap:18px}.info-eyebrow{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--triad-muted-strong)}.info-title{margin:0;font-size:clamp(1.8rem,4vw,2.4rem);color:var(--triad-strong)}.info-copy{margin:0;max-width:62ch;color:var(--triad-muted-strong);line-height:1.55}.info-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.info-card{display:grid;gap:8px;padding:16px;border-radius:16px;border:1px solid rgba(31,27,22,.08);background:#ffffffb8}.info-card h2{margin:0;font-size:1rem;color:var(--triad-strong)}.info-card p{margin:0;color:var(--triad-muted-strong);line-height:1.5}.info-list{margin:0;padding-left:18px;color:var(--triad-muted-strong)}.info-list li+li{margin-top:6px}.info-contact{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:1rem;font-weight:700}.info-actions{display:flex;flex-wrap:wrap;gap:10px}.info-link-button{display:inline-flex;align-items:center;gap:8px;border-radius:999px;border:1px solid rgba(31,27,22,.14);background:#fffc;color:var(--triad-strong);padding:10px 16px;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.9rem;font-weight:700;letter-spacing:.01em;text-decoration:none}.info-link-button:hover{transform:translateY(-1px)}.info-inline-link{color:var(--triad-strong);text-decoration:underline;text-decoration-color:#f29e4cb3;text-underline-offset:2px}.library-action{--padding-start: 16px;--padding-end: 16px;--padding-top: 12px;--padding-bottom: 12px;font-size:1.05rem;min-height:44px;min-width:44px}.library-action-icon{font-size:1.6rem}.library-info{cursor:pointer}.library-info:focus-visible{outline:2px solid rgba(242,158,76,.5);outline-offset:4px;border-radius:8px}.form-field{display:grid;gap:6px;margin-bottom:12px}.form-row{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;margin-bottom:12px}.form-row .form-field{margin-bottom:0}.form-toggle-field{align-content:end;justify-items:start}.form-toggle-field ion-toggle{justify-self:start}.form-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--triad-muted-strong)}.form-input,.form-textarea{width:100%;border-radius:12px;border:1px solid var(--triad-chip-border);background:var(--triad-chip-bg);color:var(--triad-strong);font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.95rem;padding:10px 12px;box-shadow:inset 0 1px #fff9;transition:border-color .2s ease,box-shadow .2s ease}.form-textarea{min-height:80px;resize:vertical}.form-input:focus,.form-textarea:focus{outline:none;border-color:#f29e4c99;box-shadow:0 0 0 3px #f29e4c29}.progression-input{font-family:Space Grotesk,Trebuchet MS,sans-serif}.progression-entry-help{margin-top:10px;display:grid;gap:10px;padding:12px;border-radius:14px;border:1px solid rgba(31,27,22,.08);background:#ffffff94}.progression-entry-copy{font-size:.8rem;line-height:1.45;color:var(--triad-muted-strong)}.progression-entry-copy code{font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.78rem;color:var(--triad-strong)}.progression-entry-examples{display:flex;flex-wrap:wrap;gap:8px}.progression-entry-pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;border:1px solid rgba(31,27,22,.1);background:#fffaf4eb;font-family:Space Grotesk,Trebuchet MS,sans-serif;font-size:.76rem;color:var(--triad-strong)}.progression-entry-normalized{display:grid;gap:8px}.progression-entry-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--triad-muted-strong);font-weight:700}.progression-entry-normalized-pill{background:#1f1b1614}.error-text{color:#b13d3d;font-size:.85rem;margin-top:6px}@media(min-width:768px){.builder-root-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.library-create-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.explorer-toolbar{padding:12px 14px}.explorer-root-strip{grid-template-columns:repeat(12,minmax(0,1fr))}.key-explorer-chord-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.fretboard-svg{height:360px}.library-shell{gap:22px}.library-hero{grid-template-columns:minmax(0,1fr) minmax(190px,.42fr);gap:clamp(16px,3vw,28px);align-items:center;padding:clamp(16px,2vw,22px);min-height:124px}.library-hero-actions{justify-self:end;align-self:stretch;align-content:center;width:min(100%,320px);padding-left:clamp(16px,3vw,32px);border-left:1px solid rgba(31,27,22,.1)}.library-section-actions-saved{justify-content:flex-end}.library-hero-title{max-width:20ch}.library-hero-subtitle{max-width:48ch}.library-hero-action-note{max-width:30ch}.practice-controls-right{justify-content:flex-end}.custom-progression-card{grid-template-columns:minmax(0,1fr) auto;align-items:center}.custom-progression-actions{min-width:240px;justify-self:end}.recommendations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.library-section-copy-block-preset .library-section-copy{max-width:40ch}}@media(max-width:430px){.toolbar-tune-button{--padding-start: 6px;--padding-end: 6px;font-size:0}.toolbar-tune-button ion-icon{margin-inline:0;font-size:1.25rem}.tuner-meter-status{min-height:64px;padding-inline:12px}.tuner-step-list{gap:5px}.tuner-step{min-height:56px;border-radius:12px}.tuner-target-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tuner-guided-main{grid-template-columns:minmax(0,1fr);text-align:center}.tuner-string-badge{justify-self:center}.explorer-root-panel .explorer-quality-toggle{width:min(56vw,178px)}.key-explorer-chord-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.key-explorer-chord-button{min-height:68px}.key-explorer-title{font-size:.9rem}}@media(orientation:landscape)and (max-height:520px){.triad-page.explorer-page{padding:6px calc(10px + env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) calc(10px + env(safe-area-inset-left))}.explorer-shell{width:100%;max-width:none;grid-template-columns:minmax(0,1fr) clamp(166px,21vw,188px);grid-template-areas:"summary selector" "map selector";gap:6px;align-items:start}.explorer-toolbar{grid-area:summary;padding:6px 8px;border-radius:14px}.explorer-kicker{display:none}.explorer-current h1{font-size:clamp(1.05rem,3vw,1.28rem)}.explorer-current p{font-size:.68rem}.explorer-fretboard-panel{grid-area:map;gap:4px;padding:7px;border-radius:14px}.explorer-fretboard-panel .practice-section-header{gap:6px}.explorer-fretboard-panel .fretboard-wrapper{margin-top:2px;border-radius:12px}.explorer-fretboard-panel .fretboard-svg{height:clamp(142px,20vw,178px)}.explorer-shape-nav{grid-template-columns:30px minmax(88px,auto) 30px;gap:2px;padding:3px}.explorer-shape-nav-button{width:28px;height:28px;min-height:28px}.explorer-shape-summary{min-width:88px;padding:0 2px}.explorer-shape-count{font-size:.68rem}.explorer-shape-inversion{font-size:.58rem}.explorer-root-panel{grid-area:selector;align-self:stretch;gap:4px;padding:5px;border-radius:14px}.explorer-root-panel-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:5px}.explorer-root-panel .practice-section-title{font-size:.78rem}.explorer-root-panel .explorer-quality-toggle{width:100%}.explorer-root-panel .filter-chip{min-height:28px;padding:3px 6px;font-size:.66rem}.explorer-root-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.explorer-root-button{height:27px;min-height:27px;padding:0 4px;border-radius:9px;font-size:.72rem}.key-explorer-shell{grid-template-columns:minmax(0,1fr) clamp(224px,31vw,300px)}.key-explorer-fretboard-panel .fretboard-svg{height:clamp(142px,20vw,178px)}.key-explorer-chord-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.key-explorer-chord-button{min-height:44px;border-radius:9px;padding:4px}.key-explorer-degree{font-size:.55rem}.key-explorer-chord-name{font-size:.78rem}.key-explorer-chord-meta,.key-explorer-panel-meta,.key-explorer-tuning-notes{display:none}}@media(min-width:1100px){.library-hero-title{font-size:clamp(1.75rem,2.4vw,2.35rem);max-width:20ch}.library-section-head{align-items:end}}@media(min-width:1024px)and (max-height:1100px){.practice-page{padding-top:8px;padding-bottom:calc(10px + env(safe-area-inset-bottom))}.practice-panel{padding:12px 14px 10px}.practice-controls{gap:6px;margin-top:6px}.practice-settings-row{padding-top:5px}.practice-section-header{margin-top:0}.listen-strip{padding:7px 10px}.practice-progression,.practice-fretboard{margin-top:4px}.fretboard-wrapper{margin-top:6px}.chord-strip{padding:8px 12px;gap:8px}.strip-chord{font-size:1.28rem}.strip-inversion{font-size:.68rem}.strip-action-header{padding:3px 9px;font-size:.62rem}.fretboard-svg{height:min(36vh,380px)}}@media(orientation:landscape)and (max-height:500px)and (max-width:950px){ion-content::part(scroll){scroll-padding-bottom:calc(72px + env(safe-area-inset-bottom))}.builder-page{padding-top:6px;padding-left:calc(12px + env(safe-area-inset-left));padding-right:calc(12px + env(safe-area-inset-right));padding-bottom:calc(76px + env(safe-area-inset-bottom))}.practice-page{padding-top:6px;padding-left:calc(8px + env(safe-area-inset-left));padding-right:env(safe-area-inset-right);padding-bottom:calc(76px + env(safe-area-inset-bottom))}.practice-page.voice-intro-visible{padding-top:70px}.progression-builder-stack{min-height:auto;gap:8px;padding-bottom:8px}.builder-timeline-card.empty{padding:12px}.builder-timeline-track{min-height:84px}.builder-panel{padding:10px}.builder-grid{gap:8px}.builder-picker-section{min-height:auto;padding:12px}.builder-root-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.builder-root-button{min-height:44px;padding:8px 6px}.builder-preview-tray{padding:10px 12px 12px;border-radius:18px}.builder-preview-grabber{height:5px}.builder-preview-row{gap:10px}.practice-session-layout{grid-template-columns:minmax(0,1fr) minmax(176px,188px);grid-template-areas:"main controls";gap:6px;align-items:start}.practice-controls-panel{grid-column:auto;grid-row:auto;max-height:calc(100dvh - 76px - env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;padding:4px 7px calc(6px + env(safe-area-inset-bottom));justify-self:end;scrollbar-width:thin}.practice-controls-panel.collapsed{padding:8px 4px;width:52px;min-width:52px;overflow:visible}.practice-main-column{gap:3px;min-width:0}.practice-controls-panel .practice-section-header{margin-top:0}.practice-session-layout.controls-collapsed{grid-template-columns:minmax(0,1fr) 52px;gap:2px}.practice-session-layout.controls-collapsed .practice-controls-header-actions,.practice-session-layout.controls-collapsed .practice-controls-header-leading{width:100%;justify-content:center}.practice-session-layout.controls-collapsed .practice-panel-collapse{width:44px;height:44px}.practice-controls{gap:2px;margin-top:2px}.practice-transport-row,.practice-toggle-group,.practice-controls-right{display:grid;gap:2px;width:100%}.practice-toggle-group,.practice-controls-right{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-transport-row{grid-template-columns:repeat(3,minmax(0,1fr))}.practice-settings-row{display:grid;gap:2px;padding-top:2px;align-items:stretch}.practice-controls-right{margin-left:0;flex:initial;justify-content:stretch}.practice-controls-panel ion-button{width:100%;font-size:.68rem}.practice-controls-panel .practice-toggle-group ion-icon{margin-inline-start:0;margin-inline-end:3px;transform:translate(1px)}.practice-transport-button::part(native),.practice-controls-panel ion-button::part(native){min-width:0;min-height:44px;padding-left:4px;padding-right:4px}.practice-transport-icon-button::part(native){width:100%}.practice-key,.practice-bpm{min-height:44px;width:100%;min-width:0;gap:4px;padding:4px 8px;justify-content:space-between}.practice-key-select,.practice-bpm-input{min-width:0;width:100%;font-size:.8rem}.practice-options-toggle{margin-left:0;grid-column:1 / -1}.practice-section-header-detailed{gap:6px}.practice-section-lead{display:none}.practice-section-actions{gap:6px}.practice-progression,.practice-fretboard{margin-top:2px}.fretboard-wrapper{margin-top:4px}.chord-strip{padding:4px 8px;gap:6px}.strip-chord{font-size:1rem}.strip-inversion{font-size:.58rem}.strip-action-header{padding:2px 8px;font-size:.58rem}.listen-strip{margin-top:4px;padding:6px 8px}.listen-note{font-size:.72rem}.practice-section-header .help-popover-button{width:36px;height:36px}.fretboard-svg{height:172px}.voice-intro-banner{left:calc(8px + env(safe-area-inset-left));right:calc(8px + env(safe-area-inset-right));top:calc(64px + env(safe-area-inset-top));justify-content:flex-end}.voice-intro-card{width:min(330px,44vw)}}@media(min-width:900px){.builder-grid.has-preview{grid-template-columns:minmax(0,1.35fr) minmax(280px,.95fr)}.builder-root-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.builder-preview{min-height:100%}}@media(min-width:1024px){.practice-section-lead-nowrap-landscape{white-space:nowrap;max-width:none}.fretboard-svg{height:min(52vh,520px)}}@media(prefers-color-scheme:dark){:root{--triad-accent: #f7b267;--triad-accent-strong: #f7b267;--triad-muted: #cbb6a8;--triad-muted-strong: #e4d6c9;--triad-strong: #f3ede6;--triad-panel: #1f1915;--triad-focus-panel: rgba(31, 25, 21, .92);--triad-panel-gradient: linear-gradient(180deg, rgba(31, 25, 21, .98), rgba(24, 19, 16, .96));--triad-panel-edge: rgba(243, 237, 230, .08);--triad-shadow: 0 20px 34px rgba(0, 0, 0, .36);--triad-shadow-soft: 0 10px 22px rgba(0, 0, 0, .3);--triad-border: 1px solid rgba(243, 237, 230, .08);--triad-fretboard: #191410;--triad-fretline: rgba(243, 237, 230, .18);--triad-string: rgba(243, 237, 230, .4);--triad-fret-label: #d3c1b4;--triad-toolbar: #1d1712;--triad-chip-bg: #241d18;--triad-chip-border: rgba(243, 237, 230, .14);--triad-chip-active-text: #1a1410;--triad-note-label: #f3ede6}body{background:radial-gradient(circle at top,#1b1511,#14100d 55%,#0f0c0a);color:var(--triad-strong)}ion-alert{--background: #1f1915;--backdrop-opacity: .7;--color: var(--triad-strong);--ion-text-color: var(--triad-strong);--ion-color-step-850: var(--triad-strong);--ion-color-step-650: var(--triad-muted-strong);--ion-color-step-550: var(--triad-muted);--ion-color-step-150: rgba(243, 237, 230, .14);--ion-color-step-100: rgba(243, 237, 230, .1);--ion-color-step-50: rgba(243, 237, 230, .06);--ion-color-primary: #57b39b;--ion-color-primary-shade: #4d9e88;--ion-color-primary-tint: #7fcab8;--button-color: #57b39b;--button-color-hover: #7fcab8;--button-color-focused: #7fcab8;--button-color-activated: #7fcab8;color:var(--triad-strong)}.chord-badge{background:#0a0807a6;border-color:#f3ede61f}.chord-strip{background:#0a0807a6;border-color:#f3ede61a}.open-tuning-selector{border-color:#f3ede624;background:#0a08079e;color:var(--triad-strong);box-shadow:0 10px 22px #00000047}.open-tuning-selector:focus-within{border-color:#7fcab880;box-shadow:0 0 0 3px #57b39b2e}.open-tuning-selector-label,.open-tuning-selector-notes{color:#f3ede6b8}.open-tuning-selector-select{color:var(--triad-strong)}.open-tuning-selector-select option{background:#1f1915;color:var(--triad-strong)}.open-tuning-page-selector{border-color:#57b39b47;background:linear-gradient(180deg,#182c25eb,#121d19f5);box-shadow:0 14px 28px #00000057}.open-tuning-page-selector-title{color:#f3ede6ad}.open-tuning-page-selector-notes{color:var(--triad-strong)}.open-tuning-page-selector .open-tuning-selector{border-color:#f3ede624;background:#0a080794}.open-tuning-tune-action{border-color:#7fcab857;background:#57b39b;color:#101816;box-shadow:0 12px 24px #57b39b29}.key-explorer-page .explorer-toolbar,.tuner-page .explorer-toolbar{border-color:#57b39b38;background:linear-gradient(180deg,#182c25eb,#121d19f5);color:var(--triad-strong)}.key-explorer-page .explorer-kicker,.tuner-page .explorer-kicker,.key-explorer-page .key-explorer-tuning-notes,.tuner-page .key-explorer-tuning-notes{color:#7fcab8}.key-explorer-page .explorer-current p,.tuner-page .explorer-current p,.key-explorer-panel-meta,.key-explorer-chord-meta,.tuner-readout,.tuner-meter-status span,.tuner-guided-main p,.tuner-step span,.tuner-target-card span,.tuner-target-card em{color:#f3ede6bd}.key-explorer-page .explorer-root-panel{border-color:#f3ede61a;background:#0a08079e}.key-explorer-chord-button,.tuner-meter-status,.tuner-guided-main,.tuner-step,.tuner-target-card{border-color:#f3ede61f;background:#101613eb;color:var(--triad-strong)}.key-explorer-chord-button.active,.tuner-meter-status.tuner-in-tune,.tuner-step.active,.tuner-target-card.active{border-color:#57b39b6b;background:#57b39b2e;box-shadow:inset 0 0 0 1px #57b39b1a}.tuner-meter-status.tuner-flat,.tuner-meter-status.tuner-sharp{border-color:#f7b26757;background:#3b2716db}.key-explorer-degree{color:#7fcab8}.tuner-warning{border-color:#f7b26738;background:#322013db;color:var(--triad-strong)}.tuner-meter{border-color:#f3ede624;background:linear-gradient(90deg,#335d835c,#f3ede61f 42%,#57b39b61,#f3ede61f 58%,#f7b26752)}.tuner-meter-zone{color:#f3ede6b3}.tuner-meter-center{background:#7fcab8}.tuner-meter-needle{background:#f3ede6;box-shadow:0 8px 18px #0000005c}.tuner-readout strong,.tuner-meter-status strong,.tuner-guided-main h2,.tuner-step strong,.tuner-target-card strong{color:var(--triad-strong)}.tuner-level{background:#f3ede61a}.tuner-level span{background:#7fcab8}.tuner-step.complete{border-color:#335d8357;background:#335d8333}.tuner-target-card.closest{box-shadow:inset 0 0 0 2px #7fcab83d}.tuner-actions ion-button.library-secondary-action,.tuner-guided-actions ion-button{--color: #7fcab8;--border-color: rgba(127, 202, 184, .42)}.chord-strip-divider{background:#f3ede61f}.progression-strip-full{background:#0a080794;border-color:#f3ede61a}.progression-strip-step{border-color:#f3ede61c;background:#f3ede614;color:var(--triad-strong)}.progression-strip-step.current{border-color:#57b39b70;background:#57b39b29;box-shadow:inset 0 0 0 1px #57b39b1f}.progression-strip-step.next{border-color:#f7b26761;background:#f7b26724}.progression-strip-status,.progression-strip-detail{color:#f3ede6b8}.chord-watermark{color:#f3ede614}.chord-watermark.next{color:#f3ede629}.recommendation-card{background:#0e0b09b3;box-shadow:0 18px 30px #0006}.builder-status-chip{background:#f3ede614;border-color:#f3ede624}.builder-key-label{background:#57b39b29;color:#7fcab8}.builder-count-chip{background:#f3ede60f}ion-button[disabled],ion-button.button-disabled{--background: rgba(243, 237, 230, .09);--background-hover: rgba(243, 237, 230, .09);--background-activated: rgba(243, 237, 230, .09);--border-color: rgba(243, 237, 230, .12);--color: rgba(243, 237, 230, .62);--color-activated: rgba(243, 237, 230, .62);--color-focused: rgba(243, 237, 230, .62);--color-hover: rgba(243, 237, 230, .62)}.builder-example,.builder-preview-meta-pill{background:#0a0807b3;border-color:#f3ede629}.builder-timeline-card{border-color:#57b39b38;background:linear-gradient(180deg,#1d2e27c7,#141c18d1);box-shadow:0 16px 30px #00000057}.builder-timeline-button{background:#0a0807bd;border-color:#f3ede61f;color:var(--triad-strong)}.builder-timeline-item.active .builder-timeline-button,.builder-timeline-item.previewing .builder-timeline-button{background:#101b17eb;border-color:#57b39b5c;box-shadow:0 14px 24px #00000052}.builder-timeline-index{border-color:#181310f0;background:#57b39b;color:#101816}.builder-timeline-item.active .builder-timeline-index,.builder-timeline-item.previewing .builder-timeline-index{background:var(--triad-accent);color:var(--triad-chip-active-text)}.builder-timeline-item:after{background:#57b39b4d}.builder-timeline-remove,.builder-timeline-empty,.builder-timeline-add{background:#0a08077a;border-color:#f3ede624;color:var(--triad-muted-strong)}.builder-timeline-card.empty{background:linear-gradient(180deg,#1d2e27ad,#141c18c2)}.builder-timeline-card.empty:after{border-color:#57b39b38;background:#141c18d1;box-shadow:6px 6px 14px #00000038}.builder-timeline-first-action{background:#0a08076b;border-color:#7fcab857;box-shadow:inset 0 1px #f3ede60f,0 10px 22px #0003}.builder-timeline-first-action:hover,.builder-timeline-first-action:focus-visible{border-color:#7fcab88a;background:#101b179e}.builder-timeline-add-ring{border-color:#7fcab894;background:#57b39b1f;color:#7fcab8}.builder-timeline-empty-index{background:#57b39b2e;color:#7fcab8}.builder-timeline-empty-label{color:var(--triad-strong)}.builder-timeline-first-action .builder-timeline-empty-label{color:#7fcab8}.builder-timeline-reorder{color:#f3ede66b}.builder-help-button{background:#0a080794;border-color:#f3ede624;color:#7fcab8}.builder-back-pill::part(native){background:#57b39b24;border-color:#7fcab847;color:#7fcab8;box-shadow:0 8px 16px #0003}.builder-help-sheet{border-color:#57b39b33;background:linear-gradient(180deg,#1f1915fa,#161f1bfa);box-shadow:0 -20px 42px #00000061}.builder-help-sheet-grabber{background:#f3ede62e}.builder-help-item{background:#0a080775;color:var(--triad-muted-strong)}.builder-help-dismiss{--background: #57b39b;--background-hover: #7fcab8;--background-activated: #4d9e88;--color: #101816}.builder-preview{border-color:#f3ede61a;background:linear-gradient(180deg,#f3ede60d,#f7b2671a)}.builder-section{border-color:#f3ede61a;background:#0a080747}.builder-picker-section{background:#0a080761}.builder-settings-card,.builder-more-options-panel{border-color:#f3ede61a;background:#0a080757}.builder-tempo-strip{background:#0a08079e;border-color:#f3ede624}.builder-tempo-input{background:#f3ede614}.builder-options-icon-button{background:#0a08079e;border-color:#f3ede624;color:var(--triad-strong)}.builder-more-options-divider{background:#f3ede61a}.builder-subsection{border-top-color:#f3ede61a}.builder-section-head{border-color:transparent;background:transparent}.builder-empty-progression,.builder-picker-preview,.builder-step-item,.builder-quality-button,.builder-root-button,.builder-more-chords-button,.builder-secondary-button{background:#0a08078c;border-color:#f3ede61f}.builder-step-item.active,.builder-root-button.active{background:#f7b26729;border-color:#f7b26761}.builder-step-index,.builder-preview-normalized{background:#f3ede614}.builder-step-add,.builder-suggestion-button,.progression-entry-pill{background:#0a0807b3;border-color:#f3ede629}.builder-preview-tray{border-color:#57b39b33;background:linear-gradient(180deg,#182822f0,#101815f5);box-shadow:0 -10px 30px #00000052}.builder-preview-grabber{background:#f3ede62e}.builder-preview-play{color:#7fcab8}.builder-preview-play ion-icon{border-color:#7fcab8b8;background:#0a080770}.builder-preview-play.active ion-icon{background:#57b39b;color:#101816}.builder-preview-tray .builder-preview-meta-pill{background:#0a08078f;border-color:#f3ede624;color:var(--triad-strong)}.builder-preview-meta-pill ion-icon{color:#7fcab8}.builder-save-button{--background: #57b39b;--background-hover: #7fcab8;--background-activated: #4d9e88;--color: #101816;--box-shadow: 0 16px 28px rgba(87, 179, 155, .2)}.builder-step-remove{background:#0a08078c;border-color:#f3ede624}.builder-step-reorder{color:#f3ede68c}.builder-primary-button{box-shadow:0 14px 24px #f7b26733}.practice-section-badge{background:#0a0807b3;border-color:#f3ede624}.strip-action{background:#0a08079e;border-color:#f7b26757;color:var(--triad-strong)}.strip-action.active{background:#f7b26733;border-color:#f7b26775}.strip-action:disabled{opacity:1;background:#f3ede60d;border-color:#f3ede61f;color:#f3ede673}.progression-entry-help{border-color:#f3ede61a;background:#0a08074d}.progression-entry-pill{background:#f3ede614;border-color:#f3ede624}.builder-preview-chord-pill{background:#f3ede614}.custom-progression-card{border-color:#57b39b80;background:linear-gradient(135deg,#57b39b38,#181310f5);box-shadow:0 22px 34px #00000073}.library-start-card{border-color:#f3ede61a;background:linear-gradient(180deg,#1f1915eb,#14100de6);box-shadow:var(--triad-shadow-soft)}.library-create-card{border-color:#57b39b38;background:linear-gradient(180deg,#1a362eeb,#141f1bf0);box-shadow:0 18px 30px #00000057}.library-create-icon{background:#57b39b;color:#101816;box-shadow:0 12px 22px #57b39b29}.custom-progression-card:after{background:radial-gradient(circle,#f7b26747,#f7b26700)}.custom-progression-example{background:#0a0807b3;border-color:#f3ede633}.string-label-pill{fill:var(--triad-panel);stroke:var(--triad-strong)}.string-label.open .string-label-pill{fill:var(--string-degree-color);stroke:var(--string-degree-color)}.string-label.open .string-label-text{fill:#fffaf3}.recommendation-tag{background:#f3ede61a;border-color:#f3ede638;color:var(--triad-strong)}.option-help-button{border-color:#f3ede638;background:#f3ede614;color:var(--triad-muted-strong)}.library-section-badge{background:#0a08079e;border-color:#f3ede624}.library-hero{border-color:#f3ede614;background:radial-gradient(circle at 14% 12%,rgba(247,178,103,.12),transparent 30%),linear-gradient(180deg,#1f1915f5,#181310fa);box-shadow:0 18px 30px #00000052}.library-card-user{background:linear-gradient(180deg,#14100de6,#1f1915f5)}.library-card-preset{background:linear-gradient(180deg,#221b15eb,#1c1612fa);border-color:#f7b26738}.library-preset-tile:nth-child(3n+1){background:linear-gradient(180deg,#18322bf5,#141f1bfa);border-color:#57b39b3d}.library-preset-tile:nth-child(3n+2){background:linear-gradient(180deg,#302316f5,#1f1811fa);border-color:#f7b26742}.library-preset-tile:nth-child(3n){background:linear-gradient(180deg,#19242ff5,#141a20fa);border-color:#84a9ca3d}.library-card-tag{background:#f3ede61a;color:var(--triad-strong)}.library-preset-chord-pill{background:#0a080761;border-color:#f3ede61f}.library-card-preview{background:#0a08079e;border-color:#f3ede624;color:var(--triad-strong)}.library-card-preview.active{background:#f7b2672e;border-color:#f7b26775}.option-fretboard-visual{border-color:#f3ede61f;background:#0a080766;background-image:linear-gradient(to right,rgba(243,237,230,.14) 1px,transparent 1px)}.option-fretboard-window{background:#f7b26729;border-color:#f7b2678c}.option-fretboard-line{background:#f3ede63d}.option-fretboard-string.active .option-fretboard-line{background:#f3ede699;box-shadow:0 0 0 1px #f3ede61f}.filters-options-toggle{background:#f7b26729;border-color:#f7b26799;color:var(--triad-strong)}.practice-options-group{background:#f3ede60a}.focus-advanced{background:#0a0807a6;border-color:#f3ede61a}.fretboard-floating-pill{background:#0a0807bf;border-color:#f3ede629}.fretboard-watermark{opacity:.18;fill:var(--triad-strong)}.range-slider-track{background:#f3ede61f}.practice-footer{border-color:#f3ede61a;background:#f3ede60a}.listen-strip{border-color:#f3ede61f;background:#f3ede60f}.listen-status{border-color:#f3ede629;background:#f3ede614;color:var(--triad-muted-strong)}.listen-status.listen-fail{color:#f0b1b1;border-color:#f0b1b159;background:#f0b1b11f}.listen-meter{background:#f3ede629}.practice-bpm,.practice-key{box-shadow:inset 0 1px #ffffff0f}.practice-settings-row{border-top-color:#f3ede614}.form-input,.form-textarea{box-shadow:inset 0 1px #ffffff14}ion-toolbar{--border-color: rgba(243, 237, 230, .08)}.library-empty{background:#0a08076b;border-color:#f3ede61f}}.dev-debug-toggle{position:fixed;right:16px;bottom:16px;z-index:20000;border:none;border-radius:999px;background:#1e1e1ee6;color:#f2f2f2;font-size:12px;padding:8px 12px;letter-spacing:.02em}.dev-debug-panel{position:fixed;right:16px;bottom:56px;z-index:20000;width:min(360px,calc(100vw - 32px));max-height:min(60vh,520px);overflow:auto;background:#121212f0;color:#f5f5f5;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.4}.dev-debug-title{font-weight:600;margin-bottom:8px;letter-spacing:.04em;text-transform:uppercase}.dev-debug-section+.dev-debug-section{margin-top:10px;padding-top:8px;border-top:1px solid rgba(255,255,255,.08)}.dev-debug-section-title{font-weight:600;margin-bottom:6px;color:#ffffffb8}.dev-debug-row{display:flex;justify-content:space-between;gap:12px;padding:2px 0}.dev-debug-log{display:flex;flex-direction:column;gap:4px;max-height:180px;overflow:auto;padding:6px 8px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#00000059;font-size:11px;white-space:pre-wrap;word-break:break-word}.dev-debug-log-entry{opacity:.9}@media(prefers-color-scheme:dark){.purchase-sheet{background:linear-gradient(180deg,#1f1915fa,#12201bfa);color:var(--triad-strong)}.purchase-icon{background:#57b39b24;color:#7fcab8}.purchase-eyebrow,.purchase-locked-kicker,.purchase-restore,.purchase-secondary{color:#7fcab8}.purchase-benefit{color:var(--triad-strong)}.purchase-benefit ion-icon{color:#7fcab8}.purchase-primary{--background: #57b39b;--background-hover: #7fcab8;--background-activated: #4d9e88;--color: #101816}.purchase-restore{border-color:#7fcab83d;background:#0a08077a}.purchase-error{background:#ee7c901f;color:#ffb4c0}.paywall-modal::part(content){box-shadow:0 -18px 52px #00000075}.paywall-sheet{border-top-color:#ffffff1f;background:linear-gradient(180deg,#1f1c19fa,#151b18fa);color:var(--triad-strong)}.paywall-grabber{background:#ffffff38}.paywall-eyebrow,.paywall-footer-button,.paywall-offer-free{color:#7fcab8}.paywall-eyebrow-accent{color:#f7b267}.paywall-fretboard-card{border-color:#7fcab82e;background:linear-gradient(180deg,#1f3730e6,#1a2521f0)}.paywall-fretboard-bg{fill:#0d0f0e7a;stroke:#7fcab81f}.paywall-fretboard-string,.paywall-fretboard-fret{stroke:#f3ede647}.paywall-fretboard-watermark{fill:#f3ede614}.paywall-benefit-icon{background:#7fcab824;color:#7fcab8}.paywall-primary-button{background:#57b39b;box-shadow:0 14px 26px #57b39b38;color:#101816}.paywall-secondary-outline{border-color:#ffffff24;background:#ffffff0a}.paywall-offer-strip{border-color:#ffffff1a}.paywall-price-card{border-color:#ffffff1a;background:#ffffff0f;box-shadow:0 14px 30px #0000003d}.paywall-price-card:before{background:#ffffff1f}.paywall-trust-pills span{border-color:#ffffff1f;background:#ffffff0a}.paywall-footer-dot{background:#ffffff3d}}
