/* ── 황무지(웨이스트랜드) 테마 ── */
:root{
  --bg:#1a100a; --panel:#2c1c11; --sand:#e8c286; --sand2:#d8c39a; --rust:#c3502b;
  --cream:#ffedcf; --dim:#8a6a45; --red:#d22828; --gold:#ffd166;
}
*{box-sizing:border-box}
html,body{margin:0}
body{
  font-family:"Do Hyeon",sans-serif; color:var(--sand2); min-height:100vh; padding:0 0 60px;
  background:
    radial-gradient(ellipse at 50% -10%, rgba(255,159,69,.16), transparent 55%),
    repeating-linear-gradient(0deg, rgba(0,0,0,.14) 0 2px, transparent 2px 5px),
    var(--bg);
}
.ticker{background:#0d0805; color:var(--sand); overflow:hidden; white-space:nowrap; font-size:13px; padding:7px 0; border-bottom:2px solid var(--rust);}
.ticker span{display:inline-block; padding-left:100%; animation:tick 20s linear infinite;}
@keyframes tick{to{transform:translateX(-100%)}}

.wrap{max-width:620px; margin:0 auto; padding:24px 16px 0;}
.logo{text-align:center; margin:4px 0 16px;}
.logo h1{
  font-family:"Black Han Sans",sans-serif; font-size:40px; margin:0; line-height:1.15; color:var(--sand);
  text-shadow:0 0 22px rgba(255,159,69,.35), 3px 3px 0 #000;
  letter-spacing:2px;
}
.logo h1 .r{color:var(--rust)}
.logo .en{color:var(--dim); font-size:13px; letter-spacing:6px; margin-top:4px;}
.sub{text-align:center; font-size:15px; line-height:1.8; margin:0 0 16px; color:var(--sand2);}
.sub b{color:var(--cream)}

.card{background:var(--panel); border:3px solid var(--rust); outline:2px solid #00000066;
  border-radius:6px; padding:18px; box-shadow:0 10px 40px rgba(0,0,0,.5), inset 0 0 60px rgba(0,0,0,.35);}

/* 사진 선택 */
.drop{border:3px dashed var(--dim); border-radius:6px; padding:38px 16px; text-align:center; cursor:pointer;}
.drop:hover{border-color:var(--sand)}
.drop .big{font-size:46px}
.drop .t1{font-size:18px; color:var(--cream); margin-top:10px; letter-spacing:1px;}
.drop .t2{color:var(--dim); font-size:13px; margin-top:6px; line-height:1.7;}
#file{display:none}
.preview{text-align:center}
.preview img{max-width:82%; max-height:360px; border:4px solid var(--sand); box-shadow:0 8px 30px rgba(0,0,0,.6);}
.preview .cap{color:var(--rust); font-size:13px; margin-top:8px; letter-spacing:1px;}
.row{display:flex; gap:10px; margin-top:14px;}
.btn{flex:1; font-family:"Do Hyeon",sans-serif; font-size:15.5px; letter-spacing:1px;
  background:#20130b; border:2.5px solid var(--dim); color:var(--sand2); border-radius:6px; padding:14px; cursor:pointer;}
.btn:hover{border-color:var(--sand); color:var(--cream);}
.btn.prime{background:linear-gradient(180deg,#d95f33,#a83b1c); border-color:#e8965f; color:#fff;
  font-family:"Black Han Sans",sans-serif; font-size:17px; text-shadow:1px 1px 0 rgba(0,0,0,.4);}
.privacy{color:var(--dim); font-size:12.5px; text-align:center; margin-top:14px; line-height:1.8;}
.privacy b{color:var(--sand2)}

/* 로딩 */
.calc{font-size:14px; line-height:2.1; white-space:pre-wrap; min-height:220px; color:var(--sand2);
  background:var(--panel); border:3px solid var(--rust); border-radius:6px; padding:18px;}
.calc .ok{color:var(--gold)} .calc .run{color:var(--rust)} .calc .bad{color:var(--red)}

/* 포스터 결과 */
@keyframes rise{from{opacity:0; transform:translateY(16px)}to{opacity:1; transform:none}}
.poster{display:block; width:100%; max-width:480px; margin:4px auto 0; animation:rise .5s;
  box-shadow:0 16px 60px rgba(0,0,0,.65);}
.btns{display:flex; gap:10px; margin:16px auto 0; max-width:480px;}
#shareOut{text-align:center}
.foot{text-align:center; color:var(--dim); font-size:12.5px; margin-top:14px; line-height:1.8;}
.hidden{display:none}
a{color:var(--gold)}

/* 공유 페이지 시트 */
.sheet{background:var(--panel); border:3px solid var(--rust); border-radius:6px; padding:22px 20px;
  max-width:480px; margin:0 auto; animation:rise .5s; box-shadow:inset 0 0 60px rgba(0,0,0,.35);}
.sh-h{font-family:"Black Han Sans",sans-serif; text-align:center; color:var(--sand); font-size:30px; letter-spacing:8px;}
.sh-name{font-family:"Black Han Sans",sans-serif; text-align:center; color:var(--cream); font-size:42px; margin-top:10px;}
.sh-title{text-align:center; color:var(--rust); font-size:17px; margin:4px 0 12px;}
.sh-info{text-align:center; color:var(--dim); font-size:14px; margin-bottom:16px; line-height:1.8;}
.sh-info b{color:var(--sand)}
.sbar{display:flex; align-items:center; gap:10px; margin:7px 0;}
.sbar .sk{flex:0 0 64px; font-size:14px; color:var(--sand2);}
.sbar .st{flex:1; height:14px; background:#3a2416; border:1.5px solid var(--sand); position:relative;}
.sbar .sf{display:block; height:100%; background:linear-gradient(90deg,var(--rust),#ff9f45);}
.sbar .sv{flex:0 0 30px; text-align:right; color:var(--cream); font-size:13px;}
.sh-story{color:var(--sand2); font-size:14.5px; line-height:1.9; margin:14px 2px;}
.sh-quote{text-align:center; color:var(--cream); font-size:19px; margin:14px 0;}
.sh-bounty{text-align:center; background:#0d0805; color:var(--gold); padding:10px; font-size:15px;
  font-family:"Black Han Sans",sans-serif; letter-spacing:1px; border:1px solid var(--dim);}
