/* Sagroth2 internal-page identity V2.
   Presentation only: routes, form names and backend requests are untouched. */
:root {
  --s2-iron: #111416;
  --s2-iron-soft: #181b1d;
  --s2-wine: #76242c;
  --s2-wine-bright: #a63a43;
  --s2-ivory: #eee7d8;
  --s2-silver: #b9b7b1;
  --s2-aged-gold: #aa8950;
  --s2-line: rgba(180, 151, 99, .24);
}

/* Keep the approved home composition; only finish the header language. */
.site-shell.savas-v2-a176 > .topbar {
  background: linear-gradient(180deg, rgba(38, 32, 29, .98), rgba(21, 22, 23, .98));
  border-bottom-color: rgba(163, 123, 83, .27);
  box-shadow: 0 3px 18px rgba(0, 0, 0, .2);
}
.site-shell.savas-v2-a176 .main-nav a,
.site-shell.savas-v2-a176 .main-nav button { color: #bebcbf; }
.site-shell.savas-v2-a176 .main-nav a:hover,
.site-shell.savas-v2-a176 .main-nav button:hover,
.site-shell.savas-v2-a176 .main-nav .active { color: #fff; }
.site-shell.savas-v2-a176 .main-nav .active::after {
  background: #b34751;
  box-shadow: 0 -3px 12px rgba(156, 38, 59, .27);
}
.site-shell.savas-v2-a176 .compact-button {
  border-color: rgba(119, 119, 124, .44);
  border-radius: 3px;
  background: linear-gradient(#303034, #212124);
  color: #e5e3e5;
  box-shadow: inset 0 1px rgba(255,255,255,.04);
}
.site-shell.savas-v2-a176 .compact-button:hover { border-color: #b6858a; background: #363033; }
.site-shell.savas-v2-a176 .account-tools > .compact-button:first-child { border-color: rgba(181, 70, 82, .55); background: linear-gradient(#79303a, #5a222a); }
.site-shell.savas-v2-a176 .compact-button i,
.site-shell.savas-v2-a176 .server-icon { color: #c4c2c5; }

/* The internal route becomes one calm, branded stage instead of a blue panel. */
.inner-page-shell {
  background:
    radial-gradient(ellipse at 82% 12%, rgba(118, 36, 44, .12), transparent 38%),
    linear-gradient(115deg, #0b0d0e 0%, #121517 57%, #0d1011 100%);
}
.inner-page-shell::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .09;
  background: url("../img/sagroth-journey-v1.png") 74% 17% / cover no-repeat;
  filter: grayscale(.7) saturate(.55);
  mask-image: linear-gradient(90deg, transparent 12%, #000 58%, #000 100%);
}
.inner-page-hero,
.inner-page-body { position: relative; z-index: 1; }
.inner-page-hero {
  min-height: 210px;
  border-bottom: 1px solid var(--s2-line);
  background: linear-gradient(90deg, rgba(8,10,11,.96), rgba(17,18,19,.82) 60%, rgba(39,18,20,.5));
}
.inner-page-hero::after {
  content: "";
  position: absolute;
  right: clamp(28px, 7vw, 110px);
  top: 50%;
  width: 106px;
  height: 124px;
  transform: translateY(-50%);
  background: url("../img/s2-crest.svg") center / contain no-repeat;
  opacity: .12;
  filter: grayscale(.35);
}
.inner-page-hero-copy { max-width: 760px; }
.inner-brand-signature {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 15px;
  color: #b79a68;
  font: 700 10px/1.2 Montserrat, Arial, sans-serif;
  letter-spacing: .22em;
}
.inner-brand-signature::before { content: ""; width: 28px; height: 1px; background: #8d333b; }
#inner-page-kicker { color: #a9a39a; }
#inner-page-title { color: var(--s2-ivory); text-shadow: 0 2px 18px rgba(0,0,0,.55); }
#inner-page-description { color: #aaa9a5; }
.inner-page-body { padding-top: clamp(26px, 4vw, 54px); }

/* Shared embedded surfaces: charcoal iron, ivory type, restrained wine accents. */
html:has(body:not(.site-shell)),
body:not(:has(.site-shell)) { scrollbar-color: #704047 #101214 !important; }
body:not(:has(.site-shell)) {
  --journey-surface: #171a1c;
  --journey-deep: #0e1112;
  --journey-cream: var(--s2-ivory);
  --journey-muted: #aaa9a5;
  --journey-gold: var(--s2-aged-gold);
  --journey-line: var(--s2-line);
  --journey-red: var(--s2-wine);
}
.register-card, .login-card, .reset-card, .status-shell,
.download-card, .ranking-card,
.journey-account-page .panel-card,
.journey-account-page .action-card {
  border: 1px solid var(--s2-line) !important;
  border-top-color: rgba(180,151,99,.46) !important;
  border-radius: 2px !important;
  background:
    linear-gradient(110deg, rgba(255,255,255,.018), transparent 30%),
    linear-gradient(145deg, #1a1d1f, #121516 70%, #171214) !important;
  box-shadow: inset 3px 0 #76242c, 0 22px 60px rgba(0,0,0,.24) !important;
}
.register-head, .login-head, .reset-head, .download-head, .ranking-head,
.journey-account-page .panel-head, .journey-account-page .action-head {
  border-bottom-color: var(--s2-line) !important;
}
.register-icon, .login-icon, .reset-icon, .download-icon, .ranking-icon,
.journey-account-page .panel-icon, .journey-account-page .action-icon {
  border-color: rgba(143, 55, 64, .55) !important;
  border-radius: 2px !important;
  background: rgba(118,36,44,.13) !important;
  color: #c4aa78 !important;
  box-shadow: inset 2px 0 #8f3740 !important;
}
.register-heading, .login-heading, .reset-heading, .download-heading, .ranking-heading,
.journey-account-page .panel-heading, .journey-account-page .action-title { color: var(--s2-ivory) !important; }
.field input, .field select, .reference-trigger,
.journey-account-page .field input, .journey-account-page .field select {
  border-color: rgba(189,184,174,.2) !important;
  border-radius: 2px !important;
  background: #0f1214 !important;
  color: #ece7dc !important;
  box-shadow: inset 0 1px rgba(255,255,255,.015);
}
.field input::placeholder { color: #8f8e8a !important; }
.field input:focus, .field select:focus, .reference-trigger:focus-visible,
.journey-account-page .field input:focus, .journey-account-page .field select:focus {
  border-color: #9e7c48 !important;
  background: #151719 !important;
  box-shadow: 0 0 0 3px rgba(170,137,80,.09) !important;
}
.submit-button, .download-button,
.journey-account-page .submit-button, .journey-support-page .support-button {
  border-color: rgba(184,82,91,.58) !important;
  border-radius: 2px !important;
  background: linear-gradient(110deg, #76242c, #922f39) !important;
  color: #f5eadc !important;
  box-shadow: inset 0 1px rgba(255,255,255,.06) !important;
}
.submit-button:hover, .download-button:hover,
.journey-account-page .submit-button:hover, .journey-support-page .support-button:hover {
  background: linear-gradient(110deg, #872b34, #a23843) !important;
}
.download-row, .ranking-tabs, .ranking-row, .download-link,
.journey-account-page .panel-action {
  border-color: rgba(189,184,174,.14) !important;
  background: #131719 !important;
}
.download-row:hover, .ranking-row:hover, .download-link:hover,
.journey-account-page .panel-action:hover { border-color: rgba(170,137,80,.5) !important; background: #1b1d1e !important; }
.requirements th, .ranking-table-wrap th, .detail-table th { background: #121618 !important; color: #c8aa72 !important; }
.requirements tbody tr:nth-child(even),
.ranking-table-wrap tbody tr:nth-child(even),
.detail-table tbody tr:nth-child(even) { background: #1b1d1e !important; }
.requirements td, .ranking-table-wrap td, .detail-table td { border-bottom-color: rgba(180,151,99,.14) !important; }
.ranking-tabs button.active, .pagination strong,
.journey-account-page .pagination strong { background: #76242c !important; color: #f3e8db !important; }

@media (max-width: 760px) {
  .inner-page-hero { min-height: 174px; }
  .inner-page-hero::after { right: 12px; width: 72px; height: 86px; opacity: .08; }
  .inner-brand-signature { font-size: 8px; letter-spacing: .16em; }
  .inner-page-shell::before { background-position: 64% top; opacity: .06; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition: none !important; }
}

/* V3 — compact internal masthead and in-field labels. */
.inner-page-shell { padding-top: clamp(84px, 8vh, 112px); }
.inner-page-hero {
  min-height: 126px;
  display: flex;
  align-items: center;
  margin-bottom: 0;
  padding-block: 22px;
  background: linear-gradient(90deg, rgba(8,10,11,.97), rgba(19,19,20,.88) 68%, rgba(54,23,26,.46));
}
.inner-page-hero-copy { display: grid; grid-template-columns: auto minmax(0,1fr); column-gap: 18px; align-items: end; }
.inner-brand-signature { grid-column: 1 / -1; margin-bottom: 10px; }
#inner-page-kicker { grid-column: 1; align-self: center; margin: 0; padding-right: 18px; border-right: 1px solid rgba(180,151,99,.24); }
#inner-page-title { grid-column: 2; margin: 0; font-size: clamp(26px,3vw,38px); line-height: 1; }
#inner-page-description { grid-column: 1 / -1; margin: 11px 0 0; font-size: 13px; }
.inner-page-hero::after { width: 70px; height: 82px; opacity: .09; }
.inner-page-body { padding-top: 22px; }

body:not(:has(.site-shell)) .field-caption { display: none !important; }
body:not(:has(.site-shell)) .register-head,
body:not(:has(.site-shell)) .login-head,
body:not(:has(.site-shell)) .reset-head,
body:not(:has(.site-shell)) .download-head,
body:not(:has(.site-shell)) .ranking-head { display: none !important; }
body:not(:has(.site-shell)) .register-card,
body:not(:has(.site-shell)) .login-card,
body:not(:has(.site-shell)) .reset-card,
body:not(:has(.site-shell)) .download-card,
body:not(:has(.site-shell)) .ranking-card {
  padding: clamp(24px, 3vw, 34px) !important;
}
body:not(:has(.site-shell)) .register-grid { gap: 12px; }
body:not(:has(.site-shell)) .login-fields,
body:not(:has(.site-shell)) .reset-fields { gap: 12px; }
body:not(:has(.site-shell)) .field input,
body:not(:has(.site-shell)) .field select,
body:not(:has(.site-shell)) .reference-trigger { height: 58px; }
body:not(:has(.site-shell)) .field input::placeholder {
  color: #aaa7a1 !important;
  opacity: 1;
  font-size: 14px;
}
body:not(:has(.site-shell)) .field-symbol { bottom: 19px; }
body:not(:has(.site-shell)) .secret-action,
body:not(:has(.site-shell)) .toggle-password { height: 58px; }
body:not(:has(.site-shell)) .delete-code-caption {
  position: absolute;
  z-index: 2;
  left: 42px;
  top: 8px;
  margin: 0;
  color: #817f7a;
  font-size: 9px;
  line-height: 1;
  letter-spacing: .06em;
  pointer-events: none;
}
body:not(:has(.site-shell)) .delete-code-field input { padding-top: 13px; }

@media (max-width: 760px) {
  .inner-page-shell { padding-top: 122px; }
  .inner-page-hero { min-height: 142px; padding: 18px 50px 18px 0; }
  .inner-page-hero-copy { display: block; }
  .inner-brand-signature { margin-bottom: 9px; }
  #inner-page-kicker { display: none; }
  #inner-page-title { font-size: 27px; }
  #inner-page-description { margin-top: 10px; line-height: 1.45; }
  .inner-page-body { padding-top: 14px; }
  body:not(:has(.site-shell)) .register-card,
  body:not(:has(.site-shell)) .login-card,
  body:not(:has(.site-shell)) .reset-card,
  body:not(:has(.site-shell)) .download-card,
  body:not(:has(.site-shell)) .ranking-card { padding: 18px 15px !important; }
  body:not(:has(.site-shell)) .field input::placeholder { font-size: 12.5px; letter-spacing: -.01em; }
  body:not(:has(.site-shell)) .field.has-generator input { padding-right: 94px; }
}
