*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family: 'Inter', sans-serif;
}

body{
    background:#0f172a;
    display:flex;
    justify-content:center;
    align-items:flex-start; /* changed */
    min-height:100vh;
    overflow-y:auto; /* allow vertical scroll */
    overflow-x:hidden;
    color:#fff;
    padding:40px 0; /* add breathing space */
}

/* Animated Gradient Background */
.background-animation{
    position:fixed;
    width:200%;
    height:200%;
    background:linear-gradient(45deg,#1e293b,#0f172a,#111827,#1e293b);
    animation:gradientMove 15s ease infinite;
    z-index:-1;
}

@keyframes gradientMove{
    0%{transform:translate(0,0);}
    50%{transform:translate(-25%,-25%);}
    100%{transform:translate(0,0);}
}

/* Card */
.agreement-container{
    width:100%;
    padding:20px;
    display:flex;
    justify-content:center;
}

.agreement-card{
    background:rgba(255,255,255,0.05);
    backdrop-filter:blur(25px);
    border:1px solid rgba(255,255,255,0.1);
    border-radius:20px;
    padding:40px;
    max-width:650px;
    width:100%;
    box-shadow:0 20px 50px rgba(0,0,0,0.5);
    animation:fadeIn 1s ease forwards;
}

@keyframes fadeIn{
    from{opacity:0; transform:translateY(30px);}
    to{opacity:1; transform:translateY(0);}
}

h1{
    font-size:28px;
    font-weight:800;
    margin-bottom:10px;
}

.intro{
    opacity:0.8;
    margin-bottom:20px;
}

.notice-box{
    background:#ef4444;
    padding:15px;
    border-radius:12px;
    margin-bottom:20px;
    font-size:14px;
}

.agreement-text p{
    margin-bottom:15px;
    line-height:1.6;
}

.agreement-text ul{
    margin-left:20px;
    margin-bottom:20px;
}

.agreement-text li{
    margin-bottom:10px;
}

.highlight{
    background:#facc15;
    color:#000;
    padding:15px;
    border-radius:12px;
    font-weight:700;
    margin-bottom:20px;
}

/* Checkbox */
.checkbox-section{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:25px;
    font-size:14px;
}

.checkbox-section input{
    width:18px;
    height:18px;
    cursor:pointer;
}

/* Button */
button{
    width:100%;
    padding:15px;
    border:none;
    border-radius:12px;
    font-size:16px;
    font-weight:700;
    cursor:pointer;
    transition:all 0.3s ease;
    background:linear-gradient(90deg,#6366f1,#8b5cf6);
    color:#fff;
}

button:hover{
    transform:translateY(-3px);
    box-shadow:0 15px 30px rgba(99,102,241,0.5);
}

button:disabled{
    background:#555;
    cursor:not-allowed;
    box-shadow:none;
  }
