:root{--navy:#062946;--deep:#031c31;--blue:#0878bd;--sky:#e9f4fa;--line:#dce4e9;--soft:#f4f7f9;--ink:#172936;--muted:#657680;--white:#fff;--danger:#a62f3b;--shadow:0 22px 65px rgba(3,28,49,.13)}
*{box-sizing:border-box}
html{font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
body{margin:0;background:var(--soft);color:var(--ink)}
a{color:inherit;text-decoration:none}
.auth{min-height:100vh;display:grid;grid-template-columns:1.08fr .92fr;background:var(--white)}
.auth-visual{position:relative;min-height:100vh;padding:7vh 7vw;overflow:hidden;background:linear-gradient(145deg,var(--deep),#073858 68%,#0874ae);color:#fff;display:flex;flex-direction:column;justify-content:space-between}
.auth-visual:after{content:"SG";position:absolute;right:-35px;bottom:-55px;color:rgba(255,255,255,.04);font-size:260px;font-weight:800;line-height:1}
.auth-wordmark{display:flex;align-items:center;gap:15px;font-size:12px;letter-spacing:.15em}
.auth-wordmark>span,.admin-logo,.admin-brand{width:48px;height:48px;display:grid;place-items:center;border:2px solid currentColor;font-size:12px;font-weight:800;letter-spacing:0}
.auth-visual>div:nth-child(2){position:relative;z-index:1;max-width:620px}
.auth-visual h2{margin:18px 0 24px;font-size:clamp(42px,5vw,68px);line-height:1.04;letter-spacing:-.05em;font-weight:400}
.auth-visual p:not(.eyebrow){max-width:500px;color:rgba(255,255,255,.65);font-size:15px;line-height:1.75}
.auth-visual>small{position:relative;z-index:1;color:rgba(255,255,255,.45);font-size:9px;letter-spacing:.14em;text-transform:uppercase}
.auth-card{width:min(500px,84%);margin:auto;padding:54px 50px;background:#fff;box-shadow:var(--shadow)}
.eyebrow{margin:28px 0 12px;color:var(--blue);font-size:9px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
h1{margin:0 0 16px;font-size:40px;line-height:1.05;font-weight:400;letter-spacing:-.045em}
h2{margin:0 0 28px;font-size:28px;font-weight:400;letter-spacing:-.025em}
.auth-card>p:not(.eyebrow),.dashboard-title>p{color:var(--muted);line-height:1.65}
form{display:grid;gap:18px}
label{display:grid;gap:8px;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
input,textarea,select{width:100%;padding:13px 14px;border:1px solid var(--line);outline:0;background:#fff;color:var(--ink);font:14px Arial,sans-serif;letter-spacing:0;text-transform:none;transition:.2s}
input:focus,textarea:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(8,120,189,.1)}
button{min-height:46px;padding:0 20px;border:0;background:var(--blue);color:#fff;font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;cursor:pointer;transition:.2s}
button:hover{background:#05639d;transform:translateY(-1px)}
.admin-header{position:sticky;z-index:20;top:0;min-height:76px;padding:0 5vw;display:flex;justify-content:space-between;align-items:center;background:var(--deep);color:#fff;box-shadow:0 8px 28px rgba(3,28,49,.2)}
.admin-header>div{display:flex;align-items:center;gap:13px}.admin-header>div>div{display:grid;gap:4px}.admin-header>div>div>span{color:#82c7e9;font-size:9px;letter-spacing:.1em;text-transform:uppercase}.admin-logo{width:39px;height:39px}
.admin-header nav{display:flex;align-items:center;gap:25px;color:rgba(255,255,255,.72);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.admin-header nav a:hover{color:#fff}
.dashboard{max-width:1220px;margin:auto;padding:65px 30px 100px}
.dashboard-title{margin-bottom:35px;display:flex;justify-content:space-between;align-items:end;gap:35px}.dashboard-title h1{font-size:48px}.dashboard-title>p{max-width:390px;margin:0}
.stats{margin-bottom:25px;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.stats article{min-height:145px;padding:25px;background:#fff;display:grid;grid-template-columns:1fr auto;align-items:start}
.stats span{color:var(--blue);font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.stats strong{grid-row:1/3;grid-column:2;font-size:48px;font-weight:300}.stats small{align-self:end;color:var(--muted)}
.panel{margin-bottom:25px;padding:38px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 30px rgba(3,28,49,.035)}
.panel h2{padding-bottom:22px;border-bottom:1px solid var(--line)}
.grid-form{grid-template-columns:1fr 1fr}.wide{grid-column:1/-1}.check{display:flex;align-items:center;gap:10px}.check input{width:auto}
.records{margin-bottom:28px;border-top:1px solid var(--line)}
.records article{padding:16px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line)}.records article>div{display:grid;gap:6px}.records span{color:var(--muted);font-size:12px}.danger{min-height:35px;background:var(--danger)}
.alert{margin-bottom:22px;padding:15px 18px;border-left:4px solid}.success{background:#e9f7ee;border-color:#2c8a50;color:#176235}.error{background:#fdebed;border-color:var(--danger);color:#8d2530}
@media(max-width:850px){.auth{grid-template-columns:1fr}.auth-visual{display:none}.auth-card{margin:8vh auto}.stats{grid-template-columns:1fr}.grid-form{grid-template-columns:1fr}.wide{grid-column:auto}.dashboard-title{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.auth-card{width:92%;padding:38px 25px}.admin-header{padding:14px 5vw}.admin-header nav a:first-child{display:none}.dashboard{padding:45px 5vw 75px}.dashboard-title h1{font-size:39px}.panel{padding:25px 20px}}
