.portal-wrap{max-width:1050px;margin:38px auto;padding:0 18px 60px}.portal-panel{background:#fff;color:#24202b;border-radius:16px;padding:24px;margin:18px 0;box-shadow:0 10px 28px #0003}.portal-panel h1,.portal-panel h2{color:#4b0758;margin-bottom:12px}.portal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:15px}.portal-panel label{display:block;font-weight:650;margin:12px 0 5px}.portal-panel input,.portal-panel select,.portal-panel textarea{width:100%;padding:12px;border:1px solid #ccc;border-radius:8px;font:inherit;color:#222}.portal-panel button,.portal-btn{display:inline-block;background:#a90028;color:#fff;border:0;border-radius:8px;padding:12px 18px;margin-top:14px;font-weight:700;cursor:pointer;text-decoration:none}.portal-panel button.secondary{background:#4b0758}.notice{padding:12px;border-radius:8px;background:#eee;color:#333;margin:12px 0}.notice.error{background:#ffe1e1;color:#820000}.notice.success{background:#ddf8e6;color:#075b27}.portal-table{width:100%;border-collapse:collapse;color:#222}.portal-table th,.portal-table td{padding:10px;border-bottom:1px solid #ddd;text-align:left;vertical-align:top}.portal-table th{background:#f5eff7}.small-note{font-size:.92rem;color:#555}.status{font-weight:700;text-transform:capitalize}.portal-actions button{margin:3px;padding:8px 11px}.portal-nav{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0}.portal-nav a{color:#4b0758;font-weight:700}.song-card .song-info{min-width:0}.portal-panel audio{width:100%}@media(max-width:600px){.portal-panel{padding:16px}.portal-table{font-size:13px}.portal-table th,.portal-table td{padding:7px}}
.dynamic-songs{padding:24px 0}.dynamic-song-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.dynamic-song-grid .song-card{background:#fff;color:#222;border-radius:12px;overflow:hidden;padding:12px;min-width:0}.dynamic-song-grid .song-card>img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:8px}.dynamic-song-grid .song-info h3{color:#4b0758;margin:9px 0}.dynamic-song-grid audio{width:100%;margin:10px 0}.dynamic-song-grid .download-btn{display:block;text-align:center;background:#a90028;color:white;padding:10px;border-radius:7px;text-decoration:none}@media(max-width:900px){.dynamic-song-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.dynamic-song-grid{grid-template-columns:1fr}}
