.dps-brand-link{gap:.55rem}.dps-brand-icon{flex-shrink:0;width:1.5rem;height:1.5rem;color:var(--dp-text)}.dps-apps-nav{display:inline-flex;flex-wrap:nowrap;align-items:center;gap:.4rem}.dps-apps-nav-link{display:inline-flex;flex-shrink:0;line-height:0;border-radius:.55rem;transition:transform .15s ease,opacity .15s ease}.dps-apps-nav-link:hover{transform:translateY(-1px);opacity:.9}.dps-apps-nav-icon{width:2rem;height:2rem;border-radius:.5rem}@media (max-width:480px){.dps-apps-nav{gap:.28rem}.dps-apps-nav-icon{width:1.7rem;height:1.7rem}.dps-brand-icon{width:1.25rem;height:1.25rem}}.dps-page .dps-hero{padding-top:clamp(2rem,5vw,3.5rem);padding-bottom:clamp(1.5rem,4vw,2.5rem);background:radial-gradient(1200px 420px at 12% -10%,rgba(37,99,235,.08),transparent 60%),radial-gradient(900px 380px at 88% 0,rgba(15,118,110,.07),transparent 55%),var(--dp-bg)}.dps-hero-inner{display:grid;grid-gap:1.25rem;gap:1.25rem}.dps-hero-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.25rem}.dps-note{margin:0;max-width:40rem;font-size:.95rem;line-height:1.55;color:var(--dp-muted)}.dps-upload{max-width:36rem}.dps-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.dps-browse{margin-top:.35rem}.dps-browse-bar{position:-webkit-sticky;position:sticky;top:.35rem;z-index:5;display:flex;flex-wrap:wrap;align-items:stretch;gap:.75rem;margin:0 0 1rem;padding:.65rem .7rem;border-radius:16px;background:hsla(0,0%,98%,.92);border:1px solid var(--dp-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.dps-search{position:relative;flex:1 1 16rem;min-width:0}.dps-search-icon{position:absolute;left:.85rem;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.dps-search input{width:100%;box-sizing:border-box;padding:.72rem .95rem .72rem 2.45rem;border:1px solid var(--dp-border);border-radius:14px;background:var(--dp-surface);color:var(--dp-text);font:inherit;box-shadow:0 1px 0 rgba(15,23,42,.02)}.dps-search input:focus{outline:2px solid rgba(15,23,42,.22);outline-offset:1px}.dps-sort{display:inline-flex;padding:.2rem;border-radius:14px;background:rgba(15,23,42,.05);border:1px solid var(--dp-border)}.dps-sort-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--dp-muted);font:inherit;font-size:.88rem;font-weight:600;padding:.55rem .9rem;border-radius:11px;cursor:pointer}.dps-sort-btn.is-active{background:var(--dp-surface);color:var(--dp-text);box-shadow:0 1px 3px rgba(15,23,42,.08)}.dps-cats{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 .85rem}.dps-cat{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .75rem;border-radius:999px;border:1px solid var(--dp-border);background:var(--dp-surface);color:var(--dp-muted);font:inherit;font-size:.86rem;font-weight:600;cursor:pointer;transition:color .15s ease,border-color .15s ease,background .15s ease}.dps-cat:hover{color:var(--dp-text);border-color:rgba(15,23,42,.18)}.dps-cat.is-active{color:var(--dp-text);border-color:rgba(15,23,42,.28);background:rgba(15,23,42,.06)}.dps-cat-icon{width:1.25rem;height:1.25rem;border-radius:.35rem}.dps-cat--voicings.is-active{background:rgba(37,99,235,.1);border-color:rgba(37,99,235,.28);color:#1e3a8a}.dps-cat--arpeggios.is-active{background:rgba(13,148,136,.1);border-color:rgba(13,148,136,.28);color:#115e59}.dps-cat--modes.is-active{background:rgba(217,119,6,.12);border-color:rgba(217,119,6,.3);color:#9a3412}.dps-cat--pentatonics.is-active{background:rgba(5,150,105,.1);border-color:rgba(5,150,105,.28);color:#065f46}.dps-results-meta{margin:0 0 1.1rem;font-size:.82rem;color:#94a3b8;font-weight:500}.dps-rail{margin:0 0 1.75rem}.dps-rail-title{margin:0 0 .85rem;font-size:1.05rem;letter-spacing:-.02em;font-weight:700}.dps-rail-title--catalog{margin-top:.35rem;display:inline-flex;align-items:center;gap:.5rem}.dps-section-icon{width:1.65rem;height:1.65rem;border-radius:.45rem}.dps-app-section{margin:0 0 2rem}.dps-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(16.5rem,1fr));grid-gap:.95rem;gap:.95rem}.dps-card-grid--rail{grid-template-columns:repeat(auto-fill,minmax(15.5rem,1fr))}.dps-card-grid.is-loading{opacity:.65;transition:opacity .2s ease}.dps-card{display:flex;flex-direction:column;gap:.45rem;padding:1.05rem 1.1rem 1rem;background:var(--dp-surface);border-top:1px solid var(--dp-border);border-radius:16px;box-shadow:0 8px 24px rgba(15,23,42,.04);border:1px solid var(--dp-border);border-top:3px solid rgba(15,23,42,.12);min-height:100%}.dps-card--voicings{border-top-color:#3b82f6}.dps-card--arpeggios{border-top-color:#14b8a6}.dps-card--modes{border-top-color:#f59e0b}.dps-card--pentatonics{border-top-color:#10b981}.dps-card-top{display:flex;align-items:center;gap:.55rem}.dps-card-icon{width:2.25rem;height:2.25rem;border-radius:.65rem;box-shadow:0 4px 10px rgba(15,23,42,.1)}.dps-card-app{font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--dp-muted)}.dps-card-title{margin:.15rem 0 0;font-size:1.05rem;letter-spacing:-.02em;line-height:1.3}.dps-card-desc{margin:0;font-size:.9rem;line-height:1.45;color:var(--dp-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}.dps-card-desc--empty{visibility:hidden}.dps-card-meta{margin:0;font-size:.78rem;color:#94a3b8}.dps-card-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.55rem;margin-top:auto;padding-top:.55rem}.dps-vote{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .65rem;border-radius:999px;border:1px solid var(--dp-border);background:rgba(15,23,42,.03);color:var(--dp-muted);font:inherit;font-size:.85rem;font-weight:700;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.dps-vote:hover:not(:disabled){color:var(--dp-text);border-color:rgba(15,23,42,.2)}.dps-vote:disabled{opacity:.6;cursor:wait}.dps-vote--on{background:rgba(15,23,42,.9);border-color:rgba(15,23,42,.9);color:#fff}.dps-vote-arrow{font-size:.65rem;line-height:1}.dps-card-dl{padding:.45rem .85rem;font-size:.85rem}.dps-form{margin-top:1.25rem;display:flex;flex-direction:column;gap:1rem}.dps-form-hp{position:absolute;left:-9999px;height:0;overflow:hidden}.dps-field label{display:block;font-size:.9rem;font-weight:600;margin-bottom:.35rem;color:var(--dp-text)}.dps-field input[type=text],.dps-field select,.dps-field textarea,.dps-filter select{width:100%;box-sizing:border-box;padding:.65rem .85rem;border:1px solid var(--dp-border);border-radius:12px;background:var(--dp-surface);color:var(--dp-text);font:inherit}.dps-field input[type=file]{width:100%;font:inherit}.dps-field input:focus,.dps-field select:focus,.dps-field textarea:focus,.dps-filter select:focus{outline:2px solid rgba(15,23,42,.25);outline-offset:1px}.dps-hint{margin:.4rem 0 0;font-size:.85rem;color:var(--dp-muted)}.dps-detected-app{display:flex;align-items:center;gap:.75rem;padding:.75rem .9rem;border-radius:14px;border:1px solid var(--dp-border);background:rgba(15,23,42,.03)}.dps-detected-app-icon{width:1.75rem;height:1.75rem;border-radius:.45rem}.dps-detected-app-label{margin:0;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--dp-muted)}.dps-detected-app-name{margin:.1rem 0 0;font-size:.95rem;font-weight:600;color:var(--dp-text)}.dps-actions{margin-top:.25rem}.dps-status{min-height:1.5rem}.dps-status-msg{margin:0;font-size:.95rem;line-height:1.45}.dps-status-msg--ok{color:#166534}.dps-status-msg--warn{color:#92400e}.dps-status-msg--err{color:#b91c1c}.dps-filter{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;margin:0 0 1.25rem}.dps-filter label{font-size:.9rem;font-weight:600}.dps-filter select{width:auto;min-width:14rem}.dps-empty{margin:0;color:var(--dp-muted);line-height:1.55}.dps-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.85rem}.dps-item{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--dp-border)}.dps-item-main{flex:1 1 16rem;min-width:0}.dps-item-title{margin:0 0 .35rem;font-size:1.05rem;letter-spacing:-.02em}.dps-item-meta{margin:0 0 .4rem;font-size:.85rem;color:var(--dp-muted)}.dps-item-desc{margin:0;font-size:.95rem;line-height:1.5;color:var(--dp-muted);white-space:pre-wrap}.dps-mod-back{margin:0 0 1rem;font-size:.9rem}.dps-mod-back a{color:var(--dp-muted)}.dps-mod-gate{max-width:22rem}.dps-mod-toolbar{margin:0 0 1.25rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.dps-mod-tabs{display:flex;flex-wrap:wrap;gap:.45rem}.dps-mod-edit{margin:0}.dps-mod-item{align-items:flex-start}.dps-mod-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.dps-howto-inline{margin:.35rem 0 1.1rem}.dps-howto-trigger--ghost{padding:0;border:none;background:transparent;color:var(--dp-accent-soft,#1d4ed8);font:inherit;font-weight:600;font-size:.95rem;text-decoration:underline;text-underline-offset:.18em;cursor:pointer}.dps-howto-trigger--ghost:hover{color:var(--dp-accent,#1e3a8a)}.dps-howto-dialog{max-width:calc(100vw - 1.25rem);width:min(40rem,100%);max-height:calc(100vh - 1.25rem);margin:auto;padding:0;border:1px solid var(--dp-border);border-radius:18px;background:var(--dp-surface,#fff);overflow:hidden;box-shadow:0 28px 60px rgba(15,23,42,.22)}.dps-howto-dialog::-webkit-backdrop{background:rgba(15,23,42,.48);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dps-howto-dialog::backdrop{background:rgba(15,23,42,.48);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dps-howto-inner{display:flex;flex-direction:column;max-height:min(92vh,720px)}.dps-howto-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:1.1rem 1.2rem .85rem;border-bottom:1px solid var(--dp-border);background:#f8fafc}.dps-howto-kicker{margin:0 0 .2rem;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dp-muted)}.dps-howto-title{margin:0;font-size:1.15rem;font-weight:700;letter-spacing:-.02em;color:var(--dp-text);line-height:1.3}.dps-howto-close{flex-shrink:0;width:2.25rem;height:2.25rem;border:1px solid var(--dp-border);border-radius:999px;background:#fff;color:var(--dp-text);font-size:1.35rem;line-height:1;cursor:pointer}.dps-howto-close:hover{background:#f1f5f9}.dps-howto-body{display:grid;grid-gap:1.1rem;gap:1.1rem;padding:1.15rem 1.2rem .5rem;overflow:auto}@media (min-width:640px){.dps-howto-body{grid-template-columns:11.5rem 1fr;align-items:center;gap:1.35rem}}.dps-howto-visual{display:flex;justify-content:center}.dps-howto-stepnum{margin:0 0 .35rem;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--dp-accent-soft,#2563eb)}.dps-howto-step-title{margin:0 0 .45rem;font-size:1.2rem;font-weight:700;letter-spacing:-.02em;color:var(--dp-text)}.dps-howto-step-body{margin:0;font-size:.98rem;line-height:1.55;color:var(--dp-muted)}.dps-howto-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1.2rem 1.15rem;border-top:1px solid var(--dp-border);background:#fafafa}.dps-howto-dots{display:flex;gap:.4rem}.dps-howto-dot{width:.55rem;height:.55rem;border:none;border-radius:999px;background:#cbd5e1;cursor:pointer;padding:0}.dps-howto-dot.is-active{background:var(--dp-accent,#1e3a8a);width:1.15rem}.dps-howto-nav{display:flex;flex-wrap:wrap;gap:.5rem}.dps-howto-nav .dp-btn:disabled{opacity:.45;cursor:not-allowed}.dps-phone{width:10.5rem;border-radius:1.35rem;padding:.45rem;background:linear-gradient(160deg,#1e293b,#0f172a);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.08),0 14px 28px rgba(15,23,42,.28)}.dps-phone-notch{width:2.6rem;height:.28rem;margin:.15rem auto .45rem;border-radius:999px;background:#334155}.dps-phone-screen{min-height:13.5rem;border-radius:1rem;padding:.65rem;background:#0b1220;color:#e2e8f0}.dps-phone-screen--center{display:flex;align-items:center;justify-content:center}.dps-phone-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:.65rem}.dps-phone-bar-title{font-size:.78rem;font-weight:700;letter-spacing:-.02em}.dps-phone-bar-icon{width:1.35rem;height:1.35rem;display:inline-flex;align-items:center;justify-content:center;border-radius:.4rem;font-size:.72rem;color:#94a3b8;background:rgba(148,163,184,.12)}.dps-phone-bar-icon.is-active,.dps-phone-pulse{color:#fbbf24;background:rgba(251,191,36,.18);box-shadow:0 0 0 2px rgba(251,191,36,.35)}.dps-phone-card{border-radius:.7rem;padding:.55rem .6rem;margin-bottom:.45rem;background:#151f33;border:1px solid rgba(148,163,184,.15)}.dps-phone-card--dim{opacity:.55}.dps-phone-folder{font-size:.72rem;font-weight:700;color:#93c5fd;margin-bottom:.25rem}.dps-phone-row{font-size:.7rem;font-weight:600}.dps-phone-row--muted{margin-top:.15rem;font-weight:500;color:#94a3b8;font-size:.62rem}.dps-phone-menu{margin-top:.35rem;border-radius:.75rem;overflow:hidden;border:1px solid rgba(148,163,184,.2);background:#151f33}.dps-phone-menu-item{padding:.55rem .65rem;font-size:.68rem;font-weight:600;border-bottom:1px solid rgba(148,163,184,.12)}.dps-phone-menu-item:last-child{border-bottom:none}.dps-phone-menu-item.is-highlight{background:rgba(251,191,36,.16);color:#fde68a}.dps-phone-hint{margin:.7rem 0 0;font-size:.58rem;line-height:1.4;color:#94a3b8}.dps-file-badge{display:flex;flex-direction:column;align-items:center;gap:.4rem;text-align:center;padding:.75rem}.dps-file-ext{display:inline-flex;align-items:center;justify-content:center;width:3.2rem;height:3.2rem;border-radius:.85rem;font-size:.72rem;font-weight:800;color:#0f172a;background:linear-gradient(145deg,#fbbf24,#f59e0b)}.dps-file-name{font-size:.55rem;line-height:1.35;color:#cbd5e1;word-break:break-all}.dps-file-ok{font-size:.62rem;font-weight:700;color:#6ee7b7}.dps-phone--web .dps-phone-screen{background:#f1f5f9;color:#0f172a}.dps-web-form{gap:.55rem;padding-top:.35rem}.dps-web-field,.dps-web-form{display:flex;flex-direction:column}.dps-web-field{gap:.2rem;font-size:.58rem;font-weight:600;color:#64748b}.dps-web-input{border-radius:.45rem;border:1px solid #cbd5e1;background:#fff;padding:.4rem .45rem;font-size:.62rem;font-weight:600;color:#0f172a}.dps-web-input--file{border-style:dashed;color:#1d4ed8;background:#eff6ff}.dps-web-btn{margin-top:.25rem;text-align:center;border-radius:.55rem;padding:.5rem;font-size:.68rem;font-weight:700;color:#f8fafc;background:#0f172a}