*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Arial,Helvetica,sans-serif;background:#101010;color:#fff}body.auth-page{min-height:100vh;padding:24px;overflow-x:hidden;background:radial-gradient(circle at 16% 18%,rgba(22,119,255,.20),transparent 31%),radial-gradient(circle at 83% 80%,rgba(255,137,0,.10),transparent 30%),#101010}.page{width:min(1180px,100%);margin:0 auto}.topbar{min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 4px 18px}.brandMini{font-weight:900;font-size:22px;letter-spacing:.5px}.brandMini .blue,.logo span{color:#70b7ff}.lang{height:42px;border:2px solid #444;border-radius:9px;background:#1d1d1d;color:#fff;font-weight:800;padding:0 12px;outline:none}.lang:focus{border-color:#70b7ff}.shell{display:grid;grid-template-columns:1.08fr .92fr;min-height:650px;background:#171717;border:1px solid #303030;border-radius:22px;overflow:hidden;box-shadow:0 30px 85px rgba(0,0,0,.55)}.hero{padding:52px 50px;background:linear-gradient(145deg,#111 0%,#171717 55%,#102743 100%);border-right:1px solid #2c2c2c;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(112,183,255,.12);border-radius:50%;right:-180px;bottom:-190px;box-shadow:0 0 80px rgba(22,119,255,.13)}.product{font-size:48px;font-weight:950;line-height:1.02;letter-spacing:.4px;margin:0}.product .blue{color:#70b7ff}.playerWord{display:block;color:#ff9f1a;font-size:31px;margin-top:8px;letter-spacing:4px}.platform{display:inline-flex;width:max-content;max-width:100%;margin-top:27px;padding:11px 14px;border-radius:9px;border:1px solid #8a5a1b;background:#2a1a08;color:#ffc268;font-size:13px;font-weight:900;letter-spacing:.7px}.heroText{margin:28px 0 0;max-width:510px;color:#c4c4c4;font-size:17px;line-height:1.7}.featureLine{margin-top:24px;display:flex;flex-wrap:wrap;gap:9px}.feature{padding:8px 11px;border-radius:8px;background:#202020;border:1px solid #3c3c3c;color:#d8d8d8;font-size:12px;font-weight:800}.disclaimer{margin-top:28px;padding:13px 15px;border-left:3px solid #ff9f1a;background:rgba(255,159,26,.07);color:#aaa;font-size:13px;line-height:1.5}.panel{padding:42px 38px;display:flex;flex-direction:column;justify-content:center}.moduleTitle{font-size:27px;margin:0 0 7px}.subtitle{color:#9f9f9f;margin:0 0 22px;line-height:1.5}.msg{display:none;padding:12px 14px;border-radius:8px;margin-bottom:16px;font-size:14px;line-height:1.4}.msg.show{display:block}.msg.error{background:#481515;border:1px solid #8d3030;color:#ffc0c0}.msg.success{background:#173528;border:1px solid #55c878;color:#bcffd0}.form{display:none}.form.active{display:block}.field{margin-bottom:14px}.field label{display:block;margin:0 0 7px;color:#d8d8d8;font-size:14px;font-weight:700}.field input{width:100%;height:54px;border:2px solid #444;border-radius:8px;background:#111;color:#fff;padding:0 15px;font-size:16px;outline:none}.field input:focus{border-color:#2196f3;background:#172c43;box-shadow:0 0 0 3px rgba(33,150,243,.12)}.hint{color:#777;font-size:12px;margin-top:5px}.submit{width:100%;height:54px;border:3px solid transparent;border-radius:8px;background:#1677ff;color:#fff;font-size:16px;font-weight:900;cursor:pointer;margin-top:5px}.submit:hover{background:#0876dd;border-color:#70b7ff}.submit:disabled{opacity:.55;cursor:wait}.moduleNav{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:25px;padding-top:20px;border-top:1px solid #303030}.moduleBtn{height:48px;border:2px solid #3b3b3b;border-radius:9px;background:#252525;color:#fff;font-size:14px;font-weight:900;cursor:pointer}.moduleBtn.active{background:#145ca8;border-color:#70b7ff}.footer{text-align:center;color:#666;font-size:11px;margin-top:15px;letter-spacing:.6px}
body.client-page{min-height:100vh;background:#101010;color:#fff}.client-top{height:82px;padding:0 28px;background:#171717;border-bottom:1px solid #303030;display:flex;align-items:center;justify-content:space-between;gap:18px}.logo{font-size:24px;font-weight:900}.client-right{display:flex;align-items:center;gap:12px}.logout{padding:11px 18px;border-radius:8px;background:#8b1a1a;color:#fff;text-decoration:none;font-weight:800;border:2px solid #bd3030}.client-content{padding:28px;max-width:1200px;margin:auto}.welcome{background:#181818;border:1px solid #3a3a3a;border-radius:14px;padding:28px}.welcome h1{margin:0 0 10px;font-size:28px}.welcome p{margin:0;color:#aaa;font-size:17px;line-height:1.5}.note{margin-top:18px;padding:16px;border-radius:9px;background:#0d2236;border:1px solid #375a7e;color:#bcdcff}
@media(max-width:820px){body.auth-page{padding:14px}.topbar{align-items:flex-start}.brandMini{font-size:18px}.shell{grid-template-columns:1fr}.hero{padding:32px 27px;border-right:0;border-bottom:1px solid #2c2c2c}.product{font-size:37px}.playerWord{font-size:24px}.heroText{font-size:15px}.panel{padding:30px 23px}.disclaimer{margin-top:20px}}@media(max-width:650px){.client-top{height:auto;padding:18px;align-items:flex-start}.client-right{flex-direction:column;align-items:flex-end}}@media(max-width:520px){.topbar{display:flex}.platform{font-size:11px}.featureLine{display:none}}

.formSectionTitle{margin:22px 0 12px;padding-bottom:8px;border-bottom:1px solid #303030;color:#70b7ff;font-size:13px;font-weight:900;letter-spacing:.8px;text-transform:uppercase}
.formSectionTitle:first-child{margin-top:0}
.fieldGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.captchaBox{margin:4px 0 14px;padding:14px;border:1px solid #3b3b3b;border-radius:10px;background:#151515}
.captchaImageWrap{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.captchaImage{display:block;width:220px;max-width:calc(100% - 56px);height:72px;border-radius:8px;border:2px solid #444;background:#0d2236;object-fit:cover}
.captchaRefresh{width:46px;height:46px;flex:0 0 46px;border:2px solid #555;border-radius:9px;background:#252525;color:#fff;font-size:25px;font-weight:900;cursor:pointer}
.captchaRefresh:hover,.captchaRefresh:focus{background:#145ca8;border-color:#70b7ff;outline:none}
.captchaField{margin-bottom:0}.captchaField input{text-transform:uppercase;letter-spacing:5px;font-weight:900;text-align:center}
.checkRow{display:flex;align-items:flex-start;gap:10px;margin:10px 0;color:#c8c8c8;font-size:13px;line-height:1.45;cursor:pointer}
.checkRow input{width:18px;height:18px;flex:0 0 18px;margin-top:1px;accent-color:#1677ff}
#registerForm{max-height:570px;overflow-y:auto;padding-right:6px}
#registerForm::-webkit-scrollbar{width:8px}#registerForm::-webkit-scrollbar-thumb{background:#3d3d3d;border-radius:8px}
@media(max-width:520px){.fieldGrid{grid-template-columns:1fr}.captchaImage{width:190px}}


/* Registration: replaces the promotional left side, Security stays on the right */
.registerLayout{display:none;grid-column:1/-1;min-height:650px}
.registerLayout.active{display:block}
.registerFormWide{display:grid;grid-template-columns:1.08fr .92fr;min-height:650px;width:100%}
.registerProfilePane{padding:42px 50px;background:linear-gradient(145deg,#111 0%,#171717 55%,#102743 100%);border-right:1px solid #2c2c2c;position:relative;overflow:hidden}
.registerProfilePane:after{content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(112,183,255,.12);border-radius:50%;right:-180px;bottom:-190px;box-shadow:0 0 80px rgba(22,119,255,.13);pointer-events:none}
.registerProduct{margin-bottom:30px}
.registerSection{position:relative;z-index:2}
.registerSection+.registerSection{margin-top:10px}
.registerSecurityPane{padding:42px 38px;background:#171717;display:flex;align-items:center}
.securityInner{width:100%}
.securityTitle{margin-top:0!important;font-size:15px}
.securityChecks{margin:16px 0 18px}
.registerSubmit{margin-top:8px}
.registerModuleNav{margin-top:24px}

body.register-mode .loginOnly{display:none}
body.register-mode .shell{grid-template-columns:1fr}
body.register-mode .registerLayout{display:block}

#registerForm{max-height:none;overflow:visible;padding-right:0}
#registerForm .formSectionTitle{margin-top:18px}
#registerForm .formSectionTitle:first-of-type{margin-top:0}
#registerForm .captchaImageWrap{justify-content:center}
#registerForm .captchaImage{width:220px;max-width:calc(100% - 56px)}

@media(max-width:900px){
  .registerFormWide{grid-template-columns:1fr}
  .registerProfilePane{border-right:0;border-bottom:1px solid #2c2c2c;padding:34px 28px}
  .registerSecurityPane{padding:32px 28px}
  .registerProduct{font-size:38px}
}
@media(max-width:520px){
  .registerProfilePane,.registerSecurityPane{padding:26px 20px}
  .registerProduct{font-size:34px}
  .registerProduct .playerWord{font-size:22px}
}

.legalLink{color:#70b7ff;font-weight:800;text-decoration:none;border-bottom:1px solid rgba(112,183,255,.45)}
.legalLink:hover,.legalLink:focus{color:#fff;border-bottom-color:#fff;outline:none}
.policyBody{min-height:100vh;background:#101010;color:#ededed;font-family:Arial,Helvetica,sans-serif;margin:0}
.policyWrap{width:min(920px,calc(100% - 32px));margin:0 auto;padding:34px 0 60px}
.policyHeader{padding:24px 26px;border:1px solid #343434;border-radius:14px;background:linear-gradient(145deg,#111,#171717 60%,#102743);margin-bottom:20px}
.policyBrand{font-size:27px;font-weight:900;letter-spacing:.5px}.policyBrand .blue{color:#70b7ff}
.policyTitle{font-size:34px;margin:18px 0 6px;color:#fff}.policyUpdated{font-size:13px;color:#9eacb7}
.policyCard{background:#181818;border:1px solid #333;border-radius:12px;padding:24px 28px;margin-bottom:14px}
.policyCard h2{margin:0 0 10px;color:#70b7ff;font-size:20px}.policyCard p,.policyCard li{color:#d3d3d3;line-height:1.65;font-size:15px}
.policyCard ul{padding-left:22px}.policyBack{display:inline-block;margin-top:8px;color:#70b7ff;text-decoration:none;font-weight:800}
@media(max-width:600px){.policyTitle{font-size:28px}.policyCard{padding:20px}.policyHeader{padding:20px}}

/* HIVE client dashboard */
.dashboardWelcome{margin-bottom:22px}.dashboardWelcome h1{margin:0;font-size:30px;line-height:1.25}
.dashboardGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.dashboardCard{min-height:250px;padding:24px;border:1px solid #343434;border-radius:15px;background:linear-gradient(145deg,#181818,#151515);box-shadow:0 16px 38px rgba(0,0,0,.24);display:flex;flex-direction:column;position:relative;overflow:hidden}
.dashboardCard:after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;right:-95px;bottom:-105px;border:1px solid rgba(112,183,255,.11);box-shadow:0 0 45px rgba(22,119,255,.08);pointer-events:none}
.dashboardCardIcon{font-size:28px;margin-bottom:14px}.dashboardCardTitle{color:#70b7ff;font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.8px;margin-bottom:18px}
.dashboardPrimary{font-size:23px;font-weight:900;color:#fff;line-height:1.25;margin-bottom:7px}.dashboardPrimary.small{font-size:18px}.dashboardMeta{color:#9fa4aa;font-size:14px;line-height:1.5;margin-top:4px;overflow-wrap:anywhere}
.dashboardLabel{margin-top:20px;color:#777;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.7px}
.dashboardStat{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 0;border-top:1px solid #292929;border-bottom:1px solid #292929;margin-bottom:12px;color:#aaa}.dashboardStat strong{color:#fff;font-size:19px}
.statusPill{padding:6px 10px;border-radius:999px;font-size:12px!important}.statusPill.on{background:#173528;color:#67e88b!important;border:1px solid #2f7f49}.statusPill.off{background:#431919;color:#ff8c8c!important;border:1px solid #833737}
.dashboardActions{display:flex;gap:10px;margin-top:auto;padding-top:20px;position:relative;z-index:2}.dashboardButton{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:2px solid #70b7ff;border-radius:9px;background:#145ca8;color:#fff;text-decoration:none;font-size:13px;font-weight:900;cursor:pointer}.dashboardButton:hover,.dashboardButton:focus{background:#0876dd;outline:none}.dashboardButton.secondary{background:#252525;border-color:#555}.dashboardButton.secondary:hover{border-color:#70b7ff}.dashboardButton.full{width:100%;margin-top:8px}.dashboardButton:disabled{opacity:.55;cursor:wait}
.downloadButton{margin-top:auto;align-self:flex-start;min-width:145px}.downloadCard .dashboardStat{margin-top:10px}
.dashboardMessage{display:none;margin:0 0 18px;padding:12px 15px;border-radius:9px;font-size:14px}.dashboardMessage.show{display:block}.dashboardMessage.success{background:#173528;border:1px solid #2f7f49;color:#bcffd0}.dashboardMessage.error{background:#481515;border:1px solid #8d3030;color:#ffc0c0}
.dashboardModal[hidden]{display:none}.dashboardModal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:18px}.dashboardModalBackdrop{position:absolute;inset:0;background:rgba(0,0,0,.78)}.dashboardModalDialog{position:relative;z-index:2;width:min(440px,100%);padding:26px;border:1px solid #444;border-radius:15px;background:#1b1b1b;box-shadow:0 25px 70px rgba(0,0,0,.6)}.dashboardModalDialog h2{margin:0 0 20px}.modalClose{position:absolute;right:13px;top:10px;border:0;background:transparent;color:#aaa;font-size:30px;cursor:pointer}.modalClose:hover{color:#fff}.dashboardField{display:block;margin-bottom:15px}.dashboardField span{display:block;margin-bottom:7px;color:#ddd;font-size:13px;font-weight:800}.dashboardField input{width:100%;height:50px;border:2px solid #444;border-radius:8px;background:#111;color:#fff;padding:0 13px;font-size:18px;outline:none}.dashboardField input:focus{border-color:#70b7ff}
@media(max-width:760px){.dashboardGrid{grid-template-columns:1fr}.dashboardCard{min-height:220px}.client-content{padding:20px}.dashboardWelcome h1{font-size:25px}}


/* Dashboard professional interactions */
.dashboardCardButton{width:100%;border:1px solid #343434;text-align:left;color:inherit;font:inherit;cursor:pointer}
.dashboardCardButton:hover,.dashboardCardButton:focus-visible{border-color:#70b7ff;background:linear-gradient(145deg,#1d2630,#151515);transform:translateY(-2px);box-shadow:0 20px 45px rgba(0,0,0,.34),0 0 0 2px rgba(112,183,255,.08);outline:none}
.dashboardCardButton{transition:border-color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease}
.dashboardCardOpenHint{margin-top:auto;padding-top:20px;color:#70b7ff;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.6px;position:relative;z-index:2}
.dashboardModalText{color:#aeb3b9;font-size:14px;line-height:1.6;margin:-8px 0 18px}
.dashboardButton.danger{background:#8b1a1a;border-color:#bd3030}.dashboardButton.danger:hover,.dashboardButton.danger:focus{background:#b02121;border-color:#ff7777}
.dashboardModalDialogWide{width:min(760px,100%);max-height:min(88vh,820px);overflow:auto;padding:30px}
.profileModalHeader{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px;padding-right:24px}
.profileModalHeader h2{margin:4px 0 0}
.profileAvatar{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;background:#145ca8;border:2px solid #70b7ff;color:#fff;font-size:25px;font-weight:950;box-shadow:0 8px 24px rgba(20,92,168,.28)}
.profileFormGrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.profileFullField{grid-column:1/-1}
.dashboardField small{display:block;margin-top:6px;color:#757b82;font-size:11px;line-height:1.45}
.readonlyInput{background:#202020!important;color:#888!important;border-color:#353535!important;cursor:not-allowed}
.profilePasswordSection{margin-top:22px;padding-top:6px;border-top:1px solid #303030}
.profilePasswordSection .formSectionTitle{margin-top:16px}
.profilePasswordHint{margin:0 0 15px;color:#8e949b;font-size:13px;line-height:1.5}
.profileModalActions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid #303030}
@media(max-width:620px){.profileFormGrid{grid-template-columns:1fr}.profileFullField{grid-column:auto}.dashboardModalDialogWide{padding:24px 19px}.profileModalActions{flex-direction:column-reverse}.profileModalActions .dashboardButton{width:100%}}


/* Locked account fields */
.dashboardField small{display:block;margin-top:6px;color:#7f8992;font-size:11px;line-height:1.35}
.readonlyInput{background:#171717!important;color:#8d969e!important;border-color:#333!important;cursor:not-allowed}

/* Download card + modal */
.downloadCard.dashboardCardButton{text-align:left}
.downloadModalDialog{width:min(820px,100%)}
.downloadModalHeader{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
.downloadModalHeader h2{margin:4px 0 0}
.downloadModalIcon{width:58px;height:58px;border-radius:14px;display:grid;place-items:center;background:#102743;border:1px solid #375a7e;font-size:28px}
.downloadAppsGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.downloadAppCard{min-height:210px;padding:22px;border:1px solid #353535;border-radius:13px;background:linear-gradient(145deg,#161616,#111);display:flex;gap:18px;align-items:flex-start}
.downloadAppIcon{width:54px;height:54px;flex:0 0 54px;border-radius:12px;display:grid;place-items:center;background:#0d2236;border:1px solid #375a7e;font-size:27px}
.downloadAppContent{flex:1;min-width:0}.downloadAppContent h3{margin:2px 0 18px;font-size:21px;color:#fff}
.downloadAppVersion{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;margin-bottom:18px;border-top:1px solid #292929;border-bottom:1px solid #292929;color:#999;font-size:13px}
.downloadAppVersion strong{font-size:17px;color:#fff}.downloadAppButton{min-width:150px}
@media(max-width:700px){.downloadAppsGrid{grid-template-columns:1fr}.downloadAppCard{min-height:190px}}

/* Dashboard polish */
.downloadModalIcon{margin-right:46px}
@media(max-width:520px){.downloadModalIcon{margin-right:38px}}


/* Devices modal */
.devicesModalDialog{width:min(900px,100%)}
.devicesModalHeader{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px;padding-right:48px}
.devicesModalHeader h2{margin:4px 0 0}
.devicesModalIcon{width:58px;height:58px;flex:0 0 58px;border-radius:14px;display:grid;place-items:center;background:#102743;border:1px solid #375a7e;font-size:28px}
.devicesList{display:flex;flex-direction:column;gap:12px;max-height:58vh;overflow:auto;padding-right:5px}
.devicesList::-webkit-scrollbar{width:8px}.devicesList::-webkit-scrollbar-thumb{background:#3d3d3d;border-radius:8px}
.deviceRow{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px 20px;border:1px solid #343434;border-radius:12px;background:linear-gradient(145deg,#171717,#121212)}
.deviceMain{min-width:0}
.deviceNameRow{display:flex;align-items:center;gap:14px}
.deviceTvIcon{width:45px;height:45px;flex:0 0 45px;border-radius:11px;display:grid;place-items:center;background:#102743;border:1px solid #375a7e;font-size:22px}
.deviceName{font-size:18px;font-weight:900;color:#fff;word-break:break-word}
.deviceCode{margin-top:4px;color:#929ca4;font-size:12px}.deviceCode strong{color:#d9e2e8}
.deviceMetaGrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:15px;padding-top:14px;border-top:1px solid #292929}
.deviceMetaGrid>div{display:flex;flex-direction:column;gap:5px}.deviceMetaGrid span{font-size:11px;color:#7f8992;text-transform:uppercase;letter-spacing:.5px}.deviceMetaGrid strong{font-size:13px;color:#d8d8d8}
.deviceStatus{display:inline-flex!important;flex-direction:row!important;align-items:center;gap:7px;width:max-content;padding:5px 9px;border-radius:999px;border:1px solid #383838}
.deviceStatusDot{width:9px;height:9px;border-radius:50%;display:inline-block;box-shadow:0 0 9px currentColor}
.deviceStatus-active{color:#61d887!important;background:rgba(57,170,95,.08);border-color:rgba(97,216,135,.32)!important}
.deviceStatus-active .deviceStatusDot{background:#61d887}
.deviceStatus-blocked{color:#ff7070!important;background:rgba(200,60,60,.08);border-color:rgba(255,112,112,.32)!important}
.deviceStatus-blocked .deviceStatusDot{background:#ff7070}
.deviceStatus-unpaid{color:#ffbd59!important;background:rgba(210,150,45,.08);border-color:rgba(255,189,89,.32)!important}
.deviceStatus-unpaid .deviceStatusDot{background:#ffbd59}
.deviceRemoveBtn{border:1px solid #733b3b;background:#2a1717;color:#ff8d8d;border-radius:9px;padding:10px 14px;font-size:12px;font-weight:900;cursor:pointer;white-space:nowrap}
.deviceRemoveBtn:hover,.deviceRemoveBtn:focus{background:#8e2929;color:#fff;border-color:#b94747;outline:none}
.devicesEmptyState{padding:42px 20px;border:1px dashed #3c3c3c;border-radius:12px;text-align:center;color:#8f999f}
.devicesEmptyIcon{font-size:34px;margin-bottom:10px}
.deviceRemoveDialog{width:min(470px,100%);text-align:center}
.deviceRemoveIcon{width:58px;height:58px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:#2b1d11;border:1px solid #6f4b25;color:#ffbd59;font-size:27px;font-weight:900}
.deviceRemoveTarget{margin:17px 0;padding:14px;border:1px solid #343434;border-radius:10px;background:#121212;display:flex;flex-direction:column;gap:5px}
.deviceRemoveTarget strong{font-size:16px;color:#fff}.deviceRemoveTarget span{font-size:12px;color:#929ca4}
.deviceRemoveActions{display:flex;justify-content:center;gap:10px;margin-top:18px}
.dashboardButton.danger{background:#7b2525;border-color:#9b3737}.dashboardButton.danger:hover{background:#9a2f2f}
@media(max-width:650px){
  .deviceRow{grid-template-columns:1fr}
  .deviceRemoveBtn{width:100%}
  .deviceMetaGrid{grid-template-columns:1fr}
  .devicesModalHeader{padding-right:36px}
}


/* =========================================================
   HIVE IPTV — YELLOW / BLACK CLIENT THEME
   Visual override only. Existing PHP/JS functionality intact.
   ========================================================= */

:root{
  --hive-yellow:#FFD400;
  --hive-yellow-2:#FFC400;
  --hive-black:#050505;
  --hive-black-2:#0A0A0A;
  --hive-panel:#111111;
  --hive-panel-2:#161616;
  --hive-border:#2A2A2A;
  --hive-text:#F7F7F7;
  --hive-muted:#8D8D8D;
  --hive-yellow-soft:rgba(255,212,0,.10);
  --hive-yellow-border:rgba(255,212,0,.28);
}

/* GENERAL */
html,body,
body.auth-page,
body.client-page,
.policyBody{
  background:var(--hive-black)!important;
  color:var(--hive-text)!important;
  font-family:'Inter',Arial,Helvetica,sans-serif!important;
}

body.auth-page{
  background:
    radial-gradient(circle at 15% 18%,rgba(255,212,0,.10),transparent 28%),
    radial-gradient(circle at 85% 82%,rgba(255,212,0,.035),transparent 26%),
    #050505!important;
}

.hiveAccent,
.brandMini .blue,
.logo span,
.product .blue,
.policyBrand .blue{
  color:var(--hive-yellow)!important;
}

/* TOP BAR */
.topbar{
  border-bottom:1px solid transparent;
}

.brandMini{
  color:#fff!important;
}

.lang{
  background:#111!important;
  border-color:#303030!important;
  color:#fff!important;
}

.lang:hover,
.lang:focus{
  border-color:var(--hive-yellow)!important;
  box-shadow:0 0 0 3px rgba(255,212,0,.08)!important;
}

/* AUTH SHELL */
.shell{
  background:#0D0D0D!important;
  border-color:#2A2A2A!important;
  box-shadow:0 30px 85px rgba(0,0,0,.62)!important;
}

.hero,
.registerProfilePane{
  background:
    radial-gradient(circle at 0% 0%,rgba(255,212,0,.09),transparent 34%),
    linear-gradient(145deg,#0A0A0A 0%,#111 58%,#151200 100%)!important;
  border-color:#2A2A2A!important;
}

.hero:after,
.registerProfilePane:after{
  border-color:rgba(255,212,0,.12)!important;
  box-shadow:0 0 80px rgba(255,212,0,.08)!important;
}

.product{
  color:#fff!important;
}

.product .blue,
.product .hiveAccent{
  color:var(--hive-yellow)!important;
}

.playerWord{
  color:var(--hive-yellow)!important;
}

.platform{
  border-color:#5E5100!important;
  background:#1C1800!important;
  color:#FFE36A!important;
}

.heroText{
  color:#BEBEBE!important;
}

.feature{
  background:#161616!important;
  border-color:#323232!important;
  color:#D6D6D6!important;
}

.disclaimer{
  border-left-color:var(--hive-yellow)!important;
  background:rgba(255,212,0,.055)!important;
  color:#A7A7A7!important;
}

/* PANELS */
.panel,
.registerSecurityPane{
  background:#101010!important;
}

.moduleTitle{
  color:#fff!important;
}

.subtitle{
  color:#8E8E8E!important;
}

.formSectionTitle,
.dashboardCardTitle{
  color:var(--hive-yellow)!important;
  border-bottom-color:#2B2B2B!important;
}

/* FIELDS */
.field label,
.dashboardField span{
  color:#D7D7D7!important;
}

.field input,
.dashboardField input{
  background:#090909!important;
  border-color:#333!important;
  color:#fff!important;
}

.field input:focus,
.dashboardField input:focus{
  background:#0A0A0A!important;
  border-color:var(--hive-yellow)!important;
  box-shadow:0 0 0 3px rgba(255,212,0,.08)!important;
}

.hint,
.dashboardField small,
.profilePasswordHint{
  color:#757575!important;
}

/* PRIMARY BUTTONS */
.submit,
.dashboardButton{
  background:var(--hive-yellow)!important;
  border-color:var(--hive-yellow)!important;
  color:#080808!important;
  font-weight:900!important;
}

.submit:hover,
.submit:focus,
.dashboardButton:hover,
.dashboardButton:focus{
  background:#FFE13A!important;
  border-color:#FFE13A!important;
  color:#080808!important;
  box-shadow:0 0 0 3px rgba(255,212,0,.08)!important;
}

/* AUTH TABS */
.moduleNav{
  border-top-color:#2B2B2B!important;
}

.moduleBtn{
  background:#171717!important;
  border-color:#333!important;
  color:#CFCFCF!important;
}

.moduleBtn:hover,
.moduleBtn:focus{
  border-color:var(--hive-yellow-border)!important;
  color:#fff!important;
}

.moduleBtn.active{
  background:var(--hive-yellow)!important;
  border-color:var(--hive-yellow)!important;
  color:#080808!important;
}

/* CAPTCHA */
.captchaBox{
  background:#0D0D0D!important;
  border-color:#303030!important;
}

.captchaImage{
  background:#0A0A0A!important;
  border-color:#333!important;
}

.captchaRefresh{
  background:#171717!important;
  border-color:#333!important;
  color:#fff!important;
}

.captchaRefresh:hover,
.captchaRefresh:focus{
  background:var(--hive-yellow)!important;
  border-color:var(--hive-yellow)!important;
  color:#080808!important;
}

.checkRow{
  color:#C8C8C8!important;
}

.checkRow input{
  accent-color:var(--hive-yellow)!important;
}

.legalLink,
.policyBack{
  color:var(--hive-yellow)!important;
  border-bottom-color:rgba(255,212,0,.35)!important;
}

.legalLink:hover,
.legalLink:focus,
.policyBack:hover,
.policyBack:focus{
  color:#fff!important;
  border-bottom-color:#fff!important;
}

/* CLIENT HEADER */
.client-top{
  background:#0B0B0B!important;
  border-bottom-color:#292929!important;
}

.logo{
  color:#fff!important;
}

.logout{
  background:#171717!important;
  border-color:#343434!important;
  color:#E5E5E5!important;
}

.logout:hover,
.logout:focus{
  background:#202020!important;
  border-color:#4A4A4A!important;
  color:#fff!important;
}

.client-content{
  background:transparent!important;
}

.welcome{
  background:#111!important;
  border-color:#2E2E2E!important;
}

.note{
  background:rgba(255,212,0,.055)!important;
  border-color:rgba(255,212,0,.20)!important;
  color:#FFE77A!important;
}

/* CLIENT DASHBOARD */
.dashboardCard{
  background:linear-gradient(145deg,#141414,#0D0D0D)!important;
  border-color:#2E2E2E!important;
  box-shadow:0 16px 38px rgba(0,0,0,.30)!important;
}

.dashboardCard:after{
  border-color:rgba(255,212,0,.10)!important;
  box-shadow:0 0 45px rgba(255,212,0,.06)!important;
}

.dashboardPrimary{
  color:#fff!important;
}

.dashboardMeta,
.dashboardStat{
  color:#999!important;
}

.dashboardLabel{
  color:#777!important;
}

.dashboardStat{
  border-color:#292929!important;
}

.dashboardCardButton{
  border-color:#2E2E2E!important;
}

.dashboardCardButton:hover,
.dashboardCardButton:focus-visible{
  border-color:var(--hive-yellow)!important;
  background:linear-gradient(145deg,#171717,#101010)!important;
  box-shadow:0 20px 45px rgba(0,0,0,.36),0 0 0 2px rgba(255,212,0,.055)!important;
}

.dashboardCardOpenHint{
  color:var(--hive-yellow)!important;
}

.dashboardButton.secondary{
  background:#171717!important;
  border-color:#3A3A3A!important;
  color:#E0E0E0!important;
}

.dashboardButton.secondary:hover{
  border-color:var(--hive-yellow)!important;
  color:var(--hive-yellow)!important;
  background:#1C1C1C!important;
}

/* MODALS */
.dashboardModalBackdrop{
  background:rgba(0,0,0,.84)!important;
}

.dashboardModalDialog{
  background:#111!important;
  border-color:#333!important;
}

.dashboardModalText{
  color:#A8A8A8!important;
}

.modalClose{
  color:#888!important;
}

.modalClose:hover{
  color:var(--hive-yellow)!important;
}

.profileAvatar,
.downloadModalIcon,
.downloadAppIcon,
.devicesModalIcon,
.deviceTvIcon{
  background:var(--hive-yellow-soft)!important;
  border-color:var(--hive-yellow-border)!important;
  color:var(--hive-yellow)!important;
  box-shadow:none!important;
}

.profilePasswordSection,
.profileModalActions{
  border-color:#2B2B2B!important;
}

.readonlyInput{
  background:#161616!important;
  color:#888!important;
  border-color:#303030!important;
}

/* DOWNLOAD / DEVICE CARDS */
.downloadAppCard,
.deviceRow{
  background:linear-gradient(145deg,#131313,#0C0C0C)!important;
  border-color:#303030!important;
}

.downloadAppVersion,
.deviceMetaGrid{
  border-color:#292929!important;
}

.deviceCode,
.deviceMetaGrid span{
  color:#858585!important;
}

.deviceMetaGrid strong{
  color:#D8D8D8!important;
}

/* POLICY */
.policyHeader{
  background:
    radial-gradient(circle at 0% 0%,rgba(255,212,0,.07),transparent 34%),
    linear-gradient(145deg,#0B0B0B,#111 60%,#151200)!important;
  border-color:#303030!important;
}

.policyBrand{
  color:#fff!important;
}

.policyBrand .blue,
.policyBrand .hiveAccent{
  color:var(--hive-yellow)!important;
}

.policyCard{
  background:#111!important;
  border-color:#303030!important;
}

.policyCard h2{
  color:var(--hive-yellow)!important;
}

.policyCard p,
.policyCard li{
  color:#D1D1D1!important;
}

/* FOOTER */
.footer{
  color:#5F5F5F!important;
}

/* STATUS COLORS REMAIN SEMANTIC */
.statusPill.on,
.deviceStatus-active{
  background:rgba(57,170,95,.08)!important;
  color:#61D887!important;
  border-color:rgba(97,216,135,.30)!important;
}

.statusPill.off,
.deviceStatus-blocked{
  background:rgba(200,60,60,.08)!important;
  color:#FF7070!important;
  border-color:rgba(255,112,112,.30)!important;
}

.deviceStatus-unpaid{
  color:var(--hive-yellow)!important;
  background:rgba(255,212,0,.07)!important;
  border-color:rgba(255,212,0,.24)!important;
}

/* DANGER ACTIONS STAY RED */
.dashboardButton.danger,
.deviceRemoveBtn{
  background:#2A1717!important;
  border-color:#733B3B!important;
  color:#FF8D8D!important;
}

.dashboardButton.danger:hover,
.dashboardButton.danger:focus,
.deviceRemoveBtn:hover,
.deviceRemoveBtn:focus{
  background:#8E2929!important;
  border-color:#B94747!important;
  color:#fff!important;
}

/* SCROLLBARS */
::-webkit-scrollbar-thumb,
#registerForm::-webkit-scrollbar-thumb,
.devicesList::-webkit-scrollbar-thumb{
  background:#3A3A3A!important;
}

::-webkit-scrollbar-thumb:hover{
  background:var(--hive-yellow)!important;
}

::selection{
  background:var(--hive-yellow);
  color:#080808;
}


/* Small TV Box compatibility button pinned to panel bottom-right */
.panel.loginOnly{
  position:relative;
  padding-bottom:54px;
}

.compatibilityDownload{
  position:absolute;
  right:18px;
  bottom:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto;
  min-width:0;
  padding:7px 12px;
  border:1px solid rgba(202,138,4,.88);
  border-radius:7px;
  background:linear-gradient(180deg,#b77905,#7a4b00);
  color:#fff;
  text-decoration:none;
  text-align:center;
  font-size:11px;
  font-weight:700;
  line-height:1.15;
  white-space:nowrap;
  box-shadow:0 0 12px rgba(180,120,0,.20);
}

.compatibilityDownload:hover,
.compatibilityDownload:focus{
  border-color:#d6a11d;
  outline:none;
}
