:root{--bg:#090615;--panel:rgba(20,14,40,.92);--panel2:#201735;--line:#3e315d;--text:#f4f0ff;--muted:#b5aacd;--accent:#b784ff;--accent-dark:#302042;--radius:20px;--font:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;--mono:ui-monospace,Consolas,monospace;color-scheme:dark}
html{scroll-behavior:smooth}body{background:radial-gradient(ellipse at 75% 0,#281148aa,transparent 42%),radial-gradient(ellipse at 5% 85%,#12303755,transparent 40%),#090615;font-size:14px}.shell{grid-template-columns:248px 1fr;padding-bottom:76px}.sidebar{width:248px;background:rgba(12,8,25,.97);bottom:76px;padding:26px 18px 16px;border-right-color:#49346266;z-index:30}.brand{padding-bottom:26px}.brand-title{display:block;letter-spacing:.08em;font-size:17px}.brand-sub{display:block;font-size:8px;letter-spacing:.3em;margin-top:3px}.brand-mark{background:linear-gradient(135deg,#b784ff,#64e4d2);border-radius:11px}.brand-mark i{background:#1a0d32}.sidebar-tools{overflow-y:auto;scrollbar-width:thin;scrollbar-color:#684693 transparent;min-height:0}.nav-title{color:#a593c5;margin-top:24px}.nav-link{color:#b8acce;font-size:12px;padding:9px 10px;gap:10px;border-radius:10px}.nav-link:hover{background:#38215555;color:#fff}.nav-link.selected{background:linear-gradient(100deg,#8146cf3b,#30244444);border-color:#ab74fb66;color:#eadbff}.nav-link .icon{width:16px;height:16px}.nav-num{color:#a996c7!important}.sidebar-foot{padding:16px 6px 0;display:flex;justify-content:space-between;gap:10px;border-top:1px solid #8c57cb33;margin-top:16px;font-size:11px}.language-control{font-weight:650;color:#dac7ff}.home-return{color:#a99bbf}.topbar{height:74px;padding-inline:44px;border-color:#9c66d926;background:rgba(11,7,23,.66);position:relative;z-index:2}.breadcrumbs{color:#9d8db7}.breadcrumbs b{color:#e3d7f5}.badge.lime{color:#9aeadc;background:#1a37342e;border-color:#7addc64d}.main{max-width:1440px;padding:50px 44px 30px}.page-heading{margin-bottom:38px;align-items:center}.page-heading h1{font-size:clamp(32px,4.2vw,60px);font-weight:680;letter-spacing:-.045em;line-height:1.07}.page-heading h1 em{font-style:normal;background:linear-gradient(100deg,#b18aff,#79d9eb);background-clip:text;-webkit-background-clip:text;color:transparent}.page-heading .eyebrow{letter-spacing:.2em;color:#a68dbf;font-size:9px}.page-heading p{font-size:15px;line-height:1.85;max-width:680px}.hero-actions{margin-top:26px}.button{border-radius:11px;background:#211532cc;border-color:#77599977;color:#e9dffb;min-height:39px;transition:transform .2s,border-color .2s,background .2s;font-weight:600}.button:hover:not(:disabled){background:#50316e88;border-color:#c097ff;transform:translateY(-2px)}.button.primary{color:#fff;background:linear-gradient(120deg,#8b42d9,#684add);border-color:#c796ff88;box-shadow:0 7px 28px #7437c92b}.button.primary:hover:not(:disabled){background:linear-gradient(120deg,#9951e8,#7658eb);border-color:#d2afff}.button.active{background:#64409566;color:#e4cfff;border-color:#bd87ff88}.button.small{min-height:33px}.hero-orbit{width:220px;height:220px;flex:none;display:grid;place-items:center;perspective:800px}.orbit-disc{width:180px;height:180px;border-radius:50%;background:radial-gradient(circle at 30% 20%,#744f9e50,#130c24 65%);box-shadow:inset 0 0 35px #8f54ff30,0 0 80px #8d44f322;border:1px solid #b18af577;display:grid;place-items:center;position:relative}.orbit-disc>span{font-size:50px;letter-spacing:-.06em;color:#ead8ff;font-weight:650;text-align:center}.orbit-disc>span>span{display:block;font-size:7px;letter-spacing:.3em;color:#83dace}.orbit-disc i{position:absolute;inset:-17px;border-radius:50%;border:1px solid #8866cb66;transform:rotateX(64deg) rotate(-25deg);animation:bb-orbit 18s linear infinite}.orbit-disc i:nth-child(2){inset:-30px;animation-delay:-6s;border-color:#68dbd83b}.orbit-disc i:nth-child(3){inset:-45px;animation-delay:-12s;border-color:#c682ff33}@keyframes bb-orbit{to{transform:rotateX(64deg) rotate(335deg)}}.workbench-toolbar{display:flex;align-items:end;gap:20px;justify-content:space-between;margin:35px 0 24px}.search-label{width:min(310px,100%)}.search-label span{font-size:11px}.search-label input{border-radius:12px;margin-top:8px;padding:12px 15px}.category-list{display:flex;gap:6px;flex-wrap:wrap}.tool-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tool-card{padding:24px;border-radius:19px;background:linear-gradient(145deg,#21152eaa,#100d2099);border-color:#7c50ac44;min-height:250px;overflow:hidden}.tool-card:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 80% 0,#956cff20,transparent 60%);pointer-events:none;opacity:.7;transition:opacity .3s}.tool-card:hover{border-color:#be91ff99;transform:translateY(-5px);box-shadow:0 14px 44px #03010c66}.tool-card:hover:before{opacity:1}.tool-card h2{font-size:19px;letter-spacing:-.03em;margin:0 0 10px}.tool-card p{font-size:12px;line-height:1.85;max-width:none}.tool-symbol{background:#231835;border-color:#9b68cf66;border-radius:12px}.card-top{margin-bottom:22px}.card-index{color:#b79dcf}.card-bottom{margin-top:24px;color:#c59aef}.card-bottom span{font-size:9px;color:#bca5d4;letter-spacing:.1em;text-transform:uppercase}.card-bottom .icon{width:18px}.tool-card[hidden]{display:none}.privacy-banner{border:1px solid #6acebd33;background:linear-gradient(110deg,#162e302e,#20133499);border-radius:18px;display:flex;gap:20px;align-items:center;padding:28px;margin-top:30px}.privacy-banner>.icon{color:#86e0d1;width:30px;height:30px}.privacy-banner h2{font-size:18px;margin-bottom:7px}.privacy-banner p{color:#b6abc8;font-size:12px;line-height:1.8;max-width:750px}.panel{border-color:#8762aa44;border-radius:18px;background:rgba(20,14,34,.9);padding:23px;backdrop-filter:blur(12px)}.panel-title h3{color:#dcc8f4}.two-col{grid-template-columns:minmax(0,1fr) 305px;gap:20px}.form-grid{gap:15px}.form-grid label{font-size:12px;color:#c2b1d7}.form-grid>label:only-child{grid-column:1/-1}input,select,textarea{background:#130c23;border-color:#78529577;color:#f1e7ff}input:focus,select:focus,textarea:focus{border-color:#c593ff}input[type=range]{accent-color:#a363ee}.upload-box{background:linear-gradient(140deg,#43266522,#213c4622);border-color:#bd8eed77;min-height:150px}.upload-box:hover,.upload-box.drag{background:#34214b77;border-color:#c899ff}.upload-box strong{font-size:13px;color:#e7d8f8}.upload-box small{color:#ad9fc3}.wave-wrap{background:#0f0a1b;border-color:#6f499755}.wave-caption{border-color:#6f499744}.note{color:#b8a9cc;background:#21183199;border-color:#815dac44}.note.warn{border-color:#c49c5f55;color:#eed0a2;background:#3b2e2333}.note.success{border-color:#6cd9ba55;color:#a8e6d3;background:#18392b33}.stat{background:#150e22;border-color:#79539e44}.stat strong{font-size:19px;letter-spacing:-.04em}.metric b{color:#e8d8f8}.tuner{background:linear-gradient(150deg,#26163e,#100b1b);border-color:#9e66cd66}.chord-slot{background:#271b35;border-color:#8b58bd66}.chord-slot strong{color:#c694ff}.step.on{background:#8152bd;border-color:#c695ff}.pad.selected{background:#513071;border-color:#c090f0}.analysis-main{text-align:center;padding:20px 0}.analysis-main>span{color:#b6a4ce;font-size:12px}.analysis-main strong{display:block;color:#d2b1ff;font-size:clamp(35px,5vw,64px);line-height:1.2;letter-spacing:-.05em;margin-top:14px}.analysis-main strong small{font-size:15px;color:#bdb0d1;letter-spacing:0}.analysis-main p{color:#b5a7c7;font-size:12px;margin:12px 0}.analysis-report{display:grid;gap:18px}.analysis-chart{width:100%;height:180px;display:block;border-radius:12px;background:#0c0918;padding:12px}.result-summary{display:grid;gap:7px;color:#bcaecd;padding:10px 0;font-size:12px}.result-summary strong{font-size:21px;color:#b6f0e2}.tool-guide{margin-top:28px;padding:27px 0;border-top:1px solid #9473ba33;color:#bcb0ce;max-width:900px}.tool-guide h2{font-size:19px;color:#e1d2f2;margin-bottom:11px}.tool-guide h3{font-size:14px;color:#d6c2ec;margin:24px 0 9px}.tool-guide p{font-size:13px;line-height:1.9;margin-bottom:10px}.tap-panel{max-width:760px;margin:auto;display:grid;place-items:center;gap:18px}.tap-pad{display:grid;place-items:center;width:210px;height:210px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#71449b,#261739 75%);border:1px solid #d09cff88;color:#ecd8ff;letter-spacing:.1em;box-shadow:0 0 40px #9c57e629;transition:transform .12s,filter .12s}.tap-pad:active{transform:scale(.96);filter:brightness(1.3)}.table-scroll{overflow:auto}.utility-table{width:100%;border-collapse:collapse;text-align:left;font-size:13px;white-space:nowrap}.utility-table th,.utility-table td{padding:16px;border-bottom:1px solid #80609944}.utility-table thead{color:#c8a4e7}.utility-table td{font-family:var(--mono);color:#baafcd}.scale-notes{display:flex;gap:9px;flex-wrap:wrap;margin:15px 0}.scale-notes span{border:1px solid #ba85ee77;background:#372245;padding:15px 12px;border-radius:10px;color:#e8ccff}.bb-footer{padding:35px 44px 40px;color:#91809f;font-size:11px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.bb-footer>div{display:flex;gap:20px}.bb-footer a:hover{color:#e2c5ff}.footer-player{height:76px;background:rgba(12,8,24,.97);border-color:#b477e638;z-index:35;padding:0 28px;box-shadow:0 -6px 35px #02010a44}.engine-label{color:#c9b3e0}.engine-info>.icon{color:#b98ae8}.engine-sub{color:#a293b8}.master{width:200px}.master input{min-width:60px}.master>span{font-size:10px;width:36px;color:#bcb0cd}.toast{background:#2b1a40;border-color:#bf8ae477;color:#ead9ff}.toast-area{bottom:92px}.sr-only{clip-path:inset(50%)}:focus-visible{outline:2px solid #80e3d5!important;outline-offset:4px!important}.mobile-menu{display:none}.table-wrap{max-width:100%;overflow:auto}
@media(min-width:1500px){.tool-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.main{padding-top:64px}}
@media(max-width:1150px){.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.main{padding-inline:28px}.topbar{padding-inline:28px}.hero-orbit{width:170px}.orbit-disc{width:145px;height:145px}.workbench-toolbar{flex-direction:column;align-items:stretch}.search-label{width:100%}.two-col{grid-template-columns:1fr}.two-col>aside{grid-row:2}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.shell{display:block}.sidebar{transform:translateX(-101%);visibility:hidden;transition:transform .25s;top:0;width:265px}.sidebar.open{transform:translateX(0);visibility:visible}.mobile-menu{display:inline-flex;padding:8px}.workspace{width:100%}.mobile-overlay.open{display:block;background:#02000bb3;z-index:29}.topbar{padding-inline:18px}.main{padding:34px 22px}.page-heading p{font-size:14px}.footer-player{padding-inline:18px;gap:12px}.footer-player .engine-info{display:none}.footer-player .master{max-width:175px}.bb-footer{padding-inline:22px}}
@media(max-width:560px){.tool-grid{grid-template-columns:1fr}.tool-card{min-height:205px;padding:22px}.tool-card p{font-size:13px}.card-top{margin-bottom:15px}.hero-orbit{display:none}.page-heading h1{font-size:42px}.page-heading{align-items:start}.heading-side{display:none}.topbar .badge{font-size:8px;padding:5px 7px}.breadcrumbs>span:first-child,.breadcrumbs>span:nth-child(2){display:none}.main{padding:30px 16px}.panel{padding:18px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat strong{font-size:17px}.form-grid{gap:13px}.privacy-banner{padding:22px;align-items:start}.privacy-banner>.icon{width:21px;flex:none}.footer-player{padding-inline:12px}.footer-player .button{font-size:10px;padding-inline:10px}.footer-player .keycap{display:none}.master{width:145px!important}.bb-footer{padding-inline:17px}.bb-footer>div{gap:15px}.category-list .button{font-size:10px;padding:7px 9px}}
.shell{position:relative;z-index:1}.hyperion-light-pillar{position:fixed;inset:0;width:100vw;height:100vh;z-index:0;pointer-events:none;overflow:hidden;opacity:.7}.hyperion-light-pillar canvas{width:100%!important;height:100%!important}.bb-background-settings{position:fixed;right:17px;top:18px;z-index:45;font-size:12px}.bb-background-settings summary{list-style:none;width:34px;height:34px;display:grid;place-items:center;border:1px solid #a876d277;background:#180e2bdd;color:#d3adf4;border-radius:10px;cursor:pointer}.bb-background-settings summary::-webkit-details-marker{display:none}.bb-background-drawer{position:absolute;right:0;top:43px;width:250px;padding:19px;background:#160e28f5;border:1px solid #a979d577;border-radius:15px;box-shadow:0 20px 50px #0008;display:grid;gap:17px}.bb-background-drawer input[type=color]{height:40px;padding:4px}.topbar{padding-right:70px}.mobile-language{display:none}
@media(max-width:560px){.page-heading{flex-direction:column}.heading-side{display:block;align-self:flex-start}.mobile-language{display:block;position:fixed;left:12px;bottom:85px;z-index:31;background:#1c1134ed;color:#dfc8fa;border:1px solid #a775d877;border-radius:9px;padding:9px 11px;font-size:10px}.tool-guide{padding-bottom:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.tool-card:hover,.button:hover{transform:none!important}}
.analysis-switcher{display:grid;gap:10px;border-top:1px solid #9473ba33;padding-top:20px}.analysis-switcher .button{justify-content:space-between;white-space:normal;text-align:left;line-height:1.55}.analysis-switcher p,.joint-analysis-header p{color:#b5a7c7;font-size:12px;line-height:1.85}.joint-analysis-header h2{font-size:20px;letter-spacing:-.025em;margin-bottom:9px}.combined-analysis-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.joint-result{display:grid;gap:16px;min-width:0;padding:17px;border:1px solid #8a62b647;border-radius:15px;background:#100b1f8c}.joint-result .analysis-main{padding:0}.joint-result .analysis-main strong{font-size:clamp(27px,3.2vw,42px);overflow-wrap:anywhere}.joint-result .note{margin:0;font-size:11px;line-height:1.8}.joint-result .row{gap:6px;flex-wrap:wrap}.joint-result .button.small{font-size:10px;padding:7px 9px;min-height:32px}.joint-result label{font-size:12px;color:#c2b1d7}.joint-result .analysis-chart{height:140px;padding:8px}
@media(max-width:600px){.combined-analysis-results{grid-template-columns:1fr}.joint-result{padding:16px}.joint-result .analysis-main strong{font-size:38px}.joint-analysis-header h2{font-size:18px}}
[hidden]{display:none!important}
