*{box-sizing:border-box}body{margin:0;font-family:-apple-system,"Apple SD Gothic Neo","Noto Sans KR","Malgun Gothic",sans-serif;background:var(--bg);color:#222;line-height:1.6}
.wrap{max-width:560px;margin:0 auto;padding:20px 16px 60px}h1{font-size:1.6rem;margin:.2em 0;text-align:center}.sub{text-align:center;color:#666;margin-top:0}
.card{background:#fff;border-radius:18px;padding:20px;box-shadow:0 6px 24px rgba(0,0,0,.08);margin:16px 0}
label{display:block;font-weight:600;margin:10px 0 4px}input,select{width:100%;padding:12px;border:1px solid #ddd;border-radius:10px;font-size:1rem}
.btn{display:block;width:100%;padding:14px;border:0;border-radius:12px;background:var(--main);color:#fff;font-size:1.05rem;font-weight:700;margin-top:14px;cursor:pointer;text-align:center;text-decoration:none}
.btn.sec{background:#fff;color:var(--main);border:2px solid var(--main)}.btn[disabled]{opacity:.6;cursor:not-allowed}
.row{display:flex;gap:8px}.row .btn{flex:1}.notice{font-size:.85rem;color:#555;background:#fff8e1;border-radius:10px;padding:10px 12px;margin:12px 0}
canvas{width:100%;border-radius:14px;margin-top:10px}.hidden{display:none}footer{text-align:center;font-size:.8rem;color:#888;margin-top:30px}
.tag{display:inline-block;background:var(--bg);border-radius:20px;padding:2px 10px;margin:2px;font-size:.85rem}
.opt{display:block;width:100%;text-align:left;padding:14px;margin:8px 0;border:2px solid #eee;border-radius:12px;background:#fff;font-size:1rem;cursor:pointer}.opt:hover{border-color:var(--main)}
.bar{height:8px;background:#eee;border-radius:4px;overflow:hidden}.bar i{display:block;height:100%;background:var(--main)}
