.qs-overlay{z-index:9999;-webkit-backdrop-filter:blur();backdrop-filter:blur();opacity:0;pointer-events:none;background:0 0;justify-content:center;align-items:flex-end;transition:opacity .45s cubic-bezier(.16,1,.3,1),background .45s,-webkit-backdrop-filter .45s,backdrop-filter .45s;display:flex;position:fixed;inset:0}.qs-overlay--open{opacity:1;pointer-events:auto;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0000008c}.qs-overlay--closing{opacity:0;pointer-events:none;transition:opacity .3s}.qs-overlay--closing .qs-sheet{transform:translateY(110%)}.qs-sheet{background:rgba(var(--panel-rgb), .97);border-top:1px solid rgba(var(--fg-rgb), .07);width:100%;max-width:680px;box-shadow:0 -20px 60px #00000080, 0 0 0 1px rgba(var(--fg-rgb), .03), inset 0 1px 0 rgba(var(--fg-rgb), .04);border-radius:28px 28px 0 0;padding:0 24px 28px;transition:transform .65s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden;transform:translateY(110%)}.qs-overlay--open .qs-sheet{transform:translateY(0)}.qs-handle{cursor:grab;-webkit-tap-highlight-color:transparent;justify-content:center;padding:12px 0 8px;display:flex}.qs-handle span{background:rgba(var(--fg-rgb), .18);border-radius:2px;width:40px;height:4px;transition:background .2s}.qs-handle:active span{background:rgba(var(--fg-rgb), .35)}.qs-skip{letter-spacing:2px;text-transform:uppercase;color:var(--muted,#6b7280);cursor:pointer;z-index:2;background:0 0;border:none;border-radius:6px;padding:6px 10px;font-family:DM Mono,monospace;font-size:10px;font-weight:500;transition:color .2s,background .2s;position:absolute;top:16px;right:20px}.qs-skip:hover{color:var(--text,#f0f0ef);background:rgba(var(--fg-rgb), .05)}.qs-header{text-align:center;margin-bottom:20px;padding-top:4px}.qs-title{font-family:var(--font-heading);color:var(--text,#f0f0ef);letter-spacing:-.02em;margin:0 0 6px;font-size:1.5rem;font-weight:600}.qs-subtitle{font-family:var(--font-body);color:var(--muted,#6b7280);margin:0;font-size:.85rem;font-weight:400}.qs-grid{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px;display:grid}.qs-card{text-align:left;border:1px solid rgba(var(--fg-rgb), .06);background:linear-gradient(145deg, rgba(var(--fg-rgb), .04), rgba(var(--fg-rgb), .01));cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:20px;flex-direction:column;align-items:flex-start;padding:22px 20px 18px;transition:transform .25s cubic-bezier(.16,1,.3,1),border-color .25s,box-shadow .25s;animation:.55s cubic-bezier(.16,1,.3,1) both qsCardIn;display:flex;position:relative;overflow:hidden}.qs-card:first-child{animation-delay:.15s}.qs-card:nth-child(2){animation-delay:.28s}@keyframes qsCardIn{0%{opacity:0;transform:translateY(28px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.qs-card:hover{border-color:rgba(var(--fg-rgb), .15);transform:translateY(-5px)scale(1.02);box-shadow:0 12px 32px #00000059}.qs-card:active{transition-duration:.1s;transform:scale(.98)}.qs-card__glow{border-radius:inherit;opacity:0;pointer-events:none;transition:opacity .3s;position:absolute;inset:0}.qs-card--analyzer .qs-card__glow{background:radial-gradient(circle at 50% 0,#00d4b414,#0000 70%)}.qs-card--progresiones .qs-card__glow{background:radial-gradient(circle at 50% 0,#f59e0b14,#0000 70%)}.qs-card:hover .qs-card__glow{opacity:1}.qs-card__icon{border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:14px;animation:.5s cubic-bezier(.34,1.56,.64,1) both qsIconIn;display:flex}.qs-card:first-child .qs-card__icon{animation-delay:.3s}.qs-card:nth-child(2) .qs-card__icon{animation-delay:.42s}@keyframes qsIconIn{0%{opacity:0;transform:scale(.6)rotate(-8deg)}to{opacity:1;transform:scale(1)rotate(0)}}.qs-card--analyzer .qs-card__icon{color:#00d4b4;background:linear-gradient(135deg,#00d4b41f,#00d4b40a);border:1px solid #00d4b426}.qs-card--progresiones .qs-card__icon{color:#f59e0b;background:linear-gradient(135deg,#f59e0b1f,#f59e0b0a);border:1px solid #f59e0b26}.qs-card__title{font-family:var(--font-heading);color:var(--text,#f0f0ef);letter-spacing:-.01em;margin:0 0 5px;font-size:1rem;font-weight:600}.qs-card__desc{font-family:var(--font-body);color:var(--muted,#6b7280);margin:0 0 14px;font-size:.78rem;font-weight:400;line-height:1.45}.qs-card__preview{width:100%;margin-top:auto}.qs-wave{width:100%;height:32px;color:var(--teal,#00d4b4);opacity:.6}.qs-chords{flex-wrap:wrap;gap:6px;display:flex}.qs-chord{color:var(--gold,#f59e0b);letter-spacing:.5px;background:#f59e0b14;border:1px solid #f59e0b1f;border-radius:6px;padding:3px 8px;font-family:DM Mono,monospace;font-size:.65rem;font-weight:500}.qs-card__arrow{color:rgba(var(--fg-rgb), .15);transition:color .2s,transform .25s;position:absolute;top:18px;right:16px}.qs-card:hover .qs-card__arrow{color:rgba(var(--fg-rgb), .6);transform:translate(3px)}.qs-footer{text-align:center;padding-top:4px}.qs-footer__btn{font-family:var(--font-body);color:var(--muted,#6b7280);border:1px solid rgba(var(--fg-rgb), .08);cursor:pointer;background:0 0;border-radius:100px;margin-bottom:8px;padding:10px 22px;font-size:.82rem;font-weight:500;transition:all .2s}.qs-footer__btn:hover{color:var(--text,#f0f0ef);border-color:rgba(var(--fg-rgb), .18);background:rgba(var(--fg-rgb), .03)}.qs-footer__hint{letter-spacing:1.5px;text-transform:uppercase;color:rgba(var(--fg-rgb), .2);font-family:DM Mono,monospace;font-size:.6rem;display:block}@media (width<=640px){.qs-sheet{border-radius:22px 22px 0 0;max-width:100%;padding:0 18px 24px}.qs-grid{grid-template-columns:1fr;gap:12px}.qs-title{font-size:1.3rem}.qs-subtitle{font-size:.8rem}.qs-card{flex-direction:row;align-items:center;gap:14px;padding:18px 16px 14px}.qs-card__icon{border-radius:12px;width:42px;height:42px;margin-bottom:0}.qs-card__content{flex:1;min-width:0}.qs-card__title{margin-bottom:3px;font-size:.95rem}.qs-card__desc{margin-bottom:0;font-size:.72rem}.qs-card__preview,.qs-card__arrow{display:none}.qs-footer__btn{padding:9px 18px;font-size:.78rem}}@media (prefers-reduced-motion:reduce){.qs-overlay,.qs-sheet,.qs-card,.qs-card__icon,.qs-card__arrow,.qs-handle span{transition:none!important;animation:none!important}.qs-card,.qs-card__icon{opacity:1;transform:none}}
