:root{--bg:#fbf6ef;--card:#fff;--ink:#3a3330;--sub:#7a6e66;--accent:#d9825b;--accent2:#f3d9c8;--line:#eadfd3}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.7 "Apple SD Gothic Neo","Noto Sans KR","Malgun Gothic",sans-serif;overflow-x:hidden}
.wrap{max-width:520px;margin:0 auto;padding:20px 18px 40px}
h1{font-size:28px;line-height:1.35;margin:8px 0 12px}
h2{font-size:22px;line-height:1.4;margin:26px 0 10px}
h3{font-size:18px;margin:18px 0 6px}
p{margin:0 0 12px;word-break:keep-all}
.brand{font-size:16px;color:var(--accent);font-weight:700;letter-spacing:.02em}
.sub{color:var(--sub)}
.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px 18px;margin:14px 0}
.btn{display:block;width:100%;min-height:56px;padding:14px 16px;margin:12px 0;border:0;border-radius:16px;background:var(--accent);color:#fff;font:inherit;font-weight:700;text-align:center;text-decoration:none;cursor:pointer}
.btn.ghost{background:#fff;color:var(--ink);border:1.5px solid var(--line)}
.btn:active{transform:scale(.98)}
.opt{display:block;width:100%;min-height:60px;padding:14px 16px;margin:12px 0;border:1.5px solid var(--line);border-radius:16px;background:#fff;color:var(--ink);font:inherit;text-align:left;cursor:pointer;word-break:keep-all}
.opt:active,.opt.on{background:var(--accent2);border-color:var(--accent)}
.bar{height:8px;background:var(--line);border-radius:8px;overflow:hidden;margin:6px 0 4px}
.bar i{display:block;height:100%;background:var(--accent);width:0;transition:width .25s}
.qnum{color:var(--sub);font-size:16px}
.q{font-size:21px;line-height:1.5;font-weight:700;margin:10px 0 8px;word-break:keep-all}
.note{font-size:15px;color:var(--sub);border-top:1px solid var(--line);margin-top:26px;padding-top:14px}
.note b{color:var(--ink)}
.ad{border:2px dashed #cdbfb0;border-radius:12px;min-height:100px;display:flex;align-items:center;justify-content:center;color:#a99b8d;font-size:14px;margin:18px 0;text-align:center}
.hero{border-radius:22px;padding:26px 20px;color:#fff;text-align:center;margin:10px 0}
.hero .tag{font-size:16px;opacity:.9}
.hero .nm{font-size:28px;font-weight:800;line-height:1.35;margin:8px 0}
.say{font-size:19px;line-height:1.75;font-weight:600;word-break:keep-all}
ul{padding-left:20px;margin:6px 0 12px}li{margin-bottom:6px;word-break:keep-all}
.hidden{display:none!important}
.toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);background:#3a3330;color:#fff;padding:12px 20px;border-radius:24px;font-size:16px;z-index:50;max-width:90%}
.ov{position:fixed;inset:0;background:rgba(30,25,22,.88);z-index:40;overflow:auto;padding:20px 16px;text-align:center;color:#fff}
.ov img{width:100%;max-width:420px;border-radius:14px;display:block;margin:12px auto}
.links a{color:var(--accent);font-weight:700}
.nav{font-size:16px;margin-top:24px}.nav a{display:inline-block;min-height:44px;padding:10px 6px;color:var(--accent);font-weight:700}
