/* Hypernix 4.1 release layer: a readable yellow identity and layouts that keep working at every zoom level. */
:root{
  --yellow:#ffd323!important;
  --gold:#ffd323!important;
  --vision-blue:#ffd323!important;
  --vision-purple:#ffad19!important;
  --vision-ice:#fff4bd!important;
  --focus-ring:rgba(255,211,35,.26);
}
html{scrollbar-color:#ffd323 #15150f;scrollbar-width:thin}
html,body{width:100%;min-width:0;overflow-x:clip}
[hidden]{display:none!important}
body{min-height:100dvh;background:#090a07;color:#fffdf3}
body:focus-within{scroll-behavior:smooth}
:focus-visible{outline:3px solid var(--yellow)!important;outline-offset:3px}
.site-header{
  width:calc(100% - 28px)!important;
  max-width:none!important;
  border-color:rgba(255,211,35,.18)!important;
  background:rgba(12,13,9,.83)!important;
}
.app-shell{box-sizing:border-box;width:100%!important;max-width:none!important;padding-inline:clamp(14px,3vw,64px)!important}
.app-view{width:100%;max-width:none!important}
.brand-mark,.assistant-trigger,.bolt{
  background:linear-gradient(145deg,#fff4a8,#ffd323 58%,#ff9d18)!important;
  color:#111008!important;
}
.btn-primary{
  background:linear-gradient(115deg,#fff19b,#ffd323 62%,#ffae1b)!important;
  border-color:rgba(255,240,153,.74)!important;
  color:#111008!important;
  box-shadow:0 14px 42px rgba(255,186,24,.16)!important;
}
.btn-primary:hover{filter:brightness(1.06);transform:translateY(-1px)}
.home-hero:before{
  background:radial-gradient(ellipse at 70% 35%,rgba(255,211,35,.12),transparent 42%),linear-gradient(90deg,rgba(5,6,4,.94) 0%,rgba(5,6,4,.58) 52%,rgba(5,6,4,.08) 100%)!important;
}
.metric strong{background:linear-gradient(100deg,#fff,#ffd323);-webkit-background-clip:text;color:transparent}
.place-card:hover,.reward-card:hover{border-color:rgba(255,211,35,.62)!important}
.catalog-tools,.panel,.messenger,.inventory-hero .panel,.plan,.modal{
  background:linear-gradient(145deg,rgba(31,31,24,.96),rgba(14,15,11,.98))!important;
}
.reward-preview{background:radial-gradient(circle at 50% 44%,rgba(255,211,35,.14),transparent 58%)!important}
.coin-pill{
  appearance:none;
  color:#fffdf3;
  cursor:pointer;
  transition:border-color .18s,background .18s,transform .18s;
}
.coin-pill:hover{border-color:rgba(255,211,35,.56);background:rgba(255,211,35,.09);transform:translateY(-1px)}
.coin-pill img,.coin-price img{image-rendering:pixelated;object-fit:contain}
.place-rail{
  overflow-x:auto!important;
  overscroll-behavior-inline:contain;
  scrollbar-gutter:stable;
  padding-bottom:30px!important;
}
.place-rail::-webkit-scrollbar{height:10px}
.place-rail::-webkit-scrollbar-track{background:#161610;border-radius:999px}
.place-rail::-webkit-scrollbar-thumb{background:#ffd323;border-radius:999px;border:2px solid #161610}
.person{border:1px solid transparent}
.person:hover,.person.active{border-color:rgba(255,211,35,.24);background:rgba(255,211,35,.06)}
.person-place{display:inline-flex!important;align-items:center;gap:6px;color:#ffe877!important;font-weight:750!important}
.person-actions{display:flex;align-items:center;gap:6px;margin-left:auto}
.person-actions .btn{width:38px;height:38px;padding:0}
.person-profile-link{display:flex;align-items:center;gap:12px;min-width:0;flex:1;padding:0;border:0;background:transparent;text-align:left;color:inherit}
.person.suggestion{display:flex;align-items:center}
.profile-cover{
  height:clamp(380px,50vh,520px)!important;
  border-color:rgba(255,211,35,.2)!important;
  background-color:#12130e;
}
.profile-cover:after{background:linear-gradient(0deg,rgba(7,8,5,.97),rgba(7,8,5,.12) 72%)!important}
.profile-avatar-wrap{width:clamp(108px,10vw,142px)!important;height:clamp(108px,10vw,142px)!important}
.profile-name{min-width:0}
.profile-name h1{
  font-size:clamp(34px,4.2vw,66px)!important;
  line-height:.98!important;
  overflow-wrap:anywhere;
  text-wrap:balance;
}
.profile-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.profile-layout{grid-template-columns:minmax(280px,340px) minmax(0,1fr)!important}
.profile-projects{min-width:0}
.profile-projects .place-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr))}
.modal-backdrop{
  align-items:flex-start!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
  padding:max(16px,4vh) 16px!important;
}
.modal{
  max-height:calc(100dvh - 32px)!important;
  overflow-y:auto!important;
  scrollbar-gutter:stable;
}
.modal.modal-wide{max-height:calc(100dvh - 32px)!important}
.modal form,.modal .settings-grid{min-width:0}
.modal-head{position:sticky;z-index:5;top:-1px;padding-block:4px 12px;background:linear-gradient(#1d1d17 76%,transparent)}
.modal-actions{position:sticky;z-index:4;bottom:-1px;padding-top:14px;background:linear-gradient(transparent,#171812 32%)}
.coin-shop-modal{width:min(760px,calc(100vw - 28px))}
.coin-shop-balance{display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:14px;padding:15px 17px;margin:10px 0 18px;border:1px solid rgba(255,211,35,.22);border-radius:18px;background:rgba(255,211,35,.06)}
.coin-shop-balance img{width:56px;height:56px;image-rendering:pixelated}
.coin-shop-balance span{color:#aaa99d;font:650 12px/1.2 var(--ui)}
.coin-shop-balance strong{color:#ffd323;font:500 28px/1 var(--display)}
.coin-pack-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.coin-pack{position:relative;min-height:220px;padding:20px;border:1px solid rgba(255,255,255,.12);border-radius:21px;background:#191a14;text-align:center;cursor:pointer;transition:.2s}
.coin-pack:hover{transform:translateY(-4px);border-color:rgba(255,211,35,.58);box-shadow:0 20px 45px rgba(0,0,0,.25)}
.coin-pack img{width:92px;height:92px;object-fit:contain;image-rendering:pixelated}
.coin-pack strong,.coin-pack span{display:block}
.coin-pack strong{margin-top:8px;font:500 20px/1.1 var(--display)}
.coin-pack span{margin-top:10px;color:#ffd323;font:800 15px/1 var(--ui)}
@media(max-width:820px){
  .profile-layout{grid-template-columns:1fr!important}
  .profile-cover{height:520px!important}
  .coin-pack-grid{grid-template-columns:1fr}
}
@media(max-width:720px){
  .site-header{width:calc(100% - 16px)!important}
  .user-pill{width:43px;padding:4px!important}
  .user-pill .top-avatar-frame{display:grid!important}
  .user-pill .top-avatar-frame .avatar{display:block!important}
  .user-pill #topName{display:none!important}
  .profile-identity{align-items:flex-start!important}
  .profile-actions{left:16px;right:16px}
}
@media(min-width:1500px){
  .app-shell{padding-inline:clamp(44px,4vw,92px)!important}
  .home-hero{min-height:min(720px,72vh)}
}
