@import "https://fonts.googleapis.com/css2?family=Permanent+Marker&display=swap";.psychedelic-bg[data-v-dd2d171d]{z-index:-1;width:100vw;height:100vh;position:fixed;top:0;left:0}.sam-container[data-v-59fd89cf]{z-index:100;cursor:pointer;transition:right .8s cubic-bezier(.34,1.56,.64,1);position:fixed;bottom:0;right:-140px}.sam-container.visible[data-v-59fd89cf]{right:-20px}.sam-character[data-v-59fd89cf]{width:120px;height:200px;position:relative}.sam-svg[data-v-59fd89cf]{filter:drop-shadow(2px 4px 8px #0003);width:120px;height:200px}.arm[data-v-59fd89cf]{transform-origin:77px 85px;transition:transform .3s}.arm.waving[data-v-59fd89cf]{animation:.6s ease-in-out 4 wave-59fd89cf}@keyframes wave-59fd89cf{0%,to{transform:rotate(0)}25%{transform:rotate(-15deg)}75%{transform:rotate(10deg)}}.speech-bubble[data-v-59fd89cf]{opacity:0;white-space:nowrap;pointer-events:none;background:#fff;border-radius:12px;padding:.6rem 1rem;font-size:.8rem;line-height:1.3;transition:all .5s cubic-bezier(.34,1.56,.64,1);position:absolute;bottom:140px;right:100px;transform:scale(.8)translate(10px);box-shadow:0 2px 12px #00000026}.speech-bubble.visible[data-v-59fd89cf]{opacity:1;transform:scale(1)translate(0)}.speech-bubble[data-v-59fd89cf]:after{content:"";background:#fff;width:12px;height:12px;position:absolute;bottom:-6px;right:20px;transform:rotate(45deg)}.peek-tab[data-v-59fd89cf]{z-index:100;background:var(--color-accent,#c0593a);cursor:pointer;border:none;border-radius:8px 0 0 8px;padding:.5rem .6rem;font-size:1.2rem;transition:all .3s;position:fixed;bottom:1rem;right:0;box-shadow:-2px 2px 8px #0003}.peek-tab[data-v-59fd89cf]:hover{background:var(--color-accent-hover,#a84830);padding-right:1rem}.flatitude-chain[data-v-567c36bc]{position:relative}.chain-track[data-v-567c36bc]{align-items:center;gap:.25rem;padding:.5rem 0;display:flex;overflow-x:auto}.chain-node[data-v-567c36bc]{border:2px solid var(--color-border,#ddd);background:var(--color-bg,#fff);cursor:pointer;white-space:nowrap;border-radius:8px;flex-direction:column;align-items:center;padding:.5rem .75rem;font-family:inherit;transition:all .8s;display:flex}.chain-node[data-v-567c36bc]:hover{border-color:var(--color-accent,#e8594f)}.chain-node.active[data-v-567c36bc]{background:var(--color-accent,#e8594f);border-color:var(--color-accent,#e8594f);color:#fff;transform:scale(1.05)}.chain-node.visited[data-v-567c36bc]{border-color:var(--color-accent-muted,#f0a8a3);background:var(--color-accent-muted-bg,#fff5f5)}.node-name[data-v-567c36bc]{font-size:.8rem;font-weight:700}.node-flat[data-v-567c36bc]{opacity:.7;font-size:.7rem}.chain-node.active .node-flat[data-v-567c36bc]{opacity:1}.branch[data-v-567c36bc]{align-items:center;gap:.5rem;margin-top:.25rem;padding-left:4rem;display:flex}.branch-connector[data-v-567c36bc]{background:var(--color-border,#ddd);width:2rem;height:2px;position:relative}.branch-connector[data-v-567c36bc]:before{content:"";background:var(--color-border,#ddd);width:2px;height:1rem;position:absolute;top:-1rem;left:0}.branch-node[data-v-567c36bc]{border-style:dashed}.fretboard-view[data-v-b77c57f8]{padding:1rem 0;overflow-x:auto}.fretboard[data-v-b77c57f8]{flex-direction:column;gap:0;min-width:fit-content;display:flex}.fret-numbers[data-v-b77c57f8]{align-items:center;display:flex}.inlay-row[data-v-b77c57f8]{align-items:center;height:1.25rem;display:flex}.inlay-cell[data-v-b77c57f8]{flex:1;justify-content:center;align-items:center;gap:3px;min-width:3.5rem;transition:opacity .8s;display:flex}.inlay-cell.context[data-v-b77c57f8]{opacity:.3}.inlay.diamond[data-v-b77c57f8]{background:var(--color-text-muted,#999);opacity:.35;width:7px;height:7px;transform:rotate(45deg)}.string-label-spacer[data-v-b77c57f8]{flex-shrink:0;width:1.75rem}.fret-number[data-v-b77c57f8]{text-align:center;color:var(--color-text-muted,#999);flex:1;min-width:3.5rem;font-size:.7rem;font-weight:600;transition:opacity .8s}.fret-number.context[data-v-b77c57f8]{opacity:.3}.string-row[data-v-b77c57f8]{align-items:center;height:1.75rem;display:flex}.string-label[data-v-b77c57f8]{text-align:center;width:1.75rem;color:var(--color-text-muted,#888);flex-shrink:0;font-size:.75rem;font-weight:600}.fret-cell[data-v-b77c57f8]{flex:1;justify-content:center;align-items:center;min-width:3.5rem;height:100%;transition:opacity .8s;display:flex;position:relative}.fret-cell.context[data-v-b77c57f8]{opacity:.35}.string-line[data-v-b77c57f8]{background:var(--color-border,#ccc);height:1px;position:absolute;top:50%;left:0;right:0}.fret-wire[data-v-b77c57f8]{background:var(--color-border,#bbb);width:1.5px;position:absolute;top:0;bottom:0;right:0}.fret-cell.is-nut .fret-wire[data-v-b77c57f8]{background:var(--color-text,#333);width:3px}.note-dot[data-v-b77c57f8]{z-index:1;background:var(--color-scale-note,#4a6fa5);border-radius:50%;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;transition:all .8s;display:flex;position:relative}.note-dot.context[data-v-b77c57f8]{opacity:.4}.note-dot.root[data-v-b77c57f8]{background:var(--color-root,#2a9d8f);border-radius:4px;transform:scale(1.15)}.note-dot.pivot[data-v-b77c57f8]{background:var(--color-pivot,#c0593a);box-shadow:0 0 0 3px var(--color-pivot-glow,#d4a090);animation:1.2s pulse-b77c57f8}.note-dot.root.pivot[data-v-b77c57f8]{background:var(--color-pivot,#c0593a);box-shadow:0 0 0 3px var(--color-root-muted,#7dc4bb);border-radius:4px}.note-label[data-v-b77c57f8]{color:#fff;font-size:.65rem;font-weight:700}@keyframes pulse-b77c57f8{0%{opacity:.5;transform:scale(.8)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.scale-degree-view[data-v-b4c281c2]{flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.step-bar[data-v-b4c281c2]{border-radius:4px;gap:2px;height:2rem;display:flex;overflow:hidden}.step-segment[data-v-b4c281c2]{border-radius:3px;justify-content:center;align-items:center;transition:all .8s;display:flex}.step-segment.whole-step[data-v-b4c281c2]{background:var(--color-step-whole,#3b5998)}.step-segment.half-step[data-v-b4c281c2]{background:var(--color-step-half,#e8594f)}.step-label[data-v-b4c281c2]{color:#fff;opacity:.9;font-size:.75rem;font-weight:600}.degrees[data-v-b4c281c2]{justify-content:space-between;gap:.5rem;display:flex}.degree[data-v-b4c281c2]{background:var(--color-degree-bg,#f0f0f0);border-radius:8px;flex-direction:column;flex:1;align-items:center;padding:.75rem 1rem;transition:all .8s;display:flex;position:relative}.degree.root[data-v-b4c281c2]{background:var(--color-degree-root,#2a9d8f);color:#fff;border-radius:4px}.degree.root .degree-note[data-v-b4c281c2]{color:#fff}.degree.root .degree-number[data-v-b4c281c2]{opacity:.85}.degree.changed[data-v-b4c281c2]{background:var(--color-degree-changed,#fff3e0);box-shadow:0 0 0 2px var(--color-pivot,#c0593a)}.degree.pivot[data-v-b4c281c2]{background:var(--color-degree-pivot,#c0593a);color:#fff;transform:scale(1.1)}.degree.pivot .degree-note[data-v-b4c281c2]{color:#fff}.degree-number[data-v-b4c281c2]{opacity:.6;font-size:.8rem;font-weight:700}.degree-note[data-v-b4c281c2]{color:var(--color-text,#1a1a1a);font-size:1.25rem;font-weight:700;transition:color .8s}.flat-indicator[data-v-b4c281c2]{color:var(--color-accent,#e8594f);font-size:1rem;font-weight:700;animation:.8s drop-in-b4c281c2;position:absolute;top:-.5rem;right:-.25rem}.mode-info[data-v-b4c281c2]{text-align:center}.mode-name[data-v-b4c281c2]{color:var(--color-text,#1a1a1a);margin:0;font-size:1.75rem;font-weight:800}.mode-character[data-v-b4c281c2]{color:var(--color-text-muted,#666);margin:.25rem 0 0;font-size:1rem;font-style:italic}@keyframes drop-in-b4c281c2{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.modal-flatitude-widget[data-v-f804db18]{outline:none;max-width:800px;margin:0 auto;padding:2rem;font-family:Inter,SF Pro,system-ui,sans-serif}.widget-header[data-v-f804db18]{text-align:center;margin-bottom:1.5rem}.title[data-v-f804db18]{color:var(--color-accent,#c0593a);letter-spacing:.02em;text-shadow:1px 1px #0000000d;margin:0;font-family:Permanent Marker,cursive;font-size:2.2rem;font-weight:900}.subtitle[data-v-f804db18]{color:var(--color-text-muted,#666);margin:.25rem 0 0;font-size:1rem;font-style:italic}.controls-bar[data-v-f804db18]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.key-select[data-v-f804db18]{align-items:center;gap:.5rem;display:flex}.key-select label[data-v-f804db18]{font-size:.9rem;font-weight:600}.key-select select[data-v-f804db18]{border:2px solid var(--color-border,#ddd);background:var(--color-bg,#fff);cursor:pointer;border-radius:6px;padding:.4rem .75rem;font-family:inherit;font-size:1rem;font-weight:600}.nav-controls[data-v-f804db18]{gap:.5rem;display:flex}.btn[data-v-f804db18]{border:2px solid var(--color-border,#ddd);background:var(--color-bg,#fff);cursor:pointer;border-radius:8px;padding:.5rem 1rem;font-family:inherit;font-size:.85rem;font-weight:600;transition:all .2s}.btn[data-v-f804db18]:hover:not(:disabled){border-color:var(--color-accent,#e8594f);color:var(--color-accent,#e8594f)}.btn[data-v-f804db18]:disabled{opacity:.4;cursor:not-allowed}.btn-play[data-v-f804db18]{background:var(--color-accent,#e8594f);color:#fff;border-color:var(--color-accent,#e8594f)}.btn-play[data-v-f804db18]:hover:not(:disabled){background:var(--color-accent-hover,#d04a40);color:#fff}.fretboard-section[data-v-f804db18]{margin:1rem 0}.position-controls[data-v-f804db18]{align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.85rem;display:flex}.position-controls label[data-v-f804db18]{font-weight:600}.position-label[data-v-f804db18]{text-align:center;min-width:4rem;color:var(--color-text-muted,#666);font-weight:600}.btn-sm[data-v-f804db18]{padding:.25rem .5rem;font-size:.8rem}.widget-footer[data-v-f804db18]{text-align:center;margin-top:1.5rem}.hint[data-v-f804db18]{color:var(--color-text-muted,#999);font-size:.8rem}:root{--color-bg:#fafaf8d1;--color-text:#1a1a1a;--color-text-muted:#666;--color-border:#e0ddd8;--color-accent:#c0593a;--color-accent-hover:#a84830;--color-accent-muted:#d4a090;--color-accent-muted-bg:#fdf5f2;--color-root:#2a9d8f;--color-root-muted:#7dc4bb;--color-scale-note:#4a6fa5;--color-pivot:#c0593a;--color-pivot-glow:#d4a090;--color-step-whole:#4a6fa5;--color-step-half:#c0593a;--color-degree-bg:#f0ece6e6;--color-degree-changed:#fdf0e0;--color-degree-pivot:#c0593a;--color-degree-root:#2a9d8f}*,:before,:after{box-sizing:border-box}body{color:var(--color-text);-webkit-font-smoothing:antialiased;background:#1a1a1a;margin:0;font-family:Inter,SF Pro,system-ui,sans-serif;overflow-x:hidden}.app{z-index:1;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex;position:relative}.widget-card{background:var(--color-bg);-webkit-backdrop-filter:blur(20px);border:1px solid #ffffff4d;border-radius:20px;width:100%;max-width:860px;overflow:hidden;box-shadow:0 8px 32px #0000001f,0 2px 8px #00000014,inset 0 1px #ffffff80}
