:root{--bg:#070b1b;--bg2:#0d1430;--panel:#111936;--panel2:#171f47;--line:#2f3d75;--text:#f7f9ff;--muted:#9da8c7;--blue:#3e72ff;--blue2:#6f83ff;--gold:#f4c95d;--green:#6ddeaa;--red:#ff7a8c;--shadow:0 28px 80px rgba(0,0,0,.35);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;color:var(--text);background:radial-gradient(circle at 20% 0,#182658 0,transparent 32%),radial-gradient(circle at 82% 18%,#152461 0,transparent 26%),linear-gradient(180deg,#070b1b,#090d20 60%,#070914);min-height:100vh}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.site-header,.app-header{display:flex;align-items:center;justify-content:space-between;gap:24px}.site-header{position:sticky;top:0;z-index:20;padding:18px max(24px,5vw);background:rgba(7,11,27,.72);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.07)}.site-header nav{display:flex;gap:28px;color:#c7d1ee}.brand{display:flex;align-items:center;gap:11px}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:14px;background:linear-gradient(135deg,var(--gold),#d9941f);color:#0d1430;font-weight:900;box-shadow:0 0 30px rgba(244,201,93,.22)}.brand small{display:block;color:var(--muted);font-size:9px;letter-spacing:.15em;margin-top:2px}.header-actions{display:flex;gap:10px}.primary-btn,.ghost-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:14px;padding:11px 18px;cursor:pointer;font-weight:750}.primary-btn{background:linear-gradient(135deg,var(--blue),#5b65ff);color:white;box-shadow:0 12px 32px rgba(62,114,255,.26)}.ghost-btn{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.09);color:white}.xl{padding:15px 22px;border-radius:17px}.small{padding:7px 11px;font-size:12px}.full{width:100%}.hero{min-height:780px;padding:84px max(24px,6vw);display:grid;grid-template-columns:minmax(340px,.8fr) minmax(600px,1.2fr);align-items:center;gap:28px;overflow:hidden}.hero-copy h1{font-size:clamp(46px,6vw,88px);line-height:.98;margin:18px 0;letter-spacing:-.045em}.hero-copy h1 span{color:#9bb1ff}.hero-copy p{font-size:18px;line-height:1.7;color:#b3bfdc;max-width:630px}.hero-actions{display:flex;gap:14px;margin:28px 0}.trust-row{display:flex;flex-wrap:wrap;gap:14px;color:#aeb8d2;font-size:13px}.trust-row span:before{content:"◆";color:var(--gold);margin-right:7px;font-size:9px}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:800;color:#95a3c7}.gold{color:var(--gold)}.phone-stage{position:relative;height:650px}.phone{position:absolute;width:300px;height:610px;border-radius:46px;padding:10px;background:linear-gradient(145deg,#7680b6,#272445 18%,#090d1f 45%,#7651a9 100%);box-shadow:0 35px 80px rgba(0,0,0,.5)}.phone-screen{height:100%;border-radius:38px;background:linear-gradient(180deg,#11183b,#101433 65%,#15113c);padding:34px 22px 22px;overflow:hidden}.phone-top{position:absolute;z-index:3;top:15px;left:50%;transform:translateX(-50%);width:105px;height:27px;border-radius:20px;background:#02040a}.main-phone{left:50%;top:0;transform:translateX(-50%);z-index:3}.tilt-left{left:5%;top:62px;transform:rotate(-11deg);z-index:1}.tilt-right{right:3%;top:78px;transform:rotate(11deg);z-index:2}.big-balance{font-size:32px;font-weight:900;margin-top:8px}.big-amount{text-align:center;font-size:48px;font-weight:900;margin:50px 0}.demo-tag{display:inline-flex;margin-top:8px;border-radius:999px;padding:4px 8px;font-size:9px;font-weight:900;letter-spacing:.14em;background:rgba(244,201,93,.14);color:var(--gold);border:1px solid rgba(244,201,93,.2)}.mock-chart,.chart-wrap{height:205px;margin:16px 0;color:#ff786f;background:linear-gradient(180deg,rgba(77,98,206,.1),rgba(18,25,55,.03));border-radius:20px;overflow:hidden}.mock-chart svg,.chart-wrap svg{width:100%;height:100%}.asset-row,.signal-row,.metric-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.07)}.phone-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.phone-actions button,.phone-screen>button{border:0;border-radius:14px;padding:12px;background:var(--blue);color:white;font-weight:800}.segmented{display:grid;grid-template-columns:1fr 1fr 1fr;gap:4px;background:rgba(255,255,255,.06);padding:4px;border-radius:17px;margin-top:25px}.segmented>*{padding:10px;text-align:center}.segmented b{background:var(--blue);border-radius:13px}.mini-card,.feature-card,.support-card{margin-top:18px;background:linear-gradient(145deg,#202758,#3a2b6f);padding:18px;border-radius:20px}.keypad{white-space:pre-wrap;word-spacing:25px;line-height:3.1;text-align:center;font-size:18px;margin:22px 0}.feature-card strong{float:right;color:var(--green)}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.feature-grid>div{background:rgba(255,255,255,.06);border-radius:18px;padding:16px}.landing-section{padding:80px max(24px,7vw)}.landing-section h2,.simple-hero h1{font-size:clamp(34px,4vw,58px);margin:10px 0 28px}.cards{display:grid;gap:18px}.cards.three{grid-template-columns:repeat(3,1fr)}.glass-card,.package-card,.balance-panel,.stats-grid article{background:linear-gradient(145deg,rgba(24,33,77,.92),rgba(14,20,48,.9));border:1px solid rgba(154,170,255,.12);box-shadow:var(--shadow);border-radius:24px;padding:24px}.package-card strong{display:block;font-size:32px;color:var(--gold);margin:14px 0}.row{display:flex;align-items:center;justify-content:space-between;gap:14px}.badge{padding:6px 10px;border-radius:999px;background:rgba(62,114,255,.15);color:#98adff;font-size:10px;font-weight:900;letter-spacing:.1em}.risk-strip{margin:20px max(24px,7vw) 80px;padding:24px;border:1px solid rgba(244,201,93,.2);background:rgba(244,201,93,.06);border-radius:22px}.risk-strip b{color:var(--gold)}.site-footer{padding:40px max(24px,5vw);border-top:1px solid rgba(255,255,255,.07);display:grid;grid-template-columns:220px 1fr auto;gap:24px;align-items:center;color:var(--muted)}.site-footer p{margin:0}.auth-wrap{min-height:calc(100vh - 80px);display:grid;place-items:center;padding:60px 20px}.auth-card{width:min(480px,100%);padding:32px;border-radius:28px;background:rgba(16,23,55,.94);border:1px solid rgba(255,255,255,.09);box-shadow:var(--shadow)}.auth-card.wide{width:min(760px,100%)}.auth-card h1{font-size:34px;margin:10px 0}.auth-card p{color:var(--muted);line-height:1.6}.form-stack,.form-grid{display:grid;gap:16px;margin-top:22px}.form-grid{grid-template-columns:1fr 1fr}.span-2{grid-column:1/-1}label{display:grid;gap:7px;color:#dbe2f7;font-size:13px;font-weight:700}input,select,textarea{width:100%;background:#0a1027;border:1px solid #2c3764;color:white;border-radius:14px;padding:13px 14px;outline:none}input:focus,select:focus,textarea:focus{border-color:#627fff;box-shadow:0 0 0 3px rgba(98,127,255,.12)}textarea{min-height:110px;resize:vertical}.check{display:flex;grid-template-columns:auto 1fr;align-items:center}.check input{width:auto}.muted{color:var(--muted)}.err{color:#ff8b99}.flash{margin:14px max(20px,4vw);padding:13px 16px;border-radius:14px}.flash.success{background:rgba(109,222,170,.12);color:#8ceabb}.flash.error{background:rgba(255,122,140,.12);color:#ff9cab}.simple-hero{padding:120px max(24px,8vw);min-height:58vh}.simple-hero p{max-width:760px;font-size:18px;line-height:1.8;color:var(--muted)}.app-body{display:flex;background:radial-gradient(circle at 70% 0,#151e51 0,transparent 34%),#090d1d}.sidebar{width:250px;position:fixed;inset:0 auto 0 0;padding:22px 16px;background:rgba(7,10,25,.92);border-right:1px solid rgba(255,255,255,.07);overflow-y:auto;z-index:15}.sidebar nav{display:grid;gap:5px;margin:28px 0}.sidebar nav a{padding:11px 13px;border-radius:12px;color:#9eabc9;font-size:13px}.sidebar nav a:hover,.sidebar nav a.active{background:linear-gradient(90deg,rgba(62,114,255,.2),rgba(62,114,255,.05));color:#fff}.app-shell{width:calc(100% - 250px);margin-left:250px;min-height:100vh}.app-header{padding:22px 30px;border-bottom:1px solid rgba(255,255,255,.07);background:rgba(9,13,29,.65);backdrop-filter:blur(16px);position:sticky;top:0;z-index:10}.app-header h1{font-size:26px;margin:4px 0}.user-chip{display:flex;align-items:center;gap:10px}.user-chip>span{width:40px;height:40px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),#7b5cff);font-weight:900}.user-chip small{display:block;color:var(--muted);font-size:10px;margin-top:2px}.app-main{padding:28px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.8fr);gap:20px}.balance-panel h2{font-size:42px;margin:6px 0}.chart-wrap{color:#ff776f}.timeframes{display:flex;gap:10px;margin-top:-5px}.timeframes span{padding:6px 10px;border-radius:10px;color:#8896b8;font-size:11px}.timeframes .active{background:#29325e;color:white}.asset-list{display:grid;grid-template-columns:repeat(3,1fr);margin-top:10px}.asset-list>div{padding:16px}.asset-list span{display:block;color:var(--muted);font-size:11px;margin-bottom:7px}.quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}.side-stack{display:grid;gap:20px}.metric-list span{color:var(--muted);font-size:12px}.signal-row small{display:block;color:var(--muted);margin-top:4px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:20px}.stats-grid article span{display:block;color:var(--muted);font-size:11px}.stats-grid article strong{display:block;font-size:23px;margin-top:7px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}.table-card{padding:0;overflow:hidden}.table-card>.row{padding:22px 24px}.table-wrap{overflow:auto}.table-wrap table{width:100%;border-collapse:collapse;min-width:900px}.table-wrap th,.table-wrap td{padding:12px 14px;border-top:1px solid rgba(255,255,255,.07);text-align:left;font-size:12px;white-space:nowrap}.table-wrap th{color:#8e9cbe;background:rgba(255,255,255,.025)}.copy-box{display:flex;gap:8px}.notice{margin-top:16px;padding:14px;border-radius:14px;background:rgba(62,114,255,.1);color:#a8b8ff}.mobile-nav{display:none}.admin-theme .brand-mark{background:linear-gradient(135deg,var(--gold),#f0a128)}
@media(max-width:1100px){.hero{grid-template-columns:1fr;padding-top:60px}.phone-stage{margin-top:20px}.cards.three{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}.site-footer{grid-template-columns:1fr}.site-header nav{display:none}}
@media(max-width:760px){body{padding-bottom:70px}.site-header{padding:14px 16px}.site-header .header-actions .ghost-btn{display:none}.brand small{display:none}.hero{padding:50px 18px 20px;min-height:auto}.hero-copy h1{font-size:49px}.hero-copy p{font-size:15px}.trust-row{font-size:11px}.phone-stage{height:590px;transform:scale(.82);transform-origin:top center;margin-bottom:-95px}.tilt-left,.tilt-right{opacity:.55}.cards.three{grid-template-columns:1fr}.landing-section{padding:55px 18px}.risk-strip{margin:15px 18px 55px}.site-footer{padding:30px 18px}.sidebar{display:none}.app-shell{width:100%;margin-left:0}.app-header{padding:16px}.app-header .eyebrow{font-size:8px}.user-chip div{display:none}.app-main{padding:14px}.balance-panel{padding:18px;border-radius:22px}.balance-panel h2{font-size:32px}.asset-list{grid-template-columns:1fr}.asset-list>div{border-bottom:1px solid rgba(255,255,255,.07)}.quick-actions{grid-template-columns:1fr 1fr}.stats-grid,.two-col,.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:0;right:0;bottom:0;z-index:40;background:rgba(8,12,30,.94);backdrop-filter:blur(16px);border-top:1px solid rgba(255,255,255,.08);padding:8px 4px calc(8px + env(safe-area-inset-bottom))}.mobile-nav a{text-align:center;color:#8391b2}.mobile-nav span{display:block;font-size:19px}.mobile-nav small{font-size:8px}.copy-box{display:grid}.phone{width:280px}.main-phone{left:50%}.tilt-left{left:-5%}.tilt-right{right:-5%}}

/* CITIC premium UI + logo patch */
:root{
  --bg:#070a18;--bg2:#0a1028;--panel:#111838;--panel2:#171f4b;--line:#283661;
  --text:#f8fbff;--muted:#8f9abd;--blue:#3274ff;--blue2:#695dff;--gold:#f1c65a;
  --green:#59d89b;--red:#ff7289;--navy:#080d20;--shadow:0 24px 70px rgba(0,0,0,.34)
}
body{background:radial-gradient(circle at 10% -10%,rgba(55,111,255,.22),transparent 34%),radial-gradient(circle at 92% 8%,rgba(103,79,255,.18),transparent 30%),linear-gradient(180deg,#080c1e 0%,#070a18 64%,#060814 100%)}
.brand-premium{min-width:0}.brand-logo{width:44px;height:44px;border-radius:14px;object-fit:cover;flex:0 0 auto;border:1px solid rgba(255,255,255,.15);box-shadow:0 12px 34px rgba(31,119,255,.24),inset 0 0 0 1px rgba(255,255,255,.05)}
.brand-copy{min-width:0}.brand-copy b{display:block;font-size:15px;letter-spacing:.12em;line-height:1}.brand-copy small{margin-top:5px;letter-spacing:.18em;font-size:8px}.site-header{min-height:76px;padding:14px max(22px,5vw);background:rgba(7,10,24,.76);box-shadow:0 12px 40px rgba(0,0,0,.12)}
.site-nav{display:flex;align-items:center;gap:8px;padding:5px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.025);border-radius:16px}.site-nav a{padding:9px 13px;border-radius:11px;font-size:13px;color:#aab5d4;transition:.2s ease}.site-nav a:hover,.site-nav a.active{color:white;background:rgba(72,105,255,.13)}
.icon-btn{width:42px;height:42px;padding:0;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(255,255,255,.055);color:#dce5ff;display:inline-grid;place-items:center;cursor:pointer;transition:.2s ease}.icon-btn:hover{background:rgba(78,107,255,.14);border-color:rgba(111,139,255,.25);transform:translateY(-1px)}.icon-btn svg,.mobile-nav svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.site-menu-toggle{display:none}
.primary-btn,.ghost-btn{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease}.primary-btn:hover,.ghost-btn:hover{transform:translateY(-1px)}.primary-btn{background:linear-gradient(135deg,#2c70ff,#5b5cff);box-shadow:0 12px 30px rgba(45,102,255,.26)}.ghost-btn{background:rgba(255,255,255,.045)}
.site-footer{background:rgba(5,8,18,.32)}.footer-links{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.sidebar{width:270px;padding:20px 15px;background:linear-gradient(180deg,rgba(7,10,25,.98),rgba(7,10,22,.96));box-shadow:18px 0 70px rgba(0,0,0,.14)}.sidebar-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 5px}.sidebar-close{display:none;width:38px;height:38px}.sidebar nav{gap:4px;margin:26px 0}.sidebar nav a{position:relative;display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid transparent;border-radius:13px;transition:.18s ease}.sidebar nav a:hover{background:rgba(73,101,198,.10)}.sidebar nav a.active{background:linear-gradient(90deg,rgba(49,110,255,.18),rgba(85,70,224,.08));border-color:rgba(97,128,255,.13);box-shadow:inset 3px 0 0 #4d78ff}.sidebar-dot{width:7px;height:7px;border-radius:50%;background:#3b4566;box-shadow:0 0 0 4px rgba(255,255,255,.02)}.sidebar nav a.active .sidebar-dot{background:#63a0ff;box-shadow:0 0 16px rgba(77,130,255,.78)}.sidebar-logout{position:sticky;bottom:0;padding-top:14px;background:linear-gradient(180deg,transparent,#070a19 24%)}
.app-shell{width:calc(100% - 270px);margin-left:270px}.app-header{min-height:80px;padding:18px 28px;background:rgba(8,12,29,.72);box-shadow:0 12px 38px rgba(0,0,0,.08)}.app-header-left,.app-header-actions{display:flex;align-items:center;gap:12px}.app-menu-trigger,.app-mobile-logo{display:none}.app-header h1{font-size:25px;line-height:1.1;letter-spacing:-.025em}.app-title-block{min-width:0}.app-title-block h1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:50vw}.header-notification{position:relative}.header-notification:after{content:"";position:absolute;right:8px;top:8px;width:6px;height:6px;border-radius:50%;background:#ff6f7f;border:2px solid #10162e}.user-chip{padding:5px 8px 5px 5px;border:1px solid rgba(255,255,255,.075);border-radius:16px;background:rgba(255,255,255,.035)}.user-chip>span{width:39px;height:39px;border-radius:12px;background:linear-gradient(135deg,#2f77ff,#7158e9);box-shadow:0 9px 28px rgba(62,95,255,.25)}.user-chip b{font-size:12px;max-width:210px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-main{padding:26px 28px 40px}
.balance-panel,.glass-card,.stats-grid article,.package-card{border-color:rgba(141,158,255,.11);background:linear-gradient(145deg,rgba(22,31,72,.94),rgba(12,18,44,.92));box-shadow:0 18px 58px rgba(0,0,0,.26)}.balance-panel{position:relative;overflow:hidden}.balance-panel:before{content:"";position:absolute;width:330px;height:330px;right:-150px;top:-180px;border-radius:50%;background:radial-gradient(circle,rgba(75,90,255,.18),transparent 65%);pointer-events:none}.balance-panel h2{letter-spacing:-.04em}.chart-wrap{border:1px solid rgba(120,139,255,.07);background:linear-gradient(180deg,rgba(64,84,192,.10),rgba(13,19,44,.03));box-shadow:inset 0 -20px 35px rgba(0,0,0,.07)}.asset-list{border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}.asset-list>div:not(:last-child){border-right:1px solid rgba(255,255,255,.06)}.quick-actions a{min-height:43px}.stats-grid article{position:relative;overflow:hidden}.stats-grid article:after{content:"";position:absolute;right:-30px;bottom:-40px;width:95px;height:95px;border-radius:50%;background:rgba(67,105,255,.08)}
.mobile-nav{box-shadow:0 -18px 50px rgba(0,0,0,.28)}.mobile-nav a{position:relative;display:grid;place-items:center;gap:3px;padding:4px 2px;color:#697798;transition:.18s ease}.mobile-nav-icon{display:grid;place-items:center;width:38px;height:32px;border-radius:12px}.mobile-nav a.active{color:#fff}.mobile-nav a.active .mobile-nav-icon{background:linear-gradient(135deg,rgba(48,110,255,.95),rgba(86,77,234,.95));box-shadow:0 8px 24px rgba(45,98,255,.24)}.mobile-nav a.active small{color:#dbe4ff}.mobile-nav small{font-size:9px;font-weight:700;letter-spacing:.02em}
.sidebar-backdrop{display:none}.admin-badge{margin:20px 5px 0;padding:9px 10px;border-radius:12px;border:1px solid rgba(241,198,90,.13);background:rgba(241,198,90,.055);color:#e4bd61;font-size:9px;font-weight:900;letter-spacing:.15em}.admin-theme .sidebar nav a.active{background:linear-gradient(90deg,rgba(241,198,90,.12),rgba(70,95,186,.05));border-color:rgba(241,198,90,.10);box-shadow:inset 3px 0 0 var(--gold)}.admin-theme .sidebar nav a.active .sidebar-dot{background:var(--gold);box-shadow:0 0 14px rgba(241,198,90,.55)}.admin-status{display:flex;align-items:center;gap:7px;color:#93a1c5;font-size:11px}.admin-status i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 12px rgba(89,216,155,.7)}
@media(max-width:1100px){.site-nav{display:none}.site-menu-toggle{display:inline-grid}.site-header.menu-open{flex-wrap:wrap}.site-header.menu-open .site-nav{display:flex;order:3;width:100%;justify-content:center}.app-shell{width:calc(100% - 240px);margin-left:240px}.sidebar{width:240px}}
@media(max-width:760px){
  body{padding-bottom:76px}.site-header{min-height:68px;padding:11px 14px}.brand-logo{width:40px;height:40px;border-radius:13px}.header-login{display:none!important}.site-header.menu-open .site-nav{display:grid;grid-template-columns:1fr 1fr;padding:8px;margin-top:2px}.site-header.menu-open .site-nav a{text-align:center;padding:11px}.site-footer .brand-copy small{display:block}.site-footer{gap:18px}
  .sidebar{display:block;width:min(310px,86vw);transform:translateX(-105%);transition:transform .25s ease;z-index:80;box-shadow:28px 0 70px rgba(0,0,0,.48)}body.nav-open .sidebar{transform:translateX(0)}.sidebar-close{display:inline-grid}.sidebar-backdrop{position:fixed;inset:0;z-index:70;background:rgba(0,0,0,.58);backdrop-filter:blur(4px)}body.nav-open .sidebar-backdrop{display:block}.app-shell{width:100%;margin-left:0}.app-header{min-height:70px;padding:11px 13px;gap:8px}.app-menu-trigger{display:inline-grid;width:39px;height:39px}.app-mobile-logo{display:block;width:39px;height:39px;border-radius:12px;object-fit:cover;border:1px solid rgba(255,255,255,.12)}.app-title-block .eyebrow{display:none}.app-title-block h1{font-size:18px;margin:0;max-width:34vw}.app-header-actions{gap:7px}.header-notification{width:39px;height:39px}.user-chip{padding:3px;background:transparent;border:0}.user-chip>span{width:38px;height:38px}.user-chip div{display:none}.app-main{padding:13px 13px 22px}.balance-panel,.glass-card,.stats-grid article,.package-card{border-radius:20px}.dashboard-grid{gap:13px}.balance-panel{padding:18px 16px}.balance-panel h2{font-size:34px}.chart-wrap{height:190px;margin:14px 0}.timeframes{justify-content:space-between;gap:3px}.timeframes span{padding:6px 8px}.asset-list{grid-template-columns:repeat(3,1fr)}.asset-list>div{padding:14px 8px;border-bottom:0}.asset-list>div:not(:last-child){border-right:1px solid rgba(255,255,255,.06)}.asset-list b{font-size:12px}.asset-list span{font-size:9px}.quick-actions{grid-template-columns:repeat(4,1fr);gap:7px}.quick-actions a{padding:10px 5px;font-size:11px;border-radius:12px}.side-stack{gap:13px}.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.stats-grid article{padding:17px}.stats-grid article strong{font-size:18px}.mobile-nav{grid-template-columns:repeat(5,1fr);padding:7px 5px calc(7px + env(safe-area-inset-bottom));min-height:68px}.mobile-nav svg{width:18px;height:18px}.admin-status{display:none}.admin-theme .app-header .ghost-btn{padding:10px 12px;font-size:11px}
}
@media(max-width:430px){.brand-copy b{font-size:13px}.site-header .brand-copy small{display:none}.site-header .primary-btn{padding:10px 13px;font-size:12px}.site-menu-toggle{width:39px;height:39px}.app-mobile-logo{display:none}.app-title-block h1{max-width:42vw}.quick-actions{grid-template-columns:1fr 1fr}.asset-list{grid-template-columns:1fr}.asset-list>div{display:flex;align-items:center;justify-content:space-between;padding:12px 2px}.asset-list>div:not(:last-child){border-right:0;border-bottom:1px solid rgba(255,255,255,.06)}}

/* CITIC dashboard V2 — premium mobile-first trading interface */
.citic-dashboard{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(310px,.7fr);gap:18px;align-items:start}.dashboard-primary,.dashboard-secondary{display:grid;gap:18px}.market-balance-card,.dashboard-card,.dashboard-metrics article{position:relative;border:1px solid rgba(125,146,255,.11);background:linear-gradient(145deg,rgba(20,29,70,.96),rgba(10,15,38,.96));box-shadow:0 22px 65px rgba(0,0,0,.28);border-radius:26px}.market-balance-card{overflow:hidden;padding:26px}.market-balance-card:before{content:"";position:absolute;right:-90px;top:-145px;width:330px;height:330px;border-radius:50%;background:radial-gradient(circle,rgba(70,97,255,.25),transparent 67%);pointer-events:none}.market-balance-card:after{content:"";position:absolute;left:-80px;bottom:-140px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(57,115,255,.10),transparent 68%);pointer-events:none}.market-card-head,.dashboard-card-head,.dashboard-chart-meta,.signal-focus-top,.signal-countdown-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.dashboard-kicker{display:block;font-size:9px;letter-spacing:.18em;font-weight:900;color:#8f9dc3}.balance-line{display:flex;align-items:flex-end;gap:10px;margin-top:6px}.balance-line h2{font-size:clamp(38px,4vw,58px);letter-spacing:-.055em;line-height:1;margin:0}.balance-currency{font-size:10px;font-weight:900;letter-spacing:.14em;color:#8593b7;margin-bottom:7px}.balance-caption{margin:9px 0 0;max-width:560px;color:#8591b1;font-size:11px;line-height:1.55}.market-card-controls{display:flex;align-items:center;gap:9px;position:relative;z-index:2}.market-data-state{padding:7px 9px;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);font-size:8px;font-weight:900;letter-spacing:.12em;color:#98a6c8}.market-data-state.demo{color:#efc75d;border-color:rgba(239,199,93,.16);background:rgba(239,199,93,.065)}.market-select-wrap select{width:auto;min-width:112px;padding:8px 30px 8px 11px;border-radius:11px;font-size:11px;font-weight:800;background:#121a3b}.dashboard-chart-meta{margin-top:28px;position:relative;z-index:2}.dashboard-chart-meta>div:first-child span{display:block;color:#7e8bac;font-size:10px}.dashboard-chart-meta>div:first-child strong{display:block;font-size:18px;margin-top:3px}.chart-range{display:flex;gap:16px}.chart-range span{color:#707d9f;font-size:8px;letter-spacing:.08em}.chart-range b{color:#b7c2df;margin-left:4px}.premium-chart-wrap{position:relative;height:250px;margin:8px -5px 0;color:#ff766d;overflow:hidden}.premium-chart-wrap svg{width:100%;height:100%}.chart-grid-lines line{stroke:rgba(137,155,222,.07);stroke-width:1;vector-effect:non-scaling-stroke}.dashboard-timeframes{display:flex;justify-content:center;gap:4px;margin-top:3px}.dashboard-timeframes button{border:0;background:transparent;color:#737f9f;padding:7px 10px;border-radius:9px;font-size:9px;font-weight:800;cursor:pointer}.dashboard-timeframes button.active{background:rgba(90,104,179,.25);color:#fff}.balance-assets{display:grid;grid-template-columns:repeat(4,1fr);margin-top:18px;border-top:1px solid rgba(255,255,255,.065);border-bottom:1px solid rgba(255,255,255,.065)}.balance-assets>div{padding:17px 13px}.balance-assets>div:not(:last-child){border-right:1px solid rgba(255,255,255,.06)}.balance-assets span{display:block;color:#7785a8;font-size:9px;margin-bottom:6px}.balance-assets b{font-size:13px}.dashboard-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px}.dashboard-actions a{display:grid;place-items:center;gap:7px;padding:10px 5px;border-radius:15px;color:#aeb9d6;transition:.18s ease}.dashboard-actions a:hover{background:rgba(255,255,255,.035);color:#fff}.dashboard-actions small{font-size:9px;font-weight:800}.action-icon,.metric-icon{display:grid;place-items:center;border-radius:14px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.07);color:#aab9df}.action-icon{width:44px;height:44px}.action-icon.primary{background:linear-gradient(135deg,#2f70ff,#5e58ed);color:#fff;box-shadow:0 10px 27px rgba(50,103,255,.26)}.action-icon svg,.metric-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.dashboard-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.dashboard-metrics article{padding:17px;display:flex;align-items:center;gap:12px;min-width:0}.metric-icon{width:39px;height:39px;flex:0 0 auto;border-radius:12px;background:rgba(54,104,255,.10);color:#7ea2ff}.dashboard-metrics small{display:block;color:#7784a5;font-size:8px;margin-bottom:5px}.dashboard-metrics strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-card{padding:21px}.dashboard-card-head h3{font-size:16px;margin:4px 0 0}.dashboard-card-head>a{font-size:9px;color:#8199e7;font-weight:800}.signal-focus-card{overflow:hidden}.signal-focus-card:after{content:"";position:absolute;right:-80px;top:-100px;width:210px;height:210px;border-radius:50%;background:radial-gradient(circle,rgba(68,91,255,.18),transparent 68%);pointer-events:none}.signal-market-badge{display:flex;align-items:center;gap:10px}.signal-market-badge>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:linear-gradient(145deg,#346cff,#152c76);font-weight:900;border:1px solid rgba(255,255,255,.12)}.signal-market-badge b{display:block;font-size:14px}.signal-market-badge small{display:block;color:#7280a1;font-size:7px;margin-top:3px;letter-spacing:.1em}.signal-focus-top{margin-top:22px}.direction-pill{padding:7px 10px;border-radius:10px;font-size:9px;font-weight:900;letter-spacing:.08em}.direction-pill.buy{background:rgba(74,214,153,.12);color:#61dba3}.direction-pill.sell{background:rgba(255,104,127,.12);color:#ff7c90}.signal-price-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:20px 0}.signal-price-grid>div{padding:12px;border-radius:13px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.05)}.signal-price-grid span{display:block;color:#6f7d9e;font-size:7px;letter-spacing:.09em;margin-bottom:4px}.signal-price-grid b{font-size:12px}.signal-countdown-row{padding:12px 0 18px;border-top:1px solid rgba(255,255,255,.06)}.signal-countdown-row span{color:#7783a4;font-size:9px}.signal-countdown-row strong{font-size:12px;color:#efc75d}.portfolio-balance-ring{margin:20px 0;padding:18px;border-radius:18px;background:radial-gradient(circle at 80% 20%,rgba(60,89,255,.16),transparent 45%),rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.055)}.portfolio-balance-ring span{display:block;color:#7d89a8;font-size:9px}.portfolio-balance-ring strong{display:block;font-size:22px;margin-top:4px;letter-spacing:-.03em}.portfolio-list{margin-bottom:18px}.portfolio-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.055)}.portfolio-list span{color:#7f8baa;font-size:9px}.portfolio-list b{font-size:10px}.status-live{color:#5ed99d}.risk-card-v2 p{margin:9px 0 0;color:#8590ae;font-size:10px;line-height:1.6}.activity-list{margin-top:13px}.activity-item{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 0;border-top:1px solid rgba(255,255,255,.055)}.activity-symbol{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;font-size:15px;font-weight:900}.activity-symbol.credit{color:#5ed99d;background:rgba(94,217,157,.09)}.activity-symbol.debit{color:#ff7b8f;background:rgba(255,123,143,.09)}.activity-copy,.activity-amount{min-width:0}.activity-copy b,.activity-amount b{display:block;font-size:10px}.activity-copy small,.activity-amount small{display:block;color:#707d9d;font-size:8px;margin-top:3px}.activity-copy small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-amount{text-align:right}.dashboard-empty{display:grid;place-items:center;text-align:center;min-height:145px;padding:18px;color:#8a96b4}.dashboard-empty b{color:#ccd5ed;font-size:12px}.dashboard-empty span{font-size:9px;margin-top:5px}.dashboard-empty.compact{min-height:125px}.recent-activity-card{padding-bottom:12px}
@media(max-width:1220px){.citic-dashboard{grid-template-columns:1fr}.dashboard-secondary{grid-template-columns:1fr 1fr}.risk-card-v2{grid-column:1/-1}.dashboard-metrics{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.citic-dashboard,.dashboard-primary,.dashboard-secondary{gap:12px}.dashboard-secondary{grid-template-columns:1fr}.risk-card-v2{grid-column:auto}.market-balance-card,.dashboard-card{border-radius:21px}.market-balance-card{padding:18px 15px}.market-card-head{align-items:flex-start}.market-card-controls{display:grid;justify-items:end;gap:6px}.market-data-state{padding:5px 7px;font-size:7px}.market-select-wrap select{min-width:96px;font-size:9px;padding:7px 25px 7px 9px}.balance-line h2{font-size:34px}.balance-caption{font-size:9px;max-width:260px}.dashboard-chart-meta{margin-top:20px}.chart-range{gap:8px}.chart-range span{font-size:7px}.premium-chart-wrap{height:205px;margin-left:-8px;margin-right:-8px}.dashboard-timeframes{justify-content:space-between;gap:1px}.dashboard-timeframes button{padding:6px 7px;font-size:8px}.balance-assets{grid-template-columns:1fr 1fr}.balance-assets>div{padding:12px 8px}.balance-assets>div:nth-child(2){border-right:0}.balance-assets>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.06)}.balance-assets span{font-size:8px}.balance-assets b{font-size:11px}.dashboard-actions{gap:5px}.action-icon{width:40px;height:40px;border-radius:13px}.dashboard-actions small{font-size:8px}.dashboard-metrics{grid-template-columns:1fr 1fr;gap:8px}.dashboard-metrics article{padding:12px;gap:8px;border-radius:17px}.metric-icon{width:34px;height:34px}.dashboard-metrics strong{font-size:10px}.dashboard-card{padding:17px}.activity-item{grid-template-columns:34px minmax(0,1fr) auto}.activity-symbol{width:31px;height:31px}.activity-amount b{font-size:9px}.recent-activity-card{padding-bottom:8px}}
@media(max-width:420px){.market-card-head{display:block}.market-card-controls{display:flex;justify-content:space-between;margin-top:14px}.balance-line h2{font-size:32px}.chart-range{display:none}.dashboard-actions{grid-template-columns:repeat(4,1fr)}.dashboard-metrics{grid-template-columns:1fr 1fr}.dashboard-metrics article{display:block}.metric-icon{margin-bottom:8px}.activity-copy small{max-width:145px}}

/* === CITIC V3: animated candlestick terminal + market/package marketplace === */
.citic-candle-chart{display:block;width:100%;height:100%;min-width:0;transition:opacity .18s ease}.citic-candle-chart.is-loading{opacity:.42}.dashboard-candle-ohlc{position:absolute;z-index:3;top:8px;left:9px;display:flex;gap:12px;pointer-events:none}.dashboard-candle-ohlc span{font-size:8px;color:#6f7d9e}.dashboard-candle-ohlc b{color:#b8c3df;font-weight:800;margin-left:3px}.premium-chart-wrap.candle-chart-panel{height:270px;margin:8px -4px 0}.premium-chart-wrap.candle-chart-panel canvas{height:100%}
.trade-terminal{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:16px;align-items:start}.trade-chart-card,.trade-order-card,.trade-account-card,.trade-risk-card{position:relative;border:1px solid rgba(255,255,255,.07);background:linear-gradient(155deg,rgba(18,27,61,.96),rgba(8,13,32,.96));box-shadow:0 22px 65px rgba(0,0,0,.24)}.trade-chart-card{padding:20px;border-radius:25px;overflow:hidden}.trade-chart-card:before{content:"";position:absolute;inset:auto -150px -190px auto;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(49,96,255,.13),transparent 67%);pointer-events:none}.trade-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;position:relative;z-index:2}.trade-symbol-row{display:flex;align-items:center;gap:10px;margin-top:5px}.trade-symbol-row h2{font-size:25px;letter-spacing:-.035em;margin:0}.trade-market-copy p{color:#7f8cab;font-size:10px;margin:5px 0 0}.trade-market-controls label{display:grid;gap:5px;color:#7886a7;font-size:8px;text-transform:uppercase;letter-spacing:.11em}.trade-market-controls select{min-width:130px;background:#10183a;border:1px solid rgba(255,255,255,.08);color:#eef3ff;border-radius:12px;padding:9px 30px 9px 11px}.trade-quote-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;margin:18px 0 5px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.055);border-radius:14px;overflow:hidden;position:relative;z-index:2}.trade-quote-strip>div{padding:10px 12px;background:#0d1532}.trade-quote-strip span{display:block;color:#697797;font-size:7px;letter-spacing:.09em}.trade-quote-strip b{display:block;margin-top:4px;font-size:11px}.forex-canvas-shell{position:relative;height:430px;margin:0 -4px}.forex-canvas-shell canvas{height:100%}.trade-timeframes{display:flex;gap:4px;justify-content:center;border-top:1px solid rgba(255,255,255,.055);padding-top:10px}.trade-timeframes button{border:0;background:transparent;color:#6f7d9d;border-radius:9px;padding:7px 11px;font-size:9px;font-weight:800;cursor:pointer}.trade-timeframes button.active{background:rgba(63,104,255,.18);color:#fff}.demo-feed-notice{display:flex;align-items:center;gap:9px;margin-top:12px;padding:10px 12px;border-radius:13px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.045)}.demo-feed-notice .live-dot{width:8px;height:8px;border-radius:50%;background:#42dda3;box-shadow:0 0 0 5px rgba(66,221,163,.08);animation:citicPulse 1.4s infinite}.demo-feed-notice b,.demo-feed-notice small{display:block}.demo-feed-notice b{font-size:9px}.demo-feed-notice small{color:#74819f;font-size:8px;margin-top:2px}.trade-side-panel{display:grid;gap:12px}.trade-order-card,.trade-account-card,.trade-risk-card{border-radius:21px;padding:18px}.trade-direction{display:flex;align-items:center;justify-content:space-between;margin:16px 0;padding:13px;border-radius:14px}.trade-direction.buy{background:rgba(55,216,155,.09);border:1px solid rgba(55,216,155,.14);color:#43dfa7}.trade-direction.sell{background:rgba(255,111,133,.09);border:1px solid rgba(255,111,133,.14);color:#ff778a}.trade-direction span{font-size:15px;font-weight:900}.trade-direction b{font-size:11px}.trade-signal-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.trade-signal-grid>div{padding:11px;border-radius:12px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.045)}.trade-signal-grid span{display:block;color:#6f7c9b;font-size:7px}.trade-signal-grid b{display:block;margin-top:4px;font-size:10px}.trade-empty-signal{text-align:center;padding:25px 8px}.trade-empty-signal>span{display:grid;place-items:center;margin:auto;width:48px;height:48px;border-radius:15px;background:rgba(72,106,255,.10);color:#7896ff;font-size:21px}.trade-empty-signal h3{font-size:13px;margin:13px 0 5px}.trade-empty-signal p{color:#7683a3;font-size:9px;line-height:1.55}.trade-account-total{padding:15px 0 14px}.trade-account-total small{display:block;color:#7784a3;font-size:8px}.trade-account-total strong{display:block;margin-top:5px;font-size:24px;letter-spacing:-.04em}.metric-list.compact>div{padding:9px 0}.trade-risk-card b{font-size:10px;color:#efc75d}.trade-risk-card p{margin:6px 0 0;color:#7783a1;font-size:9px;line-height:1.6}.marketplace-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.marketplace-head h2{font-size:clamp(24px,3vw,36px);letter-spacing:-.04em;margin:7px 0}.marketplace-head p{max-width:720px;color:#7d89a8;font-size:10px;line-height:1.65;margin:0}.marketplace-balance{text-align:right;padding:12px 14px;border-radius:15px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.055)}.marketplace-balance span{display:block;color:#7582a1;font-size:8px}.marketplace-balance b{display:block;margin-top:4px;font-size:16px}.package-market-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.package-market-card{position:relative;overflow:hidden;padding:18px;border-radius:23px;background:linear-gradient(150deg,#121b3b,#0b1128);border:1px solid rgba(255,255,255,.07);box-shadow:0 18px 45px rgba(0,0,0,.19)}.package-market-card.featured{border-color:rgba(69,113,255,.36);box-shadow:0 20px 50px rgba(36,72,190,.15)}.package-market-card:after{content:"";position:absolute;right:-75px;top:-100px;width:190px;height:190px;border-radius:50%;background:radial-gradient(circle,rgba(63,104,255,.13),transparent 68%);pointer-events:none}.package-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.package-number{display:block;font-size:8px;color:#69789a;font-weight:900;letter-spacing:.15em}.package-card-top h3{font-size:15px;margin:5px 0 0}.package-popular{padding:5px 7px;border-radius:8px;background:rgba(63,104,255,.14);border:1px solid rgba(63,104,255,.20);color:#88a4ff;font-size:7px;font-weight:900;letter-spacing:.10em}.package-price{margin-top:18px}.package-price small{display:block;color:#7180a1;font-size:8px}.package-price strong{display:block;font-size:27px;margin-top:3px;letter-spacing:-.045em}.package-chart-head{display:flex;align-items:center;justify-content:space-between;margin-top:16px}.package-chart-head span{font-size:9px;font-weight:800}.package-chart-head small{font-size:6px;color:#6f7d9f;letter-spacing:.09em}.package-mini-chart-wrap{height:115px;margin:4px -5px 8px}.package-mini-chart-wrap canvas{height:100%}.package-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin:8px 0 12px}.package-stats>div{padding:8px;border-radius:10px;background:rgba(255,255,255,.027);border:1px solid rgba(255,255,255,.04)}.package-stats span{display:block;color:#6e7b99;font-size:6px}.package-stats b{display:block;margin-top:4px;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.package-market-card>p{min-height:31px;color:#74819e;font-size:8px;line-height:1.55}.market-watch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.market-watch-card{padding:16px;border-radius:21px;background:linear-gradient(150deg,#121b3b,#0b1128);border:1px solid rgba(255,255,255,.065)}.market-watch-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.market-watch-head>div>span{display:block;color:#6e7b9b;font-size:7px;letter-spacing:.11em}.market-watch-head h3{font-size:16px;margin:4px 0 1px}.market-watch-head small{color:#7b88a7;font-size:8px}.market-mini-chart-wrap{height:135px;margin:8px -4px}.market-mini-chart-wrap canvas{height:100%}@keyframes citicPulse{0%,100%{opacity:1}50%{opacity:.45}}
@media(max-width:1180px){.trade-terminal{grid-template-columns:1fr}.trade-side-panel{grid-template-columns:1fr 1fr}.trade-risk-card{grid-column:1/-1}.package-market-grid,.market-watch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.premium-chart-wrap.candle-chart-panel{height:225px}.dashboard-candle-ohlc{gap:7px}.dashboard-candle-ohlc span{font-size:7px}.trade-chart-card{padding:14px;border-radius:20px}.trade-toolbar{display:block}.trade-market-controls{margin-top:12px}.trade-market-controls select{width:100%}.trade-quote-strip{grid-template-columns:repeat(2,1fr)}.trade-quote-strip>div:last-child{grid-column:1/-1}.forex-canvas-shell{height:330px;margin:0 -8px}.trade-timeframes{justify-content:space-between;gap:1px;overflow-x:auto}.trade-timeframes button{padding:7px 8px}.trade-side-panel{grid-template-columns:1fr}.trade-risk-card{grid-column:auto}.marketplace-head{align-items:flex-start;display:block}.marketplace-balance{margin-top:12px;text-align:left}.package-market-grid,.market-watch-grid{grid-template-columns:1fr}.package-market-card,.market-watch-card{border-radius:19px}.package-mini-chart-wrap{height:125px}.market-mini-chart-wrap{height:145px}}
@media(max-width:420px){.forex-canvas-shell{height:285px}.trade-quote-strip b{font-size:10px}.package-stats{grid-template-columns:1fr 1fr}.package-stats>div:last-child{grid-column:1/-1}.premium-chart-wrap.candle-chart-panel{height:210px}}
@media(prefers-reduced-motion:reduce){.demo-feed-notice .live-dot{animation:none}}

/* === CITIC V1 / Phase 2 production interface === */
.terminal-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start}.terminal-chart-card,.signal-focus-card,.account-rail{border:1px solid rgba(255,255,255,.075);background:linear-gradient(155deg,rgba(17,26,58,.97),rgba(7,12,29,.98));box-shadow:0 22px 60px rgba(0,0,0,.24);border-radius:24px}.terminal-chart-card{padding:18px;overflow:hidden}.terminal-topbar,.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.terminal-symbol{display:flex;align-items:center;gap:10px;margin-top:5px}.terminal-symbol h2{margin:0;font-size:27px;letter-spacing:-.04em}.compact-field{min-width:150px;font-size:9px;color:#7f8dad;text-transform:uppercase;letter-spacing:.1em}.compact-field select{margin-top:6px;padding:10px}.quote-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;margin:16px 0 4px;border:1px solid rgba(255,255,255,.06);border-radius:14px;overflow:hidden;background:rgba(255,255,255,.05)}.quote-strip>div{padding:10px 12px;background:#0c1430}.quote-strip span{display:block;font-size:7px;color:#71809e;letter-spacing:.1em}.quote-strip b{display:block;margin-top:4px;font-size:11px}.terminal-canvas-wrap{height:470px;margin:0 -4px}.terminal-canvas-wrap canvas{height:100%}.terminal-side{display:grid;gap:14px}.signal-focus-card,.account-rail{padding:18px}.signal-focus-card h3,.account-rail h3{margin:5px 0}.signal-badge{display:flex;align-items:center;justify-content:space-between;padding:13px 14px;margin:14px 0;border-radius:14px}.signal-badge.buy{background:rgba(55,216,155,.09);border:1px solid rgba(55,216,155,.16);color:#43dfa7}.signal-badge.sell{background:rgba(255,111,133,.09);border:1px solid rgba(255,111,133,.16);color:#ff778a}.signal-badge span{font-size:16px;font-weight:900}.signal-badge b{font-size:12px}.signal-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.signal-detail-grid>div{padding:10px;border-radius:12px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.045)}.signal-detail-grid span{display:block;color:#73809e;font-size:7px;text-transform:uppercase;letter-spacing:.08em}.signal-detail-grid b{display:block;margin-top:4px;font-size:10px}.countdown-card{margin:12px 0;padding:14px;border-radius:14px;text-align:center;background:linear-gradient(135deg,rgba(63,104,255,.16),rgba(99,63,255,.08));border:1px solid rgba(104,129,255,.16)}.countdown-card span{display:block;font-size:8px;color:#8fa1ce;letter-spacing:.14em}.countdown-card strong{display:block;margin-top:5px;font-size:30px;letter-spacing:.05em}.risk-note{color:#818dab;font-size:9px;line-height:1.6}.account-rail>strong{display:block;font-size:27px;margin:8px 0 14px}.account-rail .primary-btn{margin-top:8px}.empty-state{text-align:center;padding:22px 5px}.empty-icon{display:grid;place-items:center;margin:auto;width:52px;height:52px;border-radius:16px;background:rgba(73,105,255,.11);color:#8ca2ff;font-size:22px}.empty-state h3{margin:12px 0 5px}.empty-state p{color:#7684a5;font-size:10px;line-height:1.6}.data-disclaimer{display:flex;align-items:center;gap:10px;margin-top:12px;padding:11px 12px;border-radius:13px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05)}.data-disclaimer .live-dot{width:8px;height:8px;border-radius:50%;background:#42dda3;box-shadow:0 0 0 5px rgba(66,221,163,.07);animation:citicPulse 1.5s infinite}.data-disclaimer b,.data-disclaimer small{display:block}.data-disclaimer b{font-size:9px}.data-disclaimer small{margin-top:2px;color:#7785a5;font-size:8px}.terminal-history{margin-top:18px}.terminal-history>.section-head{padding:20px 22px}.text-link{color:#8ea7ff;font-size:10px;font-weight:800}.side-pill{display:inline-flex;padding:5px 8px;border-radius:8px;font-size:9px;font-weight:900;letter-spacing:.07em}.side-pill.buy{background:rgba(55,216,155,.1);color:#4adeaa}.side-pill.sell{background:rgba(255,111,133,.1);color:#ff8293}.positive{color:#54dfa9!important}.negative{color:#ff7e90!important}.market-price-row{display:flex;align-items:baseline;justify-content:space-between;margin-top:14px}.market-price-row strong{font-size:22px;letter-spacing:-.04em}.market-price-row span{font-size:10px;font-weight:800}.status-chip{display:inline-flex;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.06);font-size:8px;font-weight:900;letter-spacing:.08em}.status-active,.status-completed{color:#52dca7;background:rgba(55,216,155,.1)}.status-upcoming,.status-scheduled{color:#8fa8ff;background:rgba(63,104,255,.11)}.status-closing{color:#f3c85e;background:rgba(244,201,93,.1)}.status-cancelled,.status-expired{color:#ff8192;background:rgba(255,111,133,.1)}.signal-list{display:grid;gap:12px}.signal-list-card{padding:17px;border-radius:20px;background:linear-gradient(150deg,#121a39,#0a1027);border:1px solid rgba(255,255,255,.065)}.signal-list-main{display:flex;align-items:center;justify-content:space-between;gap:14px}.signal-list-main .signal-badge{width:190px;margin:0}.signal-list-main small{display:block;color:#7481a0;font-size:8px;margin-top:5px;text-align:right}.signal-list-metrics{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin-top:13px}.signal-list-metrics>div{padding:9px;border-radius:11px;background:rgba(255,255,255,.025)}.signal-list-metrics span{display:block;color:#6e7c9b;font-size:7px}.signal-list-metrics b{display:block;margin-top:4px;font-size:9px}.signal-list-card>p{margin:11px 0 0;color:#7c89a7;font-size:9px}.signal-countdown-row{display:flex;justify-content:space-between;align-items:center;margin-top:11px;padding:10px 12px;border-radius:11px;background:rgba(63,104,255,.08)}.signal-countdown-row span{font-size:8px;color:#8c9cc4}.signal-countdown-row strong{font-size:15px}.inline-filter select{min-width:150px}.demo-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px;padding:22px 24px;border-radius:22px;background:linear-gradient(135deg,rgba(72,105,255,.22),rgba(89,49,172,.12));border:1px solid rgba(100,127,255,.18)}.demo-banner>div:first-child>span{font-size:9px;letter-spacing:.16em;font-weight:900;color:#f3c85e}.demo-banner h2{margin:5px 0}.demo-banner p{margin:0;color:#8491af;font-size:10px}.demo-banner>div:last-child{text-align:right}.demo-banner small,.demo-banner>div:last-child span{display:block;color:#8592b0;font-size:8px}.demo-banner strong{display:block;font-size:28px;margin:4px 0}.buy-sell-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.buy-action,.sell-action{border:0;border-radius:13px;padding:13px;color:#07101c;font-weight:900;cursor:pointer}.buy-action{background:#48dba7}.sell-action{background:#ff788a}.portfolio-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:18px}.portfolio-stat-grid article{padding:18px;border-radius:18px;background:linear-gradient(150deg,#121a39,#0a1027);border:1px solid rgba(255,255,255,.06)}.portfolio-stat-grid span{display:block;color:#7482a1;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.portfolio-stat-grid strong{display:block;margin-top:7px;font-size:21px}.performance-bars{display:grid;gap:9px;margin-top:14px}.performance-row{display:grid;grid-template-columns:90px 1fr 130px;gap:12px;align-items:center}.performance-row>span,.performance-row>b{font-size:9px}.performance-row>b{text-align:right}.performance-row>div{height:7px;border-radius:999px;background:rgba(255,255,255,.05);overflow:hidden}.performance-row i{display:block;height:100%;border-radius:999px}.positive-bar{background:#49d8a5}.negative-bar{background:#ff7488}.notification-list{display:grid;gap:10px}.notification-card{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px 18px;border-radius:18px;background:rgba(15,23,52,.83);border:1px solid rgba(255,255,255,.055)}.notification-card.unread{border-color:rgba(89,120,255,.25);background:linear-gradient(135deg,rgba(31,47,101,.88),rgba(13,20,45,.88))}.notification-type{font-size:7px;color:#f0c85d;letter-spacing:.1em;font-weight:900}.notification-card h3{margin:5px 0;font-size:13px}.notification-card p{margin:0;color:#8793b0;font-size:9px}.notification-card small{display:block;margin-top:7px;color:#64718f;font-size:8px}.notification-count{position:absolute;right:-4px;top:-4px;min-width:17px;height:17px;border-radius:10px;display:grid;place-items:center;padding:0 4px;background:#ff6f85;color:white;font-size:8px;font-style:normal;font-weight:900}.header-notification{position:relative}.admin-work-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:16px;margin-bottom:18px}.admin-signal-list{display:grid}.admin-signal-row{display:grid;grid-template-columns:minmax(210px,1fr) minmax(260px,1fr) auto;gap:14px;align-items:center;padding:14px 20px;border-top:1px solid rgba(255,255,255,.055)}.admin-signal-summary{display:flex;align-items:center;gap:10px}.admin-signal-summary small{display:block;margin-top:4px;color:#75819f;font-size:8px}.admin-signal-numbers{display:flex;gap:14px;flex-wrap:wrap}.admin-signal-numbers span{font-size:8px;color:#7884a2}.admin-signal-numbers b{color:#e9edfb;margin-left:3px}.admin-signal-actions{display:flex;gap:7px;align-items:center}.admin-signal-actions details{position:relative}.admin-signal-actions summary{list-style:none}.mini-form{position:absolute;right:0;top:38px;z-index:12;width:280px;padding:12px;display:grid;gap:8px;border-radius:14px;background:#0b1129;border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px rgba(0,0,0,.45)}.mini-form input,.mini-form select{padding:9px;font-size:10px}.danger-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,111,133,.2);background:rgba(255,111,133,.1);color:#ff8696;border-radius:12px;padding:9px 13px;font-weight:800;cursor:pointer}.package-admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.check-row{display:flex;align-items:center;gap:8px}.check-row input{width:auto}.check-row{align-self:center}.site-footer code,.app-main code{white-space:normal;word-break:break-word}.mobile-nav{padding-bottom:max(7px,env(safe-area-inset-bottom))}
@media(max-width:1180px){.terminal-grid{grid-template-columns:1fr}.terminal-side{grid-template-columns:1fr 1fr}.portfolio-stat-grid,.package-admin-grid{grid-template-columns:repeat(2,1fr)}.admin-signal-row{grid-template-columns:1fr 1fr}.admin-signal-actions{grid-column:1/-1}.admin-work-grid{grid-template-columns:1fr}}
@media(max-width:760px){.terminal-chart-card{padding:13px;border-radius:19px}.terminal-topbar{display:block}.compact-field{display:block;margin-top:11px}.terminal-canvas-wrap{height:340px;margin:0 -7px}.quote-strip{grid-template-columns:repeat(2,1fr)}.quote-strip>div:last-child{grid-column:1/-1}.terminal-side{grid-template-columns:1fr}.signal-list-main{align-items:flex-start}.signal-list-main .signal-badge{width:150px}.signal-list-metrics{grid-template-columns:repeat(2,1fr)}.demo-banner{align-items:flex-start;display:block}.demo-banner>div:last-child{text-align:left;margin-top:15px}.portfolio-stat-grid,.package-admin-grid{grid-template-columns:1fr 1fr}.performance-row{grid-template-columns:72px 1fr 100px}.notification-card{align-items:flex-start}.admin-signal-row{grid-template-columns:1fr}.admin-signal-numbers{display:grid;grid-template-columns:1fr 1fr}.mini-form{position:fixed;left:12px;right:12px;top:120px;width:auto}.mobile-nav{grid-template-columns:repeat(6,1fr)}.mobile-nav a{padding-inline:2px}.mobile-nav small{font-size:7px}}
@media(max-width:430px){.terminal-canvas-wrap{height:290px}.portfolio-stat-grid{grid-template-columns:1fr}.performance-row{grid-template-columns:64px 1fr 85px}.signal-list-main{display:block}.signal-list-main .signal-badge{width:100%;margin-bottom:9px}.signal-list-main small{text-align:left}.quote-strip b{font-size:10px}}
.package-subscribe-form{display:grid;gap:8px;margin-top:12px}.package-subscribe-form input{padding:10px 11px;font-size:10px}
.profile-grid{display:grid;grid-template-columns:320px 1fr;gap:18px}.profile-card{text-align:center}.profile-avatar{width:92px;height:92px;margin:0 auto 14px;border-radius:28px;overflow:hidden;background:linear-gradient(135deg,#3e72ff,#765cff);display:grid;place-items:center}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-avatar span{font-size:34px;font-weight:900}.verification-list{margin-top:18px;text-align:left}.verification-list>div{display:flex;justify-content:space-between;gap:10px;padding:11px 0;border-top:1px solid rgba(255,255,255,.06);font-size:10px}.ticket-item{border-top:1px solid rgba(255,255,255,.06);padding:10px 0}.ticket-item summary{display:flex;justify-content:space-between;gap:10px;cursor:pointer;font-size:10px}.ticket-item summary b{color:#8fa8ff}.ticket-item p{padding:9px;border-radius:10px;background:rgba(255,255,255,.025);font-size:9px;line-height:1.5}.ticket-item small{display:block;color:#74819f;margin-top:4px}.notice{margin-top:15px;padding:12px;border-radius:12px;background:rgba(244,201,93,.06);border:1px solid rgba(244,201,93,.12);color:#aab3ca;font-size:9px;line-height:1.5}@media(max-width:760px){.profile-grid{grid-template-columns:1fr}}
.admin-user-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-user-actions,.inline-action{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.admin-user-actions{margin-top:12px}.inline-action select{width:auto;min-width:105px;padding:8px;font-size:9px}.admin-table-head{padding:20px 22px}.admin-empty{padding:20px}.support-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.support-thread{max-height:280px;overflow:auto;margin:12px 0}.support-thread p{padding:10px;border-radius:10px;background:rgba(255,255,255,.025);font-size:9px;line-height:1.5}.support-thread small{display:block;color:#74819f;margin-top:4px}@media(max-width:900px){.admin-user-grid,.support-admin-grid{grid-template-columns:1fr}}
.admin-quick-links{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.admin-quick-links a{padding:11px;border-radius:11px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.05);font-size:9px}.audit-mini>div{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:9px 0;border-top:1px solid rgba(255,255,255,.055);font-size:9px}.audit-mini small{grid-column:1/-1;color:#74819f}
.education-hero{min-height:38vh}.education-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.education-body{color:#9aa7c5;font-size:11px;line-height:1.7;margin:14px 0}@media(max-width:760px){.education-grid{grid-template-columns:1fr}}

/* =========================================================
   CITIC Exchange V1 / Phase 3
   Financial clarity, real/demo separation and responsive UI
   ========================================================= */
.dashboard-v3-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:20px;align-items:stretch;margin-bottom:18px}.dashboard-v3-head h2,.trade-mode-copy h2{margin:7px 0 8px;font-size:clamp(28px,3vw,42px);letter-spacing:-.025em}.dashboard-v3-head p,.trade-mode-copy p{max-width:760px;margin:0;color:var(--muted);line-height:1.65}.dashboard-balance-v3{display:flex;flex-direction:column;justify-content:center;padding:22px 24px;border-radius:22px;background:linear-gradient(145deg,rgba(46,76,181,.32),rgba(15,23,56,.94));border:1px solid rgba(126,153,255,.2);box-shadow:var(--shadow)}.dashboard-balance-v3 span,.dashboard-balance-v3 small{color:var(--muted)}.dashboard-balance-v3 strong{font-size:clamp(28px,3vw,42px);margin:6px 0;letter-spacing:-.035em}.phase3-metrics{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:20px}.phase3-metrics article{min-height:116px;display:flex;align-items:center;gap:14px}.phase3-metrics article>div{min-width:0}.phase3-metrics small{display:block;color:var(--muted)}.phase3-metrics strong{display:block;margin-top:5px}.phase3-metrics em{display:block;margin-top:5px;color:#9eabc9;font-size:11px;font-style:normal}.dashboard-v3-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.72fr);gap:20px;align-items:start}.dashboard-v3-side{display:grid;gap:20px}.dashboard-market-v3{min-width:0}.dashboard-market-v3 .premium-chart-wrap{height:390px}.signal-live-pulse{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;color:#8ef0b8;background:rgba(109,222,170,.12);border:1px solid rgba(109,222,170,.24);font-size:10px;font-weight:900;letter-spacing:.12em;animation:citicPulse 1.35s ease-in-out infinite}.signal-live-pulse:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 0 rgba(109,222,170,.4)}.has-live-signal{border-color:rgba(109,222,170,.26);box-shadow:0 22px 65px rgba(0,0,0,.28),0 0 34px rgba(109,222,170,.06)}@keyframes citicPulse{50%{opacity:.62;transform:scale(.985)}}

.trade-mode-shell{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px;padding:22px 24px;border:1px solid rgba(130,151,255,.13);border-radius:24px;background:linear-gradient(145deg,rgba(19,29,69,.88),rgba(11,17,40,.88))}.trade-mode-copy{max-width:780px}.trade-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:5px;background:#090f26;border:1px solid rgba(255,255,255,.08);border-radius:16px;min-width:290px}.trade-mode-switch a{padding:11px 14px;text-align:center;border-radius:12px;color:var(--muted);font-size:11px;font-weight:900;letter-spacing:.08em}.trade-mode-switch a.active{color:white;background:linear-gradient(135deg,var(--blue),#6268ff);box-shadow:0 8px 26px rgba(62,114,255,.25)}.demo-account-balance{padding:18px;border-radius:18px;background:rgba(244,201,93,.08);border:1px solid rgba(244,201,93,.16)}.demo-account-balance strong{display:block;font-size:28px;margin-top:4px}.real-trade-form{display:grid;gap:14px;margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.08)}.real-trade-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.real-trade-summary>div{padding:12px;border-radius:14px;background:rgba(255,255,255,.045)}.real-trade-summary span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.real-trade-summary b{display:block;margin-top:5px;font-size:13px}.trade-status,.result-pill{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;padding:5px 9px;border-radius:999px;font-size:9px;font-weight:900;letter-spacing:.08em;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.06)}.trade-status.completed,.trade-status.active,.trade-status.approved,.trade-status.paid,.result-pill.win{color:#8ceabb;background:rgba(109,222,170,.11);border-color:rgba(109,222,170,.2)}.trade-status.pending,.trade-status.processing,.trade-status.open,.result-pill.pending{color:#f5d780;background:rgba(244,201,93,.09);border-color:rgba(244,201,93,.2)}.trade-status.failed,.trade-status.rejected,.trade-status.cancelled,.trade-status.inactive,.result-pill.loss{color:#ff9cab;background:rgba(255,122,140,.1);border-color:rgba(255,122,140,.2)}

.payment-wallet-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0}.payment-wallet-card{display:block;position:relative;padding:18px;border-radius:20px;background:rgba(15,23,55,.86);border:1px solid rgba(255,255,255,.09);cursor:pointer;transition:.18s ease}.payment-wallet-card:hover,.payment-wallet-card:has(input:checked){border-color:rgba(91,122,255,.6);box-shadow:0 15px 35px rgba(0,0,0,.2),0 0 0 2px rgba(62,114,255,.08)}.payment-wallet-card input[type=radio]{position:absolute;right:14px;top:14px;width:auto}.payment-wallet-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-right:28px}.payment-wallet-top b{font-size:16px}.payment-wallet-top small{display:block;color:var(--muted);margin-top:4px}.payment-qr{display:block;width:120px;height:120px;object-fit:cover;margin:14px auto;border-radius:16px;background:white;padding:7px}.wallet-copy-label{display:block;margin-top:10px;padding:11px;border-radius:12px;background:#080e22;color:#cbd5f2;overflow-wrap:anywhere;font-size:11px}.deposit-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.deposit-form-grid .span-2{grid-column:1/-1}.withdraw-v3-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.7fr);gap:20px;align-items:start}.withdraw-review{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.withdraw-review>div{padding:13px;border-radius:15px;background:rgba(255,255,255,.045)}.withdraw-review span{display:block;color:var(--muted);font-size:10px}.withdraw-review b{display:block;margin-top:4px}.withdraw-side-stack{display:grid;gap:18px}.saved-wallet-list{display:grid;gap:9px;margin-top:12px}.saved-wallet-list>div{padding:12px 13px;border-radius:14px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.06)}.saved-wallet-list small{display:block;color:var(--muted);overflow-wrap:anywhere}.field-hint{color:var(--muted);font-size:11px;font-weight:500;line-height:1.45}.check-row{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:9px}.check-row input{width:auto}

.auth-v3-wrap{position:relative;isolation:isolate}.auth-v3-wrap:before{content:"";position:absolute;inset:8% 15%;z-index:-1;background:radial-gradient(circle,rgba(62,114,255,.14),transparent 62%);filter:blur(18px)}.auth-v3-card{width:min(510px,100%);padding:34px}.auth-brandline{display:flex;align-items:center;justify-content:space-between;gap:14px}.auth-security-dot{color:#87e9b2;font-size:10px;font-weight:800;letter-spacing:.05em}.auth-v3-form{margin-top:24px}.auth-meta-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.auth-foot{text-align:center;margin:20px 0 0}.password-field{position:relative}.password-field input{padding-right:72px}.password-toggle{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:auto;border:0;border-radius:9px;padding:7px 10px;background:rgba(255,255,255,.07);color:#cbd5f2;font-size:10px;cursor:pointer}.profile-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.profile-avatar{overflow:hidden}.admin-settings-v3{display:grid;gap:18px}.referral-admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.referral-level-admin{padding:16px;border-radius:17px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.07);display:grid;gap:12px}.admin-settings-head{margin-bottom:16px}.admin-settings-head h2{margin:6px 0}.admin-settings-head p{color:var(--muted);margin:0}.positive{color:var(--green)!important}.negative{color:var(--red)!important}

/* Phase 3 landing refinement: prominent, not oversized. */
.hero{min-height:680px;padding-top:62px;padding-bottom:62px}.hero-copy h1{font-size:clamp(42px,5vw,72px);line-height:1.01}.hero-copy p{font-size:16px;line-height:1.65;max-width:600px}.phone-stage{height:570px;transform:scale(.9);transform-origin:center center}.landing-section{padding-top:64px;padding-bottom:64px}

@media(max-width:1180px){.phase3-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-v3-grid,.withdraw-v3-grid{grid-template-columns:1fr}.dashboard-market-v3 .premium-chart-wrap{height:340px}.trade-mode-shell{align-items:stretch;flex-direction:column}.trade-mode-switch{min-width:0;width:min(420px,100%)}.referral-admin-grid{grid-template-columns:1fr}.hero{grid-template-columns:1fr;min-height:auto}.phone-stage{max-width:780px;width:100%;margin:0 auto}}
@media(max-width:760px){.dashboard-v3-head{grid-template-columns:1fr}.dashboard-v3-head h2,.trade-mode-copy h2{font-size:30px}.phase3-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.phase3-metrics article{min-height:100px;padding:15px}.phase3-metrics strong{font-size:17px}.dashboard-market-v3 .premium-chart-wrap{height:245px}.trade-mode-shell{padding:17px;border-radius:19px}.trade-mode-switch{width:100%}.trade-mode-switch a{padding:10px 7px;font-size:9px}.real-trade-summary,.withdraw-review{grid-template-columns:1fr}.payment-wallet-grid,.deposit-form-grid{grid-template-columns:1fr}.deposit-form-grid .span-2{grid-column:auto}.auth-v3-card{padding:24px 20px;border-radius:22px}.auth-brandline{align-items:flex-start;flex-direction:column}.profile-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.hero{padding:52px 20px}.hero-copy h1{font-size:clamp(38px,12vw,54px)}.hero-copy p{font-size:15px}.phone-stage{height:470px;transform:scale(.76);transform-origin:top center;margin-bottom:-90px}.cards.three{grid-template-columns:1fr}.landing-section{padding:52px 20px}.table-card{padding:16px}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}}
@media(max-width:430px){.phase3-metrics{grid-template-columns:1fr 1fr}.phase3-metrics article{display:block}.metric-icon{margin-bottom:8px}.dashboard-balance-v3 strong{font-size:30px}.phone-stage{transform:scale(.66);width:128%;margin-left:-14%;margin-bottom:-150px}.auth-v3-card h1{font-size:30px}.dashboard-actions{gap:6px}}
@media(prefers-reduced-motion:reduce){.signal-live-pulse{animation:none}}

/* =========================================================
   CITIC PHASE 3 FINAL — GLOBAL ACTION FEEDBACK
   ========================================================= */
.app-feedback-stack{position:fixed;z-index:220;top:86px;right:20px;width:min(440px,calc(100vw - 40px));display:grid;gap:10px;pointer-events:none}
.app-feedback{display:grid;grid-template-columns:42px minmax(0,1fr) 32px;align-items:center;gap:12px;padding:14px 15px;border-radius:15px;color:#fff;box-shadow:0 18px 48px rgba(0,0,0,.36);pointer-events:auto;border:1px solid transparent}
.app-feedback.error{background:#4b1824;border-color:#df536b}
.app-feedback.success{background:#123d2d;border-color:#3fc889}
.app-feedback-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;font-size:19px;font-weight:900;background:rgba(255,255,255,.1)}
.app-feedback.error .app-feedback-icon{background:#bc354e}.app-feedback.success .app-feedback-icon{background:#249b67}
.app-feedback strong{display:block;font-size:14px;letter-spacing:.35px}.app-feedback.error strong{color:#ffacb8}.app-feedback.success strong{color:#83edba}
.app-feedback p{margin:4px 0 0;color:#f3f6fb;font-size:13px;line-height:1.45}
.app-feedback>button{width:32px;height:32px;padding:0;border:0;border-radius:9px;background:rgba(255,255,255,.1);color:#fff;font-size:19px;cursor:pointer}
.app-feedback>button:hover{background:rgba(255,255,255,.17)}
@media(max-width:760px){.app-feedback-stack{top:72px;left:10px;right:10px;width:auto}.app-feedback{grid-template-columns:38px minmax(0,1fr) 30px;gap:9px;padding:12px}.app-feedback-icon{width:38px;height:38px}.app-feedback strong{font-size:13px}.app-feedback p{font-size:12px}}

/* Deposit final flow */
.deposit-final-shell{width:min(760px,100%);margin:0 auto 2rem}.deposit-final-card{padding:1.4rem}.deposit-inline-destination{padding:15px;border:1px solid rgba(73,105,255,.16);border-radius:15px;background:rgba(255,255,255,.02);display:grid;gap:12px}.deposit-destination-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px}.deposit-destination-meta>div,.deposit-account-row{padding:10px 12px;border-radius:11px;background:rgba(255,255,255,.035)}.deposit-destination-meta span,.deposit-account-row>span{display:block;color:#8794ad;font-size:11px;margin-bottom:4px}.deposit-qr-final{text-align:center}.deposit-qr-final img{max-width:150px;border-radius:12px;background:#fff;padding:6px}.wallet-address-input{min-height:42px}.admin-theme .primary-btn{background:#20a56d;border-color:#20a56d}.danger-btn{background:#6b1f2f!important;border-color:#cf4058!important;color:#fff!important}

/* =========================================================
   CITIC — REAL / DEMO ACCOUNT SWITCH
   ========================================================= */

.trade-account-switcher{
    width:100%;
    margin:0 0 20px;
    padding:18px;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(360px,520px);
    align-items:center;
    gap:22px;
    border:1px solid rgba(103,130,255,.20);
    border-radius:20px;
    background:
        radial-gradient(circle at 100% 0%,rgba(67,98,255,.16),transparent 38%),
        rgba(10,18,39,.94);
    box-shadow:0 18px 45px rgba(0,0,0,.22);
}

.trade-account-switcher-copy{
    min-width:0;
}

.trade-account-current{
    display:flex;
    align-items:baseline;
    gap:9px;
    margin-top:6px;
}

.trade-account-current span{
    color:#8f9bb5;
    font-size:13px;
}

.trade-account-current strong{
    color:#fff;
    font-size:18px;
    letter-spacing:.02em;
}

.trade-account-switcher-copy p{
    max-width:680px;
    margin:8px 0 0;
    color:#9da9c2;
    font-size:13px;
    line-height:1.55;
}

.trade-account-buttons{
    display:grid !important;
    grid-template-columns:1fr 1fr;
    gap:10px;
    width:100%;
}

.trade-account-button{
    position:relative;
    min-height:70px;
    display:flex !important;
    align-items:center;
    gap:11px;
    padding:13px 14px;
    border:1px solid rgba(255,255,255,.10);
    border-radius:14px;
    background:rgba(255,255,255,.035);
    text-decoration:none !important;
    transition:
        transform .18s ease,
        border-color .18s ease,
        background .18s ease,
        box-shadow .18s ease;
}

.trade-account-button:hover{
    transform:translateY(-1px);
    border-color:rgba(118,145,255,.35);
    background:rgba(255,255,255,.055);
}

.trade-account-button .account-dot{
    flex:0 0 auto;
    width:11px;
    height:11px;
    border-radius:50%;
    background:#69738b;
    box-shadow:0 0 0 4px rgba(105,115,139,.12);
}

.trade-account-button > span:nth-child(2){
    display:flex;
    min-width:0;
    flex-direction:column;
    gap:2px;
}

.trade-account-button small{
    color:#7f8ba5;
    font-size:9px;
    font-weight:800;
    letter-spacing:.12em;
}

.trade-account-button strong{
    color:#dbe4f8;
    font-size:13px;
    line-height:1.25;
    white-space:nowrap;
}

.trade-account-button.real.active{
    border-color:#4774ff;
    background:
        linear-gradient(
            135deg,
            rgba(47,87,230,.32),
            rgba(31,52,116,.36)
        );
    box-shadow:0 8px 28px rgba(31,84,255,.18);
}

.trade-account-button.real.active .account-dot{
    background:#54a0ff;
    box-shadow:0 0 0 4px rgba(84,160,255,.14),
               0 0 15px rgba(84,160,255,.75);
}

.trade-account-button.demo.active{
    border-color:#9a7cff;
    background:
        linear-gradient(
            135deg,
            rgba(113,76,213,.27),
            rgba(59,45,107,.34)
        );
}

.trade-account-button.demo.active .account-dot{
    background:#aa8cff;
    box-shadow:0 0 0 4px rgba(170,140,255,.14);
}

.account-active-badge{
    position:absolute;
    top:7px;
    right:7px;
    padding:3px 6px;
    border-radius:999px;
    background:rgba(58,194,128,.15);
    border:1px solid rgba(58,194,128,.32);
    color:#69dda5;
    font-size:8px;
    letter-spacing:.08em;
}

@media(max-width:900px){
    .trade-account-switcher{
        grid-template-columns:1fr;
        gap:14px;
    }
}

@media(max-width:560px){
    .trade-account-switcher{
        padding:14px;
        border-radius:16px;
        margin-bottom:14px;
    }

    .trade-account-current{
        display:block;
    }

    .trade-account-current span{
        display:block;
        margin-bottom:3px;
    }

    .trade-account-buttons{
        grid-template-columns:1fr 1fr;
        gap:8px;
    }

    .trade-account-button{
        min-height:64px;
        padding:11px 9px;
    }

    .trade-account-button strong{
        font-size:11px;
    }

    .trade-account-switcher-copy p{
        font-size:12px;
    }
}


/* =========================================================
   CITIC ADMIN — PENDING REVIEW + SECURE DOCUMENT PREVIEW
   ========================================================= */

.sidebar nav a{
    position:relative;
}

.admin-nav-label{
    flex:1;
    min-width:0;
}

.admin-pending-badge{
    min-width:21px;
    height:21px;
    padding:0 6px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:#ef5350;
    color:#fff;
    font-size:10px;
    line-height:1;
    font-weight:900;
    box-shadow:0 0 16px rgba(239,83,80,.28);
}

.admin-review-alert{
    display:inline-flex;
    align-items:center;
    gap:7px;
    min-height:34px;
    padding:5px 9px;
    border:1px solid rgba(239,83,80,.24);
    border-radius:999px;
    background:rgba(239,83,80,.08);
    color:#d9dfed;
    font-size:11px;
    font-weight:700;
}

.admin-review-alert strong{
    min-width:20px;
    height:20px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:#ef5350;
    color:#fff;
    font-size:10px;
}

.admin-review-bell{
    color:#ff6966;
    text-shadow:0 0 10px rgba(255,105,102,.6);
}

.admin-proof-button{
    white-space:nowrap;
}

.admin-document-modal[hidden]{
    display:none !important;
}

.admin-document-modal{
    position:fixed;
    inset:0;
    z-index:99999;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:22px;
}

.admin-document-backdrop{
    position:absolute;
    inset:0;
    background:rgba(2,6,18,.88);
    backdrop-filter:blur(7px);
}

.admin-document-dialog{
    position:relative;
    width:min(1080px,96vw);
    height:min(820px,91vh);
    display:flex;
    flex-direction:column;
    overflow:hidden;
    border:1px solid rgba(111,135,255,.25);
    border-radius:18px;
    background:#080f21;
    box-shadow:0 30px 90px rgba(0,0,0,.58);
}

.admin-document-toolbar{
    flex:0 0 auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:13px 15px;
    border-bottom:1px solid rgba(255,255,255,.08);
    background:#0c1530;
}

.admin-document-toolbar > div:first-child{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.admin-document-toolbar strong{
    color:#fff;
    font-size:13px;
}

.admin-document-actions{
    display:flex;
    align-items:center;
    gap:8px;
}

.admin-document-frame-wrap{
    flex:1;
    min-height:0;
    padding:8px;
}

.admin-document-frame-wrap iframe{
    width:100%;
    height:100%;
    border:0;
    border-radius:10px;
    background:#fff;
}

body.admin-preview-open{
    overflow:hidden;
}

@media(max-width:700px){
    .admin-review-alert span:not(.admin-review-bell){
        display:none;
    }

    .admin-document-modal{
        padding:7px;
    }

    .admin-document-dialog{
        width:100%;
        height:94vh;
        border-radius:14px;
    }

    .admin-document-toolbar{
        align-items:flex-start;
    }

    .admin-document-actions{
        flex-direction:column;
        align-items:stretch;
    }
}

/* =========================================================
   CITIC ADMIN — REVIEW BADGES / IMAGE THUMBNAILS / MODAL
   ========================================================= */

.admin-pending-badge{
    min-width:23px;
    height:23px;
    padding:0 7px;
    margin-left:auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    font-size:10px;
    font-weight:900;
    line-height:1;
}

.admin-pending-badge.is-pending{
    color:#fff;
    background:#ef4444;
    border:1px solid rgba(255,255,255,.20);
    box-shadow:
        0 0 0 0 rgba(239,68,68,.7),
        0 0 18px rgba(239,68,68,.45);
    animation:citicPendingPulse 1.25s infinite;
}

.admin-pending-badge.is-clear{
    color:#d9ffea;
    background:#15945c;
    border:1px solid rgba(88,231,157,.40);
    box-shadow:
        0 0 12px rgba(38,208,126,.25);
    animation:citicClearPulse 2.4s infinite;
}

@keyframes citicPendingPulse{
    0%{
        transform:scale(1);
        box-shadow:
            0 0 0 0 rgba(239,68,68,.65),
            0 0 12px rgba(239,68,68,.4);
    }

    50%{
        transform:scale(1.08);
        box-shadow:
            0 0 0 6px rgba(239,68,68,0),
            0 0 25px rgba(239,68,68,.75);
    }

    100%{
        transform:scale(1);
        box-shadow:
            0 0 0 0 rgba(239,68,68,0),
            0 0 12px rgba(239,68,68,.4);
    }
}

@keyframes citicClearPulse{
    0%,100%{
        opacity:.75;
    }

    50%{
        opacity:1;
        box-shadow:
            0 0 18px rgba(38,208,126,.48);
    }
}


/* -------------------------------
   Small document previews
   ------------------------------- */

.admin-document-thumbs{
    display:flex;
    align-items:flex-start;
    flex-wrap:wrap;
    gap:8px;
    min-width:210px;
}

.admin-document-thumb{
    width:76px;
    min-width:76px;
    padding:5px;
    display:flex;
    flex-direction:column;
    gap:5px;
    border:1px solid rgba(126,151,255,.20);
    border-radius:10px;
    background:rgba(12,21,48,.84);
    text-decoration:none !important;
    overflow:hidden;
    cursor:zoom-in;
    transition:
        transform .18s ease,
        border-color .18s ease,
        box-shadow .18s ease;
}

.admin-document-thumb:hover{
    transform:translateY(-2px);
    border-color:rgba(93,130,255,.60);
    box-shadow:0 8px 25px rgba(0,0,0,.30);
}

.admin-document-thumb img{
    display:block;
    width:64px;
    height:58px;
    object-fit:cover;
    border-radius:7px;
    background:#050914;
}

.admin-document-thumb span{
    display:block;
    overflow:hidden;
    color:#cdd6ea;
    font-size:9px;
    font-weight:800;
    text-align:center;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.admin-document-thumb.pdf{
    min-height:88px;
    justify-content:center;
    align-items:center;
}

.admin-document-thumb.pdf strong{
    color:#ff7a76;
    font-size:15px;
}

.deposit-proof-thumb{
    width:96px;
}

.deposit-proof-thumb img{
    width:84px;
    height:68px;
}


/* -------------------------------
   Large clear popup
   ------------------------------- */

.admin-document-modal[hidden]{
    display:none !important;
}

.admin-document-modal{
    position:fixed;
    inset:0;
    z-index:999999;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:20px;
}

.admin-document-backdrop{
    position:absolute;
    inset:0;
    background:rgba(1,5,16,.92);
    backdrop-filter:blur(8px);
}

.admin-document-dialog{
    position:relative;
    width:min(1120px,96vw);
    height:min(850px,94vh);
    display:flex;
    flex-direction:column;
    overflow:hidden;
    border:1px solid rgba(93,126,255,.35);
    border-radius:20px;
    background:#070d1d;
    box-shadow:
        0 35px 120px rgba(0,0,0,.75);
}

.admin-document-toolbar{
    flex:0 0 auto;
    min-height:66px;
    padding:12px 16px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    border-bottom:1px solid rgba(255,255,255,.08);
    background:#0b1530;
}

.admin-document-toolbar > div:first-child{
    display:flex;
    flex-direction:column;
    gap:4px;
}

.admin-document-toolbar strong{
    color:#fff;
    font-size:14px;
}

.admin-document-actions{
    display:flex;
    gap:8px;
}

.admin-document-stage{
    flex:1;
    min-height:0;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:auto;
    padding:15px;
    background:
        radial-gradient(
            circle at center,
            rgba(32,56,125,.16),
            transparent 55%
        ),
        #030714;
}

#admin-document-image{
    display:block;
    max-width:100%;
    max-height:100%;
    width:auto;
    height:auto;
    object-fit:contain;
    border-radius:8px;
    box-shadow:0 20px 70px rgba(0,0,0,.55);
}

#admin-document-image[hidden]{
    display:none !important;
}

#admin-document-pdf{
    width:100%;
    height:100%;
    border:0;
    border-radius:8px;
    background:#fff;
}

#admin-document-pdf[hidden]{
    display:none !important;
}

body.admin-preview-open{
    overflow:hidden;
}


/* -------------------------------
   Success / error messages
   ------------------------------- */

.app-feedback-stack{
    position:relative;
    z-index:2000;
    padding:12px 18px 0;
}

.app-feedback,
.finance-ui-message,
.app-alert{
    position:relative;
    display:flex;
    align-items:flex-start;
    gap:12px;
    padding:14px 45px 14px 14px;
    margin-bottom:12px;
    border-radius:13px;
    box-shadow:0 14px 40px rgba(0,0,0,.22);
}

.app-feedback.success,
.finance-ui-message.success,
.app-alert.success{
    border:1px solid rgba(52,211,153,.38);
    background:rgba(15,104,72,.26);
    color:#d8ffef;
}

.app-feedback.error,
.finance-ui-message.error,
.app-alert.error{
    border:1px solid rgba(248,113,113,.40);
    background:rgba(128,34,45,.30);
    color:#ffe1e4;
}

.app-feedback p,
.finance-ui-message p,
.app-alert p{
    margin:4px 0 0;
    color:inherit;
}

@media(max-width:700px){

    .admin-document-modal{
        padding:6px;
    }

    .admin-document-dialog{
        width:100%;
        height:96vh;
        border-radius:14px;
    }

    .admin-document-toolbar{
        align-items:flex-start;
        padding:10px;
    }

    .admin-document-toolbar strong{
        font-size:11px;
    }

    .admin-document-actions{
        flex-direction:column;
    }

    .admin-document-stage{
        padding:7px;
    }

    .admin-document-thumb{
        width:68px;
        min-width:68px;
    }

    .admin-document-thumb img{
        width:56px;
        height:52px;
    }
}

@media(prefers-reduced-motion:reduce){
    .admin-pending-badge{
        animation:none !important;
    }
}

/* =========================================================
   CITIC ADMIN — COMPACT DOCUMENT THUMBNAILS
   ========================================================= */

.admin-document-thumbs{
    min-width:0;
    gap:5px;
    flex-wrap:wrap;
}

.admin-document-thumb{
    width:48px !important;
    min-width:48px !important;
    padding:3px !important;
    gap:3px !important;
    border-radius:7px !important;
}

.admin-document-thumb img{
    width:40px !important;
    height:36px !important;
    object-fit:cover;
    border-radius:5px !important;
}

.admin-document-thumb span{
    font-size:7px !important;
    line-height:1.1;
}

.admin-document-thumb.pdf{
    width:48px !important;
    min-width:48px !important;
    min-height:52px !important;
}

.admin-document-thumb.pdf strong{
    font-size:10px !important;
}

/* Deposit proof slightly wider but still compact */
.deposit-proof-thumb{
    width:58px !important;
    min-width:58px !important;
}

.deposit-proof-thumb img{
    width:50px !important;
    height:40px !important;
}

/*
 * Popup remains large.
 * These rules affect ONLY the small table previews.
 */
#admin-document-image{
    max-width:100% !important;
    max-height:100% !important;
    width:auto !important;
    height:auto !important;
}

@media(max-width:700px){
    .admin-document-thumb{
        width:44px !important;
        min-width:44px !important;
    }

    .admin-document-thumb img{
        width:36px !important;
        height:32px !important;
    }

    .deposit-proof-thumb{
        width:50px !important;
        min-width:50px !important;
    }

    .deposit-proof-thumb img{
        width:42px !important;
        height:34px !important;
    }
}


/* =========================================================
   ADMIN DOCUMENTS — CLICK TO VIEW ONLY
   ========================================================= */

.admin-document-thumbs{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:5px;
    min-width:0;
}

.admin-document-view-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:4px;
    min-height:28px;
    padding:5px 8px;
    border:1px solid rgba(105,132,255,.25);
    border-radius:7px;
    background:rgba(30,45,88,.30);
    color:#dbe4ff !important;
    text-decoration:none !important;
    font-size:9px;
    font-weight:800;
    line-height:1;
    white-space:nowrap;
    cursor:pointer;
    transition:
        border-color .18s ease,
        background .18s ease,
        transform .18s ease;
}

.admin-document-view-btn:hover{
    transform:translateY(-1px);
    border-color:rgba(89,130,255,.65);
    background:rgba(55,82,170,.28);
}

.admin-document-icon{
    color:#7596ff;
    font-size:10px;
}

/* Old thumbnail elements must never display inline */
.admin-document-thumbs .admin-document-thumb img,
.deposit-proof-thumb img{
    display:none !important;
}

/* Large image remains hidden until its specific button is clicked */
#admin-document-image[hidden],
#admin-document-pdf[hidden]{
    display:none !important;
}


/* CITIC — ONE CLICK SIGNAL GENERATOR */

.admin-one-click-signal{
    max-width:720px;
    margin:0 auto 22px;
}

.one-click-signal-card{
    padding:24px;
}

.one-click-signal-card h2{
    margin:7px 0 8px;
}

.one-click-signal-card > p{
    max-width:620px;
    color:#9ba8c4;
    line-height:1.65;
}

.signal-auto-summary{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin:20px 0;
}

.signal-auto-summary > div{
    padding:13px;
    border:1px solid rgba(111,137,255,.16);
    border-radius:12px;
    background:rgba(8,15,35,.55);
}

.signal-auto-summary span{
    display:block;
    margin-bottom:5px;
    color:#7f8da9;
    font-size:9px;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.signal-auto-summary strong{
    color:#fff;
    font-size:14px;
}

.signal-generate-button{
    min-height:56px;
    font-size:13px;
    letter-spacing:.08em;
    box-shadow:
        0 14px 35px rgba(62,95,255,.25);
}

.signal-generator-note{
    display:block;
    margin-top:12px;
    color:#7886a3;
    line-height:1.5;
}

.signal-advanced-panel{
    margin-top:18px;
}

.signal-advanced-panel > summary{
    cursor:pointer;
    font-weight:800;
}

@media(max-width:700px){
    .signal-auto-summary{
        grid-template-columns:1fr 1fr;
    }

    .one-click-signal-card{
        padding:18px;
    }
}

/* =========================================================
   CITIC ADMIN — EDITABLE PRE-FILLED SIGNAL GENERATOR
   ========================================================= */

.signal-admin-grid{
    grid-template-columns:1fr;
    max-width:900px;
    margin:0 auto 22px;
}

.signal-generator-card{
    padding:22px;
}

.signal-ready-state{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:28px;
    padding:5px 10px;
    border:1px solid rgba(52,211,153,.30);
    border-radius:999px;
    background:rgba(52,211,153,.09);
    color:#72e8af;
    font-size:9px;
    font-weight:900;
    letter-spacing:.08em;
}

.signal-template-notice{
    display:flex;
    align-items:center;
    gap:10px;
    margin:14px 0 18px;
    padding:10px 12px;
    border:1px solid rgba(103,130,255,.18);
    border-radius:10px;
    background:rgba(37,55,111,.15);
}

.signal-template-notice span{
    flex:0 0 auto;
    padding:4px 7px;
    border-radius:999px;
    background:rgba(91,123,255,.18);
    color:#9db0ff;
    font-size:8px;
    font-weight:900;
}

.signal-template-notice p{
    margin:0;
    color:#aab5cd;
    font-size:11px;
}

.signal-duration-field{
    position:relative;
}

.signal-duration-field input{
    padding-right:72px;
}

.signal-duration-field span{
    position:absolute;
    right:12px;
    top:50%;
    transform:translateY(-50%);
    color:#74819d;
    font-size:9px;
    pointer-events:none;
}

.signal-global-box{
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:4px;
    min-height:72px;
    padding:11px 13px;
    border:1px solid rgba(75,211,156,.18);
    border-radius:10px;
    background:rgba(21,108,77,.08);
}

.signal-global-box span{
    color:#79a68f;
    font-size:8px;
    font-weight:900;
    letter-spacing:.08em;
}

.signal-global-box strong{
    color:#dff9ec;
    font-size:11px;
}

.signal-global-box small{
    color:#758a81;
    line-height:1.4;
}

.signal-publish-review{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:14px;
    border:1px solid rgba(104,131,255,.18);
    border-radius:12px;
    background:rgba(12,21,49,.58);
}

.signal-publish-review > div{
    display:flex;
    flex-direction:column;
    gap:3px;
}

.signal-publish-review span{
    color:#d2ad59;
    font-size:8px;
    font-weight:900;
    letter-spacing:.10em;
}

.signal-publish-review strong{
    color:#fff;
    font-size:12px;
}

.signal-publish-review small{
    color:#77859f;
    font-size:9px;
}

.signal-publish-btn{
    flex:0 0 auto;
    min-width:210px;
    min-height:48px;
}

@media(max-width:700px){

    .signal-generator-card{
        padding:17px;
    }

    .signal-publish-review{
        align-items:stretch;
        flex-direction:column;
    }

    .signal-publish-btn{
        width:100%;
        min-width:0;
    }
}


/* =========================================================
   CITIC ADMIN — GLOBAL SUCCESS / ERROR FEEDBACK
   ========================================================= */

.admin-global-feedback{
    position:relative;
    z-index:1000;
    width:100%;
    padding:12px 18px 0;
}

.admin-feedback{
    position:relative;
    width:100%;
    display:flex;
    align-items:flex-start;
    gap:12px;
    padding:14px 44px 14px 14px;
    margin-bottom:12px;
    border-radius:12px;
    box-shadow:0 15px 38px rgba(0,0,0,.28);
}

.admin-feedback.success{
    border:1px solid rgba(52,211,153,.45);
    background:rgba(15,107,73,.30);
    color:#dcfff0;
}

.admin-feedback.error{
    border:1px solid rgba(248,113,113,.48);
    background:rgba(128,31,45,.34);
    color:#ffe4e6;
}

.admin-feedback-icon{
    flex:0 0 27px;
    width:27px;
    height:27px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    font-weight:900;
}

.admin-feedback.success .admin-feedback-icon{
    background:rgba(52,211,153,.18);
    color:#60e7ac;
}

.admin-feedback.error .admin-feedback-icon{
    background:rgba(248,113,113,.18);
    color:#ff8585;
}

.admin-feedback strong{
    display:block;
    margin-bottom:3px;
    font-size:12px;
}

.admin-feedback p{
    margin:0;
    color:inherit;
    font-size:11px;
    line-height:1.5;
}

.admin-feedback > button{
    position:absolute;
    top:9px;
    right:10px;
    width:27px;
    height:27px;
    padding:0;
    border:0;
    background:transparent;
    color:inherit;
    font-size:20px;
    cursor:pointer;
}

@media(max-width:700px){
    .admin-global-feedback{
        padding:9px 10px 0;
    }
}


/* CITIC — SIGNAL RESULT MESSAGE */

.signal-page-feedback{
    margin:0 auto 16px;
    width:min(900px,100%);
    padding:14px 16px;
    display:flex;
    align-items:flex-start;
    gap:12px;
    border-radius:12px;
}

.signal-page-feedback.success{
    border:1px solid rgba(52,211,153,.45);
    background:rgba(15,107,73,.32);
    color:#dffff0;
}

.signal-page-feedback.error{
    border:1px solid rgba(248,113,113,.48);
    background:rgba(134,30,44,.36);
    color:#ffe3e6;
}

.signal-page-feedback strong{
    display:block;
    margin-bottom:3px;
}

.signal-page-feedback p{
    margin:0;
    color:inherit;
}


/* =========================================================
   CITIC ADMIN — SIGNAL GENERATION RESULT
   ========================================================= */

.signal-result-banner{
    position:relative;
    width:min(900px,100%);
    margin:0 auto 16px;
    padding:15px 46px 15px 15px;
    display:flex;
    align-items:flex-start;
    gap:12px;
    border-radius:13px;
    box-shadow:0 14px 38px rgba(0,0,0,.28);
}

.signal-result-banner.success{
    border:1px solid rgba(46,213,142,.55);
    background:rgba(12,109,70,.38);
    color:#dbffed;
}

.signal-result-banner.error{
    border:1px solid rgba(255,83,91,.58);
    background:rgba(137,28,42,.42);
    color:#ffe3e6;
}

.signal-result-icon{
    flex:0 0 30px;
    width:30px;
    height:30px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    font-size:15px;
    font-weight:900;
}

.signal-result-banner.success .signal-result-icon{
    background:#1fa76c;
    color:#fff;
    box-shadow:0 0 18px rgba(31,167,108,.35);
}

.signal-result-banner.error .signal-result-icon{
    background:#e74751;
    color:#fff;
    box-shadow:0 0 18px rgba(231,71,81,.35);
}

.signal-result-copy{
    flex:1;
    min-width:0;
}

.signal-result-copy strong{
    display:block;
    margin-bottom:4px;
    color:inherit;
    font-size:12px;
}

.signal-result-copy p{
    margin:0;
    color:inherit;
    font-size:11px;
    line-height:1.5;
}

.signal-result-close{
    position:absolute;
    top:9px;
    right:11px;
    color:inherit !important;
    text-decoration:none !important;
    font-size:22px;
    line-height:1;
    opacity:.75;
}


/* =========================================================
   CITIC ADMIN — STRONG RED ERROR BANNER
   ========================================================= */

.signal-result-banner.error{
    background:#7f1d1d !important;
    border:1px solid #ef4444 !important;
    color:#fff !important;
    box-shadow:
        0 14px 38px rgba(0,0,0,.28),
        0 0 24px rgba(239,68,68,.22) !important;
}

.signal-result-banner.error .signal-result-icon{
    background:#ef4444 !important;
    color:#fff !important;
    box-shadow:0 0 18px rgba(239,68,68,.45) !important;
}

.signal-result-banner.error .signal-result-copy strong,
.signal-result-banner.error .signal-result-copy p,
.signal-result-banner.error .signal-result-close{
    color:#fff !important;
}


/* =========================================================
   CITIC ADMIN — PREMIUM USER MANAGEMENT
   ========================================================= */

.user-manager-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    margin-bottom:18px;
}

.user-manager-head h2{
    margin:5px 0 5px;
}

.user-manager-head p{
    margin:0;
    max-width:620px;
    color:#8190ad;
    font-size:11px;
    line-height:1.6;
}

.user-manager-search{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
}

.user-search-field{
    min-width:270px;
    display:flex;
    align-items:center;
    gap:8px;
    padding:0 11px;
    border:1px solid rgba(115,136,213,.18);
    border-radius:10px;
    background:rgba(8,15,34,.65);
}

.user-search-field span{
    color:#7787a9;
    font-size:18px;
}

.user-search-field input{
    width:100%;
    border:0 !important;
    padding-left:0 !important;
    background:transparent !important;
}

.user-manager-search select{
    min-width:155px;
}


.user-manager-stats{
    display:grid;
    grid-template-columns:
        repeat(4,minmax(0,1fr));
    gap:10px;
    margin-bottom:18px;
}

.user-manager-stats article{
    min-height:95px;
    padding:14px;
    border:1px solid rgba(101,126,222,.14);
    border-radius:13px;
    background:
        linear-gradient(
            145deg,
            rgba(15,25,55,.92),
            rgba(8,15,33,.88)
        );
}

.user-manager-stats span{
    display:block;
    margin-bottom:7px;
    color:#7583a0;
    font-size:9px;
    font-weight:800;
    letter-spacing:.05em;
    text-transform:uppercase;
}

.user-manager-stats strong{
    display:block;
    color:#fff;
    font-size:20px;
    line-height:1.1;
}

.user-manager-stats small{
    display:block;
    margin-top:7px;
    color:#65738f;
    font-size:9px;
}


.user-result-bar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin:0 1px 11px;
}

.user-result-bar span{
    color:#b5c0d5;
    font-size:10px;
    font-weight:800;
}

.user-result-bar small{
    color:#66748f;
}


.admin-user-grid.upgraded{
    display:grid;
    grid-template-columns:
        repeat(2,minmax(0,1fr));
    gap:13px;
}

.admin-user-card{
    overflow:hidden;
    padding:0 !important;
}

.admin-user-card-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:14px;
    padding:16px;
    border-bottom:
        1px solid rgba(255,255,255,.055);
}

.admin-user-identity{
    min-width:0;
    display:flex;
    align-items:center;
    gap:11px;
}

.admin-user-avatar{
    flex:0 0 40px;
    width:40px;
    height:40px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(91,120,246,.23);
    border-radius:12px;
    background:
        linear-gradient(
            145deg,
            rgba(54,79,188,.33),
            rgba(26,39,92,.22)
        );
    color:#dbe3ff;
    font-size:15px;
    font-weight:900;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.06);
}

.admin-user-identity h3{
    max-width:320px;
    margin:3px 0 4px;
    overflow:hidden;
    color:#f4f6ff;
    font-size:13px;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.admin-user-meta{
    display:flex;
    align-items:center;
    gap:6px;
    color:#72809a;
    font-size:9px;
}

.admin-user-meta i{
    width:3px;
    height:3px;
    border-radius:50%;
    background:#4e5c77;
}


.user-status-badge{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    gap:5px;
    min-height:25px;
    padding:4px 8px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:999px;
    background:rgba(255,255,255,.035);
    color:#8f9bb3;
    font-size:8px;
    font-weight:900;
    letter-spacing:.04em;
}

.user-status-badge i{
    width:6px;
    height:6px;
    border-radius:50%;
    background:currentColor;
}

.user-status-badge.active{
    border-color:rgba(47,211,143,.25);
    background:rgba(47,211,143,.075);
    color:#55d9a0;
}

.user-status-badge.suspended,
.user-status-badge.kyc_pending,
.user-status-badge.pending_verification{
    border-color:rgba(245,183,71,.25);
    background:rgba(245,183,71,.075);
    color:#e8b95d;
}

.user-status-badge.blocked{
    border-color:rgba(245,83,91,.28);
    background:rgba(245,83,91,.08);
    color:#ef656d;
}


.admin-user-wallet-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    padding:13px 16px 7px;
}

.admin-user-wallet-grid > div{
    padding:10px 11px;
    border:1px solid rgba(255,255,255,.055);
    border-radius:10px;
    background:rgba(7,13,29,.46);
}

.admin-user-wallet-grid > div.primary{
    border-color:rgba(80,111,239,.18);
    background:
        linear-gradient(
            145deg,
            rgba(40,60,139,.16),
            rgba(8,15,33,.42)
        );
}

.admin-user-wallet-grid span{
    display:block;
    margin-bottom:5px;
    color:#65738e;
    font-size:8px;
    font-weight:800;
    text-transform:uppercase;
}

.admin-user-wallet-grid strong{
    color:#e7ecfa;
    font-size:12px;
}

.admin-user-wallet-grid .primary strong{
    color:#fff;
    font-size:14px;
}


.admin-user-detail-strip{
    display:grid;
    grid-template-columns:
        repeat(3,minmax(0,1fr));
    gap:1px;
    margin:6px 16px 13px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.045);
    border-radius:9px;
    background:rgba(255,255,255,.035);
}

.admin-user-detail-strip > div{
    min-width:0;
    padding:8px 9px;
    background:#0a1226;
}

.admin-user-detail-strip span{
    display:block;
    margin-bottom:3px;
    color:#596781;
    font-size:7px;
    text-transform:uppercase;
}

.admin-user-detail-strip b{
    display:block;
    overflow:hidden;
    color:#9ba8bf;
    font-size:9px;
    font-weight:700;
    text-overflow:ellipsis;
    white-space:nowrap;
}


.admin-user-card-actions{
    display:flex;
    align-items:center;
    gap:6px;
    flex-wrap:wrap;
    padding:11px 16px 15px;
    border-top:
        1px solid rgba(255,255,255,.045);
}

.admin-user-card-actions form{
    display:inline-flex;
}

.user-credit-btn,
.user-debit-btn,
.user-delete-btn{
    min-height:31px;
    padding:6px 10px;
    border-radius:8px;
    cursor:pointer;
    font-size:9px;
    font-weight:900;
    transition:
        transform .15s ease,
        background .15s ease,
        border-color .15s ease;
}

.user-credit-btn{
    border:1px solid rgba(43,201,134,.26);
    background:rgba(31,156,105,.10);
    color:#64dfaa;
}

.user-debit-btn{
    border:1px solid rgba(238,174,66,.22);
    background:rgba(181,124,29,.09);
    color:#e5b45e;
}

.user-delete-btn{
    margin-left:auto;
    border:1px solid rgba(239,77,87,.22);
    background:rgba(164,42,52,.08);
    color:#e86b73;
}

.user-credit-btn:hover,
.user-debit-btn:hover,
.user-delete-btn:hover{
    transform:translateY(-1px);
}


.admin-user-feedback{
    width:100%;
    display:flex;
    align-items:flex-start;
    gap:11px;
    margin-bottom:14px;
    padding:13px 15px;
    border-radius:11px;
}

.admin-user-feedback > span{
    flex:0 0 27px;
    width:27px;
    height:27px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    font-weight:900;
}

.admin-user-feedback strong{
    display:block;
    margin-bottom:2px;
    color:#fff;
    font-size:11px;
}

.admin-user-feedback p{
    margin:0;
    color:inherit;
    font-size:10px;
}

.admin-user-feedback.success{
    border:1px solid rgba(37,205,136,.35);
    background:#07583f;
    color:#d9fff0;
}

.admin-user-feedback.success > span{
    background:#18a971;
    color:#fff;
}

.admin-user-feedback.error{
    border:1px solid rgba(239,68,68,.4);
    background:#7f1d1d;
    color:#ffe6e6;
}

.admin-user-feedback.error > span{
    background:#ef4444;
    color:#fff;
}


.admin-user-empty{
    padding:36px !important;
    text-align:center;
}

.admin-user-empty > div{
    font-size:28px;
    color:#53617d;
}

.admin-user-empty h3{
    margin:9px 0 5px;
}

.admin-user-empty p{
    margin:0;
    color:#72809b;
}


/* =========================================================
   USER MANAGEMENT MODALS
   ========================================================= */

.citic-user-modal[hidden]{
    display:none !important;
}

.citic-user-modal{
    position:fixed;
    inset:0;
    z-index:100000;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:18px;
}

.citic-user-modal-backdrop{
    position:absolute;
    inset:0;
    background:rgba(2,6,17,.86);
    backdrop-filter:blur(7px);
}

.citic-user-modal-dialog{
    position:relative;
    z-index:2;
    width:min(620px,95vw);
    max-height:92vh;
    overflow:auto;
    border:1px solid rgba(104,129,225,.20);
    border-radius:16px;
    background:
        linear-gradient(
            160deg,
            #0e1731,
            #080f20
        );
    box-shadow:
        0 35px 100px rgba(0,0,0,.62);
}

.citic-user-modal-dialog.compact{
    width:min(510px,95vw);
}

.citic-user-modal-dialog.danger{
    border-color:rgba(239,68,68,.22);
}

.citic-user-modal-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:15px;
    padding:16px 18px;
    border-bottom:
        1px solid rgba(255,255,255,.065);
}

.citic-user-modal-head h3{
    margin:4px 0 0;
    font-size:15px;
}

.user-modal-x{
    width:31px;
    height:31px;
    padding:0;
    border:1px solid rgba(255,255,255,.08);
    border-radius:8px;
    background:rgba(255,255,255,.035);
    color:#aeb8cc;
    cursor:pointer;
    font-size:19px;
}

.citic-user-modal-form{
    display:grid;
    gap:13px;
    padding:18px;
}

.citic-user-modal-form label{
    display:grid;
    gap:6px;
    color:#9ca8c0;
    font-size:9px;
    font-weight:800;
    letter-spacing:.02em;
}

.citic-user-modal-form label small{
    color:#64728c;
    font-size:8px;
    font-weight:500;
}

.citic-user-modal-form input,
.citic-user-modal-form select,
.citic-user-modal-form textarea{
    width:100%;
    border:1px solid rgba(110,132,213,.16);
    border-radius:9px;
    background:#090f21;
    color:#eef2ff;
}

.citic-user-modal-form textarea{
    resize:vertical;
}


.user-modal-info{
    padding:10px 12px;
    border:1px solid rgba(84,111,225,.14);
    border-radius:9px;
    background:rgba(38,57,129,.10);
}

.user-modal-info span{
    display:block;
    margin-bottom:2px;
    color:#63718e;
    font-size:8px;
    text-transform:uppercase;
}

.user-modal-info strong{
    color:#dce4f8;
    font-size:10px;
}


.user-balance-preview{
    padding:13px;
    border:1px solid rgba(75,109,245,.16);
    border-radius:11px;
    background:
        linear-gradient(
            140deg,
            rgba(37,59,142,.16),
            rgba(10,17,37,.62)
        );
}

.user-balance-preview span{
    display:block;
    color:#6b7892;
    font-size:8px;
    text-transform:uppercase;
}

.user-balance-preview strong{
    display:block;
    margin:5px 0 3px;
    color:#fff;
    font-size:19px;
}

.user-balance-preview small{
    color:#7d89a3;
}


.user-adjustment-warning{
    display:flex;
    gap:9px;
    padding:10px 11px;
    border:1px solid rgba(224,169,69,.17);
    border-radius:9px;
    background:rgba(148,102,23,.075);
}

.user-adjustment-warning span{
    flex:0 0 21px;
    width:21px;
    height:21px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:rgba(223,165,61,.15);
    color:#e4b45e;
    font-weight:900;
}

.user-adjustment-warning p{
    margin:0;
    color:#a79269;
    font-size:9px;
    line-height:1.5;
}


.user-delete-warning{
    padding:13px;
    border:1px solid rgba(239,68,68,.18);
    border-radius:10px;
    background:rgba(132,27,36,.12);
}

.user-delete-warning strong{
    display:block;
    margin-bottom:8px;
    color:#fff;
    font-size:11px;
}

.user-delete-warning p{
    margin:5px 0 0;
    color:#bb8c90;
    font-size:9px;
    line-height:1.55;
}

.delete-confirm-label strong{
    color:#ef777d;
}

.danger-text{
    color:#ef6e76 !important;
}


.user-modal-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    margin-top:4px;
}

.user-modal-credit-submit{
    min-width:125px;
}

.user-modal-debit-submit{
    min-width:140px;
}

body.citic-user-modal-open{
    overflow:hidden;
}


@media(max-width:1000px){

    .user-manager-head{
        align-items:stretch;
        flex-direction:column;
    }

    .user-manager-search{
        width:100%;
    }

    .user-search-field{
        flex:1;
        min-width:220px;
    }

    .user-manager-stats{
        grid-template-columns:1fr 1fr;
    }
}


@media(max-width:760px){

    .admin-user-grid.upgraded{
        grid-template-columns:1fr;
    }

    .admin-user-card-head{
        align-items:flex-start;
    }

    .admin-user-identity h3{
        max-width:210px;
    }

    .admin-user-card-actions{
        display:grid;
        grid-template-columns:1fr 1fr;
    }

    .admin-user-card-actions > *,
    .admin-user-card-actions form,
    .admin-user-card-actions button{
        width:100%;
    }

    .user-delete-btn{
        margin-left:0;
    }

    .citic-user-modal{
        padding:7px;
    }

    .citic-user-modal-dialog,
    .citic-user-modal-dialog.compact{
        width:100%;
        max-height:95vh;
        border-radius:13px;
    }
}


@media(max-width:520px){

    .user-manager-stats{
        grid-template-columns:1fr 1fr;
    }

    .user-manager-search{
        display:grid;
        grid-template-columns:1fr;
    }

    .user-search-field,
    .user-manager-search select,
    .user-manager-search button,
    .user-manager-search a{
        width:100%;
        min-width:0;
    }

    .admin-user-wallet-grid{
        grid-template-columns:1fr 1fr;
    }

    .admin-user-detail-strip{
        grid-template-columns:1fr;
    }

    .admin-user-card-head{
        flex-direction:column;
    }

    .user-modal-actions{
        align-items:stretch;
        flex-direction:column-reverse;
    }

    .user-modal-actions > *{
        width:100%;
    }
}


/* =========================================================
   CITIC ADMIN USERS — DIRECTORY TABLE V2
   ========================================================= */

.user-directory-header{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    margin-bottom:15px;
}

.user-directory-title h2{
    margin:4px 0 3px;
    font-size:20px;
}

.user-directory-title p{
    margin:0;
    color:#71809d;
    font-size:10px;
}

.user-directory-filters{
    display:flex;
    align-items:center;
    gap:7px;
}

.user-directory-search{
    width:290px;
    min-height:38px;
    display:flex;
    align-items:center;
    gap:8px;
    padding:0 11px;
    border:1px solid rgba(111,133,204,.16);
    border-radius:9px;
    background:#091126;
}

.user-directory-search span{
    color:#687895;
    font-size:16px;
}

.user-directory-search input{
    width:100%;
    padding:0 !important;
    border:0 !important;
    outline:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}

.user-directory-filters select{
    width:150px;
    min-height:38px;
}


.user-directory-summary{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    margin-bottom:12px;
}

.user-directory-summary > div{
    min-width:125px;
    padding:8px 11px;
    border:1px solid rgba(103,125,198,.12);
    border-radius:8px;
    background:rgba(9,17,38,.58);
}

.user-directory-summary span{
    display:block;
    margin-bottom:2px;
    color:#667590;
    font-size:7px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.06em;
}

.user-directory-summary strong{
    color:#e9edf8;
    font-size:11px;
}


.user-directory-result{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    margin:0 2px 8px;
}

.user-directory-result span{
    color:#a4aec2;
    font-size:9px;
    font-weight:800;
}

.user-directory-result small{
    color:#626f88;
    font-size:8px;
}


.user-directory-shell{
    padding:0 !important;
    overflow:hidden;
}

.user-directory-scroll{
    width:100%;
    overflow-x:auto;
}

.user-directory-table{
    width:100%;
    min-width:1050px;
    border-collapse:collapse;
    border-spacing:0;
}

.user-directory-table thead{
    background:rgba(10,18,39,.96);
}

.user-directory-table th{
    padding:11px 12px;
    border-bottom:1px solid rgba(255,255,255,.06);
    color:#66748f;
    font-size:7px;
    font-weight:900;
    letter-spacing:.07em;
    text-align:left;
    text-transform:uppercase;
    white-space:nowrap;
}

.user-directory-table td{
    padding:11px 12px;
    border-bottom:1px solid rgba(255,255,255,.045);
    color:#aeb8cb;
    font-size:9px;
    vertical-align:middle;
}

.user-directory-table tbody tr{
    background:rgba(7,13,29,.28);
    transition:background .15s ease;
}

.user-directory-table tbody tr:hover{
    background:rgba(38,55,111,.13);
}

.user-directory-table tbody tr:last-child td{
    border-bottom:0;
}


.user-directory-id{
    width:62px;
    color:#7e8aa1 !important;
    font-weight:800;
    white-space:nowrap;
}


.user-directory-person{
    min-width:240px;
    display:flex;
    align-items:center;
    gap:10px;
}

.user-directory-avatar{
    flex:0 0 35px;
    width:35px;
    height:35px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(102,126,221,.20);
    border-radius:50%;
    background:
        linear-gradient(
            145deg,
            rgba(61,84,177,.34),
            rgba(25,37,83,.34)
        );
    color:#e1e7ff;
    font-size:12px;
    font-weight:900;
}

.user-directory-person > div:last-child{
    min-width:0;
}

.user-directory-person strong{
    display:block;
    max-width:230px;
    margin-bottom:2px;
    overflow:hidden;
    color:#e9edf8;
    font-size:10px;
    font-weight:800;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.user-directory-person span{
    display:block;
    max-width:230px;
    overflow:hidden;
    color:#78859e;
    font-size:8px;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.user-directory-person small{
    display:block;
    margin-top:2px;
    color:#57647c;
    font-size:7px;
}


.user-directory-ref{
    color:#8794ae;
    font-size:9px;
    white-space:nowrap;
}


.user-directory-verify,
.user-directory-status,
.user-directory-kyc{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:23px;
    padding:4px 8px;
    border-radius:6px;
    font-size:8px;
    font-weight:800;
    white-space:nowrap;
}


.user-directory-verify.yes{
    background:rgba(36,184,119,.11);
    color:#5fd5a0;
}

.user-directory-verify.no{
    background:rgba(125,139,166,.07);
    color:#7b879d;
}


.user-directory-status.active{
    background:rgba(36,184,119,.11);
    color:#5fd5a0;
}

.user-directory-status.suspended,
.user-directory-status.pending_verification,
.user-directory-status.kyc_pending{
    background:rgba(218,158,50,.10);
    color:#d9a957;
}

.user-directory-status.blocked{
    background:rgba(225,67,78,.11);
    color:#e97077;
}


.user-directory-kyc.approved{
    background:rgba(36,184,119,.11);
    color:#5fd5a0;
}

.user-directory-kyc.pending{
    background:rgba(218,158,50,.10);
    color:#d9a957;
}

.user-directory-kyc.rejected{
    background:rgba(225,67,78,.11);
    color:#e97077;
}

.user-directory-kyc.requires_resubmission{
    background:rgba(218,158,50,.10);
    color:#d9a957;
}

.user-directory-kyc.unverified{
    background:rgba(125,139,166,.06);
    color:#77849a;
}


.user-directory-balance{
    min-width:125px;
}

.user-directory-balance strong{
    display:block;
    color:#dce3f2;
    font-size:9px;
}

.user-directory-balance small{
    display:block;
    margin-top:2px;
    color:#5e6b82;
    font-size:7px;
}


.user-directory-actions{
    display:flex;
    align-items:center;
    gap:4px;
    white-space:nowrap;
}

.user-directory-inline-form{
    display:inline-flex;
    margin:0;
}


.user-table-action{
    min-width:29px;
    min-height:27px;
    padding:4px 7px;
    border:1px solid rgba(111,132,195,.15);
    border-radius:6px;
    background:rgba(255,255,255,.025);
    color:#8896ae;
    cursor:pointer;
    font-size:7px;
    font-weight:900;
    line-height:1;
    transition:
        background .15s ease,
        border-color .15s ease,
        color .15s ease;
}

.user-table-action.edit:hover{
    border-color:rgba(91,124,238,.35);
    background:rgba(73,102,211,.12);
    color:#afbdff;
}

.user-table-action.credit{
    border-color:rgba(38,190,124,.20);
    color:#54cd95;
}

.user-table-action.credit:hover{
    background:rgba(38,190,124,.12);
}

.user-table-action.debit{
    border-color:rgba(217,160,57,.18);
    color:#d8aa5d;
}

.user-table-action.debit:hover{
    background:rgba(217,160,57,.10);
}

.user-table-action.reset:hover{
    color:#d2d9e8;
}

.user-table-action.delete{
    border-color:rgba(226,68,79,.17);
    color:#d9666e;
}

.user-table-action.delete:hover{
    background:rgba(226,68,79,.10);
    border-color:rgba(226,68,79,.30);
}


.user-directory-empty{
    padding:32px !important;
    text-align:center;
}

.user-directory-empty strong{
    color:#d9dfeb;
}

.user-directory-empty p{
    margin:5px 0 0;
    color:#68758c;
    font-size:9px;
}


@media(max-width:900px){

    .user-directory-header{
        align-items:stretch;
        flex-direction:column;
        gap:12px;
    }

    .user-directory-filters{
        width:100%;
        flex-wrap:wrap;
    }

    .user-directory-search{
        flex:1;
        width:auto;
        min-width:220px;
    }

    .user-directory-summary{
        display:grid;
        grid-template-columns:1fr 1fr;
    }
}


@media(max-width:600px){

    .user-directory-filters{
        display:grid;
        grid-template-columns:1fr 1fr;
    }

    .user-directory-search{
        grid-column:1 / -1;
        width:100%;
        min-width:0;
    }

    .user-directory-filters select{
        width:100%;
    }

    .user-directory-result small{
        display:none;
    }

}


/* =========================================================
   CITIC ADMIN USERS — CLEAN TABLE UI V3
   ========================================================= */

/* ---------- PAGE HEADER ---------- */

.user-directory-header{
    align-items:center !important;
    margin-bottom:18px !important;
}

.user-directory-title h2{
    margin:4px 0 5px !important;
    font-size:22px !important;
    font-weight:800 !important;
    color:#f4f7ff !important;
}

.user-directory-title p{
    max-width:620px;
    font-size:11px !important;
    line-height:1.55 !important;
    color:#7f8da8 !important;
}


/* ---------- SEARCH / FILTER ---------- */

.user-directory-filters{
    gap:8px !important;
}

.user-directory-search{
    width:320px !important;
    min-height:40px !important;
    padding:0 12px !important;
    border:1px solid rgba(113,132,190,.20) !important;
    border-radius:9px !important;
    background:#091126 !important;
}

.user-directory-search input{
    height:38px !important;
    font-size:11px !important;
    color:#eef2ff !important;
}

.user-directory-filters select{
    height:40px !important;
    min-height:40px !important;
    padding:0 34px 0 11px !important;
    border-radius:9px !important;
    font-size:10px !important;
}


/* Search buttons only */
.user-directory-filters .primary-btn,
.user-directory-filters .ghost-btn{
    min-height:40px !important;
    height:40px !important;
    padding:0 15px !important;
    border-radius:9px !important;
    font-size:10px !important;
    font-weight:800 !important;
}


/* ---------- TOP SUMMARY ---------- */

.user-directory-summary{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:9px !important;
    margin-bottom:16px !important;
}

.user-directory-summary > div{
    min-width:0 !important;
    min-height:72px !important;
    padding:11px 13px !important;

    border:1px solid rgba(99,121,181,.14) !important;
    border-radius:10px !important;

    background:#0a1328 !important;

    box-shadow:none !important;
}

.user-directory-summary span{
    margin-bottom:5px !important;
    font-size:8px !important;
    font-weight:800 !important;
    letter-spacing:.06em !important;
    color:#697894 !important;
}

.user-directory-summary strong{
    display:block !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:1.2 !important;
    color:#f0f3fb !important;
}


/* ---------- RESULT LINE ---------- */

.user-directory-result{
    margin:0 2px 9px !important;
}

.user-directory-result span{
    font-size:10px !important;
    color:#aab4c8 !important;
}

.user-directory-result small{
    font-size:9px !important;
    color:#69758c !important;
}


/* ---------- MAIN TABLE CARD ---------- */

.user-directory-shell.glass-card{
    padding:0 !important;

    border:1px solid rgba(102,121,176,.15) !important;
    border-radius:12px !important;

    background:#091124 !important;

    box-shadow:
        0 12px 32px rgba(0,0,0,.18) !important;

    overflow:hidden !important;
}

.user-directory-table{
    border-collapse:collapse !important;
}

.user-directory-table thead{
    background:#0d1730 !important;
}

.user-directory-table th{
    padding:12px 14px !important;

    border-bottom:
        1px solid rgba(255,255,255,.065) !important;

    font-size:9px !important;
    font-weight:800 !important;

    color:#7d8ba6 !important;
}

.user-directory-table td{
    padding:12px 14px !important;

    border-bottom:
        1px solid rgba(255,255,255,.045) !important;

    font-size:10px !important;
    color:#aab5c8 !important;
}

.user-directory-table tbody tr{
    background:#091124 !important;
}

.user-directory-table tbody tr:nth-child(even){
    background:#0a1328 !important;
}

.user-directory-table tbody tr:hover{
    background:#101c38 !important;
}


/* ---------- USER ---------- */

.user-directory-person{
    gap:10px !important;
}

.user-directory-avatar{
    width:38px !important;
    height:38px !important;
    flex-basis:38px !important;

    border:1px solid rgba(104,128,222,.22) !important;
    border-radius:50% !important;

    background:#18264c !important;

    font-size:13px !important;
    color:#eef2ff !important;

    box-shadow:none !important;
}

.user-directory-person strong{
    margin-bottom:2px !important;
    font-size:11px !important;
    font-weight:800 !important;
    color:#f1f4fb !important;
}

.user-directory-person span{
    font-size:9px !important;
    color:#8290a9 !important;
}

.user-directory-person small{
    margin-top:2px !important;
    font-size:8px !important;
    color:#62708a !important;
}

.user-directory-id,
.user-directory-ref{
    font-size:10px !important;
}


/* ---------- STATUS BADGES ---------- */

.user-directory-verify,
.user-directory-status,
.user-directory-kyc{
    min-height:25px !important;

    padding:5px 9px !important;

    border-radius:6px !important;

    font-size:9px !important;
    font-weight:800 !important;
}

.user-directory-status.active,
.user-directory-verify.yes,
.user-directory-kyc.approved{
    background:rgba(33,181,116,.13) !important;
    color:#5ddca1 !important;
}

.user-directory-status.blocked,
.user-directory-kyc.rejected{
    background:rgba(221,69,82,.13) !important;
    color:#ef747c !important;
}

.user-directory-status.suspended,
.user-directory-status.pending_verification,
.user-directory-status.kyc_pending,
.user-directory-kyc.pending,
.user-directory-kyc.requires_resubmission{
    background:rgba(218,158,50,.13) !important;
    color:#e3b35c !important;
}

.user-directory-verify.no,
.user-directory-kyc.unverified{
    background:rgba(130,143,170,.09) !important;
    color:#8894aa !important;
}


/* ---------- BALANCE ---------- */

.user-directory-balance strong{
    font-size:11px !important;
    font-weight:800 !important;
    color:#f0f3fa !important;
}

.user-directory-balance small{
    margin-top:3px !important;
    font-size:8px !important;
    color:#69758c !important;
}


/* =========================================================
   ACTION BUTTONS
   ========================================================= */

.user-directory-actions{
    gap:5px !important;
}

.user-table-action{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    width:auto !important;
    min-width:auto !important;

    height:30px !important;
    min-height:30px !important;

    padding:0 10px !important;

    border-radius:7px !important;

    font-size:9px !important;
    font-weight:800 !important;

    line-height:1 !important;

    box-shadow:none !important;
}


/* Edit */
.user-table-action.edit{
    border:1px solid rgba(91,124,238,.28) !important;
    background:rgba(74,102,211,.12) !important;
    color:#aebcff !important;
}

.user-table-action.edit:hover{
    background:rgba(74,102,211,.22) !important;
    border-color:rgba(91,124,238,.50) !important;
}


/* Add */
.user-table-action.credit{
    min-width:34px !important;

    border:1px solid rgba(43,201,134,.30) !important;
    background:rgba(30,168,111,.12) !important;
    color:#61dda5 !important;
}

.user-table-action.credit:hover{
    background:rgba(30,168,111,.22) !important;
}


/* Subtract */
.user-table-action.debit{
    min-width:34px !important;

    border:1px solid rgba(224,168,67,.28) !important;
    background:rgba(185,126,24,.12) !important;
    color:#e6b760 !important;
}

.user-table-action.debit:hover{
    background:rgba(185,126,24,.22) !important;
}


/* Password reset */
.user-table-action.reset{
    border:1px solid rgba(126,141,175,.20) !important;
    background:rgba(111,126,159,.08) !important;
    color:#aeb8cb !important;
}

.user-table-action.reset:hover{
    background:rgba(111,126,159,.16) !important;
    color:#eef2ff !important;
}


/* Delete */
.user-table-action.delete{
    border:1px solid rgba(231,70,82,.28) !important;
    background:rgba(173,43,53,.12) !important;
    color:#ed767e !important;
}

.user-table-action.delete:hover{
    background:rgba(173,43,53,.24) !important;
    border-color:rgba(231,70,82,.48) !important;
    color:#ff9ba1 !important;
}


/* =========================================================
   MODALS — CLEANER CARDS
   ========================================================= */

.citic-user-modal-dialog{
    border:1px solid rgba(105,126,194,.20) !important;
    border-radius:14px !important;

    background:#0b142b !important;

    box-shadow:
        0 28px 80px rgba(0,0,0,.58) !important;
}

.citic-user-modal-head{
    padding:17px 18px !important;
    background:#0e1933 !important;
}

.citic-user-modal-head h3{
    font-size:16px !important;
}

.citic-user-modal-form{
    padding:18px !important;
    gap:14px !important;
}

.citic-user-modal-form label{
    font-size:10px !important;
    color:#9ca8bf !important;
}

.citic-user-modal-form input,
.citic-user-modal-form select,
.citic-user-modal-form textarea{
    min-height:42px !important;

    padding:10px 12px !important;

    border:1px solid rgba(110,129,185,.18) !important;
    border-radius:8px !important;

    background:#080f21 !important;

    font-size:11px !important;
    color:#eef2ff !important;
}

.citic-user-modal-form textarea{
    min-height:90px !important;
}


/* Modal footer buttons */

.user-modal-actions{
    padding-top:4px !important;
    gap:8px !important;
}

.user-modal-actions .primary-btn,
.user-modal-actions .danger-btn,
.user-modal-actions .ghost-btn{
    min-height:40px !important;
    height:40px !important;

    padding:0 16px !important;

    border-radius:8px !important;

    font-size:10px !important;
    font-weight:800 !important;
}


/* Balance card inside modal */

.user-balance-preview{
    padding:14px !important;

    border:1px solid rgba(86,110,203,.18) !important;
    border-radius:10px !important;

    background:#101c39 !important;

    box-shadow:none !important;
}

.user-balance-preview strong{
    font-size:20px !important;
}


/* ---------- MOBILE ---------- */

@media(max-width:900px){

    .user-directory-summary{
        grid-template-columns:1fr 1fr !important;
    }

    .user-directory-header{
        align-items:stretch !important;
    }

    .user-directory-filters{
        width:100% !important;
    }
}

@media(max-width:600px){

    .user-directory-summary{
        grid-template-columns:1fr 1fr !important;
    }

    .user-directory-summary > div{
        min-height:66px !important;
    }

    .user-directory-summary strong{
        font-size:12px !important;
    }

    .user-directory-table th,
    .user-directory-table td{
        padding:10px 11px !important;
    }
}


/* =========================================================
   CITIC USER — REFERRAL DIRECTORY
   ========================================================= */

.referral-page-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    margin-bottom:16px;
}

.referral-page-head h2{
    margin:4px 0 5px;
    color:#f3f6ff;
}

.referral-page-head p{
    margin:0;
    color:#7887a3;
    font-size:10px;
}

.referral-balance-box{
    min-width:180px;
    padding:12px 15px;
    border:1px solid rgba(94,121,214,.18);
    border-radius:10px;
    background:#0c1630;
}

.referral-balance-box span{
    display:block;
    margin-bottom:4px;
    color:#697792;
    font-size:8px;
    text-transform:uppercase;
}

.referral-balance-box strong{
    color:#fff;
    font-size:16px;
}


.referral-top-grid{
    display:grid;
    grid-template-columns:1.4fr 1fr;
    gap:11px;
    margin-bottom:12px;
}

.referral-code-card,
.referral-rates-card{
    padding:16px !important;
}

.referral-code-card h3{
    margin:6px 0 11px;
    color:#fff;
    font-size:18px;
}

.referral-rate-list{
    display:grid;
    gap:7px;
    margin-top:10px;
}

.referral-rate-list > div{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:9px 10px;
    border:1px solid rgba(255,255,255,.05);
    border-radius:8px;
    background:#091225;
}

.referral-rate-list span{
    color:#7986a0;
    font-size:9px;
}

.referral-rate-list strong{
    color:#e8edf8;
    font-size:10px;
}


.referral-summary-grid{
    display:grid;
    grid-template-columns:
        repeat(5,minmax(0,1fr));
    gap:8px;
    margin-bottom:13px;
}

.referral-summary-grid article{
    min-height:70px;
    padding:11px 12px;
    border:1px solid rgba(94,117,190,.13);
    border-radius:9px;
    background:#0a1328;
}

.referral-summary-grid span{
    display:block;
    margin-bottom:4px;
    color:#697791;
    font-size:8px;
    text-transform:uppercase;
}

.referral-summary-grid strong{
    display:block;
    color:#f2f5fc;
    font-size:14px;
}

.referral-summary-grid small{
    display:block;
    margin-top:3px;
    color:#5f6d87;
    font-size:8px;
}


.referral-network-card,
.referral-history-card{
    padding:0 !important;
    margin-bottom:14px;
    overflow:hidden;
}

.referral-network-card .section-head,
.referral-history-card .section-head{
    padding:14px 16px;
    margin:0;
    border-bottom:
        1px solid rgba(255,255,255,.055);
    background:#0d1730;
}

.referral-table-scroll{
    width:100%;
    overflow-x:auto;
}

.referral-member-table{
    width:100%;
    min-width:900px;
    border-collapse:collapse;
}

.referral-member-table th{
    padding:11px 13px;
    border-bottom:
        1px solid rgba(255,255,255,.06);
    color:#6e7d99;
    background:#0b152b;
    font-size:8px;
    font-weight:800;
    text-align:left;
    text-transform:uppercase;
}

.referral-member-table td{
    padding:11px 13px;
    border-bottom:
        1px solid rgba(255,255,255,.045);
    color:#aab5c8;
    font-size:9px;
    vertical-align:middle;
}

.referral-member-table tbody tr{
    background:#091124;
}

.referral-member-table tbody tr:nth-child(even){
    background:#0a1328;
}

.referral-member-table tbody tr:hover{
    background:#101c38;
}


.referral-member-id{
    color:#8592aa !important;
    font-weight:800;
    white-space:nowrap;
}

.referral-member-person{
    min-width:220px;
    display:flex;
    align-items:center;
    gap:9px;
}

.referral-member-avatar{
    flex:0 0 34px;
    width:34px;
    height:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#18264c;
    color:#eef2ff;
    font-size:11px;
    font-weight:900;
}

.referral-member-person strong{
    display:block;
    color:#edf1fa;
    font-size:10px;
}

.referral-member-person small{
    display:block;
    margin-top:2px;
    color:#66748e;
    font-size:8px;
}


.referral-level-badge,
.referral-status-badge,
.referral-verify-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:24px;
    padding:4px 8px;
    border-radius:6px;
    font-size:8px;
    font-weight:800;
    white-space:nowrap;
}

.referral-level-badge.level-1{
    background:rgba(62,105,238,.13);
    color:#94aaff;
}

.referral-level-badge.level-2{
    background:rgba(194,143,51,.12);
    color:#dfb567;
}

.referral-level-badge.level-3{
    background:rgba(131,89,208,.13);
    color:#bb9bec;
}


.referral-verify-badge.verified,
.referral-status-badge.active,
.referral-status-badge.paid{
    background:rgba(37,185,119,.12);
    color:#5dd8a0;
}

.referral-verify-badge.unverified{
    background:rgba(126,139,166,.08);
    color:#8793a8;
}

.referral-status-badge.pending_verification,
.referral-status-badge.kyc_pending,
.referral-status-badge.pending,
.referral-status-badge.suspended{
    background:rgba(216,158,51,.12);
    color:#ddb05c;
}

.referral-status-badge.blocked,
.referral-status-badge.rejected{
    background:rgba(225,68,79,.12);
    color:#eb727a;
}

.referral-member-balance{
    color:#edf1fa !important;
    font-weight:800;
    white-space:nowrap;
}

.referral-empty-state{
    padding:30px 16px;
    text-align:center;
}

.referral-empty-state strong{
    color:#dfe5f2;
}

.referral-empty-state p{
    margin:5px 0 0;
    color:#68758d;
    font-size:9px;
}


@media(max-width:850px){

    .referral-page-head{
        align-items:stretch;
        flex-direction:column;
    }

    .referral-balance-box{
        min-width:0;
    }

    .referral-top-grid{
        grid-template-columns:1fr;
    }

    .referral-summary-grid{
        grid-template-columns:1fr 1fr;
    }
}


/* =========================================================
   CITIC AUTH — LOGIN / REGISTER PREMIUM V4
   ========================================================= */

.auth-wrap.auth-v3-wrap{
    width:100%;
    min-height:calc(100vh - 90px);
    display:flex;
    align-items:center;
    justify-content:center;
    padding:32px 18px 44px;
    position:relative;
}

.auth-wrap.auth-v3-wrap::before{
    content:"";
    position:fixed;
    inset:0;
    pointer-events:none;
    background:
        radial-gradient(circle at 50% 12%, rgba(58,82,190,.13), transparent 34%),
        radial-gradient(circle at 10% 90%, rgba(27,57,137,.08), transparent 30%);
}


/* ---------- AUTH CARD ---------- */

.auth-card.auth-v3-card{
    position:relative;
    z-index:2;

    width:min(430px,100%);

    margin:0 auto;
    padding:26px 26px 24px !important;

    border:1px solid rgba(112,132,198,.17) !important;
    border-radius:16px !important;

    background:
        linear-gradient(
            155deg,
            rgba(15,25,52,.98),
            rgba(8,15,32,.99)
        ) !important;

    box-shadow:
        0 28px 70px rgba(0,0,0,.36),
        inset 0 1px 0 rgba(255,255,255,.025) !important;
}


/* ---------- TOP LINE ---------- */

.auth-brandline{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;

    margin-bottom:15px;
}

.auth-brandline .eyebrow{
    font-size:8px !important;
    letter-spacing:.12em !important;
}

.auth-security-dot{
    display:inline-flex;
    align-items:center;
    gap:5px;

    padding:5px 8px;

    border:1px solid rgba(40,200,136,.16);
    border-radius:999px;

    background:rgba(40,200,136,.06);

    color:#69cfa5 !important;

    font-size:8px !important;
    font-weight:800;
    white-space:nowrap;
}


/* ---------- TITLE ---------- */

.auth-card.auth-v3-card h1{
    margin:0 0 7px !important;

    color:#f4f7ff !important;

    font-size:26px !important;
    font-weight:800 !important;

    line-height:1.18 !important;
    letter-spacing:-.025em;
}

.auth-card.auth-v3-card > p{
    margin:0 0 20px !important;

    color:#8491a9 !important;

    font-size:11px !important;
    line-height:1.65 !important;
}


/* =========================================================
   FORM
   ========================================================= */

.auth-v3-form{
    display:grid !important;
    gap:14px !important;
}

.auth-v3-form > label{
    display:grid !important;
    gap:6px !important;

    color:#a1adc2 !important;

    font-size:9px !important;
    font-weight:800 !important;

    letter-spacing:.02em;
}

.auth-v3-form input{
    width:100% !important;
    height:44px !important;

    padding:0 13px !important;

    border:1px solid rgba(110,129,188,.17) !important;
    border-radius:9px !important;

    outline:none !important;

    background:#080f21 !important;

    color:#eff3ff !important;

    font-size:11px !important;

    box-shadow:none !important;

    transition:
        border-color .16s ease,
        background .16s ease,
        box-shadow .16s ease;
}

.auth-v3-form input::placeholder{
    color:#536078 !important;
}

.auth-v3-form input:hover{
    border-color:rgba(115,140,220,.28) !important;
}

.auth-v3-form input:focus{
    border-color:rgba(91,123,242,.60) !important;

    background:#0a1227 !important;

    box-shadow:
        0 0 0 3px rgba(72,102,221,.10) !important;
}


/* ---------- PASSWORD FIELD ---------- */

.password-field{
    position:relative !important;
    display:block !important;
}

.password-field input{
    padding-right:66px !important;
}

.password-toggle{
    position:absolute !important;

    top:50% !important;
    right:8px !important;

    transform:translateY(-50%) !important;

    min-width:49px !important;
    height:30px !important;

    padding:0 8px !important;

    border:1px solid rgba(120,139,193,.13) !important;
    border-radius:6px !important;

    background:rgba(255,255,255,.025) !important;

    color:#8694ac !important;

    font-size:8px !important;
    font-weight:800 !important;

    cursor:pointer;
}

.password-toggle:hover{
    color:#cbd4e8 !important;
    background:rgba(255,255,255,.055) !important;
}


/* ---------- HINTS / ERRORS ---------- */

.field-hint{
    color:#5f6d85 !important;
    font-size:8px !important;
    font-weight:500 !important;
}

.auth-v3-form .err{
    display:block;

    margin-top:1px;

    color:#f47f86 !important;

    font-size:8px !important;
    line-height:1.4 !important;
}


/* ---------- LOGIN META ---------- */

.auth-meta-row{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;

    gap:12px !important;

    margin:0 !important;
}

.auth-meta-row .check{
    display:flex !important;
    align-items:center !important;

    gap:7px !important;

    color:#7d8aa2 !important;

    font-size:9px !important;
    font-weight:600 !important;
}

.auth-meta-row .check input{
    width:14px !important;
    height:14px !important;
    min-height:0 !important;

    padding:0 !important;
}

.auth-meta-row a{
    color:#9bafff !important;

    font-size:9px !important;
    font-weight:700 !important;

    text-decoration:none;
}

.auth-meta-row a:hover{
    color:#c3ceff !important;
}


/* =========================================================
   MAIN AUTH BUTTON
   ========================================================= */

.auth-v3-form .primary-btn.xl.full{
    width:100% !important;
    min-height:46px !important;

    margin-top:2px !important;
    padding:0 16px !important;

    border:1px solid rgba(104,132,255,.46) !important;
    border-radius:9px !important;

    background:
        linear-gradient(
            135deg,
            #405ed8,
            #314db9
        ) !important;

    color:#fff !important;

    font-size:10px !important;
    font-weight:900 !important;

    letter-spacing:.045em;

    box-shadow:
        0 10px 24px rgba(49,77,185,.24) !important;

    cursor:pointer;

    transition:
        transform .16s ease,
        box-shadow .16s ease,
        filter .16s ease;
}

.auth-v3-form .primary-btn.xl.full:hover{
    transform:translateY(-1px);

    filter:brightness(1.07);

    box-shadow:
        0 13px 28px rgba(49,77,185,.30) !important;
}

.auth-v3-form .primary-btn.xl.full:active{
    transform:translateY(0);
}


/* ---------- FOOT ---------- */

.auth-foot{
    margin:19px 0 0 !important;

    padding-top:16px;

    border-top:1px solid rgba(255,255,255,.055);

    text-align:center;

    color:#6e7b92 !important;

    font-size:9px !important;
}

.auth-foot a{
    color:#a3b5ff !important;
    font-weight:800 !important;
    text-decoration:none;
}

.auth-foot a:hover{
    color:#cbd5ff !important;
}


/* =========================================================
   REGISTER REFERRAL STATE
   ========================================================= */

.auth-v3-card input[name="referral_code"]{
    border-color:rgba(48,190,126,.20) !important;
}


/* =========================================================
   BROWSER AUTOFILL
   ========================================================= */

.auth-v3-form input:-webkit-autofill,
.auth-v3-form input:-webkit-autofill:hover,
.auth-v3-form input:-webkit-autofill:focus{
    -webkit-text-fill-color:#eff3ff !important;

    -webkit-box-shadow:
        0 0 0 1000px #080f21 inset !important;

    transition:
        background-color 9999s ease-in-out 0s;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media(max-width:600px){

    .auth-wrap.auth-v3-wrap{
        min-height:calc(100vh - 68px);
        align-items:flex-start;

        padding:22px 12px 34px;
    }

    .auth-card.auth-v3-card{
        width:100%;

        padding:21px 17px 20px !important;

        border-radius:13px !important;
    }

    .auth-card.auth-v3-card h1{
        font-size:23px !important;
    }

    .auth-card.auth-v3-card > p{
        font-size:10px !important;
    }

    .auth-brandline{
        align-items:flex-start;
    }

    .auth-v3-form{
        gap:13px !important;
    }

    .auth-v3-form input{
        height:45px !important;
    }

    .auth-meta-row{
        align-items:flex-start !important;
    }
}

@media(max-width:380px){

    .auth-card.auth-v3-card{
        padding:18px 14px !important;
    }

    .auth-security-dot{
        font-size:7px !important;
    }

    .auth-card.auth-v3-card h1{
        font-size:21px !important;
    }
}


/* ---------- REDUCED MOTION ---------- */

@media(prefers-reduced-motion:reduce){

    .auth-v3-form input,
    .auth-v3-form .primary-btn,
    .password-toggle{
        transition:none !important;
    }
}


/* =========================================================
   CITIC ADMIN SETTINGS — SAVE FEEDBACK
   ========================================================= */

.settings-card-actions{
    display:flex;
    align-items:center;
    gap:11px;
    flex-wrap:wrap;
    margin-top:15px;
    padding-top:14px;
    border-top:1px solid rgba(255,255,255,.055);
}

.settings-card-actions small{
    color:#687790;
    font-size:9px;
}

.settings-contact-save{
    min-height:39px;
    padding:0 15px;

    border:1px solid rgba(45,211,143,.42);
    border-radius:8px;

    background:#087653;
    color:#fff;

    cursor:pointer;

    font-size:9px;
    font-weight:900;
    letter-spacing:.035em;
}

.settings-contact-save:hover{
    background:#0a8960;
    border-color:rgba(61,225,157,.60);
}


.settings-result-feedback{
    position:relative;

    width:100%;

    display:flex;
    align-items:flex-start;
    gap:11px;

    margin-bottom:15px;
    padding:14px 45px 14px 14px;

    border-radius:11px;

    color:#fff;

    box-shadow:
        0 13px 34px rgba(0,0,0,.25);
}

.settings-result-feedback.success{
    border:1px solid #10b981;
    background:#065f46;
}

.settings-result-feedback.error{
    border:1px solid #ef4444;
    background:#7f1d1d;
}

.settings-result-icon{
    flex:0 0 27px;

    width:27px;
    height:27px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    color:#fff;
    font-weight:900;
}

.settings-result-feedback.success
.settings-result-icon{
    background:#10b981;
}

.settings-result-feedback.error
.settings-result-icon{
    background:#ef4444;
}

.settings-result-feedback strong{
    display:block;

    margin-bottom:3px;

    color:#fff;

    font-size:11px;
}

.settings-result-feedback p{
    margin:0;

    color:#fff;

    font-size:10px;
    line-height:1.5;
}

.settings-result-feedback > a{
    position:absolute;

    top:10px;
    right:13px;

    color:#fff;

    font-size:19px;
    text-decoration:none;

    opacity:.8;
}

.settings-result-feedback > a:hover{
    opacity:1;
}

@media(max-width:600px){

    .settings-card-actions{
        align-items:stretch;
        flex-direction:column;
    }

    .settings-contact-save{
        width:100%;
    }
}



/* =========================================================
   CITIC — FOOTER / MOBILE NAV STABILITY FIX
   Prevent bottom navigation disappearing during scroll
   ========================================================= */


/* ---------------------------------------------------------
   PUBLIC WEBSITE FOOTER
   --------------------------------------------------------- */

body.site-body{
    min-height:100vh;
    min-height:100dvh;

    display:flex;
    flex-direction:column;

    padding-bottom:0 !important;
}

body.site-body > main{
    flex:1 0 auto;
    width:100%;
}

body.site-body > .site-footer{
    position:relative !important;

    flex:0 0 auto;

    width:100%;

    opacity:1 !important;
    visibility:visible !important;

    transform:none !important;
    -webkit-transform:none !important;

    pointer-events:auto !important;

    z-index:2;

    transition:none !important;
}


/* ---------------------------------------------------------
   LOGGED-IN APPLICATION
   --------------------------------------------------------- */

body.app-body{
    min-height:100vh;
    min-height:100dvh;
}

.app-shell{
    min-height:100vh;
    min-height:100dvh;
}


/* ---------------------------------------------------------
   MOBILE BOTTOM NAVIGATION
   --------------------------------------------------------- */

@media(max-width:760px){

    body.app-body{
        /*
         * Reserve enough space so page content never sits
         * underneath the fixed bottom navigation.
         */
        padding-bottom:
            calc(
                76px +
                env(safe-area-inset-bottom)
            ) !important;
    }


    body.app-body .mobile-nav{
        position:fixed !important;

        left:0 !important;
        right:0 !important;
        bottom:0 !important;

        width:100% !important;

        margin:0 !important;

        display:grid !important;
        grid-template-columns:
            repeat(6,minmax(0,1fr)) !important;

        /*
         * Keep it above dialogs, charts and page cards.
         */
        z-index:9990 !important;

        padding:
            8px 5px
            max(
                8px,
                env(safe-area-inset-bottom)
            ) !important;

        border-top:
            1px solid
            rgba(255,255,255,.09) !important;

        background:
            rgba(7,12,29,.97) !important;

        -webkit-backdrop-filter:
            blur(18px);

        backdrop-filter:
            blur(18px);


        /*
         * Important on Android Chrome/WebView.
         *
         * Keeps the fixed navigation on its own compositor
         * layer and prevents it disappearing while scrolling.
         */
        transform:
            translate3d(0,0,0) !important;

        -webkit-transform:
            translate3d(0,0,0) !important;

        backface-visibility:
            hidden !important;

        -webkit-backface-visibility:
            hidden !important;

        will-change:
            transform;

        isolation:isolate;


        /*
         * Never allow scroll classes or old animations
         * to make the navigation invisible.
         */
        opacity:1 !important;

        visibility:visible !important;

        pointer-events:auto !important;

        transition:none !important;

        animation:none !important;
    }


    body.app-body .mobile-nav a{
        position:relative;

        min-width:0;
        min-height:48px;

        display:flex !important;

        flex-direction:column;

        align-items:center;
        justify-content:center;

        gap:3px;

        padding:3px 2px;

        opacity:1 !important;

        visibility:visible !important;

        transform:none !important;

        -webkit-transform:none !important;

        text-align:center;
    }


    body.app-body .mobile-nav-icon{
        width:21px;
        height:21px;

        display:flex;
        align-items:center;
        justify-content:center;
    }


    body.app-body .mobile-nav-icon svg{
        width:20px;
        height:20px;

        display:block;

        fill:none;

        stroke:currentColor;

        stroke-width:1.8;

        stroke-linecap:round;
        stroke-linejoin:round;
    }


    body.app-body .mobile-nav small{
        display:block !important;

        margin:0;

        font-size:7px !important;

        font-weight:750;

        line-height:1.15;

        white-space:nowrap;
    }


    body.app-body .mobile-nav a.active{
        color:#9eb2ff !important;
    }


    body.app-body .mobile-nav a.active::before{
        content:"";

        position:absolute;

        top:-8px;
        left:50%;

        width:24px;
        height:2px;

        transform:
            translateX(-50%);

        border-radius:0 0 4px 4px;

        background:#5d79ff;

        box-shadow:
            0 0 10px
            rgba(93,121,255,.55);
    }

}


/* ---------------------------------------------------------
   EXTRA SMALL PHONES
   --------------------------------------------------------- */

@media(max-width:390px){

    body.app-body .mobile-nav{
        padding-left:2px !important;
        padding-right:2px !important;
    }

    body.app-body .mobile-nav small{
        font-size:6.5px !important;
    }

}


/* ---------------------------------------------------------
   AVOID MOBILE BROWSER OVERSCROLL PAINT GLITCHES
   --------------------------------------------------------- */

html{
    min-height:100%;
}

body.app-body,
body.site-body{
    overflow-x:hidden;
}

