*{box-sizing:border-box}html,body{margin:0;font-family:Arial,Tahoma,sans-serif;background:#dbeaf4;color:#111}.page{min-height:100vh;max-width:430px;margin:0 auto;background:#e8f3fb;padding:20px}
.hero{color:#fff;border-radius:0 0 24px 24px;text-align:center;margin:-20px -20px 20px}.hero.small h1{font-size:28px;margin:0 0 6px;text-shadow:2px 2px 0 #003}.hero p{margin:0;font-size:18px}.card{background:#fff;border-radius:18px;padding:20px;box-shadow:0 8px 24px rgba(0,0,0,.12)}.card h2{margin:0 0 12px;text-align:center}.btn{display:block;width:100%;border:0;border-radius:12px;padding:14px 18px;font-size:22px;text-align:center;text-decoration:none;color:#fff;cursor:pointer}.btn:disabled{opacity:.45;cursor:not-allowed}.primary{background:#0072bc}.yellow{background:#ffc20e;color:#fff}.blue{background:#0879bd}.alert{background:#ffe6e6;border:1px solid #ff8080;color:#9a0000;border-radius:12px;padding:12px;margin:12px 0}.profile-line{font-size:14px;background:#f2f6f8;border-radius:12px;padding:10px;margin-bottom:14px}.terms-box{height:260px;overflow:auto;background:#f7f7f7;border:1px solid #ddd;padding:14px;border-radius:12px;line-height:1.6}.check-row{display:flex;gap:8px;align-items:center;margin:16px 0;font-size:15px}.collect-body{background:#000}.game-wrap{position:relative;width:100%;max-width:430px;min-height:100vh;margin:0 auto;background:linear-gradient(#0a69ff 0,#12c5ec 16%,#8bd157 28%,#d9f3a0 100%);overflow:hidden}.game-header{text-align:center;color:#fff;padding:22px 10px 4px;text-shadow:2px 2px 0 #002}.game-header h1{margin:0;font-size:24px}.tagline{display:inline-block;margin-top:4px;font-size:24px;font-weight:bold;color:#ffeb00;-webkit-text-stroke:1px #622;text-shadow:2px 2px 0 #000}.road{position:relative;height:690px;margin:0 18px;background:rgba(255,255,255,.22);border-radius:190px 190px 0 0}.road:before{content:"";position:absolute;left:50%;top:24px;bottom:0;width:135px;transform:translateX(-50%);background:#fff9e8;border:8px solid rgba(255,255,255,.55);border-radius:80px;box-shadow:inset 0 0 0 2px #e4dcc9}.road-row{position:absolute}.star{width:42px;height:42px;background:#eef1f2;clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 56%,79% 91%,50% 70%,21% 91%,32% 56%,2% 35%,39% 35%);display:flex;align-items:center;justify-content:center;color:#888;font-weight:bold;filter:drop-shadow(1px 2px 1px rgba(0,0,0,.35))}.star span{font-size:13px}.star.active{background:#ffd400;color:#005bbb}.pos-1{left:155px;bottom:24px}.pos-2{left:94px;bottom:55px}.pos-3{left:60px;bottom:92px}.pos-4{left:92px;bottom:128px}.pos-5{left:158px;bottom:154px}.pos-6{left:226px;bottom:182px}.pos-7{left:276px;bottom:222px}.pos-8{left:244px;bottom:262px}.pos-9{left:180px;bottom:295px}.pos-10{left:120px;bottom:329px}.pos-11{left:78px;bottom:370px}.pos-12{left:106px;bottom:413px}.pos-13{left:173px;bottom:445px}.pos-14{left:238px;bottom:474px}.pos-15{left:286px;bottom:512px}.pos-16{left:238px;bottom:552px}.pos-17{left:178px;bottom:580px}.pos-18{left:118px;bottom:606px}.pos-19{left:154px;bottom:644px}.pos-20{left:222px;bottom:664px}.reward{position:absolute;width:96px;min-height:82px;background:#b40000;color:#ff0;border:3px solid #fff;border-radius:8px;text-align:center;font-weight:bold;padding:6px 4px;line-height:1.1;box-shadow:0 0 0 2px #8b4a14;transform:rotate(-12deg);z-index:2}.reward b{font-size:24px;color:#ff2700;text-shadow:1px 1px #fff}.r300{left:56px;bottom:14px}.r1000{left:-70px;bottom:-10px;background:#fff;color:red}.r2000{left:-80px;bottom:-8px}.r5000{left:-24px;bottom:34px;background:#fff;color:red}.bottom-panel{background:#dbeaf4;padding:22px 28px 30px;text-align:center}.summary{font-size:19px;margin-bottom:5px}.next{font-size:15px;margin-bottom:14px;color:#333}.tc-mini{background:#f3f3f3;margin:22px auto 0;padding:16px;width:82%;font-size:17px;line-height:1.4}.floating{position:absolute;left:16px;right:16px;top:88px;z-index:5}@media(max-width:380px){.road{transform:scale(.92);transform-origin:top center;height:650px;margin-bottom:-46px}.bottom-panel{padding-top:16px}}
.terms-box{
    max-height: 420px;
    overflow-y: auto;
    text-align: left;
    line-height: 1.65;
    font-size: 12px;
}

.terms-box h3,
.terms-box h4{
    margin: 12px 0 8px;
}

.terms-box ul{
    padding-left: 20px;
}
.terms-box{
    max-height:400px;
    overflow-y:auto;
    padding:15px;
    border:1px solid #ddd;
    border-radius:12px;
    background:#fff;
}

.check-row{
    display:block;
    margin-top:15px;
    opacity:.5;
    transition:.3s;
}

.check-row.active{
    opacity:1;
}

.check-row input[disabled]{
    cursor:not-allowed;
}
.member-card{
    display:flex;
    align-items:center;
    gap:14px;

    background:linear-gradient(
        135deg,
        #0068b7 0%,
        #0097e6 100%
    );

    border-radius:18px;
    padding:14px;
    margin-bottom:20px;

    color:#fff;

    box-shadow:
        0 8px 25px rgba(0,114,188,.25);
}

.member-avatar{
    flex-shrink:0;
}

.member-avatar img{
    width:64px;
    height:64px;
    border-radius:50%;
    object-fit:cover;
    border:3px solid rgba(255,255,255,.9);
}

.avatar-placeholder{
    width:64px;
    height:64px;
    border-radius:50%;
    background:#fff;

    color:#0072bc;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:26px;
    font-weight:bold;
}

.member-info{
    flex:1;
}

.member-name{
    font-size:18px;
    font-weight:700;
    margin-bottom:4px;
}

.member-homecard{
    font-size:20px;
    font-weight:900;
    letter-spacing:.5px;
    margin-bottom:6px;
}

.member-type{
    font-size:13px;
}

.member-type span{
    background:#ffd400;
    color:#222;

    padding:4px 10px;
    border-radius:999px;

    font-weight:bold;
    margin-left:6px;
}
.error-icon{
    font-size:60px;
    margin-bottom:15px;
}
