:root{
    --staff-bg:#08232d;
    --staff-panel:#123541;
    --staff-panel-2:#0b2a34;
    --staff-gold:#e1c885;
    --staff-text:#f5f8f8;
    --staff-muted:#c7d6dc;
    --staff-line:rgba(225,200,133,.14);
    --staff-soft:rgba(255,255,255,.045);
}

*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--staff-bg);color:var(--staff-text)}

.staff-auth-page{
    min-height:100vh;
    background:
        radial-gradient(circle at 50% 12%,rgba(225,200,133,.08),transparent 32%),
        linear-gradient(135deg,#082831 0%,#0b2f3a 48%,#103744 100%);
}

.staff-auth-shell{
    min-height:100vh;
    display:grid;
    place-items:center;
    padding:24px;
}

.staff-auth-card{
    width:min(520px,100%);
    padding:clamp(26px,4vw,38px);
    border:1px solid rgba(225,200,133,.16);
    border-radius:14px;
    background:rgba(12,43,54,.78);
    box-shadow:0 22px 65px rgba(0,0,0,.28);
    backdrop-filter:blur(12px);
}

.staff-register-card{
    width:min(980px,100%);
    padding:clamp(22px,4vw,34px);
    border:1px solid rgba(225,200,133,.14);
    border-radius:22px;
    background:
        linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.028)),
        rgba(9,38,49,.9);
    box-shadow:0 28px 80px rgba(0,0,0,.24);
    backdrop-filter:blur(14px);
}
.staff-register-header{
    max-width:680px;
    margin:0 auto 24px;
    text-align:center;
}
.staff-register-icon{
    width:54px;
    height:54px;
    display:grid;
    place-items:center;
    margin:0 auto 14px;
    border-radius:16px;
    color:#102d36;
    background:var(--staff-gold);
    box-shadow:0 16px 32px rgba(225,200,133,.18);
}
.staff-register-header h1{
    margin:0 0 10px;
    color:#fff;
    font-size:clamp(28px,4vw,42px);
    line-height:1.08;
    font-weight:650;
}
.staff-register-header p{
    margin:0;
    color:var(--staff-muted);
    line-height:1.65;
}
.staff-auth-logo{width:220px;max-width:80%;margin-bottom:24px}
.staff-kicker{margin:0 0 10px;color:var(--staff-gold);font-size:12px;font-weight:700;letter-spacing:3px;text-transform:uppercase}
.staff-auth-card{text-align:center}
.staff-auth-card h1{margin:0 0 12px;color:#fff;font-size:clamp(28px,4vw,34px);line-height:1.12}
.staff-hero h1{margin:0 0 12px;color:var(--staff-gold);font-size:clamp(32px,5vw,50px);line-height:1.05}
.staff-auth-card p,.staff-hero p{color:var(--staff-muted);line-height:1.7}

.staff-form{display:grid;gap:11px;margin-top:22px}
.staff-form.compact{margin-top:16px}
.staff-form label{color:#d9cfae;font-weight:500;font-size:13px;text-align:left}
.staff-form input,.staff-form textarea,.staff-form select{
    width:100%;
    border:1px solid rgba(225,200,133,.16);
    border-radius:10px;
    background:rgba(7,29,37,.68);
    color:#fff;
    padding:13px 14px;
    font-size:15px;
    outline:none;
}
.staff-form textarea{min-height:120px;resize:vertical;line-height:1.65}
.staff-register-form{
    margin-top:0;
    gap:16px;
}
.staff-register-form textarea{min-height:96px}
.staff-form input:focus,.staff-form textarea:focus,.staff-form select:focus{border-color:var(--staff-gold);box-shadow:0 0 0 3px rgba(225,200,133,.12)}

.staff-auth-card .staff-form input,
.staff-auth-card .staff-form textarea,
.staff-auth-card .staff-form select{
    background:#eef3fa;
    color:#071d25;
    border-color:transparent;
}
.staff-auth-card .staff-form input:focus,
.staff-auth-card .staff-form textarea:focus,
.staff-auth-card .staff-form select:focus{
    border-color:var(--staff-gold);
    box-shadow:0 0 0 3px rgba(225,200,133,.18);
}
.staff-auth-card .staff-password-field button{color:#0b2a34}
.staff-auth-options{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin:4px 0 10px;
}
.staff-check{
    display:inline-flex;
    align-items:center;
    gap:9px;
    color:var(--staff-muted)!important;
    font-weight:400!important;
}
.staff-check input{width:14px!important;height:14px;padding:0!important}
.staff-auth-options a,
.staff-auth-card small a{
    color:var(--staff-gold);
    text-decoration:none;
    font-weight:600;
}
.staff-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.staff-form-wide{grid-column:1 / -1}
.staff-form-section{
    padding:18px;
    border:1px solid rgba(225,200,133,.1);
    border-radius:16px;
    background:rgba(255,255,255,.035);
}
.staff-section-title{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:14px;
    color:#f5f8f8;
    font-size:14px;
    font-weight:600;
}
.staff-section-title i{
    width:32px;
    height:32px;
    display:grid;
    place-items:center;
    border-radius:10px;
    color:var(--staff-gold);
    background:rgba(225,200,133,.12);
}
.staff-register-form .staff-form-grid > div,
.staff-register-form .staff-form-section > div:not(.staff-section-title){
    display:grid;
    gap:7px;
}
.staff-register-form label{
    color:#cfdade;
    font-size:12px;
    font-weight:400;
}
.staff-register-form input,
.staff-register-form textarea{
    min-height:44px;
    border-radius:12px;
    padding:11px 13px;
    font-size:14px;
    color:#fff!important;
    border:1px solid rgba(255,255,255,.13)!important;
    background:rgba(7,29,37,.68)!important;
}
.staff-register-form input::placeholder,
.staff-register-form textarea::placeholder{
    color:rgba(226,236,239,.54);
}
.staff-register-form .staff-password-field button{
    width:36px;
    height:36px;
    color:var(--staff-gold);
}
.staff-register-actions{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin-top:2px;
}
.staff-register-actions small{
    margin:0;
    color:var(--staff-muted);
}
.staff-register-actions a{
    color:var(--staff-gold);
    text-decoration:none;
    font-weight:600;
}
.staff-register-actions .staff-primary-btn{
    min-width:180px;
    min-height:42px;
    padding:0 20px;
    font-size:14px;
}

.staff-password-field{position:relative}
.staff-password-field input{padding-right:52px}
.staff-password-field button{
    position:absolute;
    right:8px;
    top:50%;
    transform:translateY(-50%);
    width:40px;
    height:40px;
    border:0;
    background:transparent;
    color:var(--staff-gold);
    cursor:pointer;
}

.staff-primary-btn,.staff-secondary-btn,.staff-logout{
    min-height:48px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    border:0;
    border-radius:10px;
    padding:0 24px;
    font-weight:700;
    text-decoration:none;
    cursor:pointer;
}
.staff-primary-btn{background:var(--staff-gold);color:#071d25}
.staff-secondary-btn{background:#1f7893;color:#fff}
.staff-auth-card small{display:block;margin-top:18px;color:var(--staff-muted)}

.account-choice-card{
    width:min(680px,100%);
}
.account-choice-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    margin-top:24px;
    text-align:left;
}
.account-choice-option{
    min-height:190px;
    display:flex;
    flex-direction:column;
    gap:10px;
    padding:20px;
    border:1px solid rgba(225,200,133,.14);
    border-radius:16px;
    background:rgba(255,255,255,.045);
    color:#fff;
    text-decoration:none;
    transition:transform .22s ease, border-color .22s ease, background .22s ease;
}
.account-choice-option:hover{
    transform:translateY(-3px);
    border-color:rgba(225,200,133,.45);
    background:rgba(225,200,133,.08);
}
.account-choice-option span{
    width:46px;
    height:46px;
    display:grid;
    place-items:center;
    border-radius:14px;
    background:rgba(225,200,133,.16);
    color:var(--staff-gold);
    font-size:19px;
}
.account-choice-option strong{
    display:block;
    color:#fff;
    font-size:20px;
}
.account-choice-option small{
    margin:0;
    color:var(--staff-muted);
    line-height:1.55;
}

.staff-alert{
    margin:18px 0;
    padding:14px 16px;
    border-radius:10px;
    border:1px solid rgba(255,255,255,.12);
    font-weight:500;
}
.staff-alert.success{background:rgba(26,112,76,.35);color:#dfffea}
.staff-alert.error{background:rgba(140,42,42,.35);color:#ffdede}

.staff-dashboard-page{
    min-height:100vh;
    background:
        radial-gradient(circle at 10% 0%,rgba(225,200,133,.08),transparent 30%),
        linear-gradient(180deg,#08232d,#0f3440);
}

.staff-topbar{
    position:sticky;
    top:0;
    z-index:10;
    min-height:92px;
    display:grid;
    grid-template-columns:auto auto;
    justify-content:space-between;
    align-items:center;
    gap:24px;
    padding:18px clamp(18px,5vw,72px);
    border-bottom:1px solid var(--staff-line);
    background:rgba(5,24,31,.92);
    backdrop-filter:blur(10px);
}
.staff-brand img{width:220px;max-width:44vw;display:block}
.staff-topbar strong{display:block;font-size:18px}
.staff-topbar strong{font-weight:600}
.staff-topbar span{display:block;color:var(--staff-muted);font-size:14px;margin-top:4px}
.staff-logout{background:rgba(255,255,255,.06);border:1px solid var(--staff-line);color:#fff;min-height:44px}

.staff-dashboard{width:min(1440px,100%);margin:0 auto;padding:clamp(32px,5vw,70px)}
.staff-hero{
    display:grid;
    grid-template-columns:1fr minmax(260px,360px);
    gap:24px;
    align-items:end;
    margin-bottom:28px;
}
.staff-status-card{
    padding:18px;
    border:1px solid var(--staff-line);
    border-radius:14px;
    background:var(--staff-soft);
}
.staff-status{display:inline-flex;margin-bottom:12px;padding:7px 11px;border-radius:999px;font-weight:600;font-size:12px}
.staff-status.active{background:rgba(31,120,147,.25);color:#8ee5ff}
.staff-status.completed{background:rgba(30,142,92,.25);color:#90ffc0}
.staff-status.idle{background:rgba(225,200,133,.18);color:var(--staff-gold)}
.staff-status-card strong,.staff-status-card small{display:block}
.staff-status-card small{margin-top:8px;color:var(--staff-muted)}

.staff-profile-card{
    display:grid;
    grid-template-columns:minmax(240px,.55fr) minmax(360px,1fr);
    gap:20px;
    margin:0 0 24px;
    padding:clamp(20px,3vw,26px);
    border:1px solid var(--staff-line);
    border-radius:16px;
    background:rgba(18,53,65,.48);
    box-shadow:0 18px 44px rgba(0,0,0,.16);
}
.staff-profile-main{display:flex;gap:16px;align-items:center}
.staff-profile-avatar{
    width:64px;
    height:64px;
    flex:0 0 64px;
    display:grid;
    place-items:center;
    border-radius:18px;
    background:rgba(225,200,133,.18);
    border:1px solid rgba(225,200,133,.3);
    color:var(--staff-gold);
    font-size:22px;
    font-weight:700;
    overflow:hidden;
}
.staff-profile-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.staff-profile-main h2{margin:0 0 5px;color:#fff;font-size:clamp(24px,2.8vw,32px);font-weight:600}
.staff-profile-main p{margin:0 0 10px;color:var(--staff-muted)}
.staff-profile-details{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0 22px;
}
.staff-profile-details div,
.staff-profile-bio{
    padding:10px 0;
    border-radius:0;
    background:transparent;
    border:0;
    border-bottom:1px solid rgba(225,200,133,.1);
}
.staff-profile-details span,
.staff-profile-bio span{
    display:block;
    margin-bottom:5px;
    color:#d9cfae;
    font-size:12px;
    font-weight:400;
    letter-spacing:.2px;
    text-transform:none;
}
.staff-profile-details strong{
    display:block;
    color:#fff;
    font-size:14px;
    font-weight:500;
    line-height:1.45;
    overflow-wrap:anywhere;
}
.staff-profile-bio{grid-column:1 / -1}
.staff-profile-bio p{margin:0;color:var(--staff-muted);line-height:1.7}

.staff-schedule-panel{margin:0 0 24px}
.staff-remote-days{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
    gap:12px;
    margin-top:16px;
}
.staff-remote-days article{
    min-width:0;
    padding:15px;
    border:1px solid rgba(225,200,133,.14);
    border-radius:14px;
    background:rgba(7,29,37,.46);
}
.staff-remote-days article.today{
    border-color:rgba(225,200,133,.46);
    background:linear-gradient(135deg,rgba(225,200,133,.16),rgba(7,29,37,.56));
}
.staff-remote-days span,
.staff-remote-days small{display:block;color:var(--staff-muted)}
.staff-remote-days span{
    margin-bottom:8px;
    color:var(--staff-gold);
    font-size:12px;
    font-weight:800;
    letter-spacing:1.5px;
    text-transform:uppercase;
}
.staff-remote-days strong{display:block;color:#fff;font-size:18px}
.staff-remote-days small{margin-top:8px;line-height:1.45}

.staff-grid{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(360px,1.15fr);gap:24px;align-items:start}
.staff-panel{
    padding:clamp(20px,3vw,28px);
    border:1px solid var(--staff-line);
    border-radius:16px;
    background:rgba(18,53,65,.48);
    box-shadow:0 18px 46px rgba(0,0,0,.16);
}
.staff-panel-heading{display:flex;gap:14px;align-items:center;margin-bottom:16px}
.staff-panel-heading i{
    width:46px;
    height:46px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:12px;
    background:rgba(225,200,133,.18);
    color:var(--staff-gold);
}
.staff-panel-heading h2{margin:0;color:#fff;font-size:24px;font-weight:600}
.staff-panel-heading p{margin:5px 0 0;color:var(--staff-muted)}
.staff-two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}

.staff-complete-box{text-align:center;padding:28px;border-radius:14px;background:rgba(7,29,37,.78)}
.staff-complete-box i{font-size:42px;color:#61eba0}
.staff-complete-box h3{margin:14px 0 8px;color:#fff}
.staff-complete-box p,.staff-muted{color:var(--staff-muted);line-height:1.65}

.staff-task-list{margin-top:26px}
.staff-task-list{
    max-height:520px;
    overflow:auto;
    padding-right:4px;
}
.staff-task-list h3{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#fff}
.staff-task-list h3 span{font-size:13px;color:var(--staff-gold)}
.staff-task-item{
    display:grid;
    grid-template-columns:1fr auto;
    gap:18px;
    padding:16px 0;
    border-top:1px solid rgba(225,200,133,.12);
}
.staff-task-item strong{display:block;color:#fff;margin-bottom:8px}
.staff-task-item p{margin:0;color:var(--staff-muted);line-height:1.6}
.staff-task-item span{height:max-content;padding:7px 10px;border-radius:999px;background:rgba(225,200,133,.16);color:var(--staff-gold);font-size:12px;font-weight:900}

.staff-mobile-nav{
    display:none;
}

@media(max-width:900px){
    .staff-topbar{grid-template-columns:1fr auto;gap:14px}
    .staff-hero,.staff-grid,.staff-profile-card{grid-template-columns:1fr}
    .staff-profile-details{grid-template-columns:1fr 1fr}
}

@media(max-width:560px){
    .staff-auth-shell{padding:16px}
    .staff-auth-card{border-radius:14px;padding:24px 18px}
    .staff-register-shell{padding:12px}
    .staff-register-card{border-radius:18px;padding:18px}
    .staff-register-header{margin-bottom:18px}
    .staff-register-header h1{font-size:28px}
    .staff-form-section{padding:14px;border-radius:14px}
    .staff-register-actions{display:grid;gap:12px;text-align:center}
    .staff-register-actions .staff-primary-btn{width:100%;min-width:0}
    .staff-topbar{padding:14px 16px;min-height:78px}
    .staff-brand img{width:170px}
    .staff-logout{min-height:40px;padding:0 12px;font-size:13px}
    .staff-dashboard{padding:30px 16px}
    .staff-panel,.staff-profile-card{padding:18px 16px;border-radius:14px}
    .staff-two-col,.staff-task-item,.staff-form-grid,.staff-profile-details{grid-template-columns:1fr}
    .staff-auth-options{align-items:center}
    .staff-profile-main{align-items:flex-start}
    .staff-profile-avatar{width:54px;height:54px;flex-basis:54px;border-radius:16px;font-size:20px}
    .staff-task-list h3{display:block}
    .staff-task-list h3 span{display:block;margin-top:6px}
    .staff-task-list{max-height:none;overflow:visible;padding-right:0}
    .account-choice-grid{grid-template-columns:1fr}
    .account-choice-option{min-height:auto}
}

@media(max-width:760px){
    .staff-dashboard-page{
        padding-bottom:86px;
    }
    .staff-mobile-nav{
        position:fixed;
        left:12px;
        right:12px;
        bottom:12px;
        z-index:60;
        display:grid;
        grid-template-columns:repeat(5,minmax(0,1fr));
        gap:4px;
        padding:8px;
        border:1px solid rgba(225,200,133,.18);
        border-radius:18px;
        background:rgba(5,24,31,.94);
        box-shadow:0 18px 45px rgba(0,0,0,.34);
        backdrop-filter:blur(14px);
    }
    .staff-mobile-nav a{
        min-width:0;
        min-height:54px;
        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:4px;
        border-radius:14px;
        color:#d8e5e9;
        text-decoration:none;
        font-size:11px;
        line-height:1;
    }
    .staff-mobile-nav a:focus,
    .staff-mobile-nav a:hover{
        background:rgba(225,200,133,.12);
        color:var(--staff-gold);
        outline:none;
    }
    .staff-mobile-nav i{
        color:var(--staff-gold);
        font-size:16px;
    }
}

/* ===== Grand Towers premium auth pages ===== */
.staff-auth-page {
    min-height:100vh;
    background:
        linear-gradient(90deg, rgba(3,12,16,.9), rgba(3,12,16,.48) 46%, rgba(117,76,9,.42)),
        linear-gradient(rgba(6,23,30,.4), rgba(6,23,30,.74)),
        url('/GT-Website/assets/images/login.jpg') center/cover no-repeat fixed !important;
}

.staff-auth-shell {
    min-height:100vh;
    display:grid;
    place-items:center;
    padding:clamp(18px,4vw,56px);
}

.staff-auth-card,
.staff-register-card {
    border:1px solid rgba(225,200,133,.22)!important;
    background:rgba(36,19,3,.76)!important;
    box-shadow:0 30px 90px rgba(0,0,0,.42)!important;
    backdrop-filter:blur(18px)!important;
}

.staff-auth-card {
    width:min(100%,540px)!important;
    padding:clamp(28px,4vw,44px)!important;
    border-radius:16px!important;
    text-align:center!important;
}

.staff-register-card {
    width:min(1040px,100%)!important;
    padding:clamp(24px,4vw,40px)!important;
    border-radius:18px!important;
}

.auth-brand-logo {
    width:min(220px,72%)!important;
    height:auto!important;
    display:block!important;
    margin:0 auto 26px!important;
    filter:drop-shadow(0 14px 28px rgba(0,0,0,.22))!important;
}

.staff-auth-card .staff-kicker,
.staff-register-card .staff-kicker {
    color:#e1c885!important;
    letter-spacing:2.6px!important;
    font-size:12px!important;
    margin-bottom:10px!important;
}

.staff-auth-card h1,
.staff-register-header h1 {
    color:#fff!important;
    font-size:clamp(28px,4vw,38px)!important;
    line-height:1.1!important;
    margin-bottom:8px!important;
}

.staff-auth-card > p,
.staff-register-header p:not(.staff-kicker) {
    max-width:520px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    color:rgba(255,255,255,.84)!important;
}

.staff-auth-card .staff-form,
.staff-register-form {
    display:grid!important;
    gap:18px!important;
}

.staff-auth-card .staff-form label:not(.staff-check),
.staff-register-form label {
    width:max-content!important;
    margin:0 0 -31px 18px!important;
    padding:4px 12px!important;
    border-radius:999px!important;
    background:#c99d34!important;
    color:#1a1003!important;
    font-size:13px!important;
    font-weight:700!important;
    line-height:1!important;
    position:relative!important;
    z-index:2!important;
}

.staff-auth-card .staff-form input,
.staff-auth-card .staff-password-field input,
.staff-register-form input,
.staff-register-form textarea {
    min-height:66px!important;
    padding:18px 18px!important;
    border:1px solid rgba(225,200,133,.58)!important;
    border-radius:10px!important;
    background:rgba(62,34,5,.78)!important;
    color:#fff!important;
    font-size:17px!important;
}

.staff-register-form textarea {
    min-height:104px!important;
}

.staff-auth-card .staff-form input::placeholder,
.staff-register-form input::placeholder,
.staff-register-form textarea::placeholder {
    color:rgba(255,255,255,.62)!important;
}

.staff-password-field button {
    color:#fff!important;
}

.staff-auth-options {
    margin:4px 0 8px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:18px!important;
}

.staff-check {
    color:#fff!important;
}

.staff-check input {
    width:20px!important;
    height:20px!important;
    accent-color:#e1c885!important;
}

.staff-auth-options a,
.staff-auth-card small a,
.staff-register-actions a {
    color:#fff!important;
    text-decoration:underline!important;
    text-underline-offset:3px!important;
}

.staff-auth-options a:hover,
.staff-auth-card small a:hover,
.staff-register-actions a:hover {
    color:#e1c885!important;
}

.staff-primary-btn {
    min-height:56px!important;
    border-radius:9px!important;
    background:#d0a137!important;
    color:#091a20!important;
    font-size:15px!important;
    text-transform:uppercase!important;
    letter-spacing:.9px!important;
}

.staff-primary-btn:hover {
    background:#e1c885!important;
    transform:translateY(-1px);
}

.staff-form-section {
    padding:0!important;
    border:0!important;
    background:transparent!important;
}

.staff-section-title {
    margin:0 0 14px!important;
    color:#fff!important;
}

.staff-section-title i {
    background:rgba(225,200,133,.16)!important;
    color:#e1c885!important;
}

.staff-register-header {
    margin-bottom:24px!important;
}

.staff-register-actions {
    justify-content:center!important;
    margin-top:4px!important;
    text-align:center!important;
}

.staff-register-actions .staff-primary-btn {
    min-width:min(100%,360px)!important;
}

.account-choice-grid {
    gap:16px!important;
}

.account-choice-option {
    border-color:rgba(225,200,133,.28)!important;
    background:rgba(62,34,5,.5)!important;
}

.account-choice-option:hover {
    border-color:rgba(225,200,133,.64)!important;
    background:rgba(93,56,11,.58)!important;
}

@media(max-width:760px) {
    .staff-auth-page {
        background:
            linear-gradient(rgba(4,18,24,.78), rgba(4,18,24,.88)),
            url('/GT-Website/assets/images/login.jpg') center/cover no-repeat fixed !important;
    }
    .staff-auth-shell {
        padding:18px 14px;
    }
    .staff-auth-card,
    .staff-register-card {
        width:100%!important;
        padding:26px 18px!important;
        border-radius:14px!important;
    }
    .auth-brand-logo {
        width:min(190px,70%)!important;
        margin-bottom:22px!important;
    }
    .staff-form-grid,
    .account-choice-grid {
        grid-template-columns:1fr!important;
    }
    .staff-auth-options {
        flex-direction:row!important;
        align-items:center!important;
    }
    .staff-auth-options a {
        margin-left:auto!important;
        text-align:right!important;
    }
    .staff-register-actions {
        display:grid!important;
        gap:14px!important;
    }
    .staff-register-actions .staff-primary-btn {
        width:100%!important;
    }
}

/* ===== STAFF AUTH SCENE REFINEMENT: ATTACHED IMAGE + GRAND TOWERS CARD ===== */
.staff-auth-page {
    position:relative !important;
    min-height:100vh !important;
    overflow-x:hidden !important;
    background:
        linear-gradient(90deg, rgba(3,15,20,.96) 0%, rgba(4,21,28,.82) 38%, rgba(4,21,28,.28) 74%, rgba(162,113,28,.34) 100%),
        url('/GT-Website/assets/images/home-hero-business-v2.png') center right/cover no-repeat fixed !important;
}

.staff-auth-page::before {
    content:"" !important;
    position:fixed !important;
    inset:0 !important;
    z-index:0 !important;
    pointer-events:none !important;
    background:
        radial-gradient(circle at 57% 46%, rgba(225,200,133,.14), transparent 25%),
        linear-gradient(180deg, rgba(0,0,0,.18), rgba(0,0,0,.42)) !important;
}

.staff-auth-shell,
.staff-auth-card,
.staff-register-card {
    position:relative !important;
    z-index:1 !important;
}

.staff-auth-shell {
    min-height:100vh !important;
    display:grid !important;
    place-items:center !important;
    padding:clamp(16px,4vw,44px) !important;
}

.staff-auth-card,
.staff-register-card {
    border-radius:12px !important;
    background:linear-gradient(180deg, rgba(7,28,36,.9), rgba(6,22,29,.84)) !important;
    border:1px solid rgba(225,200,133,.22) !important;
    box-shadow:0 32px 90px rgba(0,0,0,.46), inset 0 1px 0 rgba(255,255,255,.04) !important;
    backdrop-filter:blur(12px) saturate(115%) !important;
}

.staff-auth-card::before,
.staff-register-card::before {
    content:"" !important;
    position:absolute !important;
    inset:-1px !important;
    z-index:-1 !important;
    border-radius:inherit !important;
    background:linear-gradient(135deg, rgba(225,200,133,.22), transparent 34%, rgba(225,200,133,.08)) !important;
    opacity:.75 !important;
}

.staff-auth-card {
    width:min(100%,430px) !important;
    padding:30px 30px 28px !important;
}

.staff-register-card {
    width:min(100%,620px) !important;
    max-height:calc(100vh - 36px) !important;
    overflow:auto !important;
    padding:28px 30px !important;
    scrollbar-width:thin;
}

.staff-auth-card .auth-brand-logo,
.staff-register-card .auth-brand-logo {
    width:min(176px,66%) !important;
    margin-bottom:20px !important;
}

.staff-auth-card .staff-kicker,
.staff-register-card .staff-kicker {
    margin-bottom:9px !important;
    letter-spacing:2.5px !important;
    font-size:11px !important;
}

.staff-auth-card h1,
.staff-register-header h1 {
    margin-bottom:8px !important;
    font-size:29px !important;
    letter-spacing:0 !important;
}

.staff-auth-card > p,
.staff-register-header p:not(.staff-kicker) {
    max-width:380px !important;
    margin-bottom:24px !important;
}

.staff-register-header {
    margin-bottom:20px !important;
}

.staff-auth-card .staff-form,
.staff-register-form {
    gap:15px !important;
}

.staff-register-form .staff-form-grid {
    grid-template-columns:1fr !important;
    gap:15px !important;
}

.staff-section-title {
    display:none !important;
}

.staff-auth-card .auth-field input,
.staff-auth-card .staff-password-field input,
.staff-register-form input,
.staff-register-form textarea {
    height:58px !important;
    min-height:58px !important;
    border-color:rgba(225,200,133,.42) !important;
    background:rgba(3,18,24,.62) !important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.015) !important;
}

.staff-auth-card .auth-field input:focus + label,
.staff-auth-card .auth-field input:not(:placeholder-shown) + label,
.staff-register-form .staff-form-grid > div:focus-within > label,
.staff-register-form .staff-form-grid > div:has(> input:not(:placeholder-shown)) > label,
.staff-register-form .staff-form-grid > div:has(.staff-password-field input:not(:placeholder-shown)) > label {
    background:linear-gradient(180deg, #d6b758, #bd8d28) !important;
    color:#08141a !important;
    font-weight:800 !important;
}

.staff-auth-options {
    padding-top:2px !important;
}

.staff-primary-btn {
    margin-top:3px !important;
    background:linear-gradient(180deg, #e7cf83, #c89b34) !important;
}

@media(max-width:640px) {
    .staff-auth-page {
        background:
            linear-gradient(rgba(3,15,20,.74), rgba(3,15,20,.9)),
            url('/GT-Website/assets/images/home-hero-business-v2.png') center/cover no-repeat fixed !important;
    }

    .staff-auth-card,
    .staff-register-card {
        width:100% !important;
        max-height:none !important;
        padding:24px 18px 22px !important;
        border-radius:12px !important;
    }

    .staff-auth-card .auth-brand-logo,
    .staff-register-card .auth-brand-logo {
        width:min(160px,62%) !important;
        margin-bottom:16px !important;
    }
}

/* ===== FINAL GRAND TOWERS STAFF AUTH + PORTAL SELECTOR POLISH ===== */
.staff-auth-page {
    --auth-gold:#e4c879;
    --auth-gold-strong:#c89b34;
    --auth-ink:#05161d;
    min-height:100vh !important;
    background:
        linear-gradient(90deg, rgba(3,12,16,.94) 0%, rgba(3,12,16,.7) 34%, rgba(3,12,16,.22) 68%, rgba(93,56,10,.36) 100%),
        linear-gradient(180deg, rgba(4,21,28,.08), rgba(4,21,28,.52)),
        url('/GT-Website/assets/images/home-hero-finance-clear.png') center right/cover no-repeat fixed !important;
}

.staff-auth-page::before {
    background:
        radial-gradient(circle at 50% 45%, rgba(228,200,121,.16), transparent 22%),
        radial-gradient(circle at 80% 20%, rgba(228,200,121,.12), transparent 28%),
        linear-gradient(180deg, rgba(0,0,0,.12), rgba(0,0,0,.48)) !important;
}

.staff-auth-shell {
    padding:clamp(18px,4vw,48px) !important;
}

.staff-auth-card,
.staff-register-card {
    border-radius:18px !important;
    background:linear-gradient(180deg, rgba(14,53,66,.82), rgba(5,24,31,.86)) !important;
    border:1px solid rgba(228,200,121,.28) !important;
    box-shadow:
        0 34px 100px rgba(0,0,0,.5),
        0 0 0 1px rgba(255,255,255,.025) inset,
        0 18px 80px rgba(3,16,22,.34) !important;
    backdrop-filter:blur(18px) saturate(120%) !important;
}

.staff-auth-card::before,
.staff-register-card::before {
    background:linear-gradient(135deg, rgba(228,200,121,.24), transparent 40%, rgba(228,200,121,.08)) !important;
}

.staff-auth-card::after,
.staff-register-card::after {
    content:"" !important;
    position:absolute !important;
    inset:14px !important;
    z-index:-1 !important;
    border-radius:14px !important;
    background:linear-gradient(145deg, rgba(255,255,255,.045), transparent 48%) !important;
    pointer-events:none !important;
}

.staff-auth-card {
    width:min(100%,432px) !important;
    padding:32px 32px 30px !important;
    text-align:center !important;
}

.staff-register-card {
    width:min(100%,640px) !important;
    padding:30px 32px !important;
}

.staff-auth-card .auth-brand-logo,
.staff-register-card .auth-brand-logo {
    width:190px !important;
    max-width:72% !important;
    margin:0 auto 20px !important;
}

.staff-auth-card .staff-kicker,
.staff-register-card .staff-kicker {
    margin:0 0 8px !important;
    color:var(--auth-gold) !important;
    font-size:11px !important;
    font-weight:800 !important;
}

.staff-auth-card h1,
.staff-register-header h1 {
    margin:0 0 8px !important;
    color:#fff !important;
    font-size:30px !important;
    line-height:1.1 !important;
}

.staff-auth-card > p,
.staff-register-header p:not(.staff-kicker) {
    max-width:330px !important;
    margin:0 auto 24px !important;
    color:rgba(234,245,248,.76) !important;
    font-size:14px !important;
    line-height:1.55 !important;
}

.staff-auth-card .staff-form,
.staff-register-form {
    display:grid !important;
    gap:16px !important;
    margin:0 !important;
}

.staff-auth-card .auth-field,
.staff-register-form .staff-form-grid > div {
    position:relative !important;
    display:block !important;
    margin:0 !important;
}

.staff-auth-card .auth-field input,
.staff-auth-card .staff-password-field input,
.staff-register-form input,
.staff-register-form textarea {
    display:block !important;
    width:100% !important;
    height:58px !important;
    min-height:58px !important;
    padding:19px 48px 10px 17px !important;
    border:1px solid rgba(228,200,121,.36) !important;
    border-radius:12px !important;
    background:rgba(3,19,25,.72) !important;
    color:#fff !important;
    font-size:15px !important;
    line-height:1 !important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.025), 0 14px 34px rgba(0,0,0,.12) !important;
}

.staff-auth-card input::placeholder,
.staff-register-form input::placeholder,
.staff-register-form textarea::placeholder {
    color:transparent !important;
}

.staff-auth-card .auth-field > label,
.staff-register-form .staff-form-grid > div > label {
    position:absolute !important;
    left:16px !important;
    top:50% !important;
    display:inline-flex !important;
    align-items:center !important;
    width:auto !important;
    height:auto !important;
    margin:0 !important;
    padding:0 6px !important;
    transform:translateY(-50%) !important;
    border:0 !important;
    border-radius:999px !important;
    background:transparent !important;
    color:rgba(235,245,248,.62) !important;
    font-size:14px !important;
    font-weight:600 !important;
    letter-spacing:0 !important;
    pointer-events:none !important;
    transition:top .2s ease, transform .2s ease, font-size .2s ease, color .2s ease, background .2s ease !important;
}

.staff-auth-card .auth-field input:focus,
.staff-register-form input:focus,
.staff-register-form textarea:focus {
    border-color:rgba(228,200,121,.86) !important;
    background:rgba(2,16,21,.88) !important;
    box-shadow:0 0 0 4px rgba(228,200,121,.09), inset 0 0 0 1px rgba(255,255,255,.03) !important;
}

.staff-auth-card .auth-field input:focus + label,
.staff-auth-card .auth-field input:not(:placeholder-shown) + label,
.staff-register-form .staff-form-grid > div:focus-within > label,
.staff-register-form .staff-form-grid > div:has(> input:not(:placeholder-shown)) > label,
.staff-register-form .staff-form-grid > div:has(.staff-password-field input:not(:placeholder-shown)) > label {
    top:0 !important;
    transform:translateY(-50%) !important;
    background:linear-gradient(180deg, #ecd487, #c89b34) !important;
    color:#06171d !important;
    font-size:11px !important;
    font-weight:800 !important;
}

.staff-password-field button {
    top:50% !important;
    right:14px !important;
    width:34px !important;
    height:34px !important;
    transform:translateY(-50%) !important;
    color:rgba(235,245,248,.82) !important;
    border-radius:999px !important;
}

.staff-password-field button:hover {
    background:rgba(228,200,121,.12) !important;
    color:var(--auth-gold) !important;
}

.staff-auth-options {
    margin:0 !important;
    padding:0 !important;
}

.staff-check {
    color:rgba(235,245,248,.82) !important;
    font-size:14px !important;
}

.staff-check input {
    width:17px !important;
    height:17px !important;
}

.staff-auth-options a {
    color:var(--auth-gold) !important;
    font-size:14px !important;
    text-decoration:none !important;
}

.staff-primary-btn {
    height:54px !important;
    min-height:54px !important;
    margin:2px 0 0 !important;
    border-radius:12px !important;
    background:linear-gradient(180deg, #ecd487, #c89b34) !important;
    color:#05161d !important;
    font-size:15px !important;
    font-weight:800 !important;
    box-shadow:0 15px 34px rgba(200,155,52,.18) !important;
}

.account-choice-card {
    width:min(100%,720px) !important;
    padding:34px !important;
}

.account-choice-card h1 {
    max-width:520px !important;
    margin-left:auto !important;
    margin-right:auto !important;
}

.account-choice-grid {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:16px !important;
    margin-top:24px !important;
}

.account-choice-option {
    min-height:188px !important;
    padding:24px !important;
    border:1px solid rgba(228,200,121,.24) !important;
    border-radius:16px !important;
    background:
        linear-gradient(180deg, rgba(7,31,40,.78), rgba(3,19,25,.68)) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035), 0 16px 34px rgba(0,0,0,.16) !important;
}

.account-choice-option:hover {
    transform:translateY(-4px) !important;
    border-color:rgba(228,200,121,.58) !important;
    background:
        linear-gradient(180deg, rgba(16,56,69,.86), rgba(5,27,35,.76)) !important;
}

.account-choice-option span {
    width:48px !important;
    height:48px !important;
    border-radius:14px !important;
    background:rgba(228,200,121,.15) !important;
    color:var(--auth-gold) !important;
}

.account-choice-option strong {
    margin-top:16px !important;
    font-size:22px !important;
}

.account-choice-option small {
    color:rgba(234,245,248,.72) !important;
    font-size:14px !important;
}

@media(max-width:720px) {
    .staff-auth-page {
        background:
            linear-gradient(rgba(3,12,16,.72), rgba(3,12,16,.9)),
            url('/GT-Website/assets/images/home-hero-finance-clear.png') center/cover no-repeat fixed !important;
    }

    .staff-auth-card,
    .staff-register-card,
    .account-choice-card {
        width:100% !important;
        padding:26px 18px 24px !important;
    }

    .account-choice-grid {
        grid-template-columns:1fr !important;
    }

    .account-choice-option {
        min-height:auto !important;
    }
}

/* ===== REMOVE IMAGE BACKDROP: CLEAN GRAND TOWERS STAFF AUTH + WIDER PORTAL CARDS ===== */
.staff-auth-page {
    min-height:100vh !important;
    background:
        radial-gradient(circle at 50% 12%, rgba(225,200,133,.08), transparent 30%),
        radial-gradient(circle at 76% 70%, rgba(255,255,255,.035), transparent 34%),
        linear-gradient(135deg, #071d25 0%, #0f3441 48%, #08232d 100%) !important;
}

.staff-auth-page::before {
    display:none !important;
}

.staff-auth-card,
.staff-register-card {
    background:rgba(18,55,68,.88) !important;
    border:1px solid rgba(225,200,133,.24) !important;
    box-shadow:0 24px 70px rgba(0,0,0,.32) !important;
}

.staff-auth-card::before,
.staff-auth-card::after,
.staff-register-card::before,
.staff-register-card::after {
    display:none !important;
}

.account-choice-card {
    width:min(100%,820px) !important;
    padding:36px !important;
}

.account-choice-card .auth-brand-logo {
    width:190px !important;
    margin-bottom:18px !important;
}

.account-choice-card h1 {
    font-size:clamp(30px,4vw,42px) !important;
    max-width:620px !important;
}

.account-choice-card > p {
    max-width:none !important;
    margin-bottom:26px !important;
}

.account-choice-grid {
    grid-template-columns:repeat(2,minmax(260px,1fr)) !important;
    gap:22px !important;
    align-items:stretch !important;
}

.account-choice-option {
    min-height:210px !important;
    padding:26px !important;
    border-radius:18px !important;
    background:rgba(5,30,38,.72) !important;
}

.account-choice-option strong {
    font-size:24px !important;
    line-height:1.12 !important;
}

.account-choice-option small {
    font-size:15px !important;
    line-height:1.6 !important;
}

@media(max-width:720px) {
    .account-choice-card {
        padding:26px 18px !important;
    }

    .account-choice-grid {
        grid-template-columns:1fr !important;
        gap:14px !important;
    }

    .account-choice-option {
        min-height:auto !important;
        padding:22px !important;
    }
}

/* ===== GRAND TOWERS STAFF AUTH RESTORE: INVESTMENT BACKDROP + FLOATING LABELS ===== */
.staff-auth-page {
    min-height:100vh !important;
    background:
        linear-gradient(90deg, rgba(4, 21, 28, .9), rgba(4, 21, 28, .7)),
        linear-gradient(180deg, rgba(7, 29, 38, .25), rgba(7, 29, 38, .88)),
        url('/GT-Website/assets/images/home-hero-finance-clear.png') center/cover no-repeat fixed !important;
}

.staff-auth-shell {
    min-height:100vh !important;
    padding:clamp(18px,4vw,42px) !important;
    background:transparent !important;
}

.staff-auth-card,
.staff-register-card {
    background:rgba(14, 48, 61, .88) !important;
    border:1px solid rgba(225,200,133,.24) !important;
    box-shadow:0 28px 70px rgba(0,0,0,.34) !important;
    backdrop-filter:blur(16px) !important;
}

.staff-auth-card {
    width:min(100%,420px) !important;
    padding:clamp(24px,3vw,32px) !important;
}

.staff-register-card {
    width:min(960px,100%) !important;
    padding:clamp(22px,3vw,32px) !important;
}

.staff-auth-card .auth-brand-logo,
.staff-register-card .auth-brand-logo {
    width:min(185px,68%) !important;
    margin:0 auto 18px !important;
}

.staff-auth-card h1,
.staff-register-header h1 {
    font-size:clamp(26px,4vw,34px) !important;
    margin-bottom:8px !important;
}

.staff-auth-card > p,
.staff-register-header p:not(.staff-kicker) {
    margin-bottom:22px !important;
    color:rgba(235,244,247,.78) !important;
    font-size:14px !important;
    line-height:1.5 !important;
}

.staff-auth-card .staff-form,
.staff-register-form {
    gap:16px !important;
}

.staff-auth-card .auth-field,
.staff-register-form .staff-form-grid > div {
    position:relative !important;
}

.staff-auth-card .auth-field input,
.staff-auth-card .staff-password-field input,
.staff-register-form input,
.staff-register-form textarea {
    width:100% !important;
    min-height:56px !important;
    height:56px !important;
    padding:18px 48px 10px 16px !important;
    border-radius:10px !important;
    border:1px solid rgba(225,200,133,.32) !important;
    background:rgba(5,28,37,.92) !important;
    color:#fff !important;
    font-size:15px !important;
    outline:none !important;
    transition:border-color .22s ease, box-shadow .22s ease, background .22s ease !important;
}

.staff-register-form textarea {
    height:auto !important;
    min-height:96px !important;
}

.staff-auth-card input::placeholder,
.staff-register-form input::placeholder,
.staff-register-form textarea::placeholder {
    color:transparent !important;
}

.staff-auth-card .auth-field label,
.staff-register-form .staff-form-grid > div > label {
    position:absolute !important;
    left:16px !important;
    top:50% !important;
    z-index:2 !important;
    width:auto !important;
    margin:0 !important;
    padding:0 6px !important;
    transform:translateY(-50%) !important;
    border-radius:999px !important;
    background:transparent !important;
    color:rgba(235,244,247,.62) !important;
    font-size:14px !important;
    font-weight:600 !important;
    letter-spacing:0 !important;
    line-height:1 !important;
    pointer-events:none !important;
    transition:top .2s ease, transform .2s ease, font-size .2s ease, color .2s ease, background .2s ease !important;
}

.staff-register-form .staff-password-field {
    position:relative !important;
}

.staff-auth-card .auth-field input:focus,
.staff-register-form input:focus,
.staff-register-form textarea:focus {
    border-color:rgba(225,200,133,.82) !important;
    background:rgba(4,24,32,.98) !important;
    box-shadow:0 0 0 4px rgba(225,200,133,.08) !important;
}

.staff-auth-card .auth-field input:focus + label,
.staff-auth-card .auth-field input:not(:placeholder-shown) + label,
.staff-register-form .staff-form-grid > div:focus-within > label,
.staff-register-form .staff-form-grid > div:has(> input:not(:placeholder-shown)) > label,
.staff-register-form .staff-form-grid > div:has(.staff-password-field input:not(:placeholder-shown)) > label {
    top:0 !important;
    transform:translateY(-50%) !important;
    background:#12313d !important;
    color:#e1c885 !important;
    font-size:11px !important;
}

.staff-password-field button {
    top:50% !important;
    right:14px !important;
    transform:translateY(-50%) !important;
    color:rgba(235,244,247,.82) !important;
}

.staff-section-title {
    margin:0 0 10px !important;
}

.staff-form-section {
    margin-bottom:2px !important;
}

.staff-primary-btn {
    min-height:54px !important;
    border-radius:10px !important;
    background:#e1c885 !important;
    color:#061d26 !important;
    letter-spacing:0 !important;
    text-transform:none !important;
}

.staff-register-actions .staff-primary-btn {
    min-width:min(100%,320px) !important;
}

@media(max-width:760px) {
    .staff-auth-page {
        background:
            linear-gradient(rgba(4,21,28,.78), rgba(4,21,28,.9)),
            url('/GT-Website/assets/images/home-hero-finance-clear.png') center/cover no-repeat fixed !important;
    }

    .staff-auth-shell {
        padding:16px !important;
    }

    .staff-auth-card,
    .staff-register-card {
        padding:22px 18px !important;
    }
}

/* ===== FINAL AUTH BACKGROUND + LOGIN SELECTOR FIT FIX ===== */
.staff-auth-page {
    min-height:100vh !important;
    background:
        radial-gradient(circle at 50% 10%, rgba(225,200,133,.08), transparent 32%),
        radial-gradient(circle at 78% 72%, rgba(255,255,255,.035), transparent 34%),
        linear-gradient(135deg, #071d25 0%, #0f3441 48%, #08232d 100%) !important;
    background-attachment:scroll !important;
}

.staff-auth-page::before,
.staff-auth-page::after {
    display:none !important;
    content:none !important;
}

.account-choice-page .staff-auth-shell {
    min-height:100vh !important;
    width:100% !important;
    display:grid !important;
    place-items:center !important;
    padding:clamp(18px,4vw,42px) !important;
    overflow-x:hidden !important;
}

.account-choice-page .account-choice-card {
    width:min(92vw, 760px) !important;
    max-width:760px !important;
    padding:clamp(24px,3.2vw,34px) !important;
    overflow:hidden !important;
}

.account-choice-page .account-choice-card .auth-brand-logo {
    width:min(190px, 58vw) !important;
}

.account-choice-page .account-choice-card h1 {
    font-size:clamp(30px,3.2vw,40px) !important;
    max-width:560px !important;
    margin-left:auto !important;
    margin-right:auto !important;
}

.account-choice-page .account-choice-grid {
    width:100% !important;
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:18px !important;
    margin-top:26px !important;
}

.account-choice-page .account-choice-option {
    min-width:0 !important;
    min-height:210px !important;
    padding:24px !important;
}

.account-choice-page .account-choice-option strong {
    font-size:23px !important;
}

.account-choice-page .account-choice-option small {
    font-size:15px !important;
    line-height:1.55 !important;
}

@media(max-width:760px) {
    .staff-auth-page {
        background:
            radial-gradient(circle at 50% 10%, rgba(225,200,133,.08), transparent 32%),
            linear-gradient(135deg, #071d25 0%, #0f3441 52%, #08232d 100%) !important;
    }

    .account-choice-page .account-choice-card {
        width:min(100%, 430px) !important;
        padding:24px 18px !important;
    }

    .account-choice-page .account-choice-card h1 {
        font-size:clamp(28px,8vw,34px) !important;
    }

    .account-choice-page .account-choice-grid {
        grid-template-columns:1fr !important;
        gap:14px !important;
    }

    .account-choice-page .account-choice-option {
        min-height:auto !important;
        padding:20px !important;
    }
}

/* ===== FINAL STAFF AUTH FORM POLISH ===== */
.staff-auth-page:not(.account-choice-page) {
    min-height:100vh !important;
    overflow-x:hidden !important;
    background:
        radial-gradient(circle at 50% 8%, rgba(225,200,133,.08), transparent 34%),
        radial-gradient(circle at 82% 72%, rgba(255,255,255,.035), transparent 34%),
        linear-gradient(135deg, #071d25 0%, #103643 52%, #08232d 100%) !important;
}

.staff-auth-page:not(.account-choice-page) .staff-auth-shell {
    min-height:100vh !important;
    width:100% !important;
    display:grid !important;
    place-items:center !important;
    padding:clamp(18px,4vw,44px) !important;
}

.staff-auth-page:not(.account-choice-page) .staff-auth-card {
    width:min(94vw, 460px) !important;
    max-width:460px !important;
    padding:clamp(24px,4vw,36px) !important;
    border-radius:18px !important;
    background:rgba(18,49,61,.95) !important;
    border:1px solid rgba(225,200,133,.22) !important;
    box-shadow:0 28px 80px rgba(0,0,0,.34) !important;
    text-align:center !important;
    overflow:hidden !important;
}

.staff-auth-page:not(.account-choice-page) .staff-auth-card .auth-brand-logo {
    width:min(190px, 62vw) !important;
    height:auto !important;
    margin:0 auto 18px !important;
}

.staff-auth-page:not(.account-choice-page) .staff-kicker {
    margin:0 0 10px !important;
    color:#e1c885 !important;
    font-size:12px !important;
    font-weight:800 !important;
    letter-spacing:.18em !important;
    text-transform:uppercase !important;
}

.staff-auth-page:not(.account-choice-page) .staff-auth-card h1 {
    margin:0 !important;
    font-size:clamp(28px,4vw,36px) !important;
    line-height:1.08 !important;
    color:#fff !important;
}

.staff-auth-page:not(.account-choice-page) .staff-auth-card > p {
    max-width:330px !important;
    margin:14px auto 0 !important;
    color:rgba(255,255,255,.76) !important;
    line-height:1.55 !important;
    font-size:15px !important;
}

.staff-auth-page:not(.account-choice-page) .staff-auth-card .staff-form {
    display:grid !important;
    gap:16px !important;
    width:100% !important;
    margin-top:28px !important;
}

.staff-auth-page:not(.account-choice-page) .staff-auth-card .auth-field {
    position:relative !important;
    width:100% !important;
    margin:0 !important;
}

.staff-auth-page:not(.account-choice-page) .staff-auth-card .auth-field input {
    width:100% !important;
    min-height:58px !important;
    padding:20px 52px 10px 16px !important;
    border:1px solid rgba(225,200,133,.32) !important;
    border-radius:12px !important;
    background:rgba(5,27,35,.82) !important;
    color:#fff !important;
    font-size:16px !important;
    box-shadow:none !important;
    outline:none !important;
    transition:border-color .2s ease, box-shadow .2s ease, background .2s ease !important;
}

.staff-auth-page:not(.account-choice-page) .staff-auth-card .auth-field input:focus {
    border-color:#e1c885 !important;
    background:rgba(5,27,35,.94) !important;
    box-shadow:0 0 0 4px rgba(225,200,133,.11) !important;
}

.staff-auth-page:not(.account-choice-page) .staff-auth-card .auth-field label {
    position:absolute !important;
    left:14px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    padding:0 6px !important;
    border-radius:999px !important;
    background:transparent !important;
    color:rgba(255,255,255,.62) !important;
    font-size:15px !important;
    pointer-events:none !important;
    transition:top .18s ease, transform .18s ease, color .18s ease, background .18s ease, font-size .18s ease !important;
}

.staff-auth-page:not(.account-choice-page) .staff-auth-card .auth-field input:focus + label,
.staff-auth-page:not(.account-choice-page) .staff-auth-card .auth-field input:not(:placeholder-shown) + label {
    top:0 !important;
    transform:translateY(-50%) !important;
    background:#12313d !important;
    color:#e1c885 !important;
    font-size:11px !important;
    font-weight:800 !important;
    letter-spacing:.04em !important;
}

.staff-auth-page:not(.account-choice-page) .staff-password-field button {
    position:absolute !important;
    right:12px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    width:34px !important;
    height:34px !important;
    display:grid !important;
    place-items:center !important;
    border:0 !important;
    border-radius:50% !important;
    background:transparent !important;
    color:#e1c885 !important;
    cursor:pointer !important;
}

.staff-auth-page:not(.account-choice-page) .staff-auth-options {
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:14px !important;
    width:100% !important;
    margin:0 !important;
    color:rgba(255,255,255,.82) !important;
    font-size:14px !important;
}

.staff-auth-page:not(.account-choice-page) .staff-check {
    display:inline-flex !important;
    align-items:center !important;
    gap:8px !important;
    min-width:0 !important;
    white-space:nowrap !important;
    line-height:1 !important;
}

.staff-auth-page:not(.account-choice-page) .staff-check input[type="checkbox"] {
    width:16px !important;
    height:16px !important;
    min-height:16px !important;
    padding:0 !important;
    margin:0 !important;
    accent-color:#e1c885 !important;
    background:transparent !important;
    border-radius:4px !important;
    flex:0 0 16px !important;
}

.staff-auth-page:not(.account-choice-page) .staff-auth-options a {
    margin-left:auto !important;
    color:#e1c885 !important;
    text-align:right !important;
    white-space:nowrap !important;
    text-decoration:none !important;
}

.staff-auth-page:not(.account-choice-page) .staff-primary-btn {
    width:100% !important;
    min-height:54px !important;
    border:0 !important;
    border-radius:12px !important;
    background:linear-gradient(135deg, #ecd58d, #d5b85a) !important;
    color:#051d27 !important;
    font-weight:800 !important;
    font-size:16px !important;
    box-shadow:0 16px 34px rgba(0,0,0,.18) !important;
}

.staff-auth-page:not(.account-choice-page) .staff-auth-card small {
    display:block !important;
    margin-top:20px !important;
    color:rgba(255,255,255,.78) !important;
}

.staff-auth-page:not(.account-choice-page) .staff-auth-card small a {
    color:#e1c885 !important;
    font-weight:800 !important;
}

@media(max-width:520px) {
    .staff-auth-page:not(.account-choice-page) .staff-auth-shell {
        padding:16px !important;
    }

    .staff-auth-page:not(.account-choice-page) .staff-auth-card {
        width:100% !important;
        padding:22px 16px !important;
        border-radius:16px !important;
    }

    .staff-auth-page:not(.account-choice-page) .staff-auth-card h1 {
        font-size:28px !important;
    }

    .staff-auth-page:not(.account-choice-page) .staff-auth-options {
        font-size:13px !important;
    }
}

/* ===== FINAL STAFF TWO-STEP SIGNUP ===== */
.staff-register-shell {
    align-items:flex-start !important;
    padding:clamp(18px,4vw,46px) !important;
}

.staff-register-card {
    width:min(94vw, 880px) !important;
    max-width:880px !important;
    max-height:none !important;
    margin:0 auto !important;
    padding:clamp(24px,4vw,40px) !important;
    border-radius:22px !important;
    background:rgba(18,49,61,.95) !important;
    border:1px solid rgba(225,200,133,.22) !important;
    box-shadow:0 28px 80px rgba(0,0,0,.3) !important;
    overflow:visible !important;
}

.staff-register-header {
    margin-bottom:24px !important;
    text-align:center !important;
}

.staff-register-header .auth-brand-logo {
    width:min(190px, 62vw) !important;
    margin-bottom:18px !important;
}

.staff-register-header h1 {
    margin:0 !important;
    font-size:clamp(30px,4vw,42px) !important;
    line-height:1.08 !important;
}

.staff-register-header p:not(.staff-kicker) {
    max-width:520px !important;
    margin:12px auto 0 !important;
    font-size:15px !important;
    line-height:1.55 !important;
}

.staff-register-progress {
    width:min(100%, 360px) !important;
    display:grid !important;
    grid-template-columns:42px 1fr 42px !important;
    align-items:center !important;
    gap:10px !important;
    margin:0 auto 26px !important;
}

.staff-register-progress span {
    width:42px !important;
    height:42px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:50% !important;
    background:rgba(5,27,35,.84) !important;
    border:1px solid rgba(225,200,133,.28) !important;
    color:rgba(255,255,255,.72) !important;
    font-weight:800 !important;
}

.staff-register-progress span.active {
    background:#e1c885 !important;
    color:#061d26 !important;
}

.staff-register-progress i {
    height:2px !important;
    background:linear-gradient(90deg, rgba(225,200,133,.75), rgba(225,200,133,.18)) !important;
}

.staff-register-step {
    display:none !important;
}

.staff-register-step.active {
    display:block !important;
}

.staff-register-form {
    display:block !important;
    margin-top:0 !important;
}

.staff-register-form .staff-form-section {
    padding:24px !important;
    border:1px solid rgba(225,200,133,.18) !important;
    border-radius:18px !important;
    background:rgba(5,27,35,.35) !important;
}

.staff-register-form .staff-form-section + .staff-form-section {
    margin-top:18px !important;
}

.staff-register-form .staff-section-title {
    margin-bottom:18px !important;
}

.staff-register-form .staff-form-grid {
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:18px !important;
}

.staff-register-form .staff-form-grid > div {
    min-width:0 !important;
}

.staff-register-form input {
    min-height:56px !important;
}

.staff-step-actions {
    display:flex !important;
    justify-content:flex-end !important;
    margin-top:22px !important;
}

.staff-step-actions .staff-primary-btn,
.staff-register-actions .staff-primary-btn,
.staff-register-actions .staff-secondary-btn {
    min-width:180px !important;
    min-height:50px !important;
    border-radius:12px !important;
}

.staff-secondary-btn {
    border:1px solid rgba(225,200,133,.32) !important;
    background:transparent !important;
    color:#e1c885 !important;
    font-weight:800 !important;
    cursor:pointer !important;
}

.staff-register-actions {
    display:grid !important;
    grid-template-columns:auto auto !important;
    align-items:center !important;
    justify-content:end !important;
    gap:12px !important;
    margin-top:22px !important;
}

.staff-register-actions.staff-register-step:not(.active) {
    display:none !important;
}

.staff-register-actions.staff-register-step.active {
    display:grid !important;
}

.staff-register-actions small {
    grid-column:1 / -1 !important;
    text-align:right !important;
}

@media(max-width:720px) {
    .staff-register-card {
        width:100% !important;
        padding:22px 16px !important;
        border-radius:18px !important;
    }

    .staff-register-form .staff-form-section {
        padding:18px !important;
    }

    .staff-register-form .staff-form-grid {
        grid-template-columns:1fr !important;
        gap:14px !important;
    }

    .staff-register-actions,
    .staff-step-actions {
        display:grid !important;
        grid-template-columns:1fr !important;
        justify-content:stretch !important;
    }

    .staff-register-actions.staff-register-step:not(.active) {
        display:none !important;
    }

    .staff-step-actions .staff-primary-btn,
    .staff-register-actions .staff-primary-btn,
    .staff-register-actions .staff-secondary-btn {
        width:100% !important;
        min-width:0 !important;
    }

    .staff-register-actions small {
        text-align:center !important;
    }
}

/* ===== STAFF SIGNUP NAME STACK FINAL ===== */
.staff-register-form .staff-form-grid > .staff-form-wide {
    grid-column:1 / -1 !important;
}

/* ===== STAFF SIGNUP COMPACT + PASSWORD STRENGTH FINAL ===== */
.staff-register-shell {
    align-items:center !important;
}

.staff-register-card {
    width:min(94vw, 460px) !important;
    max-width:460px !important;
    padding:clamp(22px, 4vw, 34px) !important;
}

.staff-register-header {
    margin-bottom:20px !important;
}

.staff-register-header .auth-brand-logo {
    width:min(180px, 62vw) !important;
    margin-bottom:16px !important;
}

.staff-register-header h1 {
    font-size:clamp(28px, 5vw, 36px) !important;
}

.staff-register-header p:not(.staff-kicker) {
    max-width:340px !important;
    font-size:14px !important;
}

.staff-register-progress {
    width:min(100%, 260px) !important;
    grid-template-columns:38px 1fr 38px !important;
    margin-bottom:20px !important;
}

.staff-register-progress span {
    width:38px !important;
    height:38px !important;
}

.staff-register-form .staff-form-section {
    padding:18px !important;
    border-radius:16px !important;
}

.staff-register-form .staff-form-section + .staff-form-section {
    margin-top:14px !important;
}

.staff-register-form .staff-section-title {
    margin-bottom:14px !important;
}

.staff-register-form .staff-form-grid {
    grid-template-columns:1fr !important;
    gap:14px !important;
}

.staff-register-form input {
    min-height:54px !important;
    height:54px !important;
}

.staff-password-strength {
    position:relative !important;
    width:100% !important;
    height:4px !important;
    margin:8px 0 0 !important;
    overflow:hidden !important;
    border-radius:999px !important;
    background:rgba(255,255,255,.12) !important;
}

.staff-password-strength span {
    display:block !important;
    width:0 !important;
    height:100% !important;
    border-radius:inherit !important;
    background:#ff6b6b !important;
    transition:width .22s ease, background .22s ease !important;
}

.staff-password-strength.weak span {
    width:28% !important;
    background:#ff5d5d !important;
}

.staff-password-strength.fair span {
    width:52% !important;
    background:#f4b942 !important;
}

.staff-password-strength.good span {
    width:76% !important;
    background:#8ed16f !important;
}

.staff-password-strength.strong span {
    width:100% !important;
    background:#28c785 !important;
}

.staff-step-actions {
    justify-content:flex-end !important;
    margin-top:18px !important;
}

.staff-step-actions .staff-primary-btn,
.staff-register-actions .staff-primary-btn,
.staff-register-actions .staff-secondary-btn {
    min-width:128px !important;
    min-height:42px !important;
    height:42px !important;
    padding:0 18px !important;
    border-radius:10px !important;
    font-size:14px !important;
}

.staff-register-actions {
    margin-top:18px !important;
    gap:10px !important;
}

@media(max-width:760px) {
    .staff-topbar .staff-logout {
        display:none !important;
    }
}

@media(max-width:520px) {
    .staff-register-shell {
        align-items:flex-start !important;
        padding:14px !important;
    }

    .staff-register-card {
        width:100% !important;
        padding:20px 15px !important;
    }

    .staff-register-form .staff-form-section {
        padding:15px !important;
    }

    .staff-step-actions,
    .staff-register-actions.staff-register-step.active {
        display:flex !important;
        flex-wrap:wrap !important;
        justify-content:flex-end !important;
    }

    .staff-step-actions .staff-primary-btn,
    .staff-register-actions .staff-primary-btn,
    .staff-register-actions .staff-secondary-btn {
        width:auto !important;
        min-width:112px !important;
        flex:0 0 auto !important;
    }

    .staff-register-actions small {
        width:100% !important;
        text-align:right !important;
    }
}

/* ===== STAFF SIGNUP BUTTON SIZE FINAL OVERRIDE ===== */
.staff-register-form .staff-step-actions .staff-primary-btn,
.staff-register-form .staff-register-actions .staff-primary-btn,
.staff-register-form .staff-register-actions .staff-secondary-btn {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    min-width:112px !important;
    max-width:max-content !important;
    min-height:42px !important;
    height:42px !important;
    padding:0 16px !important;
    flex:0 0 auto !important;
    font-size:14px !important;
    line-height:1 !important;
}

.staff-register-form .staff-register-actions.staff-register-step.active,
.staff-register-form .staff-step-actions {
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    justify-content:flex-end !important;
}

.staff-register-form .staff-register-actions small {
    width:100% !important;
}

@media(max-width:520px) {
    .staff-register-form .staff-register-actions.staff-register-step.active,
    .staff-register-form .staff-step-actions {
        justify-content:flex-end !important;
    }

    .staff-register-form .staff-step-actions .staff-primary-btn,
    .staff-register-form .staff-register-actions .staff-primary-btn,
    .staff-register-form .staff-register-actions .staff-secondary-btn {
        min-width:104px !important;
        height:40px !important;
        min-height:40px !important;
        padding:0 14px !important;
    }
}

/* ===== STAFF SECURE AUTH FLOW ===== */
.staff-secure-card {
    width:min(92vw, 520px) !important;
    padding:clamp(24px, 4vw, 38px) !important;
}

.staff-secure-card .auth-brand-logo {
    width:min(210px, 68vw) !important;
}

.staff-secure-card h1 {
    font-size:clamp(30px, 5vw, 40px) !important;
    line-height:1.08 !important;
}

.staff-secure-card > p,
.staff-token-card > p {
    max-width:390px !important;
    margin-left:auto !important;
    margin-right:auto !important;
}

.staff-alert {
    display:flex !important;
    align-items:flex-start !important;
    gap:10px !important;
    width:100% !important;
    margin:16px 0 !important;
    padding:13px 15px !important;
    border-radius:12px !important;
    font-size:14px !important;
    line-height:1.5 !important;
    text-align:left !important;
}

.staff-alert::before {
    flex:0 0 auto !important;
    font-family:"Font Awesome 6 Free" !important;
    font-weight:900 !important;
    margin-top:1px !important;
}

.staff-alert.success {
    border:1px solid rgba(76, 212, 151, .35) !important;
    background:rgba(16, 98, 75, .38) !important;
    color:#d8fff0 !important;
}

.staff-alert.success::before {
    content:"\f058" !important;
    color:#56e3a7 !important;
}

.staff-alert.warning {
    border:1px solid rgba(225, 200, 133, .45) !important;
    background:rgba(225, 200, 133, .14) !important;
    color:#ffe9aa !important;
}

.staff-alert.warning::before {
    content:"\f071" !important;
    color:#e1c885 !important;
}

.staff-alert.error {
    border:1px solid rgba(255, 108, 108, .4) !important;
    background:rgba(131, 42, 42, .28) !important;
    color:#ffd7d7 !important;
}

.staff-alert.error::before {
    content:"\f06a" !important;
    color:#ff8c8c !important;
}

.staff-token-card .staff-kicker,
.staff-register-card .staff-kicker {
    margin:0 0 10px !important;
    color:#e1c885 !important;
    font-size:12px !important;
    letter-spacing:4px !important;
    text-transform:uppercase !important;
    font-weight:900 !important;
}

.staff-token-form {
    gap:16px !important;
}

.staff-token-code {
    text-align:center !important;
    letter-spacing:9px !important;
    font-size:26px !important;
    font-weight:900 !important;
}

.staff-inline-form {
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    gap:18px !important;
    flex-wrap:wrap !important;
    margin-top:18px !important;
}

.staff-link-btn,
.staff-inline-form a {
    border:0 !important;
    background:transparent !important;
    color:#e1c885 !important;
    padding:0 !important;
    font:inherit !important;
    font-weight:800 !important;
    cursor:pointer !important;
    text-decoration:none !important;
}

.staff-auth-icon {
    width:62px !important;
    height:62px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:18px !important;
    margin:0 auto 16px !important;
    font-size:24px !important;
}

.staff-auth-icon.success {
    color:#123440 !important;
    background:#56e3a7 !important;
}

.staff-auth-icon.warning {
    color:#112f39 !important;
    background:#e1c885 !important;
}

.staff-auth-icon.error {
    color:#fff !important;
    background:#d35b5b !important;
}

.staff-auth-complete {
    text-align:center !important;
    border:1px solid rgba(225, 200, 133, .32) !important;
    background:rgba(7, 28, 36, .38) !important;
    border-radius:18px !important;
    padding:24px !important;
}

.staff-auth-complete h2 {
    margin:0 0 10px !important;
    color:#fff !important;
    font-size:clamp(24px, 5vw, 32px) !important;
}

.staff-auth-complete p {
    margin:0 auto 20px !important;
    max-width:420px !important;
    color:#cbdde2 !important;
    line-height:1.65 !important;
}

.staff-auth-complete-actions {
    display:flex !important;
    justify-content:center !important;
    gap:12px !important;
    flex-wrap:wrap !important;
}

.staff-auth-complete-actions .staff-primary-btn,
.staff-auth-complete-actions .staff-secondary-btn {
    width:auto !important;
    min-width:132px !important;
    height:44px !important;
    min-height:44px !important;
    padding:0 18px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-decoration:none !important;
}

@media(max-width:560px) {
    .staff-secure-card {
        width:100% !important;
        padding:22px 16px !important;
        border-radius:18px !important;
    }

    .staff-auth-options {
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        gap:12px !important;
        width:100% !important;
    }

    .staff-auth-options a {
        margin-left:auto !important;
        text-align:right !important;
    }

    .staff-token-code {
        letter-spacing:6px !important;
        font-size:22px !important;
    }
}

/* ===== Staff auth polish: lighter helper text and centered signup actions ===== */
.staff-auth-page:not(.account-choice-page) .staff-auth-card small,
.staff-auth-page:not(.account-choice-page) .staff-auth-options,
.staff-auth-page:not(.account-choice-page) .staff-inline-form,
.staff-auth-page:not(.account-choice-page) .staff-auth-card p {
    font-weight:400 !important;
}

.staff-auth-page:not(.account-choice-page) .staff-auth-options a,
.staff-auth-page:not(.account-choice-page) .staff-auth-card small a,
.staff-auth-page:not(.account-choice-page) .staff-link-btn,
.staff-auth-page:not(.account-choice-page) .staff-inline-form a {
    font-weight:500 !important;
}

.staff-auth-page:not(.account-choice-page) .staff-primary-btn,
.staff-auth-page:not(.account-choice-page) .staff-secondary-btn {
    font-weight:700 !important;
    letter-spacing:.01em !important;
}

.staff-register-card .staff-kicker,
.staff-token-card .staff-kicker {
    font-weight:600 !important;
    letter-spacing:.18em !important;
}

.staff-register-form .staff-register-actions.staff-register-step.active,
.staff-register-form .staff-register-actions,
.staff-register-form .staff-step-actions {
    justify-content:center !important;
    text-align:center !important;
}

.staff-register-form .staff-register-actions small,
.staff-register-form .staff-step-actions small {
    width:100% !important;
    text-align:center !important;
}

@media(max-width:520px) {
    .staff-register-form .staff-register-actions.staff-register-step.active,
    .staff-register-form .staff-register-actions,
    .staff-register-form .staff-step-actions {
        justify-content:center !important;
    }

    .staff-register-form .staff-register-actions .staff-primary-btn,
    .staff-register-form .staff-register-actions .staff-secondary-btn,
    .staff-register-form .staff-step-actions .staff-primary-btn,
    .staff-register-form .staff-step-actions .staff-secondary-btn {
        width:100% !important;
    }
}

/* ===== Staff auth loader - 20260713 ===== */
.staff-auth-page button.is-loading,
.staff-auth-page .staff-primary-btn.is-loading,
.staff-auth-page .staff-secondary-btn.is-loading {
    pointer-events: none;
    opacity: .78;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.staff-auth-page button.is-loading::after,
.staff-auth-page .staff-primary-btn.is-loading::after,
.staff-auth-page .staff-secondary-btn.is-loading::after {
    content: "";
    width: 16px;
    height: 16px;
    border-radius: 50%;
    border: 2px solid rgba(6, 34, 43, .28);
    border-top-color: #06222b;
    animation: spin .75s linear infinite;
}
