:root{--circ-bg-2:#ffffff05;--circ-bg-4:#ffffff0a;--circ-bg-5:#ffffff0d;--circ-bg-6:#ffffff0f;--circ-bg-8:#ffffff14;--circ-bg-10:#ffffff1a;--circ-bg-20:#fff3;--circ-bg-25:#ffffff40;--circ-border-5:#ffffff0d;--circ-border-6:#ffffff0f;--circ-border-8:#ffffff14;--circ-border-10:#ffffff1a;--circ-border-20:#fff3;--circ-surface:#0a0a0a;--aa-bg:#000;--aa-surface:#0a0a0a;--aa-text:#fff;--aa-text-2:#ffffff8c;--aa-text-3:#ffffff4d;--aa-gold:#f5c518;--aa-gold-10:#f5c5181a;--aa-border:#ffffff14;--aa-mono:"DM Mono", ui-monospace, monospace;--aa-sans:var(--font-body), system-ui, -apple-system, sans-serif;--aa-display:var(--font-heading), var(--aa-sans)}@media (width>=1025px){.page-inner--circulo{height:calc(100vh - var(--header-height,56px));box-sizing:border-box;flex-direction:column;gap:1rem;max-width:100%;margin:0 auto;padding:1rem 1.5rem .5rem;display:flex;overflow:hidden}}@media (width<=1024px){.page-inner--circulo{max-width:100%;height:auto;margin:0 auto;padding:1.25rem;display:block;overflow:visible}}.aa-hero{border-bottom:1px solid var(--aa-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:.5rem 0 1.2rem;display:flex}.aa-hero__left{align-items:center;gap:3rem;display:flex}.aa-hero__title{font:700 1.6rem/1 var(--aa-display);letter-spacing:-.04em;color:var(--aa-text);white-space:nowrap;margin:0}.aa-hero__title em{color:var(--aa-gold);font-style:normal}@media (width>=1025px){.aa-main{flex:1;grid-template-columns:1fr 420px;align-items:stretch;gap:2.5rem;min-height:0;display:grid;overflow:hidden}}@media (width<=1024px){.aa-main{flex-direction:column;align-items:stretch;gap:2rem;height:auto;display:flex}}@media (width>=1025px){.aa-stage-area{background:radial-gradient(circle,#f5c51805 0%,#0000 70%);flex-direction:column;justify-content:center;align-items:center;height:100%;min-height:0;padding:.5rem 0;display:flex;position:relative}.aa-stage{justify-content:center;align-items:center;width:100%;max-width:100%;height:100%;min-height:0;max-height:100%;display:flex}}@media (width<=1024px){.aa-stage-area{background:radial-gradient(circle,#f5c51805 0%,#0000 70%);flex-direction:column;justify-content:center;align-items:center;padding:2rem 0;display:flex;position:relative}.aa-stage{aspect-ratio:1;justify-content:center;align-items:center;width:100%;max-width:520px;margin:0 auto;display:flex}}.aa-stage-svg{aspect-ratio:1;width:auto;max-width:100%;height:auto;max-height:100%}.aa-stage-hint{color:var(--aa-text-3);font:500 13px var(--aa-sans);align-items:center;gap:.7rem;padding:.5rem 0;display:flex;position:absolute;top:0;left:0}.aa-stage-hint__dot{background:var(--aa-gold);width:6px;height:6px;box-shadow:0 0 12px var(--aa-gold);border-radius:50%}@media (width>=1025px){.aa-sidebar{flex-direction:column;gap:.75rem;height:100%;min-height:0;padding:0;display:flex;overflow-y:auto}}@media (width<=1024px){.aa-sidebar{flex-direction:column;gap:.75rem;height:auto;padding:0;display:flex;overflow:visible}}.aa-panel-header{border-bottom:1px solid var(--aa-border);flex-shrink:0;align-items:baseline;gap:.75rem;padding-bottom:.5rem;display:flex}.aa-panel-header h2{font:700 1.25rem/1 var(--aa-display);letter-spacing:-.02em;color:var(--aa-text);margin:0}.aa-panel-header__meta{font:400 11px var(--aa-mono);color:var(--aa-text-3)}.aa-panel-grid{flex:1;grid-template-columns:1fr 1fr;gap:.5rem;min-height:0;display:grid}.aa-panel-col{flex-direction:column;gap:.5rem;display:flex}.aa-detail-section{border-left:2px solid #ffffff0f;flex-direction:column;gap:.4rem;padding-left:.65rem;transition:border-color .3s;display:flex}.aa-detail-section:hover{border-left-color:var(--aa-gold)}.aa-detail-section--wide{border-bottom:1px solid #ffffff0f;border-left:none;padding-bottom:.5rem;padding-left:0}.aa-detail-section--cta{margin-top:auto}.aa-section-kicker{font:600 9px/1 var(--aa-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--aa-gold);opacity:.7;margin-bottom:.1rem}.aa-stage-svg{width:100%;height:auto;display:block}.aa-stage-svg .aa-orbit,.aa-stage-svg .aa-inner-orbit{stroke:#ffffff0f;fill:none;stroke-width:1px}.aa-stage-svg .aa-grid-line{display:none}.aa-stage-svg .aa-route{stroke:#ffffff1f;fill:none;stroke-width:1px}.aa-stage-svg .aa-route--ghost{stroke:#ffffff0d;stroke-width:1px;stroke-dasharray:3 6}.aa-stage-svg .aa-center-disc{fill:#ffffff08;stroke:var(--aa-border);stroke-width:1px}.aa-stage-svg .aa-center-title{fill:var(--aa-text);font:600 24px var(--aa-sans);letter-spacing:-.01em}.aa-stage-svg .aa-center-subtitle{fill:var(--aa-text-3);font:400 12px var(--aa-mono);letter-spacing:.05em;text-transform:uppercase}.aa-stage-svg .aa-node{cursor:pointer;pointer-events:all}.aa-stage-svg .aa-node .aa-node__ring{stroke:#ffffff2e;stroke-width:1.2px;fill:#ffffff0d;transform-box:fill-box;transform-origin:50%;transition:transform .22s cubic-bezier(.34,1.56,.64,1),stroke .2s,fill .2s,stroke-width .2s}.aa-stage-svg .aa-node .aa-node__label{transform-box:fill-box;transform-origin:50%;transition:transform .22s cubic-bezier(.34,1.56,.64,1),fill .2s}.aa-stage-svg .aa-node.is-playing .aa-node__ring{stroke:#fff!important;fill:#ffffff40!important;stroke-width:2.5px!important;transform:scale(1.22)!important}.aa-stage-svg .aa-node.is-playing .aa-node__label{fill:currentColor!important;font-weight:800!important;transform:scale(1.18)!important}.aa-stage-svg .aa-node__label,.aa-stage-svg .aa-node__sub{text-anchor:middle}.aa-stage-svg .aa-node--major .aa-node__label{fill:var(--aa-text);font:600 22px var(--aa-sans);letter-spacing:-.01em}.aa-stage-svg .aa-node--minor .aa-node__label{fill:var(--aa-text-2);font:500 16px var(--aa-mono)}.aa-stage-svg .aa-node__sub{fill:var(--aa-text-3);font:400 11px var(--aa-mono);letter-spacing:.04em}.aa-stage-svg .aa-node__halo{display:none}.aa-stage-svg .aa-node.is-heat-resolution .aa-node__ring{stroke:var(--aa-gold);stroke-width:1.5px;filter:drop-shadow(0 0 5px #f5c5184d)}.aa-stage-svg .aa-node.is-heat-resolution .aa-node__label{fill:currentColor;font-weight:700}.aa-node.is-neighbor .aa-node__ring,.aa-stage-svg .aa-node.is-recommended .aa-node__ring{stroke:#ffffff73}.aa-stage-svg .aa-node--major.is-active .aa-node__ring{fill:var(--aa-gold-10);stroke:var(--aa-gold);stroke-width:2px}.aa-stage-svg .aa-node--minor.is-active .aa-node__ring{fill:#00e5cc14;stroke:#8df4e6;stroke-width:2px}.aa-stage-svg .aa-node.is-active .aa-node__label{fill:currentColor}.aa-stage-svg .aa-node:hover .aa-node__ring{stroke:#ffffff80}.aa-stage-svg.is-focus .aa-node:not(:hover):not(.is-active) .aa-node__ring{stroke:#ffffff14}.aa-stage-svg.is-focus .aa-node:not(:hover):not(.is-active) .aa-node__label{fill:#ffffff40}.aa-stage-svg .aa-node--tonic .aa-node__ring{stroke:#f5c518;fill:#f5c51814}.aa-stage-svg .aa-node--predom .aa-node__ring{stroke:#7dd3fc;fill:#7dd3fc0f}.aa-stage-svg .aa-node--dom .aa-node__ring{stroke:#fca5a5;fill:#fca5a50f}.aa-stage-svg .aa-node--color .aa-node__ring{stroke:#c4b5fd;fill:#c4b5fd0a}.aa-stage-svg .aa-node.is-non-diatonic .aa-node__ring{stroke:#ffffff14;fill:#0000}.aa-stage-svg .aa-node.is-non-diatonic .aa-node__label{fill:#ffffff59}.aa-stage-svg .aa-node.is-non-diatonic .aa-node__sub{fill:#fff3}.aa-stage-svg .aa-node.is-non-diatonic:hover .aa-node__ring{stroke:#ffffff4d;fill:#ffffff08}.aa-stage-svg .aa-triangle{stroke:var(--aa-gold);stroke-width:1.2px;stroke-dasharray:4 4;fill:#f5c51808;pointer-events:none}.aa-stage-svg .aa-composer-path{fill:none;stroke:var(--aa-gold,#f5c518);stroke-width:2.2px;stroke-dasharray:6 6;stroke-linecap:round;pointer-events:none;opacity:.85;animation:25s linear infinite aa-path-flow}@keyframes aa-path-flow{to{stroke-dashoffset:-200px}}.aa-stage-svg .aa-node__badge circle{fill:var(--aa-gold,#f5c518);stroke:#0a0a0c;stroke-width:1.2px}.aa-stage-svg .aa-node__badge text{fill:#0a0a0c;font-family:var(--aa-sans);pointer-events:none;font-weight:800}.aa-stage-svg .aa-node.is-color-borrowed .aa-node__ring{stroke-dasharray:4 2;stroke:#c084fc!important;stroke-width:2px!important;fill:#c084fc0d!important}.aa-stage-svg .aa-node.is-color-dominant .aa-node__ring{stroke-dasharray:4 2;stroke:#f5c518!important;stroke-width:2px!important;fill:#f5c5180d!important}.aa-panel{padding-top:1rem}.aa-panel__body{flex-direction:column;gap:2rem;display:flex}.aa-detail-section{flex-direction:column;gap:.6rem;display:flex}.aa-section-kicker{font:500 11px/1 var(--aa-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--aa-text-3)}.aa-chip-row{flex-wrap:wrap;gap:.3rem;display:flex}.aa-chord-row{flex-wrap:nowrap;gap:.3rem;padding-bottom:.2rem;display:flex;overflow-x:auto}.aa-chord-col{border:1px solid var(--aa-border);cursor:pointer;background:#ffffff05;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;min-width:50px;padding:.5rem .8rem;transition:all .15s;display:flex}.aa-chord-col:hover{background:#ffffff0f}.aa-chord-roman{font:500 11px var(--aa-mono);color:var(--aa-text-2)}.aa-chord-name{font:600 14px var(--aa-sans);color:var(--aa-text)}.aa-chord-col[data-tone=tonic]{border-color:#f5c51826}.aa-chord-col[data-tone=tonic] .aa-chord-roman{color:var(--aa-gold)}.aa-chord-col[data-tone=dom]{border-color:#00e5cc26}.aa-chord-col[data-tone=color]{border-color:#b388ff26}.aa-chip{font:400 12px/1 var(--aa-mono);color:var(--aa-text-2);border:1px solid var(--aa-border);cursor:default;background:#ffffff08;border-radius:6px;align-items:center;gap:.25rem;padding:.3rem .6rem;transition:background .15s,color .15s;display:inline-flex}.aa-chip[data-tone=tonic]{color:var(--text);border-color:#f5c51833}.aa-chip[data-tone=predom]{color:var(--aa-text-2)}.aa-chip[data-tone=dom]{color:#8df4e6;border-color:#00e5cc26}.aa-chip[data-tone=color]{color:#b388ff;border-color:#b388ff26}.aa-chip--color{cursor:pointer;background:0 0;border-style:dashed}.aa-chip--color:hover{background:#ffffff0d;border-style:solid}.aa-add-btn{background:var(--aa-surface);border:1px solid var(--aa-gold);width:20px;height:20px;color:var(--aa-gold);font:700 14px/1 var(--aa-sans);cursor:pointer;opacity:0;z-index:10;border-radius:50%;justify-content:center;align-items:center;transition:all .15s;display:flex;position:absolute;top:-6px;right:-6px}.aa-chord-col:hover .aa-add-btn,.aa-chip:hover .aa-add-btn{opacity:1}.aa-add-btn:hover{background:var(--aa-gold);color:#000;transform:scale(1.1)}.aa-route-list{flex-direction:column;gap:.15rem;display:flex}.aa-route-item{color:var(--aa-text-2);font:500 13px var(--aa-sans);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;padding:.3rem .5rem;transition:all .15s;display:flex}.aa-route-item:hover{color:var(--aa-text);background:#ffffff0a}.aa-subtle{font:400 12px/1.5 var(--aa-sans);color:var(--aa-text-3);margin-top:.25rem}.aa-cta-grid{flex-wrap:wrap;gap:.4rem;display:flex}.aa-cta-btn{font:500 11px/1 var(--aa-sans);cursor:pointer;border:1px solid var(--aa-border);color:var(--aa-text-2);background:0 0;border-radius:6px;align-items:center;gap:.25rem;padding:.4rem .7rem;transition:opacity .15s;display:inline-flex}.aa-cta-btn:hover{opacity:.85;color:var(--aa-text)}.aa-cta-btn--primary{background:var(--aa-text);color:#000;border-color:var(--aa-text);font-weight:600}.aa-cta-btn--primary:hover{opacity:.9}.aa-lock-copy{text-align:center;background:linear-gradient(#f5c51808 0%,#0000 100%);border:1px solid #f5c51826;border-radius:16px;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem 1rem;display:flex;position:relative;overflow:hidden}.aa-lock-copy:before{content:"";background:linear-gradient(90deg, transparent, var(--aa-gold), transparent);opacity:.4;width:100px;height:1px;position:absolute;top:0;left:50%;transform:translate(-50%)}.aa-lock-icon{width:40px;height:40px;color:var(--aa-gold);background:#f5c5181a;border-radius:50%;place-items:center;margin-bottom:.25rem;display:grid;box-shadow:0 0 20px #f5c5181a}.aa-lock-title{font:600 14px var(--aa-sans);color:var(--aa-text);margin:0}.aa-lock-text{font:400 12px/1.4 var(--aa-sans);color:var(--aa-text-2);max-width:200px;margin:0}.aa-lock-btn{background:var(--aa-gold);color:#000;font:700 12px var(--aa-sans);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;border:none;border-radius:10px;margin-top:.5rem;padding:.6rem 1.25rem;transition:transform .2s,box-shadow .2s}.aa-lock-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #f5c51840}.aa-theory-drawer{z-index:200;pointer-events:none;visibility:hidden;opacity:0;transition:opacity .25s,visibility .25s;display:flex;position:fixed;inset:0}.aa-theory-drawer:not([hidden]){pointer-events:auto;visibility:visible;opacity:1}.aa-theory-drawer__backdrop{background:#0009;position:absolute;inset:0}.aa-theory-drawer__panel{border-left:1px solid var(--aa-border);background:#0c0c0c;width:min(440px,92vw);height:100%;margin-left:auto;padding:1.5rem;transition:transform .25s;position:relative;overflow-y:auto;transform:translate(100%)}.aa-theory-drawer:not([hidden]) .aa-theory-drawer__panel{transform:translate(0)}.aa-theory-drawer__head{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.aa-theory-drawer__head h3{font:600 1.1rem/1.2 var(--aa-sans);color:var(--aa-text);margin:0}.aa-theory-drawer__close{border:1px solid var(--aa-border);width:32px;height:32px;color:var(--aa-text-2);cursor:pointer;background:0 0;border-radius:8px;place-items:center;font-size:1.2rem;display:grid}.aa-theory-grid{flex-direction:column;gap:1rem;display:flex}.aa-theory-card{border:1px solid var(--aa-border);background:#ffffff05;border-radius:10px;padding:1rem}.aa-theory-card__eyebrow{font:500 10px/1 var(--aa-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--aa-gold)}.aa-theory-card__title{font:600 1rem/1.2 var(--aa-sans);color:var(--aa-text);margin:.4rem 0 .3rem}.aa-theory-card__text{font:400 13px/1.5 var(--aa-sans);color:var(--aa-text-2);margin:0}.aa-add-btn{background:var(--aa-gold)!important;color:#000!important;cursor:pointer!important;z-index:10!important;border:none!important;border-radius:50%!important;justify-content:center!important;align-items:center!important;width:18px!important;min-width:0!important;height:18px!important;min-height:0!important;margin:0!important;padding:0 0 1px!important;font-size:11px!important;font-weight:800!important;line-height:1!important;transition:transform .1s,background-color .1s!important;display:inline-flex!important;position:absolute!important;top:-4px!important;right:-4px!important;box-shadow:0 2px 5px #0006!important}.aa-add-btn:hover{background:#fff!important;transform:scale(1.15)!important}.aa-add-btn:active{transform:scale(.9)!important}.aa-catcher-del{color:var(--text)!important;cursor:pointer!important;opacity:0!important;z-index:5!important;background:#e74c3c!important;border:none!important;border-radius:50%!important;justify-content:center!important;align-items:center!important;width:18px!important;min-width:0!important;height:18px!important;min-height:0!important;padding:0!important;font-size:10px!important;line-height:1!important;transition:opacity .2s,transform .1s!important;display:flex!important;position:absolute!important;top:-6px!important;right:-6px!important}.aa-catcher-item:hover .aa-catcher-del{opacity:1!important}.aa-catcher-del:hover{background:#ff4d4d!important;transform:scale(1.15)!important}.aa-hero__left{flex-direction:column;gap:1rem;display:flex}.aa-mood-filters{flex-wrap:wrap;gap:.5rem;display:flex}.aa-mood-btn{border:1px solid var(--aa-border);color:var(--aa-text-2);font:500 12px var(--aa-sans);cursor:pointer;background:#ffffff08;border-radius:20px;padding:.4rem .8rem;transition:all .15s}.aa-mood-btn:hover{color:var(--aa-text);background:#ffffff14}.aa-mood-btn.is-active{background:var(--aa-gold);color:#000;border-color:var(--aa-gold)}.aa-catcher{border-top:1px solid var(--aa-border);flex-shrink:0;width:100%;margin-top:.25rem;padding-top:.5rem}.aa-catcher-header{justify-content:space-between;align-items:center;margin-bottom:.4rem;display:flex}.aa-catcher-header__title{font:600 9px/1 var(--aa-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--aa-gold);opacity:.7}.aa-catcher-actions{gap:.5rem;display:flex}.aa-subtle-btn{color:var(--aa-text-3);font:600 10px var(--aa-sans);cursor:pointer;text-transform:uppercase;letter-spacing:.05em;background:0 0;border:none}.aa-catcher-list{flex-wrap:wrap;gap:.3rem;display:flex}.aa-catcher-item{background:#f5c5180f;border:1px solid #f5c51826;border-radius:5px;align-items:center;gap:.3rem;padding:.25rem .5rem;display:flex}.aa-catcher-item__label{font:700 11px var(--aa-mono);color:var(--text)}.aa-catcher-item__remove{color:#fff6;cursor:pointer;background:0 0;border:none;font-size:13px}.aa-catcher-empty{color:var(--aa-text-2);text-align:center;background:#ffffff05;border:1px dashed #ffffff26;border-radius:12px;padding:1.5rem 1rem;font-size:13px}@keyframes aa-pop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@media (width<=640px){.aa-mood-filters{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;padding-bottom:.5rem;overflow-x:auto}.aa-mood-btn{flex-shrink:0}}.aa-pro-badge{background:linear-gradient(135deg, var(--aa-gold,#f5c518), #e0a800);font:800 8px/1 var(--aa-mono);letter-spacing:.05em;vertical-align:middle;border-radius:3px;margin-left:6px;padding:2px 4px;display:inline-block;color:#000!important}.aa-gps-card{border-radius:10px;margin-bottom:.8rem;padding:.8rem;transition:all .3s;position:relative;overflow:hidden}.aa-gps-card--unlocked{background:linear-gradient(135deg,#f5c5180a,#0006);border:1px solid #f5c5182e;box-shadow:0 4px 15px #0003}.aa-gps-card--locked{cursor:pointer;background:linear-gradient(135deg,#ffffff05,#0006);border:1px solid #ffffff14}.aa-gps-card--locked:hover{background:linear-gradient(135deg,#f5c51805,#00000080);border-color:#f5c5184d}.aa-gps-header{font:700 9px var(--aa-mono);letter-spacing:.08em;color:var(--aa-gold);text-transform:uppercase;align-items:center;gap:.4rem;display:flex}.aa-gps-icon{color:var(--aa-gold);flex-shrink:0}.aa-gps-body{margin-top:.4rem}.aa-gps-route{color:var(--aa-text-1);margin-bottom:.5rem;font-size:13px}.aa-gps-detail-item{flex-direction:column;gap:.25rem;display:flex}.aa-gps-label{color:var(--aa-text-3);font-size:11px;font-weight:500}.aa-gps-chips{flex-wrap:wrap;gap:.35rem;display:flex}.aa-chip--gps{background:#ffffff08!important;border:1px solid #ffffff14!important;padding-right:1.5rem!important}.aa-chip--gps:hover{background:#ffffff0f!important;border-color:#ffffff26!important}.aa-chip--dominant{border-color:#f5c51833!important}.aa-gps-unlock-btn{color:var(--aa-gold);cursor:pointer;background:#f5c5181a;border:1px solid #f5c5184d;border-radius:6px;width:100%;padding:.4rem .8rem;font-size:11px;font-weight:700;transition:all .2s}.aa-gps-unlock-btn:hover{background:var(--aa-gold);color:#000}.aa-chip--modal{flex-direction:column;justify-content:center;align-items:flex-start;min-height:38px;display:inline-flex;background:#903aff0f!important;border:1px solid #903aff2e!important;padding-right:1.5rem!important}.aa-chip--modal:hover{background:#903aff1f!important;border-color:#903aff4d!important}.aa-chip-subtext{opacity:.5;margin-top:1px;font-size:8px;line-height:1}.aa-chip--locked{opacity:.6;transition:all .2s;background:#ffffff03!important;border:1px dashed #ffffff1f!important}.aa-chip--locked:hover{opacity:.95;border-color:var(--aa-gold)!important;background:#f5c51805!important}.aa-route-card{background:#ffffff05;border:1px solid #ffffff0f;border-radius:8px;flex-direction:column;gap:.25rem;padding:.65rem .75rem;transition:all .2s;display:flex}.aa-route-card:hover{background:#f5c51805;border-color:#f5c5182e}.aa-route-card__header{justify-content:space-between;align-items:center;display:flex}.aa-route-card__title{color:var(--aa-text-1,#fff);font-size:13px;font-weight:700}.aa-route-card__desc{color:var(--aa-text-3);text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:500}.aa-route-card__pivots{color:var(--aa-text-2);margin-top:.1rem;font-size:11px}.aa-route-card__cadence{color:var(--aa-gold);font-size:11px;font-style:italic}.aa-route-card__btn{color:var(--aa-gold);cursor:pointer;background:0 0;border:1px solid #f5c5184d;border-radius:4px;padding:.25rem .5rem;font-size:10px;font-weight:700;transition:all .2s}.aa-route-card__btn:hover{background:var(--aa-gold);color:#000;border-color:var(--aa-gold)}.aa-ext-btn:hover{color:var(--text)!important;background:#ffffff0d!important}.aa-ext-btn.active{box-shadow:0 0 10px #f5c51833;background:var(--aa-gold)!important;color:#000!important}.aa-cadence-card{transition:all .2s ease-in-out}.aa-cadence-card:hover{transform:translateY(-1px);box-shadow:0 4px 10px #0000004d;background:#f5c51808!important;border-color:#f5c51840!important}.aa-catcher-item{position:relative}.aa-catcher-popover{-webkit-backdrop-filter:blur(12px);z-index:1010;pointer-events:auto;background:#0f0f0ff5;border:1px solid #f5c51859;border-radius:8px;gap:5px;padding:6px;display:flex;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0009}.aa-catcher-popover:after{content:"";border:6px solid #0000;border-top-color:#0f0f0ff5;position:absolute;top:100%;left:50%;transform:translate(-50%)}.aa-catcher-popover-btn{color:#ffffffb3;font-size:11px;font-family:var(--aa-sans);cursor:pointer;white-space:nowrap;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:5px;padding:4px 8px;transition:all .15s}.aa-catcher-popover-btn:hover{border-color:var(--aa-gold);color:var(--text);background:#f5c51826}.aa-catcher-popover-btn.active{background:var(--aa-gold);border-color:var(--aa-gold);color:#000;font-weight:600}.aa-catcher-ext-trigger{color:#ffffff4d;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0 4px;transition:color .15s;display:flex}.aa-catcher-ext-trigger:hover{color:var(--aa-gold)}.aa-catcher-chord-container{align-items:center;gap:4px;display:flex}.aa-atmo-btn{transition:all .2s ease-in-out}.aa-atmo-btn:hover{color:var(--text)!important;background:#ffffff0d!important}.aa-atmo-btn.active{box-shadow:0 0 10px #f5c51833;background:var(--aa-gold)!important;color:#000!important;border-color:var(--aa-gold)!important}.aa-catcher-popover-btn--bass{padding:3px 6px!important;font-size:10px!important}body.light-mode{--circ-bg-2:#00000005;--circ-bg-4:#0000000a;--circ-bg-5:#0000000d;--circ-bg-6:#0000000f;--circ-bg-8:#00000014;--circ-bg-10:#0000001a;--circ-bg-20:#0003;--circ-bg-25:#00000040;--circ-border-5:#0000001a;--circ-border-6:#0000001f;--circ-border-8:#00000029;--circ-border-10:#0003;--circ-border-20:#0000004d;--circ-surface:var(--panel);--aa-bg:var(--bg);--aa-surface:var(--panel);--aa-text:var(--text);--aa-text-2:var(--text-secondary);--aa-text-3:var(--text-muted);--aa-ring-stroke:var(--text);--aa-ring-fill:#00000026}#page-keydetector .tool-shell[data-tool=keydetector]{--kd-accent:#7c3aed;--kd-accent-2:#a78bfa;--kd-accent-glow:#7c3aed59;--kd-teal:#34d399;--kd-teal-glow:#34d39940;--kd-gold:#f5c518;--kd-gold-glow:#f5c51840;--kd-text:#f1f0f7;--kd-text-dim:#f1f0f799;--kd-text-muted:#f1f0f766;--kd-border:#ffffff0f;--kd-border-strong:#ffffff1f;--kd-divider:#ffffff0f;--kd-radius-lg:16px;--kd-radius-md:12px;--kd-radius-sm:8px;--kd-radius-pill:999px;--font-display:var(--font-heading), var(--font-body), system-ui, sans-serif;--font-body:var(--font-body), system-ui, sans-serif;--font-mono:"DM Mono", ui-monospace, monospace;color:var(--kd-text)}.kd-wrap{grid-template-columns:minmax(0,1.6fr) minmax(340px,1fr);align-items:start;gap:2.5rem;padding:.5rem 0;display:grid}@media (width<=980px){.kd-wrap{grid-template-columns:1fr;gap:1.5rem}.kd-result-col{position:static!important}}.kd-topbar{border-bottom:1px solid var(--kd-divider);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem;padding:0 .25rem 1.25rem;display:flex}.kd-topbar__brand{align-items:center;gap:.75rem;min-width:0;display:flex}.kd-topbar__mark{background:linear-gradient(135deg, var(--kd-accent), var(--kd-accent-2));border-radius:5px;flex-shrink:0;width:18px;height:18px}.kd-topbar__copy{flex-direction:column;gap:2px;display:flex}.kd-topbar__label{font-family:var(--font-body);letter-spacing:.06em;color:var(--kd-text);font-size:.78rem;font-weight:700}.kd-topbar__sub{font-family:var(--font-body);color:var(--kd-text-muted);font-size:.68rem}.kd-topbar__center{justify-content:center;align-items:center;display:flex}.kd-mode-tabs{border-radius:var(--kd-radius-pill);border:1px solid var(--kd-border-strong);background:#ffffff08;align-items:center;gap:3px;padding:3px;display:inline-flex}.kd-mode-tab{color:var(--kd-text-muted);cursor:pointer;border-radius:var(--kd-radius-pill);font-family:var(--font-body);letter-spacing:.02em;background:0 0;border:none;align-items:center;gap:6px;padding:6px 16px;font-size:.75rem;font-weight:600;transition:all .18s;display:inline-flex;position:relative}.kd-mode-tab:hover{color:var(--kd-text-dim)}.kd-mode-tab.is-active{color:var(--text);background:linear-gradient(135deg,#7c3aed80,#a78bfa4d);box-shadow:inset 0 0 0 1px #a78bfa40,0 4px 16px #7c3aed33}.kd-mode-tab__pro{letter-spacing:.06em;border-radius:var(--kd-radius-pill);color:var(--text);background:linear-gradient(135deg,#f97316,#ef4444);padding:2px 7px;font-size:.6rem;font-weight:800}.kd-input-col,.kd-chords-panel,.kd-audio-panel{flex-direction:column;gap:1.25rem;display:flex}.kd-chords-panel[hidden],.kd-audio-panel[hidden]{display:none!important}.kd-input-area{flex-direction:column;gap:.75rem;display:flex}.kd-input-wrap{align-items:stretch;gap:.5rem;display:flex}.kd-input{border:1px solid var(--kd-border-strong);border-radius:var(--kd-radius-md);font-family:var(--font-mono);color:var(--kd-text);background:0 0;flex:1;padding:.85rem 1.1rem;font-size:.92rem;transition:border-color .18s,box-shadow .18s}.kd-input:focus{border-color:var(--kd-accent-2);outline:none;box-shadow:0 0 0 3px #7c3aed1f}.kd-input::placeholder{color:var(--kd-text-muted)}.kd-detect-btn{border-radius:var(--kd-radius-md);color:var(--kd-text);font-family:var(--font-body);letter-spacing:.02em;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#7c3aed33 0%,#7c3aed1a 100%);border:1px solid #a78bfa80;justify-content:center;align-items:center;gap:.5rem;padding:.85rem 1.6rem;font-size:.82rem;font-weight:700;transition:all .2s cubic-bezier(.34,1.56,.64,1);display:inline-flex;box-shadow:0 4px 16px #7c3aed26}.kd-detect-btn:hover{background:linear-gradient(135deg,#7c3aed4d 0%,#7c3aed26 100%);border-color:#a78bfacc;transform:translateY(-2px);box-shadow:0 8px 28px #7c3aed40}.kd-detect-btn:active{transform:translateY(0)scale(.98)}.kd-detect-btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;transform:none}.kd-chips-row{flex-wrap:wrap;align-items:center;gap:.5rem;min-height:2rem;display:flex}.kd-chips-label{font-family:var(--font-body);color:var(--kd-text-muted);font-size:.72rem;font-weight:600}.kd-chips-pills{flex-wrap:wrap;flex:1;gap:.4rem;min-width:0;display:flex}.kd-clear-chips{border:1px solid var(--kd-border);border-radius:var(--kd-radius-sm);font-family:var(--font-body);color:var(--kd-text-muted);cursor:pointer;background:0 0;padding:.35rem .7rem;font-size:.7rem;transition:all .18s}.kd-clear-chips:hover{border-color:var(--kd-text-dim);color:var(--kd-text)}.kd-chord-tag{border-radius:var(--kd-radius-sm);color:var(--kd-text);font-family:var(--font-mono);cursor:pointer;background:#7c3aed1a;border:1px solid #a78bfa59;align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:.78rem;transition:all .18s;display:inline-flex}.kd-chord-tag:hover{background:#7c3aed2e;border-color:#a78bfa99}.kd-chord-tag__x{opacity:.6;font-size:.72rem;transition:opacity .18s}.kd-chord-tag:hover .kd-chord-tag__x{opacity:1}.kd-picker{border-top:1px solid var(--kd-divider);flex-direction:column;gap:.75rem;padding-top:.5rem;display:flex}.chord-organizer__search{align-items:center;display:flex;position:relative}.chord-organizer__search-icon{color:var(--kd-text-muted);pointer-events:none;position:absolute;left:.75rem}.chord-organizer__search-input{border:1px solid var(--kd-border);border-radius:var(--kd-radius-sm);width:100%;font-family:var(--font-body);color:var(--kd-text);background:0 0;padding:.6rem .9rem .6rem 2.2rem;font-size:.82rem;transition:border-color .18s}.chord-organizer__search-input:focus{border-color:var(--kd-accent-2);outline:none}.chord-organizer__search-input::placeholder{color:var(--kd-text-muted)}.kd-picker-tabs{border-bottom:1px solid var(--kd-divider);gap:0;display:flex}.kd-picker-tab{font-family:var(--font-body);color:var(--kd-text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;padding:.6rem .5rem;font-size:.72rem;font-weight:600;transition:color .18s,border-color .18s}.kd-picker-tab:hover{color:var(--kd-text-dim)}.kd-picker-tab.is-active{color:var(--kd-accent-2);border-bottom-color:var(--kd-accent-2)}.kd-picker-panels{padding:.5rem 0}.kd-picker-panel{flex-wrap:wrap;gap:.4rem;display:none}.kd-picker-panel.is-active{animation:.2s both kdFadeIn;display:flex}.kd-sugg-chip,.kd-pill,.kd-chord-btn,.chord-organizer__chord{border:1px solid var(--kd-border);border-radius:var(--kd-radius-sm);font-family:var(--font-mono);color:var(--kd-text-dim);cursor:pointer;background:0 0;justify-content:center;align-items:center;padding:.4rem .7rem;font-size:.78rem;transition:all .18s;display:inline-flex}.kd-sugg-chip:hover,.kd-pill:hover,.kd-chord-btn:hover,.chord-organizer__chord:hover{color:var(--kd-text);background:#7c3aed14;border-color:#a78bfa80}.kd-chord-btn.selected,.kd-chord-btn.is-active,.kd-pill.active,.chord-organizer__chord.is-selected{border-color:var(--kd-accent-2);color:var(--text);background:#7c3aedd9;box-shadow:0 0 12px #7c3aed4d}.chord-organizer__group{margin-bottom:.75rem}.chord-organizer__group-header{justify-content:space-between;align-items:center;margin-bottom:.4rem;padding:.4rem 0;display:flex}.chord-organizer__group-title{font-family:var(--font-body);color:var(--kd-text-dim);font-size:.72rem;font-weight:600}.chord-organizer__group-count{font-family:var(--font-mono);color:var(--kd-text-muted);border-radius:var(--kd-radius-pill);background:#ffffff0a;padding:.15rem .5rem;font-size:.65rem}.chord-organizer__grid{flex-wrap:wrap;gap:.4rem;display:flex}.kd-audio-dropzone{border:1.5px dashed var(--kd-border-strong);border-radius:var(--kd-radius-lg);text-align:center;cursor:default;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:2.5rem 1.5rem;transition:all .2s;display:flex}.kd-audio-dropzone.is-dragging,.kd-audio-dropzone:hover{background:#7c3aed0a;border-color:#a78bfa80;box-shadow:0 0 30px #7c3aed1a}.kd-audio-drop-icon{color:var(--kd-accent-2);opacity:.7;transition:opacity .2s}.kd-audio-dropzone:hover .kd-audio-drop-icon{opacity:1}.kd-audio-drop-title{font-family:var(--font-body);color:var(--kd-text);margin:0;font-size:.95rem;font-weight:600}.kd-audio-drop-formats{font-family:var(--font-mono);color:var(--kd-text-muted);letter-spacing:.02em;margin:0;font-size:.68rem}.kd-audio-browse-btn{border-radius:var(--kd-radius-md);font-family:var(--font-body);color:var(--kd-accent-2);cursor:pointer;background:0 0;border:1px solid #a78bfa66;padding:.55rem 1.4rem;font-size:.78rem;font-weight:600;transition:all .18s}.kd-audio-browse-btn:hover{background:#7c3aed1a;border-color:#a78bfab3}.kd-audio-file-info{flex-direction:column;gap:.6rem;padding:.5rem 0;display:flex}.kd-audio-file-name{font-family:var(--font-body);color:var(--kd-text);word-break:break-all;font-size:.9rem;font-weight:600}.kd-audio-file-size,.kd-audio-file-duration{font-family:var(--font-mono);color:var(--kd-text-muted);font-size:.7rem}.kd-audio-analyze-btn{border-radius:var(--kd-radius-md);font-family:var(--font-body);color:var(--kd-text);cursor:pointer;background:linear-gradient(135deg,#7c3aed33 0%,#7c3aed1a 100%);border:1px solid #a78bfa80;justify-content:center;align-items:center;gap:.5rem;margin-top:.5rem;padding:.85rem 1.6rem;font-size:.82rem;font-weight:700;transition:all .2s cubic-bezier(.34,1.56,.64,1);display:inline-flex;box-shadow:0 4px 16px #7c3aed26}.kd-audio-analyze-btn:hover{background:linear-gradient(135deg,#7c3aed4d 0%,#7c3aed26 100%);border-color:#a78bfacc;transform:translateY(-2px);box-shadow:0 8px 28px #7c3aed40}.kd-audio-analyze-btn:active{transform:translateY(0)scale(.98)}.kd-audio-reset-btn{font-family:var(--font-body);color:var(--kd-text-muted);cursor:pointer;text-align:center;background:0 0;border:none;padding:.25rem 0;font-size:.72rem;transition:color .18s}.kd-audio-reset-btn:hover{color:var(--kd-text-dim)}.kd-audio-waveform{flex-direction:column;gap:.5rem;padding:.5rem 0;display:flex}.kd-audio-waveform__label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--kd-text-muted);font-size:.6rem}#kdAudioWaveformCanvas{border-radius:var(--kd-radius-sm);background:#0003;width:100%;height:64px}.kd-audio-progress{flex-direction:column;gap:.6rem;padding:.5rem 0;display:flex}.kd-audio-progress-track{background:var(--kd-border);border-radius:var(--kd-radius-pill);height:5px;overflow:hidden}.kd-audio-progress-bar{background:linear-gradient(90deg, var(--kd-accent-2), var(--kd-accent));border-radius:var(--kd-radius-pill);width:0%;height:100%;box-shadow:0 0 8px var(--kd-accent-glow);transition:width .3s}.kd-audio-status{font-family:var(--font-mono);color:var(--kd-accent-2);text-align:center;font-size:.72rem}.kd-result-col{flex-direction:column;gap:1.25rem;display:flex;position:sticky;top:1rem}.kd-result-header{border-bottom:1px solid var(--kd-divider);justify-content:space-between;align-items:baseline;padding-bottom:.5rem;display:flex}.ana-section-label{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--kd-text-muted);font-size:.65rem;font-weight:700}.kd-result-card,#kdResult{border-radius:var(--kd-radius-lg);min-height:280px;padding:1.5rem;position:relative;overflow:hidden}.kd-empty,.kd-empty-state,.kd-limit-card,.kd-audio-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;min-height:260px;padding:2.5rem 1.5rem;display:flex}.kd-empty-icon,.kd-empty-state__icon{width:48px;height:48px;color:var(--kd-text-muted);opacity:.5;margin-bottom:.25rem}.kd-empty-text,.kd-empty-state__text,.kd-limit-card__text{font-family:var(--font-body);color:var(--kd-text-dim);max-width:280px;font-size:.85rem;line-height:1.6}.kd-empty-text strong,.kd-empty-state__title,.kd-limit-card__title{font-family:var(--font-body);color:var(--kd-text);font-size:.85rem;font-weight:700}.kd-limit-card{background:linear-gradient(160deg,#05050fb3 0%,#0a0418cc 100%);border:1px solid #f5c5182e;border-radius:16px;animation:.4s cubic-bezier(.16,1,.3,1) both kdLimitIn;box-shadow:inset 0 1px #f5c5180d,0 8px 32px #0000004d}@keyframes kdLimitIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.kd-limit-card__icon{color:#f5c518;background:#f5c5181a;border:1px solid #f5c51838;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;display:flex;box-shadow:0 0 16px #f5c51826}.kd-limit-card__icon svg{width:20px;height:20px}.kd-limit-card__title{font-family:var(--font-heading,var(--font-heading));color:var(--kd-text,#f0f0f8);letter-spacing:-.015em;font-size:.95rem;font-weight:800}.kd-limit-card__cta{color:#0a0a12;font-family:var(--font-ui,var(--font-body));letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:linear-gradient(135deg,#f5c518 0%,#d99b00 100%);border:none;border-radius:8px;margin-top:.25rem;padding:.6rem 1.5rem;font-size:.72rem;font-weight:800;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 20px #f5c51847,inset 0 1px #ffffff2e}.kd-limit-card__cta:hover{background:linear-gradient(135deg,#ffd733 0%,#f5c518 100%);transform:translateY(-2px)scale(1.02);box-shadow:0 8px 28px #f5c51861}.kd-audio-error{color:#f87171}.kd-audio-error p{font-family:var(--font-body);color:var(--kd-text-dim);font-size:.85rem;line-height:1.6}.kd-audio-error p span{opacity:.7;font-size:.78rem}.kd-result-content{flex-direction:column;gap:1.25rem;display:flex}.kd-result-hero{border-radius:var(--kd-radius-lg);background:radial-gradient(circle at 50% 0,#7c3aed1f,#0000 70%);border:1px solid #a78bfa33;place-items:center;min-height:180px;padding:1.5rem;display:grid;position:relative;overflow:hidden}.kd-result-hero__circle{opacity:.7;place-items:center;display:grid;position:absolute;inset:0}.kd-circle-svg{filter:drop-shadow(0 0 16px #7c3aed40);width:200px;height:200px}.kd-circle-note__label{fill:var(--kd-text-dim);font-family:var(--font-mono);font-size:9px}.kd-circle-note__dot{fill:#ffffff4d;stroke:#ffffff80;stroke-width:.75px}.kd-circle-note.is-active .kd-circle-note__dot{fill:currentColor;filter:drop-shadow(0 0 6px #fff9)drop-shadow(0 0 20px #7c3aed99)}.kd-circle-note.is-active .kd-circle-note__label{fill:currentColor}.kd-result-hero__copy{z-index:1;text-align:center;position:relative}.kd-result-hero__eyebrow{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--kd-accent-2);font-size:.6rem}.kd-result-hero__title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--kd-text);text-shadow:0 0 30px #7c3aed59;margin-top:.5rem;font-size:clamp(2.8rem,6vw,4.5rem);font-weight:800;line-height:1}.kd-result-hero__mode{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--kd-accent-2);margin-top:.5rem;font-size:.85rem;font-weight:600}.kd-result-hero__meta{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--kd-text-muted);margin-top:.6rem;font-size:.6rem}.kd-result-hero__bar{border-radius:var(--kd-radius-pill);background:var(--kd-border);width:min(140px,60vw);height:4px;margin:.75rem auto 0;overflow:hidden}.kd-result-hero__bar span{border-radius:inherit;background:linear-gradient(90deg, #a78bfa4d, var(--kd-accent-2));height:100%;display:block;box-shadow:0 0 12px #7c3aed66}.kd-candidates-shell{border-top:1px solid var(--kd-divider);padding:.75rem 0}.kd-candidates-shell__title{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--kd-text-muted);margin-bottom:.5rem;font-size:.68rem;font-weight:700}.kd-candidates-list{flex-direction:column;gap:.35rem;display:flex}.kd-candidate-row{border-radius:var(--kd-radius-sm);border:1px solid #0000;grid-template-columns:minmax(0,.8fr) minmax(0,.5fr) minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.5rem .6rem;transition:all .16s;display:grid}.kd-candidate-row:hover{border-color:var(--kd-border);background:#ffffff05}.kd-candidate-row.is-primary{background:linear-gradient(90deg,#7c3aed1a,#0000);border-color:#a78bfa40}.kd-candidate-row__key{font-family:var(--font-mono);color:var(--kd-text);font-size:.85rem}.kd-candidate-row__mode{font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--kd-accent-2);font-size:.65rem;font-weight:600}.kd-candidate-row__bar{border-radius:var(--kd-radius-pill);background:var(--kd-border);width:100%;height:3px;overflow:hidden}.kd-candidate-row__bar span{border-radius:inherit;background:linear-gradient(90deg, #a78bfa4d, var(--kd-accent-2));height:100%;transition:width .32s;display:block}.kd-candidate-row__pct{font-family:var(--font-mono);color:var(--kd-text-dim);font-size:.75rem}.kd-result-key-grid{flex-direction:column;gap:1rem;display:flex}.kd-result-key-card{border-radius:var(--kd-radius-lg);border:1px solid var(--kd-border);background:#ffffff05;padding:1.25rem}.kd-result-key-card--best{background:#7c3aed0a;border-color:#a78bfa33;animation:.3s ease-out both kdReveal}.kd-result-key-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.kd-result-key-name{font-family:var(--font-display);letter-spacing:-.02em;color:var(--kd-text);font-size:clamp(1.8rem,4vw,2.8rem);font-weight:800;line-height:1}.kd-result-key-type{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--kd-accent-2);vertical-align:super;margin-left:.3rem;font-size:.55rem}.kd-result-key-badge,.kd-audio-result-badge{border-radius:var(--kd-radius-pill);color:var(--kd-accent-2);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;background:#7c3aed14;border:1px solid #a78bfa40;padding:.3rem .7rem;font-size:.6rem;font-weight:600}.kd-result-key-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem;display:grid}.kd-result-key-stat{flex-direction:column;gap:.25rem;display:flex}.kd-result-key-stat-label{font-family:var(--font-body);color:var(--kd-text-muted);font-size:.68rem;font-weight:600}.kd-result-key-stat-value{font-family:var(--font-display);color:var(--kd-text);font-size:1.4rem;font-weight:700;line-height:1}.kd-result-key-stat-value--dim{color:var(--kd-text-dim)!important;font-size:.85rem!important}.kd-result-key-bar-wrap{border-radius:var(--kd-radius-pill);background:var(--kd-border);height:5px;margin-top:1rem;overflow:hidden}.kd-result-key-bar{border-radius:inherit;background:linear-gradient(90deg, var(--kd-accent-2), var(--kd-accent));height:100%;transition:width .6s cubic-bezier(.16,1,.3,1);box-shadow:0 0 10px #7c3aed4d}.kd-result-key-diatonic{border-top:1px solid var(--kd-divider);flex-wrap:wrap;gap:.4rem;margin-top:.75rem;padding-top:.75rem;display:flex}.kd-result-key-chip{border-radius:var(--kd-radius-sm);font-family:var(--font-mono);letter-spacing:.02em;align-items:center;padding:.35rem .6rem;font-size:.72rem;transition:all .16s;display:inline-flex}.kd-result-key-chip--exact{color:var(--kd-teal);background:#34d3991a;border:1px solid #34d39940;font-weight:600}.kd-result-key-chip--match{color:var(--kd-accent-2);background:#7c3aed1a;border:1px solid #a78bfa33}.kd-result-key-chip--neutral{border:1px solid var(--kd-border);color:var(--kd-text-dim);background:#ffffff08}.kd-result-key-recommendation,.kd-result-key-relative,.kd-result-key-warning{font-family:var(--font-body);color:var(--kd-text-dim);margin-top:.5rem;font-size:.82rem;line-height:1.5}.kd-result-key-relative strong{color:var(--kd-accent-2);font-weight:600}.kd-result-key-warning{border-radius:var(--kd-radius-sm);color:#fca5a5;background:#f871710f;border:1px solid #f8717133;padding:.6rem .75rem}.kd-result-key-warning strong{color:#f87171;font-weight:600}.kd-result-hint{text-align:center;font-family:var(--font-body);color:var(--kd-text-muted);font-size:.78rem}.kd-actions{border-top:1px solid var(--kd-divider);flex-wrap:wrap;gap:.6rem;padding-top:.75rem;display:flex}.kd-action-btn{border:1px solid var(--kd-border-strong);border-radius:var(--kd-radius-md);color:var(--kd-text-dim);font-family:var(--font-body);letter-spacing:.01em;cursor:pointer;white-space:nowrap;background:#ffffff08;align-items:center;gap:.5rem;padding:.75rem 1.2rem;font-size:.78rem;font-weight:600;transition:all .2s cubic-bezier(.34,1.56,.64,1);display:inline-flex;box-shadow:0 4px 14px #00000026}.kd-action-btn:hover{color:var(--kd-text);transform:translateY(-2px);box-shadow:0 8px 22px #00000040}.kd-action-btn:active{transform:translateY(0)scale(.98)}.kd-action-btn--escalas{color:var(--kd-teal);background:linear-gradient(135deg,#34d39914 0%,#34d39908 100%);border-color:#34d39966}.kd-action-btn--escalas:hover{color:#5aedb8;background:linear-gradient(135deg,#34d39924 0%,#34d3990f 100%);border-color:#34d399b3;box-shadow:0 8px 22px #34d39926}.kd-action-btn--progresion,.kd-action-btn--transpositor{color:var(--kd-accent-2);background:linear-gradient(135deg,#a78bfa14 0%,#a78bfa08 100%);border-color:#a78bfa66}.kd-action-btn--progresion:hover,.kd-action-btn--transpositor:hover{color:#c4b5fd;background:linear-gradient(135deg,#a78bfa24 0%,#a78bfa0f 100%);border-color:#a78bfab3;box-shadow:0 8px 22px #7c3aed26}.kd-action-btn--fav{color:var(--kd-gold);background:linear-gradient(135deg,#f5c5180f 0%,#f5c51805 100%);border-color:#f5c5184d}.kd-action-btn--fav:hover{background:linear-gradient(135deg,#f5c5181f 0%,#f5c5180d 100%);border-color:#f5c51899;box-shadow:0 8px 22px #f5c5181f}.kd-action-btn--share{color:var(--kd-teal);background:linear-gradient(135deg,#34d3990f 0%,#34d39905 100%);border-color:#34d39959}.kd-action-btn--share:hover{background:linear-gradient(135deg,#34d3991f 0%,#34d3990d 100%);border-color:#34d39999}.kd-action-btn--pdf{color:var(--kd-text-dim);background:0 0;border-color:#ffffff1f}.kd-action-btn--pdf:hover{color:var(--kd-text);border-color:#ffffff40}.kd-action-btn .kd-pdf-badge,.kd-action-btn .pg-pdf-badge{color:var(--text);letter-spacing:.06em;background:linear-gradient(135deg,#f97316,#ef4444);border-radius:4px;margin-left:.25rem;padding:.15rem .4rem;font-size:.55rem;font-weight:800}.kd-action-btn svg{flex-shrink:0;width:14px;height:14px}@keyframes kdReveal{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes kdFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes kdPulse{0%,to{opacity:1}50%{opacity:.5}}.kd-detecting .kd-detect-btn{pointer-events:none;animation:1.5s ease-in-out infinite kdPulse}@media (width<=768px){.kd-input-wrap{flex-direction:column}.kd-detect-btn{width:100%}.kd-result-hero__title{font-size:2.5rem}.kd-result-key-name{font-size:1.6rem}.kd-candidate-row{grid-template-rows:auto auto;grid-template-columns:1fr 1fr;gap:.4rem}.kd-candidate-row__bar{grid-column:1/-1}.kd-result-key-stats{grid-template-columns:1fr}.kd-actions{flex-direction:column}.kd-action-btn{justify-content:center;width:100%}}@media (width<=980px){.kd-topbar{flex-direction:column;align-items:flex-start;gap:.75rem}.kd-topbar__center{justify-content:flex-start;align-self:stretch}}body.light-mode .kd-input::-moz-placeholder{color:#00000059}body[data-theme=light] .kd-input::-moz-placeholder{color:#00000059}body.light-mode .kd-result-key-card,body[data-theme=light] .kd-result-key-card{border-color:var(--kd-border);background:#00000005}body.light-mode .kd-action-btn,body[data-theme=light] .kd-action-btn{color:#1a1a1ab3;background:#00000008;border-color:#0000001a}body.light-mode .kd-sugg-chip,body.light-mode .kd-pill,body.light-mode .kd-chord-btn,body[data-theme=light] .kd-sugg-chip,body[data-theme=light] .kd-pill,body[data-theme=light] .kd-chord-btn{color:#1a1a1ab3;background:#00000008;border-color:#0000001a}body.light-mode .kd-chord-tag,body[data-theme=light] .kd-chord-tag{color:#1a1a1a;background:#00000008;border-color:#7c3aed40}body.light-mode .kd-result-key-chip--neutral,body[data-theme=light] .kd-result-key-chip--neutral{color:#1a1a1a99;background:#00000008;border-color:#00000014}.kd-auth-card{text-align:center;background:linear-gradient(160deg,#050f0fb3 0%,#041018cc 100%);border:1px solid #00d4b42e;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;min-height:260px;padding:2.5rem 1.5rem;animation:.4s cubic-bezier(.16,1,.3,1) both kdLimitIn;display:flex;box-shadow:inset 0 1px #00d4b40d,0 8px 32px #0000004d}.kd-auth-card__icon{color:#00d4b4;background:#00d4b41a;border:1px solid #00d4b438;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;display:flex;box-shadow:0 0 16px #00d4b426}.kd-auth-card__icon svg{width:20px;height:20px}.kd-auth-card__title{font-family:var(--font-heading,var(--font-heading));color:var(--kd-text,#f0f0f8);letter-spacing:-.015em;font-size:.95rem;font-weight:800}.kd-auth-card__text{font-family:var(--font-body);color:var(--kd-text-dim);max-width:280px;font-size:.85rem;line-height:1.6}.kd-auth-card__cta{color:#0a0a12;font-family:var(--font-ui,var(--font-body));letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:linear-gradient(135deg,#00d4b4 0%,#00a38b 100%);border:none;border-radius:8px;margin-top:.25rem;padding:.6rem 1.5rem;font-size:.72rem;font-weight:800;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 20px #00d4b447,inset 0 1px #ffffff2e}.kd-auth-card__cta:hover{background:linear-gradient(135deg,#33ffd7 0%,#00d4b4 100%);transform:translateY(-2px)scale(1.02);box-shadow:0 8px 28px #00d4b461}body.light-mode #page-keydetector .tool-shell[data-tool=keydetector],body[data-theme=light] #page-keydetector .tool-shell[data-tool=keydetector]{--kd-text:#1a1a1a;--kd-text-dim:#1a1a1ab3;--kd-text-muted:#1a1a1a73;--kd-border:#00000014;--kd-border-strong:#00000024;--kd-divider:#0000000f;--kd-accent-glow:#7c3aed26;--kd-teal-glow:#34d3991f;--kd-gold-glow:#f5c5181f}body.light-mode .kd-input,body[data-theme=light] .kd-input{color:#1a1a1a;background:#fff;border-color:#0000001f}body.light-mode .kd-input:focus,body[data-theme=light] .kd-input:focus{border-color:#7c3aed80;box-shadow:0 0 0 3px #7c3aed14}body.light-mode .kd-input::-moz-placeholder{color:#00000059}body[data-theme=light] .kd-input::-moz-placeholder{color:#00000059}body.light-mode .kd-input::placeholder,body[data-theme=light] .kd-input::placeholder{color:#00000059}body.light-mode .kd-result-hero,body[data-theme=light] .kd-result-hero{background:radial-gradient(circle at 50% 0,#7c3aed0f,#0000 70%);border-color:#7c3aed26}body.light-mode .kd-result-key-card,body[data-theme=light] .kd-result-key-card{background:var(--glass-bg);border-color:var(--kd-border)}body.light-mode .kd-result-key-card--best,body[data-theme=light] .kd-result-key-card--best{background:#7c3aed08;border-color:#a78bfa33}body.light-mode .kd-empty-icon,body[data-theme=light] .kd-empty-icon{color:#00000040}body.light-mode .kd-audio-dropzone,body[data-theme=light] .kd-audio-dropzone{border-color:#0000001f}body.light-mode .kd-audio-dropzone.is-dragging,body.light-mode .kd-audio-dropzone:hover,body[data-theme=light] .kd-audio-dropzone.is-dragging,body[data-theme=light] .kd-audio-dropzone:hover{background:#7c3aed08;border-color:#7c3aed66}body.light-mode .kd-mode-tabs,body[data-theme=light] .kd-mode-tabs{background:var(--glass-bg);border-color:#0000001a}body.light-mode .kd-mode-tab.is-active,body[data-theme=light] .kd-mode-tab.is-active{color:#1a1a1a;background:#fff;box-shadow:0 2px 8px #00000014}body.light-mode .kd-detect-btn,body[data-theme=light] .kd-detect-btn,body.light-mode .kd-audio-analyze-btn,body[data-theme=light] .kd-audio-analyze-btn{color:#1a1a1a;background:#7c3aed14;border-color:#7c3aed4d}body.light-mode .kd-detect-btn:hover,body[data-theme=light] .kd-detect-btn:hover,body.light-mode .kd-audio-analyze-btn:hover,body[data-theme=light] .kd-audio-analyze-btn:hover{background:#7c3aed1f;border-color:#7c3aed80}body.light-mode .kd-action-btn,body[data-theme=light] .kd-action-btn{background:var(--glass-bg);color:#1a1a1ab3;border-color:#0000001a}body.light-mode .kd-action-btn:hover,body[data-theme=light] .kd-action-btn:hover{border-color:#7c3aed66}body.light-mode .kd-sugg-chip,body.light-mode .kd-pill,body.light-mode .kd-chord-btn,body[data-theme=light] .kd-sugg-chip,body[data-theme=light] .kd-pill,body[data-theme=light] .kd-chord-btn{background:var(--glass-bg);color:#1a1a1ab3;border-color:#0000001a}body.light-mode .kd-sugg-chip:hover,body.light-mode .kd-pill:hover,body.light-mode .kd-chord-btn:hover,body[data-theme=light] .kd-sugg-chip:hover,body[data-theme=light] .kd-pill:hover,body[data-theme=light] .kd-chord-btn:hover{color:#1a1a1a;border-color:#7c3aed66}body.light-mode .kd-chord-btn.selected,body.light-mode .kd-chord-btn.is-active,body.light-mode .kd-pill.active,body[data-theme=light] .kd-chord-btn.selected,body[data-theme=light] .kd-chord-btn.is-active,body[data-theme=light] .kd-pill.active{color:var(--text);background:#7c3aede6;border-color:#7c3aede6;box-shadow:0 0 12px #7c3aed33}body.light-mode .kd-chord-tag,body[data-theme=light] .kd-chord-tag{background:var(--glass-bg);color:#1a1a1a;border-color:#7c3aed40}body.light-mode .kd-result-key-chip--exact,body[data-theme=light] .kd-result-key-chip--exact{color:#15803d;background:#34d39914;border-color:#34d39933}body.light-mode .kd-result-key-chip--match,body[data-theme=light] .kd-result-key-chip--match{color:#7c3aed;background:#7c3aed0f;border-color:#7c3aed26}body.light-mode .kd-result-key-chip--neutral,body[data-theme=light] .kd-result-key-chip--neutral{background:var(--glass-bg);color:#1a1a1a99;border-color:#00000014}body.light-mode .kd-result-key-warning,body[data-theme=light] .kd-result-key-warning{color:#dc2626;background:#ef44440d;border-color:#ef444426}body.light-mode .kd-limit-card__cta,body[data-theme=light] .kd-limit-card__cta{color:#c2410c;background:linear-gradient(135deg,#f973161a,#ef444414)}body.light-mode .kd-audio-error,body[data-theme=light] .kd-audio-error{color:#dc2626}body.light-mode .kd-auth-card,body[data-theme=light] .kd-auth-card{background:#f4f4f5;border-color:#00d4b440;box-shadow:0 4px 16px #00d4b40d}body.light-mode .kd-auth-card__cta,body[data-theme=light] .kd-auth-card__cta{color:#008573;box-shadow:none;background:linear-gradient(135deg,#00d4b41a,#00a38b14);border:1px solid #00d4b433}body.light-mode .kd-auth-card__cta:hover,body[data-theme=light] .kd-auth-card__cta:hover{background:#00d4b426}[data-tool=keydetector]{--ana-accent:var(--purple);--ana-accent2:#a78bfa;--ana-accent-dim:#8b5cf61f;--ana-accent-border:#8b5cf659}[data-tool=chordfinder]{--ana-accent:var(--accent);--ana-accent2:#ff8f5c;--ana-accent-dim:#ff6b351f;--ana-accent-border:#ff6b3559}[data-tool=transpositor]{--ana-accent:var(--teal);--ana-accent2:#38b2ac;--ana-accent-dim:#3197951f;--ana-accent-border:#31979559}[data-tool=circulo]{--ana-accent:var(--gold);--ana-accent2:#fbbf24;--ana-accent-dim:#f59e0b1f;--ana-accent-border:#f59e0b59}[data-tool=tuner],[data-tool=recorder],[data-tool=metro],[data-tool=jam]{--ana-accent:var(--teal);--ana-accent2:#38b2ac;--ana-accent-dim:#3197951f;--ana-accent-border:#31979559}.ana-pill{background:var(--panel2);border:1px solid var(--border);border-radius:var(--radius-md);font-family:var(--font-mono);color:var(--text);cursor:pointer;transition:transform var(--dur-quick) var(--ease-liquid), background-color var(--dur-quick) var(--ease-liquid), border-color var(--dur-quick) var(--ease-liquid);-webkit-user-select:none;user-select:none;align-items:center;gap:.35rem;padding:.45rem .85rem;font-size:.75rem;font-weight:500;display:inline-flex}.ana-pill:hover{border-color:var(--ana-accent-border);transform:scale(1.04)}.ana-pill.active{background:var(--ana-accent-dim);border-color:var(--ana-accent);color:var(--ana-accent)}.ana-pill__remove{width:14px;height:14px;color:var(--text-muted);cursor:pointer;transition:color var(--dur-quick) var(--ease-liquid);justify-content:center;align-items:center;font-size:.65rem;display:none}.ana-pill.active:hover .ana-pill__remove{display:inline-flex}.ana-pill__remove:hover{color:var(--danger)}.ana-result-card{background:var(--panel);border:1px solid var(--border);border-left:3px solid var(--ana-accent);border-radius:var(--radius-md);animation:anaCardIn .28s var(--ease-decelerate) forwards;padding:1.25rem 1.5rem}.ana-result-card--secondary{border-left-color:var(--border);opacity:.85}.ana-result-title{font-family:var(--font-heading);color:var(--text);margin:0 0 .5rem;font-size:2.2rem;font-weight:700;line-height:1.1}.ana-result-title--secondary{opacity:.85;font-size:1.6rem}.ana-result-badge{background:var(--ana-accent-dim);border:1px solid var(--ana-accent-border);font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--ana-accent);border-radius:9999px;padding:.2rem .6rem;font-size:.65rem;font-weight:600;display:inline-block}.ana-confidence{margin-top:.75rem}.ana-confidence__track{background:var(--panel2);border-radius:3px;height:5px;overflow:hidden}.ana-confidence__fill{background:linear-gradient(90deg, var(--ana-accent), var(--ana-accent2));height:100%;transition:width .5s var(--ease-decelerate);border-radius:3px}.ana-confidence__label{font-family:var(--font-mono);color:var(--text-muted);justify-content:space-between;margin-top:.35rem;font-size:.6rem;display:flex}.ana-section-label{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);align-items:center;gap:.75rem;margin-bottom:.75rem;font-size:.6rem;font-weight:600;display:flex}.ana-section-label:after{content:"";background:linear-gradient(90deg, var(--border) 0%, transparent 100%);flex:1;height:1px}.ana-chip-row{flex-wrap:wrap;gap:.4rem;display:flex}.ana-chip{background:var(--panel2);border:1px solid var(--border);font-family:var(--font-mono);color:var(--text-secondary);transition:transform var(--dur-quick) var(--ease-liquid), border-color var(--dur-quick) var(--ease-liquid);border-radius:9999px;align-items:center;padding:.3rem .6rem;font-size:.7rem;display:inline-flex}.ana-chip--match{color:var(--teal);background:#3197951a;border-color:#3197954d}.ana-chip--root{color:var(--gold);background:#f59e0b1a;border-color:#f59e0b4d}.ana-chip--accent{background:var(--ana-accent-dim);border-color:var(--ana-accent-border);color:var(--ana-accent)}.ana-key-btn{background:var(--panel2);border:1px solid var(--border);border-radius:var(--radius-md);min-width:2.75rem;height:2.75rem;font-family:var(--font-mono);color:var(--text);cursor:pointer;transition:transform var(--dur-quick) var(--ease-spring), background-color var(--dur-quick) var(--ease-liquid), border-color var(--dur-quick) var(--ease-liquid);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;font-size:.85rem;font-weight:600;display:inline-flex}.ana-key-btn:hover{border-color:var(--ana-accent-border);background:var(--panel)}.ana-key-btn:active{transform:translateY(-2px)scale(1.08)}.ana-key-btn--active-from{border-color:var(--teal);color:var(--teal);background:#31979526}.ana-key-btn--active-to{border-color:var(--gold);color:var(--gold);background:#f59e0b26}.ana-key-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.ana-action-bar{border-top:1px solid var(--border);flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-top:1rem;display:flex}.ana-action-bar__btn{background:var(--panel2);border:1px solid var(--border);border-radius:var(--radius-md);font-family:var(--font-mono);letter-spacing:.02em;color:var(--text-secondary);cursor:pointer;transition:transform var(--dur-quick) var(--ease-liquid), border-color var(--dur-quick) var(--ease-liquid), color var(--dur-quick) var(--ease-liquid);align-items:center;gap:.35rem;padding:.5rem .9rem;font-size:.65rem;font-weight:500;text-decoration:none;display:inline-flex}.ana-action-bar__btn:hover{border-color:var(--ana-accent-border);color:var(--text);transform:translateY(-1px)}.ana-action-bar__btn--primary{background:linear-gradient(135deg, var(--ana-accent), var(--ana-accent2));color:#000;border-color:#0000;font-weight:600}.ana-action-bar__btn--primary:hover{box-shadow:0 4px 12px var(--ana-accent-dim);transform:translateY(-1px)scale(1.02)}.ana-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:3rem 1.5rem;display:flex}.ana-empty__icon{width:48px;height:48px;color:var(--text-muted);opacity:.5;margin-bottom:1rem}.ana-empty__title{font-family:var(--font-heading);color:var(--text-secondary);margin:0 0 .35rem;font-size:1rem;font-weight:600}.ana-empty__desc{font-family:var(--font-body);color:var(--text-muted);max-width:280px;margin:0;font-size:.8rem;line-height:1.5}.ana-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:.2rem;margin-bottom:1rem;padding-bottom:.6rem;padding-left:.2rem;display:flex}.ana-header__identity{flex-direction:column;gap:.1rem;display:flex}.ana-header__breadcrumb{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted);opacity:.6;align-items:center;gap:.4rem;font-size:.52rem;display:flex}.ana-header__crumb{color:var(--text-muted);transition:color .2s}.ana-header__crumb--active{color:var(--ana-accent);opacity:1;font-weight:700}.ana-header__crumb-sep{color:var(--text-muted);opacity:.5}.ana-header__title{font-family:var(--font-heading);letter-spacing:-.03em;background:linear-gradient(110deg, var(--text) 0%, var(--text) 40%, var(--ana-accent) 70%, var(--ana-accent2) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(1.2rem,1.8vw,1.6rem);font-weight:800;line-height:1.1}.ana-header__title em{font-style:italic}.ana-header__lede{font-family:var(--font-body);color:var(--text-muted);margin:0;font-size:.85rem;line-height:1.5}.ana-header__stats{align-items:center;gap:1rem;display:flex}.ana-stat{text-align:center}.ana-stat__num{font-family:var(--font-heading);color:var(--ana-accent);font-size:1.2rem;font-weight:700;line-height:1}.ana-stat__lbl{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-top:.25rem;font-size:.6rem}.ana-panel{background:linear-gradient(170deg, color-mix(in srgb, var(--ana-accent) 6%, #1c1c1eeb) 0%, color-mix(in srgb, var(--ana-accent) 2%, #141416f0) 50%, #121214f5 100%);border:1px solid #ffffff14;border-left:3px solid var(--ana-accent);-webkit-backdrop-filter:blur(20px);border-radius:16px;padding:1.5rem;animation:.4s cubic-bezier(.16,1,.3,1) both anaPanelIn;box-shadow:0 8px 32px #0006,0 2px 8px #0003}@keyframes anaPanelIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.ana-pill{transition:transform var(--dur-quick) var(--ease-liquid), background-color var(--dur-quick) var(--ease-liquid), border-color var(--dur-quick) var(--ease-liquid), box-shadow var(--dur-quick) var(--ease-liquid);position:relative;overflow:hidden}.ana-pill:before{content:"";background:radial-gradient(circle at center, var(--ana-accent-dim) 0%, transparent 70%);opacity:0;transition:opacity var(--dur-quick) var(--ease-liquid);pointer-events:none;position:absolute;inset:0}.ana-pill:hover{border-color:var(--ana-accent-border);box-shadow:0 0 20px var(--ana-accent-dim);transform:scale(1.04)}.ana-pill:hover:before{opacity:1}.ana-empty--cinematic{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:280px;padding:4rem 2rem;display:flex}.ana-empty__visual{width:80px;height:80px;color:var(--ana-accent);opacity:.15;margin-bottom:1.5rem;animation:3s ease-in-out infinite anaFloat}@keyframes anaFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.ana-empty__title{font-family:var(--font-heading);color:var(--text-secondary);letter-spacing:-.5px;margin:0 0 .5rem;font-size:1.4rem;font-weight:700}.ana-empty__hint{font-family:var(--font-body);color:var(--text-muted);max-width:320px;margin:0;font-size:.85rem;line-height:1.6}.ana-empty__hint strong{color:var(--ana-accent);font-weight:600}.ana-section-header{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;margin:1.5rem 0 1rem;padding-bottom:.75rem;display:flex}.ana-section-label{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ana-accent);white-space:nowrap;font-size:.6rem;font-weight:700}.ana-section-line{background:linear-gradient(90deg, var(--ana-accent-border) 0%, transparent 100%);flex:1;height:1px}.ana-result-hero{font-family:var(--font-heading);letter-spacing:-2px;background:linear-gradient(110deg, var(--ana-accent) 0%, var(--ana-accent2) 60%, var(--text) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:3.5rem;font-weight:800;line-height:1;animation:.5s cubic-bezier(.16,1,.3,1) both anaHeroIn}@keyframes anaHeroIn{0%{opacity:0;filter:blur(8px);transform:scale(.9)}to{opacity:1;filter:blur();transform:scale(1)}}body.light-mode .ana-header__lede,body[data-theme=light] .ana-header__lede,body.light-mode .ana-section-label,body[data-theme=light] .ana-section-label{color:#666}@keyframes anaCardIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes anaFadeInRight{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@media (width<=768px){.ana-result-title{font-size:1.8rem}.ana-result-title--secondary{font-size:1.4rem}.ana-key-btn{min-width:2.5rem;height:2.5rem;font-size:.8rem}.ana-action-bar{gap:.4rem}.ana-action-bar__btn{padding:.45rem .7rem;font-size:.6rem}}body.light-mode .ana-header,body[data-theme=light] .ana-header{border-bottom-color:#00000014}body.light-mode .ana-header__crumb,body[data-theme=light] .ana-header__crumb{color:#888}body.light-mode .ana-header__crumb--active,body[data-theme=light] .ana-header__crumb--active{color:var(--ana-accent)}body.light-mode .ana-header__title,body[data-theme=light] .ana-header__title{background:linear-gradient(110deg, #1a1a1a 0%, #1a1a1a 40%, var(--ana-accent) 70%, var(--ana-accent2) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}body.light-mode .ana-header__lede,body[data-theme=light] .ana-header__lede,body.light-mode .ana-section-label,body[data-theme=light] .ana-section-label{color:#666}body.light-mode .ana-panel,body[data-theme=light] .ana-panel{background:linear-gradient(170deg,#fff 0%,#f8f8f8 100%);border-color:#0000001f;box-shadow:0 4px 20px #00000014,0 1px 3px #0000000d}body.light-mode .ana-pill,body[data-theme=light] .ana-pill{color:#555;background:#0000000a;border-color:#0000001f}body.light-mode .ana-pill:hover,body[data-theme=light] .ana-pill:hover{border-color:var(--ana-accent-border);box-shadow:0 0 16px var(--ana-accent-dim)}body.light-mode .ana-pill.active,body[data-theme=light] .ana-pill.active{background:var(--ana-accent-dim);border-color:var(--ana-accent);color:var(--ana-accent)}body.light-mode .ana-section-header,body[data-theme=light] .ana-section-header{border-bottom-color:#00000014}body.light-mode .ana-section-line,body[data-theme=light] .ana-section-line{background:linear-gradient(90deg, var(--ana-accent-border) 0%, transparent 100%)}body.light-mode .ana-result-hero,body[data-theme=light] .ana-result-hero{background:linear-gradient(110deg, var(--ana-accent) 0%, var(--ana-accent2) 70%, #333 100%)}
