:root {
  --background: #0a0a0a;
  --foreground: #fafafa;
  --muted: #1a1a1a;
  --muted-foreground: #737373;
  --accent: #ff3d00;
  --accent-foreground: #0a0a0a;
  --border: #262626;
  --input: #1a1a1a;
  --card: #0f0f0f;
  --card-foreground: #fafafa;
  --ring: #ff3d00;
  --success: #b4ff8a;
  --danger: #ff7f5e;
  --warning: #ffb54d;
  --container: 1200px;
  --ease: cubic-bezier(0.25, 0, 0, 1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scrollbar-color: var(--accent) var(--muted); scrollbar-width: thin; }
html::-webkit-scrollbar, body::-webkit-scrollbar { width: 12px; height: 12px; }
html::-webkit-scrollbar-track, body::-webkit-scrollbar-track { background: var(--background); }
html::-webkit-scrollbar-thumb, body::-webkit-scrollbar-thumb { background: linear-gradient(180deg, #2a2a2a 0%, var(--accent) 100%); border: 2px solid var(--background); }
html::-webkit-scrollbar-thumb:hover, body::-webkit-scrollbar-thumb:hover { background: linear-gradient(180deg, #4a4a4a 0%, #ff5a26 100%); }
body {
  margin: 0;
  background: var(--background);
  color: var(--foreground);
  font-family: "Inter", system-ui, sans-serif;
  line-height: 1.6;
  letter-spacing: -0.01em;
  min-width: 320px;
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input, select { font: inherit; }
button { cursor: pointer; }
button:disabled { opacity: 0.5; pointer-events: none; }

.site-noise,
.site-noise::before {
  position: fixed;
  inset: 0;
  pointer-events: none;
}
.site-noise {
  opacity: 0.015;
  z-index: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");
}

.decor {
  position: fixed;
  font-family: "Inter Tight", "Inter", system-ui, sans-serif;
  font-weight: 800;
  letter-spacing: -0.06em;
  color: rgba(255,255,255,0.03);
  z-index: 0;
  pointer-events: none;
  user-select: none;
}
.decor-a { top: 6rem; right: -1.2rem; font-size: clamp(4rem, 15vw, 11rem); }
.decor-b { bottom: 6rem; left: -1rem; font-size: clamp(4rem, 14vw, 10rem); }

.page-shell {
  position: relative;
  z-index: 1;
  max-width: calc(var(--container) + 64px * 2);
  margin: 0 auto;
  padding: 0 24px 96px;
}
.section-shell {
  max-width: var(--container);
  margin: 0 auto;
}
.bordered-section {
  border-top: 1px solid var(--border);
  padding: 80px 0;
}
.topbar {
  position: sticky;
  top: 0;
  z-index: 20;
  padding: 28px 0 22px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  backdrop-filter: blur(12px);
  background: rgba(10,10,10,0.82);
}
.brand-lockup {
  display: inline-flex;
  flex-direction: column;
  gap: 6px;
}
.brand-kicker,
.eyebrow,
.summary-label,
.control-label,
.item-overline,
.attachments-title,
.aside-label {
  font-family: "JetBrains Mono", monospace;
  font-size: 0.75rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--muted-foreground);
}
.brand-name {
  font-family: "Inter Tight", "Inter", sans-serif;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}
.topbar-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}
.compact-control {
  min-width: 154px;
}
.hero-section { padding-top: 72px; }
.hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(320px, 5fr);
  gap: 48px;
  align-items: start;
}
.hero-title,
.section-heading h2,
.dialog-head h3 {
  font-family: "Inter Tight", "Inter", sans-serif;
  line-height: 1;
  letter-spacing: -0.06em;
  margin: 0;
}
.hero-title {
  font-size: clamp(3.5rem, 9vw, 8rem);
  max-width: 10ch;
  text-wrap: balance;
}
.hero-lead,
.section-copy,
.summary-note,
.insight-card p,
.auth-block p,
.profile-link,
.status-line {
  color: var(--muted-foreground);
}
.hero-lead {
  max-width: 56rem;
  font-size: 1.125rem;
  margin: 28px 0 0;
}
.hero-actions {
  margin-top: 34px;
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
  align-items: center;
}
.hero-actions-stack { margin-top: 24px; }
.status-line {
  margin-top: 24px;
  font-size: 0.95rem;
}
.status-line.is-loading {
  font-family: "Inter Tight", "Inter", sans-serif;
  font-size: clamp(1.5rem, 3vw, 2.5rem);
  line-height: 1.05;
  letter-spacing: -0.05em;
  color: var(--foreground);
  margin-top: 32px;
}
.hero-aside {
  display: grid;
  gap: 18px;
}
.framed-block,
.summary-card,
.item-card,
.insight-card,
.filters-dialog {
  position: relative;
  background: transparent;
  border: 1px solid var(--border);
}
.framed-block {
  padding: 28px;
}
.accent-bar,
.card-accent {
  width: 64px;
  height: 4px;
  background: var(--accent);
}
.accent-bar { margin-bottom: 22px; }
.auth-form {
  margin-top: 22px;
  display: grid;
  gap: 14px;
}
.profile-main {
  display: grid;
  grid-template-columns: 72px 1fr;
  gap: 16px;
  align-items: center;
  margin-top: 16px;
}
.profile-avatar {
  width: 72px;
  height: 72px;
  object-fit: cover;
  border: 1px solid var(--border);
}
.profile-name {
  font-family: "Inter Tight", sans-serif;
  font-size: 1.5rem;
  line-height: 1.1;
  letter-spacing: -0.04em;
}
.profile-link {
  display: inline-block;
  margin-top: 8px;
  position: relative;
}
.profile-link::after,
.ghost-button::after,
.primary-button::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  height: 2px;
  background: var(--accent);
  transform-origin: left center;
  transition: transform 150ms var(--ease);
}
.profile-link::after { width: 100%; transform: scaleX(1); }
.profile-link:hover::after { transform: scaleX(1.08); }

.section-heading {
  display: grid;
  gap: 12px;
  margin-bottom: 30px;
}
.section-heading h2 { font-size: clamp(2.5rem, 5vw, 4.5rem); }
.section-heading-split {
  grid-template-columns: 1fr auto;
  align-items: end;
}
.summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
.summary-card {
  min-height: 220px;
  padding: 28px;
  display: grid;
  align-content: start;
  gap: 18px;
  transition: border-color 150ms var(--ease), background-color 150ms var(--ease);
}
.summary-card:hover,
.item-card:hover,
.insight-card:hover,
.framed-block:hover {
  border-color: #424242;
  background: rgba(255,255,255,0.01);
}
.summary-value {
  margin: 0;
  font-family: "Inter Tight", sans-serif;
  font-size: clamp(2.2rem, 4vw, 4rem);
  line-height: 1;
  letter-spacing: -0.05em;
}
.controls-section { padding-top: 96px; }
.search-row { margin-bottom: 20px; }
.active-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 28px;
}
.filter-pill,
.badge,
.meta-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 32px;
  border: 1px solid var(--border);
  padding: 7px 10px;
  font-family: "JetBrains Mono", monospace;
  font-size: 0.75rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.badge.high { color: var(--success); }
.badge.medium { color: var(--warning); }
.badge.danger { color: var(--danger); }
.items-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
.item-card {
  padding: 24px;
  display: grid;
  gap: 18px;
  transition: border-color 150ms var(--ease), background-color 150ms var(--ease);
}
.locked-item-card { border-color: rgba(255, 61, 0, 0.6); }
.card-corner-actions {
  display: flex;
  justify-content: flex-end;
}
.inspect-button,
.primary-button,
.ghost-button,
.secondary-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  white-space: nowrap;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: 600;
  transition: all 150ms var(--ease);
}
.primary-button {
  color: var(--accent);
  padding: 8px 0;
  border: 0;
  background: transparent;
}
.primary-button::after { width: 100%; transform: scaleX(1); }
.primary-button:hover::after { transform: scaleX(1.1); }
.primary-button:active { transform: translateY(1px); }
.ghost-button {
  color: var(--muted-foreground);
  padding: 8px 16px;
  border: 0;
  background: transparent;
}
.ghost-button::after { width: calc(100% - 32px); left: 16px; transform: scaleX(0); height: 1px; }
.ghost-button:hover { color: var(--foreground); }
.ghost-button:hover::after { transform: scaleX(1); }
.secondary-button,
.inspect-button {
  padding: 0 24px;
  border: 1px solid var(--foreground);
  background: transparent;
  color: var(--foreground);
}
.secondary-button:hover,
.inspect-button:hover {
  background: var(--foreground);
  color: var(--background);
}
button:focus-visible,
input:focus-visible,
select:focus-visible,
a:focus-visible {
  outline: 2px solid var(--ring);
  outline-offset: 2px;
}
.item-top {
  display: grid;
  grid-template-columns: 132px 1fr;
  gap: 18px;
  align-items: start;
}
.item-image {
  width: 132px;
  height: 132px;
  object-fit: contain;
  background: linear-gradient(180deg, rgba(255,255,255,0.04), transparent);
  border: 1px solid var(--border);
}
.item-name {
  margin: 6px 0 8px;
  font-family: "Inter Tight", sans-serif;
  font-size: clamp(1.7rem, 2vw, 2.6rem);
  line-height: 1;
  letter-spacing: -0.05em;
}
.item-type { margin: 0; color: var(--muted-foreground); }
.badge-row,
.meta-strip,
.stickers-row,
.charms-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.metric-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px 18px;
  padding-top: 6px;
  border-top: 1px solid var(--border);
}
.metric {
  display: grid;
  gap: 4px;
}
.metric-label {
  font-family: "JetBrains Mono", monospace;
  color: var(--muted-foreground);
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.metric-value {
  font-size: 1rem;
  font-weight: 600;
}
.attachments-block,
.charms-block {
  display: grid;
  gap: 10px;
  padding-top: 8px;
  border-top: 1px solid var(--border);
}
.sticker-chip,
.charm-chip {
  display: grid;
  gap: 6px;
  justify-items: center;
}
.chip-link {
  width: 56px;
  height: 56px;
  border: 1px solid var(--border);
  display: grid;
  place-items: center;
  background: rgba(255,255,255,0.02);
  transition: border-color 150ms var(--ease), background-color 150ms var(--ease);
}
.chip-link:hover {
  border-color: var(--accent);
  background: rgba(255, 61, 0, 0.06);
}
.sticker-icon,
.charm-icon {
  width: 42px;
  height: 42px;
  object-fit: contain;
}
.chip-wear {
  font-family: "JetBrains Mono", monospace;
  font-size: 0.68rem;
  color: var(--muted-foreground);
  letter-spacing: 0.08em;
}
.footer-row {
  display: grid;
  gap: 14px;
  padding-top: 12px;
  border-top: 1px solid var(--border);
}
.wear-line { color: var(--muted-foreground); }
.recommendation-box {
  display: grid;
  gap: 4px;
}
.recommendation-box strong {
  font-family: "Inter Tight", sans-serif;
  font-size: 1rem;
  letter-spacing: -0.02em;
}
.insights-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
.insight-card {
  padding: 28px;
  min-height: 200px;
}
.insight-card h3 {
  margin: 0 0 14px;
  font-family: "Inter Tight", sans-serif;
  font-size: 2rem;
  line-height: 1;
  letter-spacing: -0.05em;
}
.control {
  display: grid;
  gap: 10px;
}
input,
select {
  width: 100%;
  min-height: 52px;
  padding: 0 16px;
  border: 1px solid var(--border);
  background: var(--input);
  color: var(--foreground);
  border-radius: 0;
  transition: border-color 150ms var(--ease), color 150ms var(--ease), background-color 150ms var(--ease);
}
input::placeholder { color: var(--muted-foreground); }
input:focus,
select:focus { border-color: var(--accent); outline: none; }
.search-control input { font-size: 1rem; }
.filters-modal {
  width: min(980px, calc(100vw - 24px));
  padding: 0;
  border: 1px solid var(--border);
  background: var(--background);
  color: var(--foreground);
}
.filters-modal::backdrop { background: rgba(10, 10, 10, 0.72); }
.filters-dialog {
  padding: 32px;
  display: grid;
  gap: 28px;
}
.dialog-head {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 24px;
  align-items: start;
}
.dialog-head h3 { font-size: clamp(2rem, 4vw, 3.5rem); }
.filters-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.dialog-actions {
  display: flex;
  justify-content: flex-end;
  gap: 20px;
  flex-wrap: wrap;
}
.hidden { display: none !important; }

@media (max-width: 1100px) {
  .hero-grid,
  .summary-grid,
  .insights-grid,
  .items-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .hero-grid { grid-template-columns: 1fr; }
  .hero-title { max-width: 12ch; }
}

@media (max-width: 720px) {
  .decor { display: none; }
  .page-shell { padding: 0 20px 72px; }
  .topbar,
  .bordered-section { padding: 56px 0 18px; }
  .topbar { padding-top: 20px; }
  .topbar,
  .topbar-actions,
  .section-heading-split,
  .dialog-head,
  .dialog-actions,
  .hero-actions,
  .metric-list,
  .filters-grid,
  .items-grid,
  .summary-grid,
  .insights-grid {
    grid-template-columns: 1fr;
    display: grid;
  }
  .topbar-actions { gap: 18px; }
  .section-heading h2 { font-size: clamp(2.25rem, 11vw, 3.25rem); }
  .hero-title { font-size: clamp(3.5rem, 18vw, 5rem); }
  .item-top { grid-template-columns: 1fr; }
  .item-image { width: 100%; height: 180px; }
  .summary-card,
  .item-card,
  .insight-card,
  .framed-block,
  .filters-dialog { padding: 22px; }
  .secondary-button,
  .inspect-button { width: 100%; }
}


.topbar-login.hidden{display:none;}
.hero-actions-center{justify-content:center;}
.auth-block-centered{max-width:420px;margin:0 auto;}

.page-shell.inventory-ready .topbar{position:sticky;top:0;background:rgba(10,10,10,.92);backdrop-filter:blur(14px);z-index:5;padding-top:18px;}
.items-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;}
.item-card{padding:24px;display:grid;gap:18px;overflow:hidden;min-height:430px;}
.item-link{display:block;}
.item-top{display:grid;gap:18px;}
.item-image{width:100%;aspect-ratio:1/1;object-fit:contain;background:rgba(255,255,255,0.02);border:1px solid var(--border);padding:18px;}
.stickers-row,.charms-row{display:flex;gap:10px;flex-wrap:wrap;}
.sticker-chip,.charm-chip{position:relative;}
.chip-link{display:flex;align-items:center;justify-content:center;width:54px;height:54px;border:1px solid var(--border);background:rgba(255,255,255,0.02);transition:border-color 150ms var(--ease), transform 150ms var(--ease), filter 150ms var(--ease);}
.chip-link:hover{border-color:var(--accent);transform:translateY(-1px);}
.sticker-icon,.charm-icon{max-width:42px;max-height:42px;object-fit:contain;}
.item-card:hover .item-link,.item-card:hover .badge-row,.item-card:hover .metric-list,.item-card:hover .attachments-block,.item-card:hover .charms-block,.item-card:hover .meta-strip,.item-card:hover .footer-row{filter:blur(4px);opacity:.24;}
.hover-overlay{position:absolute;inset:0;display:grid;place-items:center;padding:24px;background:rgba(10,10,10,.78);opacity:0;pointer-events:none;transition:opacity 180ms var(--ease);}
.item-card:hover .hover-overlay{opacity:1;}
.hover-overlay-inner{width:100%;display:grid;gap:16px;}
.overlay-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.overlay-metric{border-top:1px solid var(--border);padding-top:10px;display:grid;gap:6px;}
.overlay-label{font-family:"JetBrains Mono", monospace;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-foreground);}
.overlay-value{font-family:"Inter Tight","Inter",sans-serif;font-size:1.35rem;line-height:1;letter-spacing:-.04em;}
.overlay-value.small{font-size:1rem;line-height:1.25;letter-spacing:-.01em;color:var(--foreground);}
@media (max-width: 1100px){.items-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width: 720px){.items-grid{grid-template-columns:1fr;}.topbar{align-items:stretch;}.topbar-actions{width:100%;}.compact-control{min-width:0;flex:1 1 140px;}.topbar-login{order:3;}}

.hero-grid{grid-template-columns:1fr;}
.hero-copy-block{display:grid;justify-items:center;text-align:center;}
.hero-title{max-width:12ch;}
.hero-lead{margin-left:auto;margin-right:auto;}
.hero-aside{justify-items:center;}


/* lockfix v2 */
.topbar{align-items:flex-start;}
.topbar-actions{display:grid;grid-template-columns:minmax(280px,360px) repeat(2,minmax(140px,160px)) auto auto;align-items:end;gap:16px;}
.quick-lookup-form{min-width:0;}
.quick-lookup-control{gap:8px;}
.quick-lookup-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;}
.compact-button{min-height:52px;padding:0 18px;}
.top-profile{display:grid;grid-template-columns:auto auto;gap:14px;align-items:center;justify-self:end;}
.top-profile-main{display:grid;grid-template-columns:48px 1fr;gap:12px;align-items:center;padding:10px 14px;border:1px solid var(--border);min-width:220px;transition:border-color 150ms var(--ease),background-color 150ms var(--ease);}
.top-profile-main:hover{border-color:#424242;background:rgba(255,255,255,.02);}
.top-profile-avatar{width:48px;height:48px;object-fit:cover;border:1px solid var(--border);}
.top-profile-copy{display:grid;gap:2px;}
.top-profile-hello{font-family:"JetBrains Mono", monospace;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-foreground);}
.top-profile-name{font-family:"Inter Tight","Inter",sans-serif;font-size:1.25rem;line-height:1;letter-spacing:-.04em;color:var(--foreground);}
.logout-button{padding-inline:10px;}
.hero-aside{display:grid;justify-items:center;margin-top:18px;}
.hero-copy-block{max-width:980px;margin:0 auto;}
.hero-actions-center{justify-content:center;}

.page-shell.inventory-ready .topbar{padding-top:18px;}
.greeting-splash{position:fixed;inset:0;z-index:12;display:grid;place-items:center;background:rgba(10,10,10,.98);opacity:0;pointer-events:none;transition:opacity 700ms var(--ease);}
.greeting-splash.is-visible{opacity:1;}
.greeting-splash.is-leaving{opacity:0;}
.greeting-splash-copy{display:grid;gap:16px;justify-items:center;text-align:center;padding:24px;}
.greeting-kicker{font-family:"JetBrains Mono", monospace;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted-foreground);}
#greetingName{font-family:"Inter Tight","Inter",sans-serif;font-size:clamp(3rem,9vw,7rem);line-height:1;letter-spacing:-.06em;color:var(--foreground);}
.items-grid{align-items:stretch;}
.item-card{min-height:470px;height:100%;grid-template-rows:auto auto auto auto 1fr auto;align-content:start;}
.item-top{grid-template-columns:1fr;gap:16px;}
.item-media{position:relative;display:block;border:1px solid var(--border);background:rgba(255,255,255,0.02);overflow:hidden;}
.item-image{display:block;width:100%;aspect-ratio:1/1;object-fit:contain;border:0;padding:18px;transition:filter 180ms var(--ease), transform 180ms var(--ease), opacity 180ms var(--ease);}
.item-media:hover .item-image{filter:blur(5px);opacity:.28;transform:scale(1.02);}
.item-head-copy{display:grid;gap:8px;min-height:104px;align-content:start;}
.item-name{font-size:clamp(1.2rem,1.35vw,1.8rem);line-height:.98;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.15em;}
.item-type{font-size:.92rem;line-height:1.35;min-height:2.7em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.badge-row{min-height:74px;align-content:start;}
.metric-list{gap:10px 14px;min-height:124px;align-content:start;}
.metric-label{font-size:.66rem;}
.metric-value{font-size:.92rem;line-height:1.25;word-break:break-word;}
.attachments-block,.charms-block{min-height:90px;align-content:start;}
.attachments-title{font-size:.68rem;}
.stickers-row,.charms-row{gap:8px;}
.sticker-chip,.charm-chip{width:48px;}
.chip-link{width:48px;height:48px;}
.sticker-icon,.charm-icon{max-width:36px;max-height:36px;}
.meta-strip{min-height:44px;align-content:start;}
.meta-chip{font-size:.66rem;padding:6px 8px;}
.footer-row{min-height:82px;align-content:start;}
.wear-line,.recommendation-box span{font-size:.88rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.recommendation-box strong{font-size:.95rem;}
.hover-overlay{position:absolute;inset:0;display:grid;place-items:center;padding:20px;background:rgba(10,10,10,.82);opacity:0;pointer-events:none;transition:opacity 180ms var(--ease);}
.item-media:hover .hover-overlay{opacity:1;}
.hover-overlay-inner{width:100%;display:grid;gap:14px;}
.overlay-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.overlay-label{font-size:.62rem;}
.overlay-value{font-size:1.05rem;}
.overlay-value.small{font-size:.82rem;}
@media (max-width: 1200px){.topbar-actions{grid-template-columns:minmax(220px,1fr) repeat(2,minmax(120px,150px)) auto;}.top-profile{grid-column:1 / -1;justify-self:start;}}
@media (max-width: 900px){.topbar-actions{grid-template-columns:1fr 1fr;}.quick-lookup-form,.top-profile{grid-column:1 / -1;}.steamLoginBtn{justify-self:start;}}
@media (max-width: 720px){.topbar-actions{grid-template-columns:1fr;}.quick-lookup-row{grid-template-columns:1fr;}.top-profile{grid-template-columns:1fr;justify-self:stretch;}.top-profile-main{min-width:0;}.logout-button{justify-self:start;padding-inline:0;}.item-card{min-height:0;}.item-head-copy,.badge-row,.metric-list,.attachments-block,.charms-block,.meta-strip,.footer-row{min-height:0;}}


/* hotfix: auth + hero + hover */
.aside-label-xl{font-family:"Inter Tight","Inter",sans-serif;font-size:clamp(2.75rem,8vw,6rem);line-height:.92;letter-spacing:-.06em;color:var(--foreground);margin:0 0 24px;text-align:left;}
.auth-block-centered{display:grid;gap:18px;}
.auth-form-wide{width:100%;display:grid;gap:18px;}
.auth-form-wide input{min-height:68px;font-size:clamp(1.15rem,2vw,1.45rem);padding-inline:28px;}
.auth-form-wide .secondary-button{min-height:56px;justify-self:start;}
.hero-aside{width:100%;}
.auth-block.framed-block{width:100%;}
@media (min-width: 901px){
  .hero-grid{grid-template-columns:1fr;}
  .hero-aside{max-width:none;}
  #loggedOutBox{max-width:none;}
  .auth-form-wide{grid-template-columns:minmax(0,1fr) auto;align-items:end;}
  .auth-form-wide input{width:calc(100vw - 200px);max-width:calc(100vw - 200px);}
}
@media (max-width: 900px){
  .auth-form-wide input{width:100%;max-width:100%;}
}
.logout-button{display:inline-flex !important;visibility:visible !important;opacity:1 !important;padding-inline:24px;min-height:44px;}
.top-profile{align-items:center;}
.item-media{position:relative;overflow:hidden;isolation:isolate;}
.item-media .hover-overlay{opacity:0 !important;pointer-events:none !important;}
.item-media:hover .hover-overlay{opacity:1 !important;}
.item-card:hover .hover-overlay{opacity:0 !important;}
.item-card:hover .item-image{filter:none !important;opacity:1 !important;transform:none !important;}
.item-media:hover .item-image{filter:blur(5px) !important;opacity:.22 !important;transform:scale(1.02) !important;}
.stickers-row,.charms-row,.attachments-block,.charms-block,.chip-link,.sticker-chip,.charm-chip{position:relative;z-index:3;}

/* package patch: stable hover + universal lookup + sticky controls + drawer */
.quick-lookup-control input,
.auth-form-wide input { text-transform: none; }
.control input::placeholder { color: var(--muted-foreground); }
.sticky-controls {
  position: sticky;
  top: 88px;
  z-index: 4;
  background: rgba(10,10,10,0.92);
  backdrop-filter: blur(16px);
  padding-bottom: 20px;
  margin-bottom: 24px;
}
.controls-actions {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.grid-mode-switch {
  display: inline-flex;
  border: 1px solid var(--border);
}
.mode-button {
  min-height: 44px;
  padding: 0 16px;
}
.mode-button.is-active {
  color: var(--foreground);
}
.mode-button.is-active::after {
  transform: scaleX(1);
}
.preset-filters {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 18px;
}
.preset-button { padding-inline: 0; }
.items-grid.dense-mode { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.items-grid.dense-mode .item-card { min-height: 400px; }
.items-grid.dense-mode .item-name { font-size: 1.1rem; }
.items-grid.dense-mode .metric-value,
.items-grid.dense-mode .wear-line,
.items-grid.dense-mode .recommendation-box span { font-size: 0.82rem; }
.item-name.is-clickable { cursor: pointer; }
.item-name.is-clickable:hover { color: var(--accent); }
.drawer-dialog {
  width: min(1180px, calc(100vw - 48px));
  border: 1px solid var(--border);
  background: rgba(10,10,10,0.98);
  color: var(--foreground);
  padding: 0;
}
.drawer-dialog::backdrop { background: rgba(0,0,0,0.75); backdrop-filter: blur(6px); }
.drawer-shell { padding: 28px; }
.drawer-close { margin-left: auto; display: inline-flex; }
.drawer-grid {
  display: grid;
  grid-template-columns: minmax(300px, 440px) minmax(0, 1fr);
  gap: 28px;
  align-items: start;
}
.drawer-media { display: block; border: 1px solid var(--border); background: rgba(255,255,255,0.02); }
.drawer-image { width: 100%; aspect-ratio: 1 / 1; object-fit: contain; padding: 28px; }
.drawer-title { font-family: "Inter Tight", sans-serif; font-size: clamp(2rem, 4vw, 4rem); line-height: 0.95; letter-spacing: -0.06em; margin: 0 0 12px; }
.drawer-subtitle { color: var(--muted-foreground); margin: 0 0 18px; }
.drawer-copy { display: grid; gap: 18px; }
.drawer-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 18px; }
.drawer-metric { border-top: 1px solid var(--border); padding-top: 10px; }
.drawer-actions { display: flex; justify-content: flex-start; }
.item-card:hover .item-image,
.item-card:hover .hover-overlay,
.item-card:hover .item-link,
.item-card:hover .badge-row,
.item-card:hover .metric-list,
.item-card:hover .attachments-block,
.item-card:hover .charms-block,
.item-card:hover .meta-strip,
.item-card:hover .footer-row { filter: none !important; opacity: 1 !important; transform: none !important; }
.item-media:hover .item-image { filter: blur(5px) !important; opacity: .2 !important; transform: scale(1.02) !important; }
.item-media:hover .hover-overlay { opacity: 1 !important; }
.hover-overlay { pointer-events: none !important; }
.stickers-row,
.charms-row,
.attachments-block,
.charms-block,
.chip-link,
.sticker-chip,
.charm-chip { position: relative; z-index: 6; }
.quick-lookup-form { min-width: min(520px, 42vw); }
.quick-lookup-control input { min-height: 52px; }
@media (max-width: 1200px) {
  .items-grid.dense-mode { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 980px) {
  .sticky-controls { top: 72px; }
  .drawer-grid { grid-template-columns: 1fr; }
  .quick-lookup-form { min-width: 0; }
}
@media (max-width: 720px) {
  .sticky-controls { position: static; backdrop-filter: none; background: transparent; padding-bottom: 0; }
  .items-grid.dense-mode { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .drawer-dialog { width: calc(100vw - 16px); }
  .drawer-shell { padding: 18px; }
}


/* ui patch: remove top lookup, unstick controls, widen central lookup, keep sticker hover accessible */
.topbar-actions{align-items:flex-start;}
.quick-lookup-form,.quick-lookup-control{display:none !important;}
.sticky-controls{position:static !important;top:auto !important;z-index:auto !important;background:transparent !important;backdrop-filter:none !important;padding-bottom:0 !important;margin-bottom:24px !important;}
.hero-grid{grid-template-columns:minmax(0,1fr) !important;}
.hero-aside{grid-column:1 / -1;max-width:var(--container);width:100%;}
.auth-block-centered{max-width:none !important;width:100% !important;}
.auth-form-wide{width:100% !important;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;}
.auth-form-wide input{width:100% !important;max-width:none !important;min-height:68px;}
.auth-form-wide .secondary-button{justify-self:stretch;min-width:220px;}
@media (min-width: 721px){
  .auth-form-wide{padding-inline:100px;}
}
@media (max-width: 720px){
  .auth-form-wide{grid-template-columns:1fr;}
  .auth-form-wide .secondary-button{min-width:0;}
}
.item-media{z-index:1;}
.item-media .hover-overlay{pointer-events:none !important;}
.attachments-block,.charms-block,.stickers-row,.charms-row,.sticker-chip,.charm-chip,.chip-link{position:relative;z-index:8 !important;}
.item-card{overflow:visible;}


/* login button visibility fix */
.topbar-actions{display:flex !important;align-items:flex-start;justify-content:flex-end;gap:18px;flex-wrap:wrap;}
.topbar-controls{display:flex;gap:14px;flex-wrap:wrap;align-items:flex-end;justify-content:flex-end;}
.topbar-account{display:flex;align-items:flex-start;justify-content:flex-end;min-width:fit-content;}
.topbar-login{display:inline-flex;align-items:center;justify-content:center;min-height:48px;visibility:visible;opacity:1;}
.topbar-login.hidden{display:none !important;}
@media (max-width: 900px){.topbar-actions{width:100%;justify-content:space-between;}.topbar-controls{flex:1 1 auto;justify-content:flex-start;}.topbar-account{flex:0 0 auto;}}
@media (max-width: 720px){.topbar{align-items:stretch;}.topbar-actions{flex-direction:column;align-items:stretch;}.topbar-controls{width:100%;justify-content:flex-start;}.topbar-account{justify-content:flex-start;}}


.chip-wear{display:none !important;}


/* April 2026 comfort pass */
.topbar{position:sticky;top:0;z-index:30;background:rgba(10,10,10,.92);backdrop-filter:blur(14px);padding-block:18px;border-bottom:1px solid var(--border);}
.sticky-controls{position:static !important;top:auto !important;z-index:auto !important;background:transparent !important;backdrop-filter:none !important;padding-bottom:0 !important;margin-bottom:24px !important;}
.profile-summary-section{padding-top:56px;}
.profile-summary-card{display:grid;gap:28px;padding:28px;}
.profile-summary-main{display:grid;grid-template-columns:88px minmax(0,1fr);gap:18px;align-items:center;}
.profile-summary-avatar{width:88px;height:88px;object-fit:cover;border:1px solid var(--border);}
.profile-summary-name{font-family:"Inter Tight","Inter",sans-serif;font-size:clamp(2rem,4vw,3.5rem);line-height:1;letter-spacing:-.04em;}
.profile-summary-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;}
.profile-stat{border-top:1px solid var(--border);padding-top:14px;display:grid;gap:6px;min-height:72px;}
@media (max-width:900px){.profile-summary-stats{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:640px){.profile-summary-main{grid-template-columns:1fr;}.profile-summary-stats{grid-template-columns:1fr;}}


.profile-summary-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 28px;
}
.profile-stat-column {
  display: grid;
  gap: 16px;
}
.profile-stat {
  border-top: 1px solid var(--border);
  padding-top: 16px;
  display: grid;
  gap: 8px;
}
.profile-stat span {
  font-family: "JetBrains Mono", monospace;
  font-size: 0.75rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--muted-foreground);
}
.profile-stat strong {
  font-family: "Inter Tight", "Inter", sans-serif;
  font-size: clamp(1.1rem, 2vw, 1.6rem);
  line-height: 1.05;
  letter-spacing: -0.04em;
}
.inventory-hidden-callout {
  grid-column: 1 / -1;
  min-height: 240px;
  border: 1px solid var(--border);
  display: grid;
  place-items: center;
  font-family: "Inter Tight", "Inter", sans-serif;
  font-size: clamp(2rem, 5vw, 4rem);
  letter-spacing: -0.05em;
  text-transform: uppercase;
}


.badge.collector{border-color:rgba(255,61,0,.45);color:var(--accent);}
.inventory-partial-callout{grid-column:1 / -1;min-height:120px;border:1px solid var(--border);display:grid;place-items:center;font-family:"JetBrains Mono",monospace;font-size:.95rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-foreground);margin-bottom:12px;}
.profile-summary-stats{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
@media (max-width:900px){.profile-summary-stats{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}}
@media (max-width:640px){.profile-summary-stats{grid-template-columns:1fr !important;}}
