:root{font-family:system-ui,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;color:#f4f3e9;background:#081b14;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:linear-gradient(#081b14,#11251d)}button,input{font:inherit}button{cursor:pointer}.shell{width:100%;max-width:540px;margin:auto;padding-bottom:30px}.top{padding:22px 16px 15px}.eyebrow{font-size:10px;letter-spacing:.15em;color:#b7cbb9;font-weight:700}.headline-row h1{font-size:clamp(25px,6.5vw,33px);line-height:1.2;margin:8px 0 0;letter-spacing:-.055em}.hero{width:100%;aspect-ratio:1672/941;background:radial-gradient(circle,#785038,#1c1b15 65%,#0a1912);overflow:hidden}.hero img{display:block;width:100%;height:100%;object-fit:contain}.hero.no-image:after{content:"모닥불 사진 등록 후 표시됩니다";display:grid;place-items:center;height:100%;color:#d7c2a5;font-size:13px}.controls-panel,.download-card,.playlist{margin:15px 13px 0;border-radius:22px}.controls-panel{padding:20px 17px;background:#10241c;border:1px solid #354239}.small-heading{font-size:11px;font-weight:750;letter-spacing:.14em;color:#bcd1c0;display:flex;justify-content:space-between}.now-playing-row{display:flex;justify-content:space-between;align-items:end;gap:12px;flex-wrap:wrap;margin:20px 0}.now-playing-row h2{font-size:35px;margin:0;white-space:nowrap}.now-playing-row p{font-size:16px;margin:0 0 3px;color:#cedccf}.progress-wrap{display:flex;align-items:center;gap:10px;color:#b8cabb;font-size:12px}.progress-wrap input{flex:1;min-width:0}input[type=range]{accent-color:#d5e5c8}.transport{display:flex;align-items:center;justify-content:center;gap:10px;margin:20px 0 14px}.icon-btn{border:0;background:none;color:#f5f4e9;font-size:18px;padding:6px}.icon-btn.small{font-size:25px}.icon-btn.active{color:#f6c261}.play-btn{width:58px;height:58px;flex-shrink:0;border-radius:50%;display:grid;place-items:center;background:linear-gradient(140deg,#ffe08b,#f4bc50);box-shadow:0 6px 18px #0005}.play-icon{width:0;height:0;border-top:11px solid transparent;border-bottom:11px solid transparent;border-left:18px solid #102019;margin-left:4px}.pause-icon{display:none;gap:5px}.pause-icon i{width:5px;height:21px;background:#102019;border-radius:2px}.play-btn.is-playing .play-icon{display:none}.play-btn.is-playing .pause-icon{display:flex}.sound-row{display:flex;gap:12px;align-items:center;color:#b9c8be;font-size:12px}.sound-row input{flex:1}.sound-row span{white-space:nowrap}.download-card{padding:12px 14px;background:#e2eaca;color:#253d2e}.download-inline{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.download-inline strong{font-size:15px}.offline-actions{display:flex;gap:8px}.primary,.secondary{font-size:12px;font-weight:750;border-radius:9px;border:1px solid #6b806e;padding:9px}.primary{background:#254431;color:#fff}.secondary{background:transparent;color:#254431}.offline-note{font-size:11px;margin:9px 0 0;line-height:1.6}.download-progress{height:7px;background:#bdc9a8;border-radius:10px;margin-top:8px;overflow:hidden}.download-progress div{height:100%;width:0;background:#47704c}.download-message{font-size:12px;line-height:1.55;color:#36503d;margin:9px 0 0}.playlist{background:#10241b;padding:20px 16px;border:1px solid #354239}.list-header{display:flex;justify-content:space-between;align-items:end;margin-bottom:12px}.list-header h2{font-size:27px;margin:4px 0}.list-header>span{font-size:11px;color:#b8c8b8}ol{list-style:none;padding:0;margin:0}.track{display:flex;align-items:center;width:100%;gap:12px;min-height:51px;padding:11px 8px;background:transparent;border:0;border-top:1px solid #ffffff20;color:#e9f0e7;text-align:left}.track.selected{background:#2a4032;border-radius:10px}.track-number{width:27px;color:#b8c9af;font-size:13px}.track.selected .track-number,.track.selected .track-info strong{color:#ffdf91}.track-info{flex:1;min-width:0}.track-info strong{font-size:14px;display:block}.track-saved{color:#b6d1ab;font-size:10px}.track-play{min-width:24px;display:flex;align-items:center;justify-content:center;color:#dfebe0;font-size:20px}.track-pause-icon{gap:4px}.track-pause-icon i{width:3px;height:15px;border-radius:1px;background:#dfebe0}footer{text-align:center;color:#b8c9b8;padding:26px 18px;font-size:12px}footer p{margin:7px 0}.tiny{font-size:10px;line-height:1.65}@media(max-width:390px){.controls-panel{padding:17px 12px}.transport{gap:5px}.offline-actions{width:100%}.primary{flex:1}}