body:has(.pia){background:linear-gradient(180deg,#e9f1fc 0%,#f4f9fe 55%,#fff 100%) no-repeat #fff !important;background-size:100% 440px !important;}
.pia{max-width:1500px;margin:0 auto;padding:60px clamp(16px,3vw,32px) 40px;font-family:'Inter',system-ui,sans-serif;color:#1c2733;}
.pia h1,.pia h2,.pia h3{font-family:'Manrope',sans-serif;}
.pia-hd{text-align:center;margin:10px 0 22px;}
.pia-hd h1{font-weight:800;font-size:clamp(28px,4vw,44px);letter-spacing:-1px;color:#15233a;margin:0 0 10px;}
.pia-hd h1 span{color:#0058be;}
.pia-hd p{color:#5b6b7a;font-size:16px;line-height:1.6;margin:0 auto;max-width:780px;}
.pia-cols{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;max-width:1500px;margin:0 auto;align-items:start;}
@media(max-width:980px){.pia-cols{grid-template-columns:1fr;}}
.pia-side{position:sticky;top:80px;}
.pia-app{background:#fff;border:1px solid #e8edf3;border-radius:20px;box-shadow:0 24px 60px -30px rgba(10,40,90,.4);padding:20px;}
.pia-bar{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;margin-bottom:16px;}
.pia-f{display:flex;flex-direction:column;gap:4px;}
.pia-f label{font-size:10.5px;font-weight:700;color:#5a6675;text-transform:uppercase;letter-spacing:.4px;}
.pia-f select{border:1.5px solid #dbe3ee;border-radius:9px;padding:8px 10px;font-size:13.5px;color:#33445a;background:#fff;cursor:pointer;font-family:inherit;}
.pia-oct{display:inline-flex;align-items:center;gap:8px;background:#eef2f7;border-radius:9px;padding:3px 6px;}
.pia-oct button{width:30px;height:30px;border:none;border-radius:7px;background:#fff;color:#0058be;font-size:17px;font-weight:800;cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.1);}
.pia-oct button:hover{background:#0058be;color:#fff;}
.pia-oct b{font-size:13.5px;color:#15233a;min-width:26px;text-align:center;}
/* Todos los controles a la MISMA altura y alineados por su base */
.pia-bar{align-items:flex-end !important;}
.pia-bar select,.pia-btn,.pia-oct,.pia-sf,.pia-vol{height:36px;box-sizing:border-box;}
.pia-vol{align-self:flex-end;display:flex;align-items:center;gap:8px;}
.pia-vol label{margin:0;font-size:15px;line-height:1;}
.pia-oct{display:inline-flex;align-items:center;}
.pia-btn{border:1.5px solid #dbe3ee;background:#fff;color:#33445a;font-weight:700;font-size:13px;padding:0 14px;border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;}
.pia-btn:hover{border-color:#0058be;color:#0058be;}
.pia-btn.on{background:#0058be;border-color:#0058be;color:#fff;}
.pia-btn.rec{background:#e11d48;border-color:#e11d48;color:#fff;}
.pia-btn:disabled{opacity:.45;cursor:default;}
.pia-vol{flex-direction:row;align-items:center;gap:8px;}
.pia-vol input{width:90px;accent-color:#0058be;}
.pia-midi{background:#16a34a;color:#fff;font-size:11.5px;font-weight:800;padding:5px 10px;border-radius:20px;}
.pia-midi[hidden]{display:none !important;}
.pia-kbwrap{overflow-x:auto;padding:4px 0 10px;-webkit-overflow-scrolling:touch;}
.pia-kb{position:relative;display:flex;height:200px;min-width:640px;user-select:none;touch-action:manipulation;}
.pia-w{position:relative;flex:1 0 44px;border:1px solid #c3ccd8;border-top:none;border-radius:0 0 7px 7px;background:linear-gradient(180deg,#fff 82%,#eef2f7);cursor:pointer;display:flex;align-items:flex-end;justify-content:center;padding-bottom:9px;font-size:11px;font-weight:700;color:#8b98a8;}
.pia-w.on{background:linear-gradient(180deg,#cfe3ff,#8fbdf5);color:#0a3d7a;}
.pia-b{position:absolute;top:0;width:60%;height:62%;background:linear-gradient(180deg,#33414f 70%,#131c26);border-radius:0 0 5px 5px;z-index:3;cursor:pointer;display:flex;align-items:flex-end;justify-content:center;padding-bottom:7px;font-size:9.5px;font-weight:700;color:#8fa0b3;}
.pia-b.on{background:linear-gradient(180deg,#0a6fe0,#0058be);color:#fff;}
.pia-hint{font-size:12.5px;color:#7a8797;text-align:center;margin:2px 0 6px;}
.pia-sf{font-size:11.5px;font-weight:700;padding:0 12px;border-radius:20px;background:#eef2f7;color:#7a8797;height:36px;display:inline-flex;align-items:center;white-space:nowrap;}
.pia-sf:empty{display:none;}
.pia-sf.load{background:#fff4e0;color:#b4530a;}
.pia-sf.real{background:#16a34a;color:#fff;}
.pia-songs{margin-top:20px;border-top:1px solid #eef2f6;padding-top:18px;}
.pia-songs h2{font-size:18px;color:#15233a;margin:0 0 8px;}
.pia-songs p{font-size:14px;color:#5b6b7a;margin:0 0 14px;line-height:1.6;}
.pia-songlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;}
.pia-song{background:#f7fafd;border:1px solid #e3eaf3;border-radius:12px;padding:12px 14px;}
.pia-song b{display:block;font-family:'Manrope',sans-serif;font-size:14.5px;color:#15233a;}
.pia-song small{display:block;font-size:11.5px;color:#8a97a8;margin:2px 0 9px;}
.pia-song button{border:1.5px solid #dbe3ee;background:#fff;color:#0058be;font-weight:700;font-size:12px;padding:6px 11px;border-radius:8px;cursor:pointer;margin-right:5px;}
.pia-song button:hover{background:#0058be;color:#fff;border-color:#0058be;}
.pia-songctl{display:flex;align-items:center;gap:12px;margin-top:14px;background:#eef4fd;border:1px solid #cfe0f5;border-radius:11px;padding:10px 14px;flex-wrap:wrap;}
.pia-songctl[hidden]{display:none !important;}
.pia-songctl b{color:#0058be;font-family:'Manrope',sans-serif;}
.pia-songprog{font-size:12.5px;color:#5a6675;}
.pia-map{margin-top:22px;border-top:1px solid #eef2f6;padding-top:18px;}
.pia-map h2{font-size:18px;color:#15233a;margin:0 0 8px;}
.pia-map p{font-size:14px;color:#5b6b7a;margin:0 0 12px;line-height:1.6;}
.pia-maprow{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px;}
.pia-mk{background:#f4f7fb;border:1px solid #e3eaf3;border-radius:8px;padding:6px 9px;font-size:12px;color:#33445a;}
.pia-mk b{color:#0058be;font-family:'Manrope',sans-serif;}
.pia-mk.blk{background:#33414f;border-color:#33414f;color:#dbe6f2;}
.pia-mk.blk b{color:#8fbdf5;}
.pia-ad{margin:24px auto;text-align:center;}
.pia-guide{margin:24px auto 0;color:#3a4a5a;line-height:1.7;}
.pia-guide h2{font-size:22px;color:#15233a;margin:0 0 12px;}
.pia-guide h3{font-size:18px;color:#15233a;margin:22px 0 10px;}
.pia-guide p{margin:0 0 14px;}
.pia-links{display:flex;gap:9px;flex-wrap:wrap;margin:16px 0 6px;}
.pia-links a{background:#eef4fd;color:#0058be;font-weight:700;font-size:13.5px;padding:9px 14px;border-radius:20px;text-decoration:none;}
.pia-links a:hover{background:#dce9fb;}
.pia-faq details{border:1px solid #e8edf3;border-radius:12px;padding:12px 16px;margin-bottom:10px;background:#fff;}
.pia-faq summary{font-weight:700;color:#28313f;cursor:pointer;}
.pia-faq p{margin:10px 0 0;color:#55636f;}