h1{text-align:center}h1 a{color:var(--color-text)}a{color:var(--color-accent);text-decoration:none}a:hover{color:var(--color-accent-hot)}fieldset{margin-bottom:.5em;border:1px solid var(--color-border-ui);border-radius:3px}.section-collapse-toggle{display:inline-flex;align-items:center;justify-content:center;width:1.65em;min-width:1.65em;height:1.42em;margin-left:.6em;padding:0;box-sizing:border-box;font-size:.95em;line-height:1;vertical-align:middle}.disclosure-toggle-glyph{display:inline-block;width:0;height:0;flex:0 0 auto;line-height:0}.disclosure-toggle-glyph--collapsed{border-top:.27em solid transparent;border-bottom:.27em solid transparent;border-left:.41em solid currentColor}.disclosure-toggle-glyph--expanded{border-left:.29em solid transparent;border-right:.29em solid transparent;border-top:.41em solid currentColor;transform:translateY(.04em)}label{display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;margin-top:.25em;line-height:1.5em}label>.sidebar-input{margin-left:auto}.controller-inline-row{min-height:1.5em;margin-top:.25em;line-height:1.5em}.controller-output-row,.controller-status-row{font-style:italic}.controller-inline-row>span.sidebar-input{display:inline-flex;align-items:center;justify-content:flex-end;min-height:1.5em;line-height:1.5em}.controller-status-value{text-align:right}label:has(input[type=checkbox]){pointer-events:none}label:has(input[type=checkbox]) input,label:has(input[type=checkbox]) button,label:has(input[type=checkbox]) select,label:has(input[type=checkbox]) textarea,label:has(input[type=checkbox]) a,label:has(input[type=checkbox]) [role=button]{pointer-events:auto}table{width:100%;border-collapse:collapse}table td,table th,table{padding:0;height:1.7em;box-sizing:border-box}table td>em{margin-left:.25em}table td{vertical-align:top;padding-top:0;padding-bottom:0;position:relative}textarea{width:100%;height:8.5em;box-sizing:border-box;-webkit-overflow-scrolling:touch;background-color:var(--color-bg);border:1px solid var(--color-border-ui);border-radius:3px}input[type=text],select{width:min(24em,100%);height:1.5em;box-sizing:border-box;background-color:var(--color-bg);border:1px solid var(--color-border-ui);border-radius:3px}input[type=color]{height:1.5em;width:2.5em;box-sizing:border-box;background-color:var(--color-bg);color:#f5f1f0;border:1px solid var(--color-border-ui);border-radius:3px}input[type=color]::-webkit-color-swatch{border:none;border-radius:3px}table input[type=text]{width:95%}input:out-of-range{background-color:#fde8e8;color:var(--color-accent)}input[type=checkbox]{-webkit-appearance:none;appearance:none;width:1.1em;height:1.1em;border:1px solid #b0adb0;border-radius:3px;background:var(--color-bg);cursor:pointer;flex-shrink:0;position:relative;vertical-align:middle;margin:0}input[type=checkbox]:checked{background:var(--color-accent);border-color:var(--color-accent)}input[type=checkbox]:checked:after{content:"";position:absolute;left:.2em;top:.05em;width:.35em;height:.6em;border:2px solid rgb(243,241,240);border-top:none;border-left:none;transform:rotate(45deg)}input[type=checkbox]:focus{outline:none;box-shadow:0 0 0 2px #99000040}input[type=range]{-webkit-appearance:none;appearance:none;width:50%;height:1.1em;background:transparent;cursor:pointer;margin:0;padding:0;vertical-align:middle}input[type=range]:focus{outline:none}input[type=range]::-webkit-slider-runnable-track{-webkit-appearance:none;height:3px;background:var(--color-border-ui, #c8b8b8);border-radius:2px}input[type=range]::-webkit-slider-container{-webkit-appearance:none}input[type=range]::-moz-range-track{height:3px;background:var(--color-border-ui, #c8b8b8);border-radius:2px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:.85em;height:.85em;border-radius:50%;background:var(--color-accent);border:none;margin-top:-.32em;transition:background .1s ease}input[type=range]::-moz-range-thumb{width:.85em;height:.85em;border-radius:50%;background:var(--color-accent);border:none;transition:background .1s ease}input[type=range]:hover::-webkit-slider-thumb,input[type=range]:hover::-moz-range-thumb{background:var(--color-accent-hot)}.color-cell{display:flex;align-items:center;flex-direction:row-reverse;justify-content:flex-end;gap:2px;height:1.5em;position:relative;text-align:right}.color-swatch-hitbox{position:relative;display:inline-block;width:1.4em;height:1.4em;flex-shrink:0}.color-swatch{display:inline-block;width:1.4em;height:1.4em;border-radius:3px;border:1px solid #c3c8cb;flex-shrink:0;cursor:pointer;transition:box-shadow .1s ease}.color-swatch:hover{box-shadow:0 0 0 2px #9006}.color-swatch--disabled{cursor:default;opacity:.5}.color-swatch--disabled:hover{box-shadow:none}.color-picker-hidden{position:absolute;inset:0;width:100%!important;height:100%!important;padding:0!important;border:none!important;opacity:0;cursor:pointer;pointer-events:all}.color-input{display:none;width:calc(100% - 1.8em)!important;padding:0 .3em;box-sizing:content-box;background-color:var(--color-bg);border:1px solid var(--color-border-ui);border-radius:3px;font-family:monospace;font-size:1em;text-align:right}.color-input:disabled{opacity:.5;cursor:not-allowed}.color-cell:focus-within{position:absolute;z-index:5;background:var(--color-bg);border-radius:3px;box-shadow:0 2px 8px #00000026;height:auto;min-width:10em;right:0}.color-cell:focus-within .color-input{display:block;width:8.2em!important}label .color-cell{flex-shrink:0;width:auto;margin-left:40%}@media(max-width:550px){label .color-cell{margin-left:30%}}label .color-cell--label-rhs{margin-left:auto}label .color-cell .color-input{display:block;width:6.3em!important;flex:none;text-align:right}td.scale-color-col{padding:0 3px;text-align:right}td.scale-color-col .color-cell{width:auto;justify-content:flex-end;margin-left:auto}td.scale-color-col .color-input{width:100%!important;min-width:5.5em}@media(min-width:481px){td.scale-color-col .color-cell{width:max-content}td.scale-color-col .color-cell:focus-within{position:relative;z-index:auto;background:transparent;box-shadow:none;height:1.5em;min-width:0;right:auto}td.scale-color-col .color-input,td.scale-color-col .color-cell:focus-within .color-input{display:block;width:6.3em!important;min-width:0;flex:none}}.preset-actions{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:.4rem;margin-top:.125em;line-height:1.5em}.preset-action-btn,.preset-utility-btn{flex:0 1 auto;max-width:100%;white-space:normal;word-break:normal;overflow-wrap:anywhere;font-size:1em;padding:.1em .6em;background:var(--color-bg-btn-alt);border:1px solid var(--color-border-ui);color:var(--color-text);border-radius:var(--btn-radius-square)}.preset-action-btn:hover,.preset-utility-btn:hover{background:var(--color-bg-btn-alt-hover)}.preset-utility-btn{min-width:fit-content}.delete-btn{color:var(--color-accent);width:6em;text-align:center}.preset-error{width:100%;margin:.25em 0 0;color:var(--color-accent);font-size:.85em}.preset-selector-row{justify-content:flex-start;gap:6px}.preset-selector-row select{flex:none}@media(max-width:550px){.preset-selector-row{flex-wrap:nowrap;align-items:center}.preset-selector-row select{flex:1 1 auto;min-width:0}}.preset-refresh-btn:hover{background:var(--color-bg-btn-alt-hover)}.preset-refresh-btn{display:inline-flex;align-items:center;justify-content:center;align-self:center;width:1.5em;min-width:1.5em;height:1.5em;min-height:1.5em;padding:0;line-height:1;box-sizing:border-box}.preset-refresh-glyph{display:block;font-size:1.3rem;line-height:1;transform:translateY(-.02em)}.scale-table-workspace{display:flex;flex-direction:column;gap:.5em}.scale-degree-cell{display:flex;align-items:flex-start;gap:.45em;width:100%}th.scale-data-col,td.scale-data-col{width:48%}th.scale-frequency-col,td.scale-frequency-col,th.scale-name-col,td.scale-name-col{width:18%}th.scale-color-col,td.scale-color-col{width:16%}td.scale-name-col{padding-right:2px}td.scale-name-col input{width:100%}@media(max-width:480px){.degree-gutter{width:2ch;min-width:2ch}.scale-degree-cell{gap:.1em}th.scale-data-col,td.scale-data-col{width:56%}th.scale-frequency-col,td.scale-frequency-col{width:14%}th.scale-name-col,td.scale-name-col{width:18%;padding-right:0}th.scale-color-col,td.scale-color-col{width:12%;padding-left:0;padding-right:0}td.scale-name-col input{width:100%}td.scale-frequency-col{position:relative}td.scale-color-col .color-cell{justify-content:flex-end}td.scale-frequency-col input.frequency-input:focus{position:absolute;right:0;top:50%;z-index:6;width:max(8.2em,100%);transform:translateY(-50%);background:var(--color-bg);box-shadow:0 2px 8px #00000026}}.reference-degree-row{background-color:#fff8a8}.center-degree-row{background-color:#ffebed}.reference-degree-label,.center-degree-label{border-radius:var(--btn-radius-square)}.reference-degree-row input:not(:disabled),.reference-degree-row .color-input,.reference-degree-row .color-cell:focus-within{background-color:#fff8a8!important}.center-degree-row input:not(:disabled),.center-degree-row .color-input,.center-degree-row .color-cell:focus-within,.center-degree-row .sidebar-input,.center-degree-row .sidebar-input input{background-color:#ffebed!important}.reference-degree-row.center-degree-row{background-color:#fff8a8}.reference-degree-row.center-degree-row input:not(:disabled),.reference-degree-row.center-degree-row .color-input,.reference-degree-row.center-degree-row .color-cell:focus-within{background-color:#fff8a8!important}.reference-degree-row td:first-child{border-radius:4px 0 0 4px}.reference-degree-row td:last-child{border-radius:0 4px 4px 0}.reference-degree-cell{background-color:#fff8a8}.reference-degree-cell:first-child{border-radius:4px 0 0 4px}.reference-degree-cell:last-child{border-radius:0 4px 4px 0}.sidebar-input{width:50%!important;text-align:right;justify-content:flex-end}td.scale-frequency-col input.frequency-input{color:inherit;-webkit-text-fill-color:currentColor;border-color:var(--color-border-ui);background-color:var(--color-bg);opacity:1}input.equiv-cell,input.equiv-cell:disabled,table input:disabled{color:#b99;border-color:#e8d8d8;background:transparent;-webkit-text-fill-color:#bb9999;opacity:1}.degree-gutter{display:block;width:4ch;min-width:4ch;box-sizing:border-box;padding-top:.1em;text-align:right;color:#7a6666;font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;flex-shrink:0}.scala-input__cents{display:inline-block;width:2.2em;text-align:right;color:#666;font-size:.85em;padding-right:2px;white-space:nowrap}.scala-input__cents--error{color:#c0392b}.heji-name-cell{display:block;width:100%;text-align:center;font-family:Plainsound Sans,serif;font-size:.95em;padding:2px 0}.heji-name-cell--modulated{color:#9a2f2f}.tonic-label{line-height:1.5;color:#966;font-size:.85em}.freq-cell{display:flex;flex-direction:row;align-items:center;gap:0;width:100%}.freq-cell input,.freq-cell>span,.freq-cell>span input{flex:1;min-width:0;width:100%}.tune-cell{display:flex;flex-direction:row;align-items:center;gap:3px;font-size:.78em;margin-left:4px;margin-right:4px;position:relative}.tune-cell-spacer{display:inline-flex;width:38px;flex-shrink:0}.tune-cell--inline{display:inline-flex;flex-direction:row;align-items:center;gap:3px;font-size:.78em}.tune-handle{cursor:ew-resize;-webkit-user-select:none;user-select:none;display:inline-flex;align-items:center;justify-content:center;width:28px;height:16px;border-radius:3px;background:#ede8e8;color:var(--color-text);touch-action:none;border:1px solid var(--color-border-ui);font-size:1.7em;margin-left:auto;margin-right:0}.tune-handle:hover{background:#ddd0d0}.tune-handle:active{background:#cbb;cursor:grabbing}.tune-delta{font-family:monospace;font-size:1.35em;line-height:1;color:var(--color-accent);min-width:4em;text-align:right;padding-left:2px;margin-right:12px}.tune-delta.tune-comparing{color:#600;font-style:italic}.tune-actions{display:flex;gap:3px;align-items:center}.tune-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:22px;padding:0;border:1px solid var(--color-border-ui);border-radius:var(--btn-radius-square);background:#ede8e8;color:var(--color-text);font-size:1.05em;line-height:1}.tune-btn:hover{background:#ddd0d0}.tune-btn--revert{color:var(--color-accent);border-color:#c99}.tune-btn--revert:hover{background:#f5eded}.tune-btn--rationalise{color:#357;border-color:#aebfcf}.tune-btn--rationalise:hover{background:#edf3f7}.tune-btn-compare{font-size:1.3em;line-height:1}.rationalise-dropdown{position:absolute;top:calc(100% + 3px);left:0;z-index:20;min-width:238px;background:var(--color-bg);border:1px solid #d6caca;border-radius:6px;box-shadow:0 3px 10px #33000014;padding:4px;display:flex;flex-direction:column;gap:2px}.rationalise-candidate{display:flex;flex-direction:column;gap:1px;width:100%;padding:3px 7px 5px;margin-bottom:3px;border:0;border-radius:var(--btn-radius-square);background:transparent;color:var(--color-text);text-align:left;font-family:monospace;font-size:1em}.rationalise-candidate__row1{display:flex;gap:10px;align-items:baseline}.rationalise-candidate__row2{display:flex;gap:8px;align-items:baseline;font-size:.88em}.rationalise-candidate:hover{background:#f3ecec}.rationalise-candidate--committed .rationalise-candidate__ratio{font-style:italic}.rationalise-candidate--out-of-bounds .rationalise-candidate__ratio{color:var(--color-accent);font-style:italic}.rationalise-candidate--out-of-bounds .rationalise-candidate__meta{color:#b66}.rationalise-candidate__ratio{font-weight:700}.rationalise-candidate__meta{color:#885f5f}.rationalise-candidate__score{margin-left:auto;font-weight:600;color:#363}.scale-table-toolbar{display:flex;align-items:center;gap:.5em}.scale-table-toolbar__sort,.scale-table-toolbar__toggle,.scale-table-toolbar__rationalise{display:inline-flex;align-items:center;justify-content:center;padding:.1em .6em;border:1px solid var(--color-border-ui);border-radius:var(--btn-radius-square);background:var(--color-bg-btn-alt);color:var(--color-text);font-size:1em}.scale-table-toolbar__rationalisation-group{margin-left:auto;display:inline-flex;align-items:center}.scale-table-toolbar__rationalise{margin-left:.5em}.scale-table-toolbar__sort:hover,.scale-table-toolbar__toggle:hover,.scale-table-toolbar__rationalise:hover{background:#ece2e2}.scale-table-toolbar__rationalise:disabled{opacity:.6;cursor:default}.degree-gutter--draggable{cursor:grab}.degree-gutter--selected{background:#e9edf4;border-radius:3px;min-width:1.85em;padding-left:.32em;position:relative;cursor:default}.degree-gutter__number{display:block;width:100%;box-sizing:border-box;text-align:right;position:relative;top:.08em}.degree-gutter--selected .degree-gutter__number{color:#8e2020}.degree-gutter--dragging{cursor:grabbing;opacity:.65}.degree-gutter__delete{all:unset;position:absolute;left:.1em;top:50%;transform:translateY(-50%);width:.8em;height:.8em;display:block;cursor:pointer;z-index:2;pointer-events:auto}.degree-gutter__delete-glyph{display:block;width:100%;height:100%;color:#6f3535;font-weight:600;font-family:Plainsound Sans,serif;line-height:.8em;text-align:center;position:relative;top:.16em;pointer-events:none}.degree-gutter__delete:hover{color:inherit}.degree-gutter__delete:hover .degree-gutter__delete-glyph{color:#8e2020}.scale-row--drop-target td{background:#e9edf4;box-shadow:inset 0 0 0 1px #cdd8e8;z-index:2}.scale-row--drop-target-before td{box-shadow:inset 0 0 0 1px #cdd8e8,0 -2px #d6deea}.scale-row--drop-target-after td{box-shadow:inset 0 0 0 1px #cdd8e8,0 2px #d6deea}.scale-row--selected,.scale-row--selected td{background:#e8edf5!important;box-shadow:inset 0 1px #d6deea,inset 0 -1px #d6deea}.scale-row--selected input:not(:disabled),.scale-row--selected .color-input,.scale-row--selected .color-cell:focus-within,.scale-row--selected .sidebar-input,.scale-row--selected .sidebar-input input{background-color:#e8edf5!important}.divide-btns{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.4em;padding-top:.5rem;margin-bottom:.5rem}@media(max-width:480px){.divide-btns button{width:100%;text-align:center}}.heji-anchor-fieldset{margin-top:.75em}.settings-panel{position:relative}.settings-panel__close{position:absolute;top:-1.3em;right:-.8em;padding:.3em .4em;font-size:1em;line-height:1;background:inherit;border:none;color:var(--color-accent)}.settings-panel__close:hover{color:#600}.manual-sidebar__updated{margin:.25em 0 0;color:#744}.manual-sidebar__toc{margin:0;padding-left:1.2em;display:grid;grid-template-rows:repeat(5,auto);grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:column;column-gap:1.2em}.manual-sidebar__toc li{margin-bottom:.25em}.manual-sidebar__toc-button{width:100%;padding:0;border:none;background:transparent;color:var(--color-text);text-align:left}.manual-sidebar__toc-button:hover{color:var(--color-accent)}.manual-sidebar__toc-button--active{color:var(--color-accent);font-weight:700}.manual-sidebar__section{scroll-margin-top:.75em}.manual-sidebar__footer{margin:.35em 0 .8em}.manual-sidebar__content h3{margin:1em 0 .45em;font-size:1em}.manual-sidebar__content p,.manual-sidebar__content ul,.manual-sidebar__content ol,.manual-sidebar__content table,.manual-sidebar__content pre,.manual-sidebar__content hr{margin-top:0;margin-bottom:.75em}.manual-sidebar__content ul,.manual-sidebar__content ol{padding-left:1.2em}.manual-sidebar__content li>ul,.manual-sidebar__content li>ol{margin-top:.3em;margin-bottom:0}.manual-sidebar__content li+li{margin-top:.2em}.manual-sidebar__content code{padding:.1em .3em;border-radius:999px;background:#99000012;font-family:monospace;font-size:.92em}.manual-sidebar__content pre{overflow-x:auto;padding:.65em;border:1px solid var(--color-border-ui);border-radius:3px;background:#f4efef}.manual-sidebar__content pre code{padding:0;background:transparent}.manual-sidebar__content table{display:block;width:100%;height:auto;table-layout:auto;overflow-x:auto;border-collapse:collapse}.manual-sidebar__content table,.manual-sidebar__content th,.manual-sidebar__content td{padding:.35em .5em;height:auto;border:1px solid var(--color-border-ui);box-sizing:border-box;text-align:left;vertical-align:top}.manual-sidebar__content tr{height:auto}.manual-sidebar__content th{background:#f4efef}@media(max-width:640px){.manual-sidebar__toc{grid-template-columns:1fr;grid-template-rows:none;grid-auto-flow:row}}.scale-search-prefs{display:flex;flex-direction:column;gap:.55em}.scale-search-prefs legend{padding:0 .25em;color:#744}.scale-search-prefs__top-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5em;color:#5e4444}.scale-search-prefs__top-row select{flex:1 1 auto;min-width:0}.scale-search-prefs__top-row button{flex-shrink:0}.scale-search-prefs__row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:.55em .8em}.scale-search-prefs__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.45em}.scale-search-prefs__grid--custom{grid-template-columns:repeat(7,minmax(0,1fr))}@media(max-width:480px){.scale-search-prefs__grid--custom{grid-template-columns:repeat(4,minmax(0,1fr))}.scale-search-prefs__grid--custom .scale-search-prefs__prime-pair{flex-direction:column;align-items:stretch;gap:.15em}.scale-search-prefs__grid--custom .scale-search-prefs__prime-badge{display:none}}.scale-search-prefs__field,.scale-search-prefs__prime{display:flex;flex-direction:column;gap:.25em;color:#5e4444}.scale-search-prefs__field input,.scale-search-prefs__field select,.scale-search-prefs__prime input{min-width:0;width:100%}.scale-search-prefs__prime--inactive{opacity:.35}.scale-search-prefs__prime--inactive input{background:#f0ecec;cursor:not-allowed}.scale-search-prefs__prime-label{text-align:center;color:#5e4444}.scale-search-prefs__prime-pair{display:flex;align-items:center;gap:.2em}.scale-search-prefs__prime-input{min-width:0;width:100%;flex:1 1 0;border:1px solid var(--color-border-ui);border-radius:var(--btn-radius-square);background:#fffdfc;color:var(--color-text);padding:.2em;text-align:center}.scale-search-prefs__prime-badge{color:#744;flex-shrink:0;line-height:1}.scale-search-prefs__prime-badge--ut{color:#559}.scale-search-prefs__prime-badge--ot{color:#955}.fundamental-right{display:flex;align-items:center;gap:4px;width:50%;margin-left:auto}.fundamental-right input{flex:1;min-width:0;text-align:right;height:1.5em;box-sizing:border-box;background-color:var(--color-bg);border:1px solid var(--color-border-ui);border-radius:3px}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}
