﻿/* General Reset */
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Poppins',sans-serif;
}

body{
    background:linear-gradient(135deg,#e0ecff,#f5f9ff);
    min-height:100vh;
}


.login-wrapper{
display:flex;
justify-content:center;
align-items:center;
min-height:100vh;
}


/* Main Container */
.main-container{
    width:900px;
    max-width:95%;
    display:flex;
    border-radius:30px;
    overflow:hidden;
    background:white;
    box-shadow:
    0 25px 60px rgba(0,0,0,0.15),
    inset 0 1px 0 rgba(255,255,255,0.6);
}

/* Sidebar */
.sidebar{
    width:60%;
    padding:50px 40px;
    color:white;
    text-align:center;
    position:relative;

    background:linear-gradient(145deg,#094561,#094561);

    box-shadow:
    inset -10px 0 30px rgba(0,0,0,0.25),
    inset 5px 5px 15px rgba(255,255,255,0.1);
}

.branding-content{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:50px;
}

.welcome-text {
    font-size: 35px;
    letter-spacing: 4px;
    opacity: 1.9;
    color: #f55c2a;
    font-weight: 600;
}

/* Logo 3D */
.logo-circle{
    width:200px;
    height:200px;
    background:white;
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;

    box-shadow:
    0 10px 25px rgba(0,0,0,0.25),
    inset 0 2px 5px rgba(255,255,255,0.8);
        
}

.logo-circle img{
    width:150px;
    height:156px;
    object-fit:contain;
}
/* Brand name */
.brand-name{
    font-size:32px;
    font-weight:600;
    letter-spacing:1px;
}

.brand-description{
    font-size:13px;
    line-height:1.7;
    opacity:0.9;
    max-width:260px;
}

/* Sidebar footer */
.sidebar-footer{
    position:absolute;
    bottom:20px;
    font-size:11px;
    letter-spacing:0px;
    opacity:0.6;
}

.separator{
    margin:0 8px;
}

/* Wavy divider */
.cloud-divider{
    position:absolute;
    right:-1px;
    top:0;
    height:100%;
    width:80px;
    fill:white;
}

/* Form Container */
.form-container{
    width:60%;
    padding:60px;
}

/* Title */
.form-title{
    font-size:26px;
    font-weight:600;
    margin-bottom:40px;
    color:#094561;
}

/* Input Group */
.input-group{
    margin-bottom:30px;
}

.input-group label{
    font-size:13px;
    color:#000;
    margin-bottom:5px;
    display:block;
}

/* 3D Inputs */
.input-group input{
    width:100%;
    padding:12px 15px;
    border-radius:10px;
    border:none;

    background:#f1f5f9;

    box-shadow: inset 2px 2px 6px #094561, inset -2px -2px 6px rgba(255, 255, 255, 0.9);

    outline:none;
    font-size:14px;
}

/* tick icon */
.tick-icon{
    position:absolute;
    right:15px;
    margin-top:-28px;
    color:#60a5fa;
    font-size:13px;
}



/* Button Group */
.button-group{
    display:flex;
    gap:20px;
}

/* Primary Button 3D */
.btn-primary{
    padding:12px 40px;
    border:none;
    border-radius:40px;
    background:linear-gradient(145deg,#094561,#1e40af);
    color:white;
    font-weight:600;
    cursor:pointer;

    box-shadow:
    0 10px 20px rgba(37,99,235,0.35),
    inset 0 1px 0 rgba(255,255,255,0.4);

    transition:0.3s;
}

.btn-primary:hover
{
    background: #f55c2a;
    color:#fff;
    transform:translateY(-2px);
}

.forgot-password{
    text-align:right;
    margin-bottom:20px;
}

.forgot-password a{
    font-size:13px;
    color:#094561;
    text-decoration:none;
}

.forgot-password a:hover{
    text-decoration:underline;
}

.register-link{
    margin-top:20px;
    font-size:13px;
    text-align:center;
    color:#000;
}

.register-link a{
    color:#094561;
    font-weight:600;
    text-decoration:none;
}

.register-link a:hover{
    text-decoration:underline;
}

/* ===============================
   TABLET VIEW
================================*/
@media (max-width:992px){

.main-container{
    width:95%;
}

.sidebar{
    padding:40px 30px;
}

.form-container{
    padding:40px;
}

.logo-circle{
    width:160px;
    height:160px;
}

.logo-circle img{
    width:120px;
    height:120px;
}

.brand-name{
    font-size:26px;
}

.welcome-text{
    font-size:28px;
}

}


/* ===============================
   MOBILE VIEW
================================*/
@media (max-width:768px){

.login-wrapper{
    padding:20px;
}

.main-container{
    flex-direction:column;
    border-radius:20px;
}

.sidebar{
    width:100%;
    padding:35px 20px;
}

.form-container{
    width:100%;
    padding:35px 25px;
}

.branding-content{
    gap:25px;
}

.logo-circle{
    width:140px;
    height:140px;
}

.logo-circle img{
    width:100px;
    height:100px;
}

.brand-name{
    font-size:22px;
}

.welcome-text{
    font-size:24px;
}

.cloud-divider{
    display:none;
}

.button-group{
    flex-direction:column;
}

.btn-primary{
    width:100%;
}

}


/* ===============================
   SMALL MOBILE
================================*/
@media (max-width:480px){

.form-title{
    font-size:22px;
}

.input-group input{
    font-size:13px;
}

.brand-description{
    font-size:12px;
}

.sidebar-footer{
    font-size:10px;
}

}












/* HEADER */
.main-header{
width:100%;
font-family:'Poppins',sans-serif;
}

/* TOP BAR */
.top-bar{
background:#094561;
color:#fff;
display:flex;
justify-content:space-between;
padding:8px 40px;
font-size:13px;
}

.top-bar i{
margin-right:5px;
}

.top-bar span{
margin:0 10px;
opacity:0.5;
}

/* MIDDLE HEADER */

.middle-header{
background:#ffffff;
padding:15px 40px;
display:flex;
align-items:center;
justify-content:center;
box-shadow:0 3px 10px rgba(0,0,0,0.08);
}

.logo-section{
display:flex;
align-items:center;
gap:15px;
}

.logo-section img{
height:50px;
}

.logo-section h2{
color:#094561;
font-size:22px;
font-weight:600;
}

/* NAVBAR */

.navbar{
background:#094561;
}

.nav-menu{
display:flex;
justify-content:center;
list-style:none;
}

.nav-menu li{
margin:0;
}

.nav-menu a{
display:block;
padding:15px 30px;
color:#fff;
text-decoration:none;
font-size:14px;
font-weight:500;
transition:0.3s;
}

.nav-menu a i{
margin-right:8px;
}

.nav-menu a:hover{
background:#f55c2a;
color:#fff;
}

/* ACTIVE MENU */

.nav-menu a.active{
background:#f55c2a;
color:#fff;
}



/* HAMBURGER BUTTON */

.menu-toggle{
display:none;
font-size:22px;
color:#fff;
cursor:pointer;
padding:12px 20px;
}

/* MOBILE VIEW */

@media(max-width:768px){

.navbar{
position:relative;
}

/* show hamburger */

.menu-toggle{
display:block;
text-align:right;
}

/* hide menu */

.nav-menu{
display:none;
flex-direction:column;
background:#094561;
width:100%;

/* important */
position:absolute;
top:100%;
left:0;

z-index:9999;
}

/* show menu */

.nav-menu.active{
display:flex;
}

/* menu items */

.nav-menu a{
padding:15px 20px;
border-top:1px solid rgba(255,255,255,0.1);
}

}
















/* STUDENT FORM */

.student-form-container{
width:90%;
max-width:1200px;
margin:40px auto;
background:#fff;
padding:35px;
border-radius:15px;

/* 3D Card Effect */
box-shadow:
0 20px 40px rgba(0,0,0,0.15),
inset 0 1px 0 rgba(255,255,255,0.7);

transition:0.4s;
}

/* Hover lift */
.student-form-container:hover{
transform:translateY(-5px);
box-shadow:
0 30px 60px rgba(0,0,0,0.18);
}

/* Heading */

.form-heading{
text-align:center;
margin-bottom:30px;
color:#094561;
font-weight:600;
letter-spacing:1px;
}

/* Form */

.student-form{
width:100%;
}

/* Rows */

.form-row{
display:flex;
gap:20px;
margin-bottom:22px;
}

/* Groups */

.form-group{
flex:1;
display:flex;
flex-direction:column;
position:relative;
}

/* Labels */

.form-group label{
font-size:14px;
margin-bottom:6px;
color:#000;
font-weight:500;
}

/* Inputs */

.form-group input,
.form-group select,
.form-group textarea{

padding:12px 14px;
border-radius:8px;
border:none;
font-size:14px;

/* Soft background */
background:#f5f7fb;

/* 3D inset look */
box-shadow: inset 2px 2px 5px #094561, inset -2px -2px 5px rgba(255, 255, 255, 0.9);

outline:none;
transition:0.3s;
}

/* Input Focus Animation */

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus{

background:#ffffff;

box-shadow:
0 0 0 2px rgba(9,69,97,0.15),
inset 2px 2px 5px rgba(0,0,0,0.05),
inset -2px -2px 5px rgba(255,255,255,0.9);

transform:scale(1.02);
}

/* Textarea */

.form-group textarea{
height:90px;
resize:none;
}

/* Full width */

.full-width{
flex:100%;
}

/* Button */

.form-button{
text-align:center;
margin-top:25px;
}

/* Save Button */

.save-btn{

background:#094561;
color:#fff;
border:none;
padding:12px 35px;
font-size:14px;
border-radius:8px;
cursor:pointer;
font-weight:500;

/* 3D Button */

box-shadow:
0 8px 18px rgba(0,0,0,0.15),
inset 0 1px 0 rgba(255,255,255,0.3);

transition:0.3s;
}

/* Hover */

.save-btn:hover{

background:#f55c2a;

transform:translateY(-3px);

box-shadow:
0 15px 25px rgba(0,0,0,0.2);
}

/* Click animation */

.save-btn:active{
transform:scale(0.96);
}

/* Quarter width field */
.quarter-width{
flex:0 0 25%;
max-width:23.5%;
}

/* Responsive */

@media(max-width:768px){

.form-row{
flex-direction:column;
}

}










/* TABLE CONTAINER */

.student-table-container{
width:90%;
max-width:1200px;
margin:40px auto;
background:#fff;
padding:30px;
border-radius:15px;

box-shadow:
0 20px 40px rgba(0,0,0,0.15),
inset 0 1px 0 rgba(255,255,255,0.6);

transition:0.3s;
}

.student-table-container:hover{
transform:translateY(-5px);
box-shadow:0 30px 60px rgba(0,0,0,0.18);
}

/* TABLE TITLE */

.table-title{
text-align:center;
margin-bottom:25px;
color:#094561;
font-size:22px;
font-weight:600;
}

/* TABLE */

.student-table{
width:100%;
border-collapse:collapse;
font-family:'Poppins',sans-serif;
}

/* HEADER */

.student-table thead{
background:#094561;
color:#fff;
}

.student-table th{
padding:14px;
text-align:center;
font-weight:500;
}
.student-table th a{
padding:14px;
text-align:center;
font-weight:500;
}

/* BODY */

.student-table td{
padding:14px;
text-align:center;
background:#f5f7fb;

box-shadow:
inset 1px 1px 3px rgba(0,0,0,0.1),
inset -1px -1px 3px rgba(255,255,255,0.9);

transition:0.3s;
}

/* ROW HOVER */

.student-table tbody tr:hover td{
background:#fff3ed;
transform:scale(1.01);
}

/* ROW BORDER */

.student-table tr{
border-bottom:1px solid #e5e7eb;
}

/* MOBILE */

@media(max-width:768px){

.student-table th,
.student-table td{
font-size:13px;
padding:10px;
}

}







