/* Indianópolis "Aurora" 2026 — versão clara, com cartões flutuantes e acentos do logo (azul profundo, teal e sol).
   Reescrito 100% para contraste alto e visual leve.
*/
:root {
  --ink: #0c3c73;
  --sea: #1d6db2;
  --teal: #33b8c8;
  --sun: #f6b52d;
  --sun-deep: #f29a1c;
  --leaf: #8ebf3c;
  --sand: #f8f5ef;
  --card: #ffffff;
  --muted: #5c6c82;
  --text: #11243d;
  --border: #dde7f4;
  --shadow: 0 16px 40px rgba(12, 60, 115, 0.16);
  --shadow-strong: 0 24px 64px rgba(12, 60, 115, 0.22);
  --radius: 16px;
}

html { scroll-behavior: smooth; }
body {
  font-family: 'Raleway', 'Open Sans', 'Segoe UI', sans-serif;
  background: radial-gradient(circle at 12% 14%, rgba(246,181,45,0.15), transparent 35%),
              radial-gradient(circle at 82% 10%, rgba(51,184,200,0.14), transparent 32%),
              linear-gradient(180deg, #f9fbff 0%, #eef3fb 60%, #f8f5ef 100%);
  color: var(--text);
  line-height: 1.65;
  font-smooth: always;
}

a { color: var(--sea); transition: color .2s ease, text-shadow .2s ease; }
a:hover { color: var(--ink); text-shadow: 0 1px 0 rgba(12,60,115,.25); }

/* NAVBAR */
.navbar-main {
  background: rgba(255,255,255,0.92);
  border: 1px solid rgba(221,231,244,0.9);
  border-radius: 14px;
  margin: 12px 0 6px; /* alinha com container padrão */
  box-shadow: var(--shadow);
  padding: 6px 14px;
}
.navbar-main .navbar-brand img { max-height: 44px; filter: drop-shadow(0 4px 8px rgba(0,0,0,0.18)); }
.navbar-main .navbar-nav > li > a {
  color: var(--text);
  font-weight: 700;
  letter-spacing: 0.01em;
  padding: 14px 14px;
  font-size: 15px;
  text-transform: uppercase;
  border-radius: 12px;
}
.navbar-main .navbar-nav > li > a:hover,
.navbar-main .navbar-nav > li.active > a {
  background: linear-gradient(135deg, rgba(51,184,200,0.16), rgba(12,60,115,0.12));
  color: var(--ink);
}
.layout-shell { padding-top: 6px; }
.masthead { padding-bottom: 6px; }
.utility-actions { display: inline-flex; gap: 10px; align-items: center; flex-wrap: wrap; justify-content: flex-end; }
.pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 14px;
  border-radius: 12px;
  border: 1px solid var(--border);
  background: #fff;
  color: var(--text);
  font-weight: 700;
  text-decoration: none;
  box-shadow: var(--shadow);
}
.pill:hover { color: var(--ink); border-color: var(--sea); }
.pill.ghost { background: transparent; box-shadow: none; }
.pill.primary { background: linear-gradient(135deg, var(--sun), var(--sun-deep)); color: #1f1400; border-color: transparent; }
.pill.danger { background: #ffe9ec; color: #8a1f2f; border-color: #f2a5b0; box-shadow: var(--shadow); }
.pill.warning { background: #fff5e5; color: #7d4b00; border-color: #ffd38a; }
.pill-stack { display: flex; gap: 10px; margin-top: 14px; flex-wrap: wrap; }
.brand-mark img { max-height: 48px; }
.navbar-toggle { border-color: rgba(12,60,115,.25); }

/* HERO / HEADER STRIP */
.hero-aurora, .home .hero, .jumbotron.home-banner {
  background: linear-gradient(125deg, #1d6db2, #33b8c8);
  color: #fff;
  border-radius: 20px;
  box-shadow: var(--shadow-strong);
  padding: 48px 48px 56px;
  overflow: hidden;
  position: relative;
}
.hero-aurora:after, .home .hero:after, .jumbotron.home-banner:after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 20% 24%, rgba(246,181,45,0.35), transparent 34%),
              radial-gradient(circle at 78% 22%, rgba(255,255,255,0.18), transparent 32%);
  pointer-events: none;
}
.hero-aurora h1, .home .hero h1, .jumbotron.home-banner h1 { letter-spacing: .02em; font-weight: 800; color: #fff; }
.hero-aurora p.lead { color: #f5fbff; font-size: 1.08rem; }
.hero-card {
  background: rgba(255,255,255,0.14);
  border: 1px solid rgba(255,255,255,0.3);
  border-radius: 18px;
  padding: 20px;
  box-shadow: 0 18px 40px rgba(0,0,0,0.12);
  backdrop-filter: blur(4px);
}
.hero-links { list-style: none; padding: 0; margin: 0; }
.hero-links li { padding: 10px 0; }
.hero-links a { color: #fff; font-weight: 700; display: inline-flex; gap: 10px; align-items: center; }
.hero-links a:hover { color: #ffe08a; }
.hero-search { margin-top: 16px; }
.eyebrow { text-transform: uppercase; letter-spacing: .12em; font-weight: 800; color: rgba(255,255,255,0.8); margin-bottom: 6px; }

/* BUTTONS */
.btn, button, input[type=submit] { border-radius: 12px; font-weight: 700; letter-spacing: .01em; }
.btn-primary, button.btn-primary, input[type=submit].btn-primary {
  background: linear-gradient(135deg, var(--sun), var(--sun-deep));
  border: none;
  color: #1a1a1a;
  box-shadow: 0 12px 24px rgba(242,154,28,.24);
}
.btn-primary:hover, .btn-primary:focus { background: linear-gradient(135deg, #ffba4f, var(--sun)); color: #1a1a1a; }

.btn-default { border-color: var(--sea); color: var(--sea); background: transparent; }
.btn-default:hover { background: var(--sea); color: #fff; }

.btn-accent { background: linear-gradient(135deg, var(--ink), var(--sea)); border: none; color: #fff; box-shadow: var(--shadow); }
.btn-accent:hover { background: linear-gradient(135deg, var(--ink), #0d2f55); }

/* CARDS / PANELS */
.panel, .well, .pricing-table, .store .panel-addon, .order-summary {
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: var(--card);
  box-shadow: var(--shadow);
  color: var(--text);
  transition: transform .18s ease, box-shadow .22s ease;
}
.panel:hover, .pricing-table:hover, .store .panel-addon:hover { transform: translateY(-2px); box-shadow: 0 20px 48px rgba(12,60,115,0.16); }
.panel-heading {
  background: linear-gradient(135deg, rgba(12,60,115,0.92), rgba(29,109,178,0.92));
  color: #fff;
  border-radius: var(--radius) var(--radius) 0 0;
  border: none;
  font-weight: 700;
}
.panel-body { background: #fff; color: var(--text); }
.client-home-panels .panel-heading { background: none; color: var(--text); padding-bottom: 6px; }
.client-home-panels .panel-body { border-top: 3px solid var(--sun); }
.sidebar .panel, .panel-sidebar { box-shadow: 0 12px 30px rgba(12,60,115,0.12); border-color: #d5e4f5; color: var(--text); }
.sidebar .panel-heading, .panel-sidebar .panel-heading { color: #fff; }
.sidebar a, .panel-sidebar a { color: var(--sea); }
.sidebar a:hover { color: var(--ink); }
.panel-sidebar .panel-heading { background: linear-gradient(135deg, var(--ink), var(--sea)); }
.panel-sidebar .panel-title { font-weight: 800; text-transform: uppercase; letter-spacing: .03em; }
.sidebar .panel-heading,
.panel-sidebar .panel-heading,
.panel-default > .panel-heading {
  background: linear-gradient(135deg, var(--ink), var(--sea)) !important;
  color: #fff !important;
}
.sidebar .panel-heading *,
.panel-sidebar .panel-heading * {
  color: #fff !important;
}
.sidebar .panel-heading .panel-minimise,
.panel-sidebar .panel-heading .panel-minimise {
  color: #fff !important;
}
.panel-sidebar .list-group-item {
  background: #fff !important;
  color: var(--text) !important;
  border-color: var(--border);
}
.panel-sidebar .list-group-item.active,
.panel-sidebar .list-group-item:focus,
.panel-sidebar .list-group-item:hover {
  background: rgba(29,109,178,0.08) !important;
  color: var(--ink) !important;
}
.panel-sidebar .list-group-item-action {
  background: #fff !important;
  color: var(--text) !important;
}

/* TABLES */
.table { color: var(--text); background: #fff; border-radius: 12px; overflow: hidden; }
.table > thead > tr > th { background: var(--ink); color: #fff; border: none; text-transform: uppercase; letter-spacing: .04em; }
.table-striped > tbody > tr:nth-of-type(odd) { background: #f3f7fc; }
.table-hover > tbody > tr:hover { background: #e9f3ff; }

/* FORMS */
.form-control {
  border-radius: 12px;
  border: 1px solid var(--border);
  background: #fff;
  color: var(--text);
  padding: 12px 14px;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.form-control:focus {
  border-color: var(--sea);
  box-shadow: 0 0 0 3px rgba(29,109,178,0.18);
}
.input-group-addon { background: #eef3fb; color: var(--ink); border-color: var(--border); border-radius: 10px; }
.checkbox label, .radio label { color: var(--muted); }

/* ALERTS */
.alert { border-radius: 12px; }
.alert-info { background: #e9f6ff; color: #0f3a5f; border-color: #b6ddff; }
.alert-success { background: #f2fbeb; color: #315f12; border-color: #c6e7a0; }
.alert-warning { background: #fff5e5; color: #7d4b00; border-color: #ffd38a; }
.alert-danger { background: #ffe9ec; color: #8a1f2f; border-color: #f2a5b0; }

/* BADGES / LABELS */
.label, .badge { border-radius: 8px; font-weight: 700; letter-spacing: .02em; }
.label-primary, .badge-primary { background: var(--sea); color: #fff; }
.label-success, .badge-success { background: var(--leaf); color: #0f2300; }
.label-warning, .badge-warning { background: var(--sun); color: #1f1400; }
.status-pending { background: var(--sun); color: #1f1400; }
.status-active { background: var(--leaf); color: #0f2300; }
.status-suspended { background: var(--ink); color: #fff; }
.status-cancelled { background: #9aa6b8; color: #fff; }

/* BREADCRUMBS */
.breadcrumb { background: transparent; border-radius: 0; padding-left: 0; font-size: .95rem; color: var(--muted); }
.breadcrumb > li + li:before { color: var(--muted); }

/* PROGRESS */
.progress { border-radius: 12px; overflow: hidden; box-shadow: inset 0 1px 2px rgba(0,0,0,0.06); background: #eef3fb; }
.progress-bar-primary { background: var(--sea); }

/* FOOTER */
.footer-aurora {
  background: linear-gradient(180deg, #f4f8fd 0%, #eef3fb 60%, #f8f5ef 100%);
  color: var(--text);
  padding: 48px 0;
  margin-top: 30px;
  border-top: 1px solid var(--border);
}
.footer-aurora a { color: var(--sea); }
.footer-aurora a:hover { color: var(--ink); }
.footer-cta-block {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 18px 16px;
  box-shadow: var(--shadow);
  margin-bottom: 24px;
}
.footer-grid h5 { color: var(--text); font-weight: 800; }
.footer-grid ul li { margin: 6px 0; }
.footer-logo { max-height: 48px; margin-bottom: 8px; }
.footer-meta { border-top: 1px solid var(--border); margin-top: 18px; padding-top: 12px; color: var(--muted); }
.footer .back-to-top { color: var(--sea); }

/* LOGIN / REGISTER */
#login .panel, #registration .panel { border: none; box-shadow: var(--shadow); border-radius: 18px; backdrop-filter: blur(6px); }
#login .panel-heading, #registration .panel-heading { background: linear-gradient(135deg, var(--ink), var(--sea)); }

/* TICKETS */
.ticket-replies .media-body { background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 14px; color: var(--text); }
.ticket-replies .admin-reply .media-body { background: #f3f7fc; }
.badge-priority { background: var(--sun); color: #1f1400; }

/* INVOICE */
.invoice-container .invoice-title h2 { color: var(--text); }
.invoice-container .panel-heading { background: linear-gradient(135deg, var(--ink), var(--sea)); }
.invoice-container .table > thead > tr > th { background: #0f345a; color: #fff; }

/* HERO INPUTS */
.hero input.form-control { background: rgba(255,255,255,0.95); color: var(--text); border-color: transparent; }
.hero .btn-primary { box-shadow: 0 12px 26px rgba(242,154,28,.32); }

/* PAGE TITLES */
.header-lined { border-bottom: 3px solid var(--sun); }
.page-title { position: relative; color: var(--text); }
.page-title:after { content: ""; position: absolute; left: 0; bottom: -8px; width: 74px; height: 4px; background: linear-gradient(90deg, var(--sun-deep), var(--sun)); border-radius: 4px; }

/* STORE / ORDERFORM STANDARD CART */
section#main-body { background: transparent; padding-top: 12px; }
#order-standard_cart .domain-checker-bg,
#order-standard_cart .view-cart .domain-checker-bg {
  background: linear-gradient(135deg, #1d6db2, #33b8c8);
  color: #fff;
}
#order-standard_cart.cart-aurora { margin-top: 6px; }
.cart-hero-bar {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 18px 18px 20px;
  box-shadow: var(--shadow);
  margin-bottom: 18px;
}
.cart-hero-bar h1 { margin: 4px 0 6px; }
.cart-hero-actions { display: flex; justify-content: flex-end; gap: 10px; flex-wrap: wrap; }
.cart-grid { margin-left: 0; margin-right: 0; }
.cart-main { width: 100%; }
.cart-main-card { border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow); }
.aurora-header { font-weight: 800; text-transform: uppercase; letter-spacing: .05em; margin-bottom: 12px; }
.cart-grid .item { background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 12px; margin-bottom: 10px; box-shadow: var(--shadow); }
.cart-grid .item-title { font-weight: 700; color: var(--text); display: block; }
.cart-grid .item-group, .cart-grid .item-domain { color: var(--muted); display: block; }
.cart-sidebar-column { width: 100%; }
#order-standard_cart .panel-addon { border: 1px solid var(--border); background: #fff; }
#order-standard_cart .panel-addon .panel-heading { background: #0f345a; color: #fff; }
#order-standard_cart .panel-addon .price { color: var(--sun); font-weight: 800; }
#order-standard_cart .order-summary { border-radius: var(--radius); box-shadow: var(--shadow); background: #fff; }
#order-standard_cart .view-cart-tabs > li > a { border-radius: 12px; color: var(--muted); border: 1px solid var(--border); }
#order-standard_cart .view-cart-tabs > li.active > a { background: var(--sea); color: #fff; border-color: var(--sea); }
#order-standard_cart .product-selection .panel-heading { background: linear-gradient(135deg, var(--ink), var(--sea)); color: #fff; }
#order-standard_cart .product-selection .panel-body { padding: 24px; }
.store .store-content,
.store .view-cart { display: block; }
.store .view-cart .sidebar { width: 100%; max-width: none; }
.cart-sidebar.sidebar { width: 100%; max-width: none; margin-top: 0; }
.cart-sidebar .panel {
  border-radius: var(--radius);
  border: 1px solid var(--border);
  background: #fff;
  box-shadow: var(--shadow);
}
.cart-sidebar .panel-heading {
  background: linear-gradient(135deg, var(--ink), var(--sea));
  border-radius: var(--radius) var(--radius) 0 0;
}
.cart-sidebar .panel-title { color: #fff; text-transform: uppercase; letter-spacing: .03em; font-weight: 800; }
.cart-sidebar .list-group-item {
  color: var(--muted);
  border: none;
  padding: 12px 14px;
}
.cart-sidebar .list-group-item:hover,
.cart-sidebar .list-group-item:focus {
  background: rgba(29,109,178,0.08);
  color: var(--ink);
}
.cart-sidebar .list-group-item i { color: var(--sea); }
.store .sidebar .panel {
  width: 100%;
  margin: 0;
  box-shadow: var(--shadow);
  background: #fff;
  border: 1px solid var(--border);
}
.store .sidebar .panel-heading {
  background: linear-gradient(135deg, var(--ink), var(--sea));
}
.store .alert {
  margin-left: 0;
  margin-right: 0;
}

/* PRICING TABLES */
.pricing-table { border: 1px solid var(--border); border-radius: 16px; }
.pricing-table .header { background: linear-gradient(135deg, var(--ink), var(--sea)); color: #fff; border-radius: 16px 16px 0 0; }
.pricing-table .price { color: var(--sun); font-size: 2rem; font-weight: 800; }

/* DOMAIN SEARCH HERO */
.domainchecker-home .input-group-lg .form-control { height: 58px; font-size: 1.05rem; border-radius: 14px; background: #fff; color: var(--text); }
.domainchecker-home .btn { height: 58px; border-radius: 14px; }

/* HOME SHORTCUTS */
.client-home-shortcuts .panel { border-radius: 16px; border: none; box-shadow: var(--shadow); background: #fff; }
.client-home-shortcuts .panel a { color: var(--text); }
.client-home-shortcuts .panel a:hover { color: var(--sea); }

/* TABLE-LIKE LISTS */
.list-group-item { border-radius: 12px; margin-bottom: 8px; border: 1px solid var(--border); background: #fff; color: var(--text); }
.list-group-item-action { background: #fff !important; color: var(--text) !important; }
.list-group-item-action:hover,
.list-group-item-action:focus { background: rgba(29,109,178,0.08) !important; color: var(--ink) !important; }

/* MODALS */
.modal-content { border-radius: 14px; box-shadow: 0 18px 40px rgba(12,60,115,0.28); background: #fff; color: var(--text); }
.modal-header { background: linear-gradient(135deg, var(--ink), var(--sea)); color: #fff; border-radius: 14px 14px 0 0; }

/* PAGINATION */
.pagination > li > a, .pagination > li > span { border-radius: 10px; color: var(--sea); border-color: var(--border); background: #fff; }
.pagination > .active > a { background: var(--sea); border-color: var(--sea); color: #fff; }

/* BANNERS */
.banner-callout { background: linear-gradient(120deg, var(--sun), var(--sun-deep)); color: #1f1400; border-radius: 16px; box-shadow: var(--shadow); padding: 18px; }

/* SEARCH BOXES */
.search-box { background: #fff; border: 1px solid var(--border); border-radius: 14px; box-shadow: var(--shadow); color: var(--text); }

/* CART SIDEBAR */
.cart-sidebar .panel { background: #fff; }
.cart-sidebar .total-due-today span { color: var(--sun); }

/* ORDER STEPS */
.order-steps { list-style: none; padding: 0; margin: 0 0 18px; display: flex; gap: 10px; flex-wrap: wrap; }
.order-steps li { background: #fff; border: 1px solid var(--border); border-radius: 12px; padding: 10px 14px; color: var(--muted); font-weight: 700; }
.order-steps li.active { background: var(--sea); color: #fff; border-color: var(--sea); }

/* SEPARATORS */
.hr-light { border-top: 1px dashed rgba(12, 60, 115, 0.16); }

/* TYPOGRAPHY */
h1, h2, h3, h4, h5 { color: var(--text); letter-spacing: 0.01em; font-weight: 800; }
small, .help-block { color: var(--muted); }

/* Registration (clientregister.tpl) */
.register-aurora { max-width: 1100px; margin: 0 auto; }
.register-hero {
  background: linear-gradient(135deg, #0c3c73 0%, #1d6db2 55%, #33b8c8 100%);
  color: #fff;
  border-radius: 18px;
  padding: 26px 24px 30px;
  box-shadow: var(--shadow);
  text-align: center;
  position: relative;
  overflow: hidden;
}
.register-hero-inner { max-width: 820px; margin: 0 auto; }
.register-logo {
  max-width: 150px;
  margin: 0 auto 14px;
  display: block;
  background: rgba(255,255,255,0.9);
  padding: 10px 14px;
  border-radius: 16px;
  box-shadow: 0 10px 24px rgba(0,0,0,0.18);
}
.register-hero:before {
  content: "";
  position: absolute;
  inset: -20% -10% auto auto;
  width: 380px;
  height: 380px;
  background: radial-gradient(circle, rgba(246,181,45,0.45), rgba(246,181,45,0.0) 70%);
  opacity: 0.8;
  pointer-events: none;
}
.register-hero:after {
  content: "";
  position: absolute;
  inset: auto -10% -30% auto;
  width: 420px;
  height: 420px;
  background: radial-gradient(circle, rgba(51,184,200,0.35), rgba(51,184,200,0.0) 70%);
  opacity: 0.8;
  pointer-events: none;
}
.register-logo-text { font-weight: 800; font-size: 1.2rem; color: #fff; margin-bottom: 10px; }
.register-hero .eyebrow { text-transform: uppercase; letter-spacing: .08em; font-size: 0.75rem; opacity: 0.85; margin-bottom: 6px; }
.register-hero h1 { color: #fff; margin: 6px 0 6px; font-weight: 800; }
.register-hero .lead { color: rgba(255,255,255,0.9); margin-bottom: 16px; }
.register-hero-note { margin-top: 10px; color: rgba(255,255,255,0.85); }
.register-hero-note a { color: #fff; text-decoration: underline; }
.register-hero-actions { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; margin: 10px 0 6px; }
.register-hero-list { list-style: none; padding: 0; margin: 14px 0 0; display: grid; gap: 8px; }
.register-hero-list li { display: flex; gap: 8px; align-items: center; justify-content: center; }
.register-hero-list i { color: var(--sun); }
.register-aurora .input-label { display: block; font-size: 0.85rem; color: var(--muted); margin: 6px 0 4px; font-weight: 600; }
.register-aurora .input-label.label-with-icon { padding-left: 42px; }
.register-submit { text-align: center; margin-top: 16px; }
.register-submit .trust-note { margin-top: 10px; color: var(--muted); font-size: 0.9rem; }

.register-form .register-card {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 18px;
  box-shadow: var(--shadow);
  padding: 22px;
  margin-top: 20px;
}
.register-card-header h2 { margin: 0 0 6px; }
.register-card-header p { color: var(--muted); margin-bottom: 16px; }
.register-aurora .section-title { font-weight: 800; text-transform: uppercase; letter-spacing: .05em; margin: 18px 0 10px; color: var(--ink); }
.register-aurora .field,
.register-aurora .form-control {
  border-radius: 12px;
  border: 1px solid var(--border);
  background: #fff;
  color: var(--text);
  padding: 12px 14px;
}
.register-aurora .prepend-icon .field-icon { color: var(--sea); }
.register-aurora .prepend-icon .field-icon {
  top: 50%;
  transform: translateY(-50%);
}
.register-aurora .prepend-icon .field,
.register-aurora .prepend-icon select.form-control {
  padding-left: 42px;
  height: 46px;
}
.register-aurora .tospanel { border: 1px solid #f2a5b0; background: #fff5f7; }
.register-aurora .tospanel .panel-heading { background: #ffe1e6; color: #8a1f2f; }

/* Register page layout cleanup */
.page-clientregister .sidebar { display: none !important; }
.page-clientregister .main-content { width: 100% !important; float: none !important; }
.page-clientregister .header-lined { display: none; }
.page-clientregister #registration { margin-top: 6px; }

/* ICON ADJUST */
.text-primary { color: var(--sea) !important; }
.loader { border-top-color: var(--sun); }

/* STORE empty/error states */
.store .alert-danger { color: #8a1f2f; background: #ffe9ec; border-color: #f2a5b0; }
.store .empty-state,
.store .no-products,
.store .product-groups-empty {
  text-align: center;
  color: var(--muted);
  padding: 32px 20px;
  background: #fff;
  border: 1px dashed #cbd9ec;
  border-radius: var(--radius);
  margin-top: 12px;
  box-shadow: var(--shadow);
}

/* MOBILE */
@media (max-width: 991px) {
  .navbar-main { margin: 0 8px 8px; }
  .navbar-main .navbar-nav > li > a { padding: 10px 12px; }
  .home .hero { padding: 32px 24px; }
  .table { font-size: 0.95rem; }
}
