:root{--bg:#020805;--panel:#07130c;--line:rgba(53,255,155,.18);--mint:#35ff9b;--gold:#ffd86b;--cyan:#4de1ff;--red:#ff5f7a;--text:#ddffe9;--muted:#82b79b;--shadow:0 18px 55px rgba(0,0,0,.44);--radius:22px}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;min-height:100vh;direction:rtl;text-align:right;color:var(--text);font-family:"Segoe UI",Tahoma,Arial,sans-serif;background:radial-gradient(circle at 12% 0%,rgba(77,225,255,.12),transparent 28%),radial-gradient(circle at 88% 5%,rgba(53,255,155,.12),transparent 28%),linear-gradient(180deg,#010503,#06110b 44%,#0b160d)}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.08;background-image:linear-gradient(rgba(53,255,155,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(53,255,155,.14) 1px,transparent 1px);background-size:36px 36px;z-index:0}
h1,h2,h3,p{margin:0}
button{font-family:inherit;border:1px solid rgba(53,255,155,.22);border-radius:14px;padding:11px 16px;background:linear-gradient(135deg,rgba(53,255,155,.16),rgba(77,225,255,.08));color:#dcfff0;font-weight:950;cursor:pointer;box-shadow:0 10px 24px rgba(0,0,0,.25),0 0 18px rgba(53,255,155,.1);transition:transform .18s ease,filter .18s ease,box-shadow .18s ease}
button:hover{transform:translateY(-2px);filter:brightness(1.08)}
button:active{transform:translateY(1px)}
.primary{border:0;background:linear-gradient(135deg,var(--mint),#10b981);color:#02120a}
.ghost{background:rgba(0,0,0,.22);color:var(--muted)}
.danger{background:linear-gradient(135deg,rgba(255,95,122,.26),rgba(255,216,107,.08))!important;border-color:rgba(255,95,122,.35)!important;color:#ffd7df!important}

.shell{position:relative;z-index:1;width:min(1200px,calc(100% - 24px));margin:14px auto 40px;display:grid;gap:12px}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.018)),var(--panel);box-shadow:var(--shadow);flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:12px}
.brand img{width:52px;height:52px;object-fit:contain;transition:transform .22s ease,filter .22s ease}
/* پرسپکتیو برای نمایش بعد در چرخش سه بعدی */
.brand {
  display: flex;
  align-items: center;
  gap: 12px;
  perspective: 800px;
}

.brand img {
  width: 52px;
  height: 52px;
  object-fit: contain;
  cursor: pointer;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transform-style: preserve-3d;
  will-change: transform, filter;
  transition: transform 0.7s cubic-bezier(0.4, 0, 0.2, 1), filter 0.4s ease;
  -webkit-tap-highlight-color: transparent;
}

/* هم در هاور ماوس دسکتاپ و هم در لمس موبایل (:active) */
.brand img:hover,
.brand img:active {
  transform: rotateY(360deg) scale(1.1);
  filter: drop-shadow(0 0 12px rgba(53, 255, 155, 0.9)) drop-shadow(0 0 25px rgba(53, 255, 155, 0.5));
}

.brand h1{font-size:20px;color:#ecfff4}
.brand p{color:var(--muted);font-size:12px}
.top-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:8px;width:100%}
.top-actions .trial-badge{margin-left:auto}
.top-actions button{min-height:38px;border-color:rgba(255,216,107,.34);color:#dfffee;box-shadow:0 8px 20px rgba(0,0,0,.28),0 0 16px rgba(53,255,155,.14)}
.top-actions button:hover{transform:translateY(-3px);filter:brightness(1.14);box-shadow:0 12px 24px rgba(0,0,0,.34),0 0 24px rgba(53,255,155,.28)}
.exit-btn{border-color:rgba(255,216,107,.42)!important}

.panel{padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.018)),var(--panel);box-shadow:var(--shadow)}
.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}
.panel-head h2{color:#ecfff4;font-size:18px}
.panel-head span{color:var(--muted);font-size:12px}

.symbol-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.symbol-row select{border-radius:14px;border:1px solid var(--line);background:rgba(0,0,0,.28);color:var(--text);padding:11px 14px;font:inherit;min-width:180px}
.symbol-row select:focus{outline:2px solid rgba(53,255,155,.4)}

.risk-lamp{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;width:auto!important;min-width:76px!important;height:32px!important;padding:0 9px!important;border-radius:999px!important;font:800 10px/1 "Segoe UI",Tahoma,Arial,sans-serif!important;white-space:nowrap!important;background:#555;box-shadow:0 0 16px rgba(255,255,255,.1);transition:background .3s,box-shadow .3s}
.risk-lamp.chart-corner{position:absolute!important;top:10px!important;left:10px!important;z-index:6}
.risk-lamp span{direction:ltr!important}
.risk-lamp.on{background:var(--mint);box-shadow:0 0 20px var(--mint),0 0 40px rgba(53,255,155,.3);color:#02120a!important}
.risk-lamp.off{background:var(--red);box-shadow:0 0 20px var(--red),0 0 40px rgba(255,95,122,.3);color:#ffd7df!important}

.price-zone{display:grid;grid-template-columns:minmax(190px,245px) minmax(0,1fr);gap:12px;align-items:stretch;min-height:220px}
.price-orb{position:relative;width:min(235px,100%);aspect-ratio:1/1;margin:auto;border-radius:50%;display:grid;place-items:center;text-align:center;background:radial-gradient(circle,rgba(53,255,155,.22),rgba(77,225,255,.07) 44%,rgba(0,0,0,.18) 70%);border:1px solid rgba(53,255,155,.28);box-shadow:0 0 42px rgba(53,255,155,.14)}
.price-orb small{color:var(--muted)}
.price-orb strong{direction:ltr;font-family:"Share Tech Mono","Orbitron","Courier New",monospace;letter-spacing:.02em;width:80%;overflow:hidden;white-space:nowrap;text-overflow:clip;transition:color .3s,text-shadow .3s}
.price-orb strong.market-price{font-size:clamp(26px,4.2vw,48px);color:var(--mint);text-shadow:0 0 4px rgba(53,255,155,.95),0 0 12px rgba(53,255,155,.65),0 0 26px rgba(53,255,155,.35)}
.price-orb strong.avg-price{font-size:clamp(14px,2vw,20px);color:#baffdf;text-shadow:0 0 3px rgba(186,255,223,.8),0 0 8px rgba(53,255,155,.4);margin-top:2px}
.price-orb strong.avg-price.risk-on{color:var(--mint);text-shadow:0 0 3px rgba(53,255,155,.85),0 0 8px rgba(53,255,155,.45)}
.price-orb strong.avg-price.risk-off{color:var(--red);text-shadow:0 0 3px rgba(255,95,122,.85),0 0 8px rgba(255,95,122,.45)}
.price-orb span{color:var(--gold);direction:ltr;font-size:12px}
.price-orb .screw{display:block;position:absolute;z-index:5;width:10px;height:10px;border-radius:50%;background:radial-gradient(circle at 34% 30%,#e9fff3 0 9%,#8bcfa1 20%,#244532 55%,#08140d 78%);border:1px solid rgba(160,220,178,.5);box-shadow:inset 0 0 0 1px rgba(0,0,0,.56),0 1px 4px rgba(0,0,0,.55),0 0 10px rgba(53,255,155,.22)}
.price-orb .screw.tl{top:8%;left:8%}.price-orb .screw.tr{top:8%;right:8%}.price-orb .screw.bl{bottom:8%;left:8%}.price-orb .screw.br{bottom:8%;right:8%}
.chart-wrap{position:relative;border:1px solid rgba(53,255,155,.12);border-radius:18px;background:rgba(0,0,0,.22);padding:8px;overflow:visible;min-height:220px}
canvas{width:100%;height:100%;display:block}

.gauge-cards{margin-top:12px}
.gauges{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.gauge{position:relative;min-height:104px;border:1px solid rgba(255,216,107,.18);border-radius:20px;background:radial-gradient(circle at 50% 110%,rgba(255,216,107,.17),transparent 48%),rgba(0,0,0,.16);display:grid;place-items:end center;padding:11px;color:var(--muted);overflow:hidden}
.gauge .screw{position:absolute;z-index:2;width:8px;height:8px;border-radius:50%;background:radial-gradient(circle at 34% 30%,#d8efe1 0 9%,#6f9d80 19%,#244532 52%,#08140d 76%);border:1px solid rgba(118,166,132,.38)}
.gauge .screw.tl{top:10px;left:10px}.gauge .screw.tr{top:10px;right:10px}.gauge .screw.bl{bottom:10px;left:10px}.gauge .screw.br{bottom:10px;right:10px}
.gauge-arc{position:absolute;bottom:27px;left:50%;width:150px;height:75px;transform:translateX(-50%);border:13px solid rgba(53,255,155,.20);border-bottom:0;border-radius:150px 150px 0 0;box-shadow:inset 0 0 16px rgba(53,255,155,.08),0 0 14px rgba(53,255,155,.055)}
.gauge .needle{position:absolute;z-index:8;left:50%;bottom:27px;width:4px;height:66px;background:#dcfff0;border-radius:999px;transform-origin:50% 100%;transform:rotate(-90deg);transition:transform .28s ease-out;box-shadow:0 0 8px rgba(220,255,240,.75),0 0 16px rgba(53,255,155,.40)}
.gauge .needle.risk{background:#bdf7d4;box-shadow:0 0 8px rgba(189,247,212,.70),0 0 16px rgba(53,255,155,.34)}
.gauge .needle:after{content:"";position:absolute;left:50%;bottom:-5px;width:12px;height:12px;transform:translateX(-50%);border-radius:50%;background:#06130c;border:2px solid rgba(220,255,240,.72);box-shadow:0 0 10px rgba(53,255,155,.34)}
.gauge strong{position:absolute;bottom:48px;left:50%;transform:translateX(-50%);font-size:18px;color:#ecfff4;direction:ltr;text-shadow:0 0 14px rgba(53,255,155,.24)}
.gauge span{position:relative;z-index:1;font-size:13px;font-weight:950;letter-spacing:.12em;color:#ecfff4;text-shadow:0 0 12px rgba(53,255,155,.28)}

.combo-lights{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:12px;padding:10px;border:1px solid rgba(53,255,155,.16);border-radius:16px;background:rgba(0,0,0,.2)}
.combo-lamp{width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#3a4a42,#0a140f 70%);border:1px solid rgba(53,255,155,.3);box-shadow:inset 0 0 6px rgba(0,0,0,.6);transition:background .3s,box-shadow .3s}
.combo-lamp.on{background:radial-gradient(circle at 35% 30%,#c8ffe4,var(--mint) 55%,#0a3f28 85%);box-shadow:0 0 12px var(--mint),0 0 26px rgba(53,255,155,.55),inset 0 0 6px rgba(255,255,255,.35)}

.news-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.news-topic h3{color:var(--gold);font-size:13px;margin-bottom:8px;letter-spacing:.04em}
.news-item{border:1px solid rgba(53,255,155,.12);border-radius:14px;background:rgba(0,0,0,.18);padding:10px;margin-bottom:8px}
.news-item a{color:#dcfff0;text-decoration:none;font-size:13px;font-weight:700;display:block;margin-bottom:4px}
.news-item a:hover{color:var(--mint)}
.news-item p{color:var(--muted);font-size:12px;line-height:1.7}
.news-empty{color:var(--muted);font-size:12px;padding:8px}

.signal-banner{border:1px solid rgba(255,216,107,.32);border-radius:16px;background:linear-gradient(135deg,rgba(255,216,107,.14),rgba(53,255,155,.06));padding:12px 14px;margin-bottom:12px;display:none}
.signal-banner.show{display:block}
.signal-banner strong{color:var(--gold);display:block;margin-bottom:4px}
.signal-banner span{color:#dcfff0;font-size:13px;line-height:1.8}

.admin-panel{border:1px dashed rgba(255,95,122,.4);background:rgba(255,95,122,.05)}
.admin-panel .panel-head span{color:var(--red)}
.admin-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) auto;gap:10px;align-items:end}
.admin-form label{display:grid;gap:6px;font-size:12px;color:var(--muted)}
.admin-form input{border-radius:14px;border:1px solid var(--line);background:rgba(0,0,0,.28);color:var(--text);padding:11px;font:inherit;direction:ltr}
.admin-status{margin-top:8px;color:var(--muted);font-size:12px;min-height:16px}
.admin-recent-signals{margin-top:12px;border-top:1px dashed rgba(255,95,122,.25);padding-top:10px;display:grid;gap:8px}
.admin-signal-row{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid rgba(255,216,107,.18);border-radius:12px;background:rgba(0,0,0,.18);padding:8px 12px;font-size:12px;color:var(--muted)}
.admin-signal-row .txt{flex:1;color:#dcfff0}

.access-backdrop{position:fixed;inset:0;z-index:999;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.72);backdrop-filter:blur(6px)}
.access-backdrop.open{display:flex}
.access-card{width:min(440px,100%);display:grid;gap:12px;padding:22px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(180deg,rgba(8,21,14,.96),rgba(4,16,9,.96));box-shadow:var(--shadow),0 0 32px rgba(53,255,155,.12);text-align:center}
.access-card h3{color:#ecfff4;font-size:19px}
.access-card p{color:var(--muted);line-height:1.8;font-size:13px}
.access-card .action-row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.access-discount{border-top:1px solid var(--line);padding-top:12px;margin-top:4px;display:grid;gap:8px}
.access-discount input{border-radius:14px;border:1px solid var(--line);background:rgba(0,0,0,.28);color:var(--text);padding:11px;font:inherit;direction:ltr;text-align:center}
.access-status{min-height:16px;color:var(--muted);font-size:12px}
.trial-badge{display:inline-block;border:1px solid rgba(53,255,155,.3);border-radius:999px;padding:3px 10px;font-size:11px;color:var(--mint)}

.signal-log-card{max-height:80vh;overflow:auto}
.signal-log-list{display:grid;gap:8px;text-align:right;max-height:50vh;overflow:auto}
.signal-log-item{border:1px solid rgba(255,216,107,.2);border-radius:12px;background:rgba(0,0,0,.2);padding:10px 12px;font-size:12px;color:#dcfff0;line-height:1.8}
.signal-log-empty{color:var(--muted);font-size:12px;padding:12px;text-align:center}

@media(max-width:760px){
  .price-zone{grid-template-columns:1fr;min-height:0}
  .chart-wrap{height:200px;min-height:0}
  .news-grid{grid-template-columns:1fr}
  .admin-form{grid-template-columns:1fr}
  .brand{min-width:0}
  .brand>div{min-width:0}
  .brand h1{font-size:15px}
  .brand p{display:block;font-size:10px;line-height:1.6;white-space:normal}
  .top-actions{justify-content:flex-start}
}
/* Disclaimer Panel */
.disclaimer-panel {
  margin-top: 10px;
  padding: 14px 18px;
  border: 1px dashed rgba(255, 216, 107, 0.28);
  border-radius: var(--radius);
  background: linear-gradient(180deg, rgba(255, 216, 107, 0.03), rgba(0, 0, 0, 0.25));
  box-shadow: inset 0 0 15px rgba(255, 216, 107, 0.02);
}

.disclaimer-header {
  display: flex;
  align-items: center;
  margin-bottom: 8px;
}

.disclaimer-badge {
  font-size: 11px;
  font-weight: 800;
  color: var(--gold);
  background: rgba(255, 216, 107, 0.12);
  border: 1px solid rgba(255, 216, 107, 0.3);
  padding: 3px 10px;
  border-radius: 8px;
  letter-spacing: 0.02em;
}

.disclaimer-text {
  font-size: 11.5px;
  line-height: 1.85;
  color: #9cc4ad;
  text-align: justify;
}

.disclaimer-text strong {
  color: #eafff2;
  font-weight: 700;
}

