/* MyCurio Portal redesign layer
   This file intentionally overrides older per-page inline styles without removing working PHP logic. */
:root{
  --curio-bg:#080812;
  --curio-bg-2:#0d0d1a;
  --curio-panel:#151527;
  --curio-panel-2:#1b1b31;
  --curio-card:rgba(255,255,255,.065);
  --curio-card-strong:rgba(255,255,255,.09);
  --curio-border:rgba(255,255,255,.13);
  --curio-border-strong:rgba(255,255,255,.22);
  --curio-text:#f7f3ff;
  --curio-muted:rgba(247,243,255,.68);
  --curio-soft:rgba(247,243,255,.48);
  --curio-pink:#ff4fa3;
  --curio-pink-2:#ff79bd;
  --curio-purple:#8e5cff;
  --curio-blue:#54c7ff;
  --curio-good:#62f2a0;
  --curio-warn:#ffd166;
  --curio-bad:#ff6b7a;
  --curio-shadow:0 24px 80px rgba(0,0,0,.42);
  --curio-shadow-soft:0 12px 40px rgba(0,0,0,.26);
  --curio-radius:22px;
  --curio-radius-sm:14px;
  --curio-max:1180px;
}

*{box-sizing:border-box;}
html{min-height:100%;background:var(--curio-bg);}
body{
  min-height:100%;
  margin:0!important;
  color:var(--curio-text)!important;
  background:
    radial-gradient(circle at 12% -10%, rgba(255,79,163,.25), transparent 34rem),
    radial-gradient(circle at 88% 0%, rgba(142,92,255,.18), transparent 30rem),
    linear-gradient(180deg, #090915 0%, #0c0c17 44%, #080812 100%)!important;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif!important;
  letter-spacing:-.01em;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(to bottom, rgba(0,0,0,.72), transparent 65%);
  z-index:-1;
}

a{color:var(--curio-pink-2);text-decoration:none;}
a:hover{color:#fff;text-decoration:none;}

.portal-shell-header{
  position:sticky;
  top:0;
  z-index:9000;
  background:rgba(8,8,18,.82);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(255,255,255,.12);
  box-shadow:0 10px 40px rgba(0,0,0,.28);
}
.portal-shell-inner{
  max-width:var(--curio-max);
  margin:0 auto;
  padding:13px 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.portal-shell-brand{
  display:flex;
  align-items:center;
  gap:11px;
  min-width:max-content;
  color:#fff!important;
  font-weight:950;
  letter-spacing:-.04em;
  font-size:20px;
  text-decoration:none!important;
}
.portal-shell-mark{
  width:38px;
  height:38px;
  border-radius:14px;
  background:linear-gradient(135deg, var(--curio-pink), var(--curio-purple));
  display:grid;
  place-items:center;
  box-shadow:0 14px 28px rgba(255,79,163,.23);
  color:#fff;
  font-weight:950;
  letter-spacing:-.08em;
}
.portal-shell-brand span span{color:var(--curio-pink-2);}
.portal-shell-tagline{
  display:block;
  font-size:10px;
  letter-spacing:.13em;
  text-transform:uppercase;
  color:var(--curio-muted);
  font-weight:800;
  margin-top:1px;
}
.portal-shell-nav{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.portal-shell-nav a,
.portal-shell-chip{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:8px 11px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.045);
  color:rgba(255,255,255,.82)!important;
  font-size:13px!important;
  font-weight:850;
  line-height:1;
  text-decoration:none!important;
}
.portal-shell-nav a:hover,
.portal-shell-nav a.is-active{
  border-color:rgba(255,79,163,.45);
  background:rgba(255,79,163,.13);
  color:#fff!important;
}
.portal-shell-chip{color:var(--curio-muted)!important;font-weight:750;}
.portal-shell-chip strong{color:#fff;margin-left:4px;}
.portal-mobile-toggle{display:none;}

.wrap{
  width:min(var(--curio-max), calc(100% - 32px))!important;
  max-width:var(--curio-max)!important;
  margin:0 auto!important;
  padding:22px 0 38px!important;
}
.wrap > .brand:first-child{
  margin:0 0 18px!important;
  padding:20px!important;
  border:1px solid var(--curio-border)!important;
  border-radius:var(--curio-radius)!important;
  background:linear-gradient(135deg, rgba(255,79,163,.16), rgba(142,92,255,.10) 52%, rgba(255,255,255,.04))!important;
  box-shadow:var(--curio-shadow-soft)!important;
  font-size:26px!important;
  line-height:1.05!important;
  letter-spacing:-.06em!important;
}
.brand span{color:var(--curio-pink-2)!important;}

.topbar,.top{
  margin:0 0 18px!important;
  padding:20px!important;
  border:1px solid var(--curio-border)!important;
  border-radius:var(--curio-radius)!important;
  background:
    linear-gradient(135deg, rgba(255,79,163,.14), rgba(142,92,255,.09) 55%, rgba(255,255,255,.04)),
    rgba(255,255,255,.04)!important;
  box-shadow:var(--curio-shadow-soft)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  flex-wrap:wrap!important;
}
.topbar .brand,.top h1{
  margin:0!important;
  font-size:clamp(25px, 4vw, 40px)!important;
  line-height:1.02!important;
  font-weight:950!important;
  letter-spacing:-.07em!important;
}
.topbar .brand + div,.top .sub{margin-top:4px;}
.navlinks,.row{
  display:flex;
  gap:8px!important;
  align-items:center;
  flex-wrap:wrap;
}
.navlinks a,.navBtn,.btn,button,input[type="submit"]{
  min-height:38px;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.14)!important;
  background:linear-gradient(180deg, rgba(255,255,255,.105), rgba(255,255,255,.045))!important;
  color:#fff!important;
  font-weight:900!important;
  text-decoration:none!important;
  padding:10px 13px!important;
  box-shadow:0 8px 24px rgba(0,0,0,.18);
  transition:transform .14s ease, border-color .14s ease, background .14s ease;
}
.navlinks a:hover,.navBtn:hover,.btn:hover,button:hover,input[type="submit"]:hover{
  transform:translateY(-1px);
  border-color:rgba(255,79,163,.45)!important;
  background:linear-gradient(180deg, rgba(255,79,163,.20), rgba(255,255,255,.055))!important;
}
.btnPrimary,.primary,button[type="submit"]{
  background:linear-gradient(135deg, var(--curio-pink), var(--curio-purple))!important;
  border-color:rgba(255,255,255,.20)!important;
  color:#fff!important;
}
.dot{background:var(--curio-pink)!important;box-shadow:0 0 0 4px rgba(255,79,163,.12);}

.card,.box,.note,.hint,.scanCard,.kpi,.tradeHistoryCard,.rankCard,.priceCard,.statusbox,.badbox,.ok,.err{
  border:1px solid var(--curio-border)!important;
  background:linear-gradient(180deg, var(--curio-card-strong), rgba(255,255,255,.04))!important;
  border-radius:var(--curio-radius)!important;
  box-shadow:var(--curio-shadow-soft)!important;
}
.card,.box,.note,.hint{padding:18px!important;}
.card + .card,.grid + .card,.card + .grid,.note + .card{margin-top:16px!important;}
.header,.tradeHistoryHead,.rankHead,.tradeModalHead{
  border-color:var(--curio-border)!important;
  background:rgba(255,255,255,.045)!important;
}
.title,.sectionTitle,.scanTitle,.tradeHistoryTitle,.rankTitle,.name,h1,h2,h3{
  color:#fff!important;
  font-weight:950!important;
  letter-spacing:-.045em!important;
}
.title{font-size:clamp(20px,2.6vw,30px)!important;margin-bottom:7px!important;}
.sectionTitle{font-size:16px!important;}
.sub,.muted,.small,label,.scanSub,.scanFooter,.rankMeta,.tradeListMeta,.tinyMuted{color:var(--curio-muted)!important;}

.pill,.adminTag,.badgeCore,.badgeNon{
  display:inline-flex!important;
  align-items:center;
  gap:6px;
  border-radius:999px!important;
  padding:7px 10px!important;
  border:1px solid rgba(255,255,255,.13)!important;
  background:rgba(255,255,255,.06)!important;
  color:rgba(255,255,255,.82)!important;
  font-weight:900!important;
}
.badgeCore,.pill.good,.good{border-color:rgba(98,242,160,.34)!important;background:rgba(98,242,160,.12)!important;color:#a9ffc8!important;}
.badgeNon,.pill.warn,.warn{border-color:rgba(255,209,102,.34)!important;background:rgba(255,209,102,.12)!important;color:#ffe3a3!important;}
.bad,.err,.pill.bad{border-color:rgba(255,107,122,.36)!important;background:rgba(255,107,122,.12)!important;color:#ffb4bd!important;}
.ok{border-color:rgba(98,242,160,.32)!important;color:#baffd2!important;}

input,select,textarea{
  border-radius:14px!important;
  border:1px solid rgba(255,255,255,.14)!important;
  background:rgba(5,5,14,.62)!important;
  color:#fff!important;
  padding:11px 12px!important;
  outline:none!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
}
input:focus,select:focus,textarea:focus{
  border-color:rgba(255,79,163,.62)!important;
  box-shadow:0 0 0 4px rgba(255,79,163,.12)!important;
}
label{font-weight:850!important;font-size:12px!important;text-transform:none;}
::placeholder{color:rgba(247,243,255,.34)!important;}

table{
  width:100%;
  border-collapse:separate!important;
  border-spacing:0!important;
  overflow:hidden;
  border:1px solid var(--curio-border)!important;
  border-radius:18px!important;
  background:rgba(0,0,0,.16)!important;
}
th{
  color:rgba(255,255,255,.88)!important;
  background:rgba(255,255,255,.075)!important;
  font-size:12px!important;
  letter-spacing:.02em;
  text-transform:uppercase;
}
td,th{border-color:rgba(255,255,255,.09)!important;padding:11px 12px!important;}
tr:hover td{background:rgba(255,255,255,.035)!important;}

.grid{gap:16px!important;}
.kpis{gap:12px!important;}
.kpi{padding:14px!important;}
.kpi .k,.k{color:var(--curio-muted)!important;font-size:12px!important;font-weight:900!important;text-transform:uppercase;letter-spacing:.05em;}
.kpi .v,.v{font-weight:950!important;color:#fff!important;}
.qrShell{background:rgba(0,0,0,.22)!important;border:1px solid var(--curio-border)!important;border-radius:20px!important;}
.memberNoValue{letter-spacing:.08em!important;}
.hr{border-color:rgba(255,255,255,.12)!important;}

.curio-footer{
  border-top:1px solid rgba(255,255,255,.12)!important;
  background:rgba(8,8,18,.72)!important;
  backdrop-filter:blur(12px);
  margin-top:28px!important;
}
.curio-footer a{color:var(--curio-pink-2)!important;}

body.portal-login .portal-shell-nav .portal-auth-only,
body.portal-register .portal-shell-nav .portal-auth-only{display:none!important;}
body.portal-login .wrap, body.portal-register .wrap{max-width:560px!important;}
body.portal-login .card, body.portal-register .card{
  padding:22px!important;
  border-radius:24px!important;
}

@media (max-width: 860px){
  .portal-shell-inner{align-items:flex-start;flex-direction:column;gap:12px;}
  .portal-shell-nav{justify-content:flex-start;width:100%;}
  .portal-shell-nav a,.portal-shell-chip{font-size:12px!important;min-height:34px;padding:8px 10px!important;}
  .topbar,.top{align-items:flex-start!important;}
  .wrap{width:min(100% - 24px, var(--curio-max))!important;padding-top:16px!important;}
  .card,.box,.note,.hint{padding:14px!important;}
  table{font-size:12px!important;}
  th,td{padding:9px 8px!important;}
}
@media (max-width: 560px){
  .portal-shell-brand{font-size:18px;}
  .portal-shell-mark{width:34px;height:34px;border-radius:12px;}
  .portal-shell-nav{gap:6px;}
  .portal-shell-nav a,.portal-shell-chip{flex:1;justify-content:center;}
  .navlinks a,.navBtn,.btn,button,input[type="submit"]{width:auto;}
}
