:root{--bg: #0099B9;--bg-deep: #005B6D;--card: rgba(0, 91, 109, .78);--card-soft: #EAFBFE;--text: #F4FEFF;--text-dark: #04313A;--muted: #D7F7FC;--muted-dark: #27616F;--primary: #0099B9;--primary-bright: #31D6EF;--primary-dark: #006F86;--accent: #B7F3FA;--line: rgba(255, 255, 255, .32);--shadow: 0 20px 60px rgba(0, 67, 82, .28)}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--text);background:radial-gradient(900px 520px at 50% -12%,rgba(255,255,255,.46),transparent 62%),radial-gradient(760px 480px at 86% 8%,rgba(49,214,239,.34),transparent 58%),linear-gradient(180deg,#20c4dd,#0099b9 46%,#006f86);min-height:100vh}body:before{content:"・－ ・ ・－・・ ・・－・";position:fixed;inset:auto 20px 20px auto;color:#ffffff1f;font-weight:800;letter-spacing:.18em;pointer-events:none;z-index:0}.container{position:relative;z-index:1;max-width:980px;margin:24px auto 80px;padding:0 16px}.site-header{position:relative;z-index:1;text-align:center;padding:42px 16px 18px}.hero-kicker{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid rgba(255,255,255,.42);border-radius:999px;color:#fff;background:#005b6d75;font-size:12px;font-weight:800;letter-spacing:.16em}.site-header h1{margin:14px 0 0;font-size:clamp(30px,5vw,56px);line-height:1.05;letter-spacing:.02em;text-shadow:0 3px 22px rgba(0,67,82,.34)}.caption{color:var(--muted);margin:14px auto 0;max-width:720px;line-height:1.8}.caption strong{color:#fff}.official-links,.site-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:18px}.profile-strip{position:relative;z-index:1;max-width:980px;margin:0 auto;padding:0 16px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.profile-card{padding:14px 16px;border:1px solid rgba(255,255,255,.34);border-radius:18px;background:#005b6d8a;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.profile-card .label{display:block;margin-bottom:4px;color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.profile-card strong{font-size:15px}.search-panel{position:sticky;top:8px;z-index:20;display:grid;gap:10px;margin-bottom:14px;padding:12px;border:1px solid rgba(255,255,255,.34);border-radius:20px;background:#005466d1;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.search-box{display:grid;grid-template-columns:1fr auto;gap:8px}input[type=search],select{width:100%;padding:13px 14px;border-radius:14px;border:1px solid rgba(255,255,255,.34);background:#004856f0;color:var(--text);outline:none}input[type=search]::placeholder{color:#f4feffad}input[type=search]:focus,select:focus{border-color:#fff;box-shadow:0 0 0 3px #b7f3fa38}#clearBtn{padding:0 14px;border-radius:14px;border:1px solid rgba(255,255,255,.34);background:#004856f0;color:var(--muted);cursor:pointer;font-size:18px}#clearBtn:hover{color:#fff;border-color:#fff}.sort-box{display:flex;align-items:center;justify-content:flex-end;gap:8px;color:var(--muted);font-size:13px}.sort-box select{width:auto;min-width:140px;padding:9px 12px}.stats,#stats{margin:12px 4px;color:var(--muted);font-size:13px}.results{list-style:none;padding:0;margin:0;display:grid;gap:12px}.card{background:linear-gradient(135deg,#fffffff0,#eafbfefa);border:1px solid rgba(0,153,185,.62);border-radius:20px;padding:12px;display:grid;gap:8px;color:var(--text-dark);box-shadow:0 14px 40px #00435238}.group-header{display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:700;margin:4px}.group-title{display:flex;align-items:center;gap:8px;font-weight:800}.group-header .date{color:var(--muted-dark);font-size:12px;white-space:nowrap}.count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 8px;border-radius:999px;background:#0099b91f;color:var(--primary-dark);border:1px solid rgba(0,153,185,.3);font-size:12px}.song-row{display:grid;grid-template-columns:120px 1fr auto;gap:12px;align-items:center;padding:10px;border-top:1px solid rgba(0,153,185,.16);border-radius:14px}.card .song-row:first-of-type{border-top:none}.song-row:hover{background:#0099b914}.thumb{position:relative;width:120px;height:68px;border-radius:12px;overflow:hidden;background:#005b6d}.thumb img{width:100%;height:100%;object-fit:cover;display:block}.badge{position:absolute;right:6px;bottom:6px;font-size:12px;padding:2px 6px;background:#004856d1;border:1px solid rgba(183,243,250,.48);border-radius:8px;color:#fff}.title{font-size:15px;margin:0;font-weight:700}.sub{color:var(--muted-dark);font-size:12px;margin:4px 0 0}.actions{display:flex;gap:8px;align-items:center}.btn{display:inline-block;padding:9px 13px;border-radius:999px;border:1px solid rgba(255,255,255,.36);text-decoration:none;color:#fff;background:#004856eb;cursor:pointer;font-weight:700;line-height:1}.btn:hover{filter:brightness(1.12);transform:translateY(-1px)}.btn.primary{border-color:#b7f3fab8;background:linear-gradient(135deg,#0099b9,#006f86)}.empty{color:var(--muted);margin:12px 4px}.site-footer{position:relative;z-index:1;text-align:center;color:var(--muted);padding:28px 16px 36px;border-top:1px solid rgba(255,255,255,.22)}.site-footer small{display:block;margin-top:14px}button[data-link]{display:none!important}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#00303abd;display:flex;justify-content:center;align-items:center;z-index:1000;padding:18px}.modal.hidden{display:none}.modal-content{background:#005b6d;color:#f4feff;padding:2rem;border:1px solid rgba(183,243,250,.44);border-radius:18px;max-width:680px;max-height:82vh;overflow-y:auto;text-align:left;line-height:1.75;box-shadow:var(--shadow)}.modal-content h2,.modal-content h3{margin-top:1em;margin-bottom:.5em;color:var(--accent)}.is-hidden{display:none!important}.show-more{display:flex;justify-content:center;padding:8px 0 4px}.show-more-btn{min-width:200px}.hl{background:linear-gradient(transparent 58%,#facc1594 58%);border-radius:2px;padding:0 1px}@media (max-width: 780px){.profile-strip{grid-template-columns:1fr}.search-panel{position:sticky;top:6px}.song-row{grid-template-columns:1fr;gap:8px}.thumb{width:100%;height:auto;aspect-ratio:16 / 9}.actions{justify-content:stretch}.btn{flex:1 1 auto;text-align:center;padding:12px 16px;font-size:15px}.site-header{padding-top:30px}.sort-box{justify-content:stretch}.sort-box select{flex:1}.group-header{align-items:flex-start}.group-header .date{white-space:normal}.show-more-btn{width:100%}}
