@import url('../../themes/web-theme.css');

:root{
    ---buttonColor: #0077ff;
}

body {
    background: var(---backgroundColor);
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:100vh;
}
h2{
    color: var(---colorOnSecondary);
    font-size: 30px;
}

.card {
    background: transparent;
    padding:28px 20px;
    border-radius:14px;
    max-width:420px;
    width:100%;
    position:relative;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.card img{
    height: 80px;
    object-fit: contain;
    border-radius: 60px;
    width: 60px;
    height: auto;
    margin: 1.5rem;
    background-color: #0077ff
}

form{
    width: 100%;
}

h2 { text-align:center; margin-bottom:18px; }
label { 
    display:block; 
    margin:14px 0 4px; 
    font-weight:600; 
    opacity: .6;
}
input {
    width:100%;
    height: 44px;
    border:1px solid #ccc;
    border-radius:8px;
    padding: 0 14px;
}

input:focus,
select:focus,
textarea:focus {
  border-width: 1.5px;
  outline: none;                 /* removes default browser outline */
  border-color: #3B82F6;         /* custom border color */
  box-shadow: 0 0 0 2px #3b82f633; /* subtle focus ring (optional) */
  transition: border-color .2s, box-shadow .2s;
}

button {
    width:100%;
    height: 44px;
    border-radius: 40px;
    padding:12px;
    margin-top: 1.5rem;
    border:none;
    background: #0077ff;
    color:#fff;
    cursor:pointer;
    font-size:15px;
}
button:hover { opacity:.9; }
a{
   color:#0000ee; 
}
.error { margin-top:10px; color:#b00020; text-align:center; }
.links { text-align:center; margin-top:12px; }
.links a { 
    cursor:pointer; 
     
    color: var(---colorOnSecondary);
    text-decoration:none; 
}

/* Modal Styles */
.modal {
    display:none;
    position:fixed;
    top:0; left:0; width:100%; height:100%;
    background:rgba(0,0,0,0.5);
    justify-content:center; align-items:center;
    z-index:1000;
}

.modal-content {
    background:#fff;
    padding:25px 28px;
    border-radius:12px;
    max-width:400px;
    width:90%;
    text-align:center;
    box-shadow:0 8px 20px rgba(0,0,0,0.2);
    position:relative;
}

.modal-content input {
    margin-top:12px;
}

.close {
    position:absolute;
    top:10px; right:12px;
    font-size:18px;
    font-weight:bold;
    cursor:pointer;
}

.modal button { margin-top:12px; }

footer{
    position: fixed;
    bottom: 0;
    margin: 2rem 0;
    padding: 20px;
}

@media screen and (min-width:900px){

    body{
         background:var(---backgroundColor);
    }
    .card {
        padding:28px 30px;
        border-radius:14px;
        max-width:420px;
        width:100%;
        position:relative;
    }

    footer{
        text-align: center;
    }

    footer p{
        max-width: 380px;
    }
    
}