:root{--bg:#07110f;--panel:#10231d;--line:rgba(137,198,174,.25);--text:#eef8f2;--muted:#9db7ac;--mint:#34d39a;--gold:#d6a72c;--danger:#f06a6a}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 18% 8%,rgba(52,211,154,.18),transparent 32%),radial-gradient(circle at 86% 0,rgba(214,167,44,.12),transparent 29%),linear-gradient(135deg,#07110f,#102019 58%,#0a1512);color:var(--text);font-family:Manrope,Arial,sans-serif;display:grid;place-items:center;padding:24px}.auth-shell{width:min(100%,980px);display:grid;grid-template-columns:minmax(280px,.8fr) minmax(330px,1.2fr);background:linear-gradient(145deg,rgba(18,40,32,.98),rgba(8,22,18,.98));border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 28px 70px rgba(0,0,0,.42)}.auth-side{padding:44px;background:linear-gradient(150deg,rgba(52,211,154,.17),rgba(8,22,18,.18));border-right:1px solid var(--line)}.auth-main{padding:44px}.logo{width:54px;height:54px;border-radius:16px;background:linear-gradient(145deg,var(--mint),#168b65);color:#052116;display:grid;place-items:center;font:800 20px Space Grotesk,Arial;box-shadow:0 14px 34px rgba(52,211,154,.24)}h1,h2{font-family:Space Grotesk,Arial,sans-serif;margin:18px 0 8px}h1{font-size:34px;line-height:1.08}h2{font-size:25px}.lead,.hint,.feature-list{color:var(--muted);line-height:1.65}.feature-list{padding-left:20px}.feature-list li{margin:10px 0}.eyebrow{color:var(--mint);text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:800}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:11px;color:#bad2c8;text-transform:uppercase;letter-spacing:.7px;font-weight:800}.field input{width:100%;height:46px;border:1px solid var(--line);border-radius:11px;background:#132720;color:var(--text);padding:0 13px;font:600 14px Manrope,Arial;outline:none}.field input:focus{border-color:var(--mint);box-shadow:0 0 0 3px rgba(52,211,154,.12)}.actions{display:flex;gap:10px;align-items:center;margin-top:20px;flex-wrap:wrap}.button,button{border:1px solid var(--mint);background:var(--mint);color:#062117;border-radius:11px;padding:12px 18px;font:800 13px Manrope,Arial;cursor:pointer;text-decoration:none}.button.secondary{background:transparent;color:var(--text);border-color:var(--line)}.message{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:0 0 18px;color:#dcefe7;background:rgba(52,211,154,.08);line-height:1.55}.message.error{border-color:rgba(240,106,106,.45);background:rgba(240,106,106,.09);color:#ffd7d7}.requirements{display:grid;gap:7px;margin:20px 0}.requirement{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid var(--line);font-size:12px}.ok{color:var(--mint)}.bad{color:var(--danger)}.small-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:18px}.small-links a{color:#8ef0c3;text-decoration:none;font-size:12px}.code-note{font-size:12px;color:var(--muted);margin-top:8px}.single{width:min(100%,520px);grid-template-columns:1fr}.single .auth-side{display:none}.single .auth-main{padding:44px}@media(max-width:760px){body{padding:12px;display:block}.auth-shell{grid-template-columns:1fr;border-radius:18px}.auth-side{padding:28px;border-right:0;border-bottom:1px solid var(--line)}.auth-main,.single .auth-main{padding:28px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}h1{font-size:28px}.actions .button,.actions button{width:100%;text-align:center}}
select{width:100%;height:46px;border:1px solid var(--line);border-radius:11px;background:#132720;color:var(--text);padding:0 13px;font:600 14px Manrope,Arial;outline:none}.admin-page{display:block;padding:28px}.admin-shell{width:min(1380px,100%);margin:0 auto}.admin-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px}.admin-header>div:first-child{display:flex;gap:18px;align-items:flex-start}.admin-header h1{margin:4px 0 6px}.admin-header .eyebrow{margin:0}.admin-grid{display:grid;grid-template-columns:minmax(420px,.9fr) minmax(480px,1.1fr);gap:22px;align-items:start}.admin-card{background:linear-gradient(145deg,rgba(18,40,32,.98),rgba(8,22,18,.98));border:1px solid var(--line);border-radius:22px;padding:26px;box-shadow:0 22px 60px rgba(0,0,0,.28)}.admin-card h2{margin-top:6px}.permission-groups{display:grid;gap:16px;margin-top:22px}.permission-groups fieldset{border:1px solid var(--line);border-radius:14px;padding:14px}.permission-groups legend{padding:0 8px;color:var(--mint);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.8px}.permission-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.permission-item{display:flex;gap:10px;padding:11px;border:1px solid rgba(137,198,174,.16);border-radius:11px;background:rgba(255,255,255,.025);cursor:pointer}.permission-item input{margin-top:3px;accent-color:var(--mint)}.permission-item span{display:grid;gap:4px}.permission-item b{font-size:13px}.permission-item small{color:var(--muted);line-height:1.4}.staff-list{display:grid;gap:13px}.staff-card{border:1px solid var(--line);border-radius:15px;padding:16px;background:rgba(255,255,255,.025)}.staff-card-head{display:flex;justify-content:space-between;gap:16px}.staff-card h3{margin:0 0 3px;font-size:16px}.staff-card p{margin:0;color:var(--muted);font-size:12px}.status-pill{height:max-content;padding:5px 9px;border-radius:99px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.6px}.status-pill.active{background:rgba(52,211,154,.13);color:var(--mint)}.status-pill.disabled{background:rgba(240,106,106,.12);color:#ffb1b1}.permission-tags{display:flex;flex-wrap:wrap;gap:6px;margin:13px 0}.permission-tags span{padding:5px 8px;border:1px solid var(--line);border-radius:99px;color:#cce2d8;font-size:10px}.staff-meta{margin-top:10px!important}.danger-button{background:transparent;color:#ffb1b1;border-color:rgba(240,106,106,.45)}.staff-card .actions{margin-top:12px}.staff-card .actions form{margin:0}@media(max-width:980px){.admin-grid{grid-template-columns:1fr}.admin-header{flex-direction:column}.permission-grid{grid-template-columns:1fr}}@media(max-width:600px){.admin-page{padding:12px}.admin-card{padding:19px}.admin-header>div:first-child{flex-direction:column}.admin-header .actions,.admin-header .actions a{width:100%}.staff-card-head{align-items:flex-start}.staff-card .actions>*{width:100%}.staff-card .actions button,.staff-card .actions a{width:100%;text-align:center}}

/* v4.6: administrator-managed company logo */
.brand-logo.has-image{background:#fff;padding:6px;overflow:hidden;color:transparent;line-height:normal}
.brand-logo.has-image img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.brand-logo-auth.has-image{width:112px;height:72px;border-radius:16px}
.brand-logo-admin.has-image{width:88px;height:60px;border-radius:15px;flex:0 0 auto}
.brand-logo-preview{margin:0;box-shadow:none}
.brand-logo-preview.has-image{width:min(100%,280px);height:140px;border:1px solid var(--line);border-radius:18px;padding:14px}
.branding-shell{max-width:1120px}
.branding-grid{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(360px,1.1fr);gap:22px;align-items:start}
.branding-preview{min-height:210px;border:1px dashed rgba(137,198,174,.35);border-radius:18px;background:rgba(255,255,255,.025);display:grid;place-items:center;gap:18px;padding:24px;text-align:center}
.branding-preview>div:last-child{display:grid;gap:6px}
.branding-preview b{font-size:15px}
.branding-preview small{display:block;color:var(--muted);line-height:1.55;max-width:440px}
.logo-upload-field{display:grid;gap:10px;padding:18px;border:1px dashed rgba(52,211,154,.38);border-radius:15px;background:rgba(52,211,154,.045);cursor:pointer}
.logo-upload-field>span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.8px;color:var(--mint)}
.logo-upload-field input{width:100%;height:auto;padding:11px;background:#132720;border:1px solid var(--line);border-radius:11px;color:var(--text)}
.logo-upload-field small{color:var(--muted);line-height:1.5}
.remove-logo-form{margin-top:12px;padding-top:14px;border-top:1px solid var(--line)}
@media(max-width:820px){.branding-grid{grid-template-columns:1fr}.brand-logo-auth.has-image{width:96px;height:64px}}

/* v4.7: administrator system update */
.update-shell{max-width:1180px}
.update-grid{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(420px,1.18fr);gap:22px;align-items:start}
.update-status-list{display:grid;gap:0;margin-top:18px;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.update-status-list>div{display:grid;grid-template-columns:150px 1fr;gap:15px;padding:13px 14px;border-bottom:1px solid var(--line);font-size:12px}
.update-status-list>div:last-child{border-bottom:0}.update-status-list span{color:var(--muted)}.update-status-list b{font-size:12px;line-height:1.5}.update-status-list .ok{color:var(--mint)}.update-status-list .bad{color:#ffb1b1}
.update-checkbox{display:flex;align-items:center;gap:9px;margin-top:14px;color:var(--muted);font-size:12px}.update-checkbox input{accent-color:var(--mint)}
.update-progress{margin-top:16px;padding:14px;border:1px solid var(--line);border-radius:13px;background:rgba(52,211,154,.05)}.update-progress[hidden]{display:none}.update-progress>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:12px}.update-progress>div:first-child span{color:var(--mint);font-weight:800}.update-progress-track{height:9px;margin:10px 0;border-radius:99px;overflow:hidden;background:rgba(137,198,174,.16)}.update-progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--mint),#7cd7ff);transition:width .18s}.update-progress small{color:var(--muted)}
.update-backups{margin-top:22px}.backup-list{display:grid;gap:10px;margin-top:18px}.backup-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.025)}.backup-row b,.backup-row small{display:block}.backup-row small{margin-top:4px;color:var(--muted);font-size:11px}.backup-row form{margin:0}.backup-row button{padding:9px 13px}
button:disabled{opacity:.48;cursor:not-allowed}
@media(max-width:850px){.update-grid{grid-template-columns:1fr}.update-status-list>div{grid-template-columns:1fr;gap:5px}.backup-row{align-items:flex-start;flex-direction:column}.backup-row form,.backup-row button{width:100%}}

/* v4.7 application download */
.download-application-form{display:grid;gap:9px;margin-top:16px}.download-application-form button{justify-self:start}.download-application-form small{color:var(--muted);line-height:1.5}
@media(max-width:850px){.download-application-form button{width:100%}}

/* v5.4 Dubai Optical red / black / warm-neutral branding */
:root{--bg:#090909;--panel:#171616;--line:rgba(255,255,255,.14);--text:#fbfaf9;--muted:#b8b0aa;--mint:#df1f2d;--gold:#c6a17f;--danger:#ff6670}
body{background:radial-gradient(circle at 18% 8%,rgba(223,31,45,.18),transparent 32%),radial-gradient(circle at 86% 0,rgba(198,161,127,.11),transparent 29%),linear-gradient(135deg,#080808,#171414 58%,#0b0b0b)}
.auth-shell,.admin-card{background:linear-gradient(145deg,rgba(28,26,26,.98),rgba(10,10,10,.98));border-color:var(--line)}
.auth-side{background:linear-gradient(150deg,rgba(223,31,45,.17),rgba(10,10,10,.2));border-color:var(--line)}
.logo:not(.has-image),.brand-logo:not(.has-image){background:linear-gradient(145deg,#ed303c,#a80e19);color:#fff;box-shadow:0 14px 34px rgba(201,24,37,.24)}
.field label{color:#d5ccc7}.field input,select,.logo-upload-field input{background:#1c1a1a;color:var(--text);border-color:var(--line)}
.field input:focus,select:focus{border-color:var(--mint);box-shadow:0 0 0 3px rgba(223,31,45,.14)}
.button,button{border-color:var(--mint);background:var(--mint);color:#fff}.button.secondary{background:transparent;color:var(--text);border-color:var(--line)}
.message{color:#f2e9e5;background:rgba(223,31,45,.08)}.small-links a{color:#ff8289}.ok,.eyebrow{color:#ff6f78}
.permission-groups fieldset,.permission-item,.staff-card,.branding-preview,.update-status-list,.backup-row{border-color:var(--line)}
.permission-item,.staff-card,.branding-preview,.backup-row{background:rgba(255,255,255,.028)}
.permission-item input,.update-checkbox input{accent-color:var(--mint)}
.status-pill.active{background:rgba(223,31,45,.13);color:#ff7b83}.permission-tags span{color:#e2d9d4}
.logo-upload-field,.update-progress{background:rgba(223,31,45,.05);border-color:rgba(223,31,45,.35)}
.update-progress-track span{background:linear-gradient(90deg,#a80e19,#df1f2d,#f16069)}

/* Version 6.0 accessibility and scoped-permission administration */
html,body,button,input,select,textarea{font-family:Verdana,Arial,sans-serif!important}
h1,h2,h3,.logo{font-family:Verdana,Arial,sans-serif!important}
.location-permission-grid.scope-disabled{opacity:.42;filter:saturate(.45)}
.scope-all{margin-bottom:12px}
.staff-scope-summary{display:grid;gap:7px;margin:12px 0;padding:11px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.025)}
.staff-scope-summary b{font-size:11px;color:var(--mint);text-transform:uppercase;letter-spacing:.06em}
.staff-scope-summary span{color:var(--muted);font-size:11px;line-height:1.45}


/* v7.10.8 role templates */
.role-field{grid-column:1/-1}.role-field small{display:block;margin-top:8px;line-height:1.5;color:#60756d}.role-readonly{padding:12px 14px;border:1px solid #cbded6;border-radius:10px;background:#edf6f2;font-weight:800}.permission-groups.executive-template{position:relative;opacity:.58}.permission-groups.executive-template:before{content:"CEO template active — all reports, data years, locations, metrics, exports and Daily Review approval are granted automatically. Upload Center and System Update remain blocked.";display:block;margin:0 0 16px;padding:13px 15px;border:1px solid #9bcbb9;border-radius:12px;background:#e8f7f0;color:#164e3b;font-weight:800;line-height:1.5}.account-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.account-heading h3{margin:0}.role-pill{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.role-pill.role-ceo{background:#153f34;color:#fff}.role-pill.role-staff{background:#e6f1ed;color:#315e51}.staff-card.ceo-account{border-color:#86bca9;box-shadow:0 12px 30px rgba(29,99,76,.09)}

/* v7.10.42 - left sidebar report access administration */
.report-access-fieldset{background:rgba(255,255,255,.018)}
.report-access-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:12px}
.report-access-head b{display:block;font-size:15px;color:var(--text)}
.report-access-head p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.55}
.report-access-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.button.compact{min-height:36px;padding:8px 11px;font-size:11px;white-space:nowrap}
.report-access-summary{display:inline-flex;align-items:center;gap:4px;margin:0 0 13px;padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.035);color:var(--muted);font-size:11px}
.report-access-summary b{color:var(--text)}
.sidebar-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.sidebar-report-permission{position:relative;display:grid;grid-template-columns:auto 38px 1fr;align-items:start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.024);cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}
.sidebar-report-permission:hover{border-color:rgba(223,31,45,.55)}
.sidebar-report-permission.is-allowed{border-color:rgba(223,31,45,.7);background:rgba(223,31,45,.075);box-shadow:0 8px 20px rgba(0,0,0,.15)}
.sidebar-report-permission input{margin-top:5px;accent-color:var(--mint)}
.sidebar-report-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:rgba(255,255,255,.065);color:var(--muted);font-size:18px;font-weight:900}
.sidebar-report-permission.is-allowed .sidebar-report-icon{background:var(--mint);color:#fff}
.sidebar-report-copy{display:grid;gap:4px;min-width:0}
.sidebar-report-copy b{font-size:13px;color:var(--text)}
.sidebar-report-copy small{color:var(--muted);line-height:1.4}
.sidebar-report-copy em{width:max-content;max-width:100%;padding:4px 7px;border-radius:999px;background:rgba(255,255,255,.06);color:var(--muted);font-size:9px;font-style:normal;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.sidebar-report-permission.is-allowed .sidebar-report-copy em{background:rgba(223,31,45,.16);color:#ff9ca3}
@media(max-width:720px){.report-access-head{flex-direction:column}.report-access-actions{justify-content:flex-start}.sidebar-report-grid{grid-template-columns:1fr}}


/* v7.10.47 - unified Dubai Optical green authentication and administrator theme */
:root{
  --bg:#031a14;
  --panel:#08281f;
  --line:rgba(174,226,207,.22);
  --text:#f4fff9;
  --muted:#a9c8bc;
  --mint:#12a875;
  --gold:#9fd8c2;
  --danger:#ff727c;
}
body,
body.admin-page{
  background:
    radial-gradient(circle at 14% 5%,rgba(25,175,126,.25),transparent 32%),
    radial-gradient(circle at 88% 0,rgba(92,211,165,.12),transparent 30%),
    linear-gradient(135deg,#02150f,#063126 58%,#031c16)!important;
}
.auth-shell,.admin-card{
  background:linear-gradient(145deg,rgba(8,47,36,.985),rgba(3,25,19,.985))!important;
  border-color:rgba(174,226,207,.22)!important;
  box-shadow:0 24px 64px rgba(0,31,23,.40)!important;
}
.auth-side{
  background:linear-gradient(150deg,rgba(18,168,117,.25),rgba(3,25,19,.30))!important;
  border-color:rgba(174,226,207,.22)!important;
}
.logo:not(.has-image),.brand-logo:not(.has-image){
  background:linear-gradient(145deg,#18b981,#087454)!important;
  color:#fff!important;
  box-shadow:0 14px 34px rgba(14,137,96,.28)!important;
}
.field label{color:#cce4da!important}
.field input,select,.logo-upload-field input{
  background:#0b3428!important;
  color:var(--text)!important;
  border-color:rgba(174,226,207,.22)!important;
}
.field input:focus,select:focus{
  border-color:#22c58b!important;
  box-shadow:0 0 0 3px rgba(34,197,139,.14)!important;
}
.button,button{border-color:#12a875!important;background:#12a875!important;color:#fff!important}
.button:hover,button:hover{background:#0e9367!important;border-color:#0e9367!important}
.button.secondary{background:transparent!important;color:var(--text)!important;border-color:rgba(174,226,207,.25)!important}
.eyebrow,.ok{color:#63e1b2!important}
.small-links a{color:#7ce9bf!important}
.message{color:#eafff6!important;background:rgba(18,168,117,.10)!important}
.permission-item,.staff-card,.branding-preview,.backup-row{background:rgba(255,255,255,.035)!important;border-color:rgba(174,226,207,.18)!important}
.permission-item input,.update-checkbox input{accent-color:#12a875!important}
.status-pill.active{background:rgba(18,168,117,.18)!important;color:#67e5b5!important}
.permission-tags span{color:#d8eee5!important;border-color:rgba(174,226,207,.18)!important}
.logo-upload-field,.update-progress{background:rgba(18,168,117,.07)!important;border-color:rgba(18,168,117,.35)!important}
.update-progress-track span{background:linear-gradient(90deg,#087454,#12a875,#62ddb0)!important}
.danger-button{background:transparent!important;color:#ff9ba2!important;border-color:rgba(255,114,124,.42)!important}
.staff-scope-summary{background:rgba(18,168,117,.055)!important;border-color:rgba(174,226,207,.18)!important}
.role-pill.role-ceo{background:#0d6b50!important;color:#fff!important}
.role-pill.role-staff{background:rgba(174,226,207,.14)!important;color:#d9f3e9!important}
.staff-card.ceo-account{border-color:#44bd91!important;box-shadow:0 12px 30px rgba(18,168,117,.10)!important}
.sidebar-report-permission.is-allowed .sidebar-report-copy em{background:rgba(18,168,117,.18)!important;color:#73e5ba!important}
.month-permission-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1150px){.month-permission-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.month-permission-grid{grid-template-columns:1fr}}
