/*
 * HowToEGuides.com Author Center
 * 2026 Premium Dashboard Theme
 * File: /public_html/author-center/assets/author-center.css
 */

:root {
  --ac-bg: #f5f8fc;
  --ac-surface: #ffffff;
  --ac-surface-soft: #f8fbff;
  --ac-surface-blue: #edf5ff;
  --ac-navy: #0c2146;
  --ac-navy-2: #17345f;
  --ac-text: #2f4564;
  --ac-muted: #72829a;
  --ac-line: #dfe8f4;
  --ac-line-strong: #ccd9e8;
  --ac-blue: #1767e8;
  --ac-blue-2: #0d55c7;
  --ac-blue-soft: #eaf3ff;
  --ac-gold: #d79a24;
  --ac-gold-soft: #fff6df;
  --ac-teal: #1aa889;
  --ac-teal-soft: #e6f8f3;
  --ac-purple: #7c5ce5;
  --ac-purple-soft: #f1edff;
  --ac-green: #15956f;
  --ac-green-soft: #e9f8f2;
  --ac-danger: #cb3f53;
  --ac-shadow-sm: 0 7px 18px rgba(17, 45, 86, .07);
  --ac-shadow: 0 16px 38px rgba(17, 45, 86, .09);
  --ac-shadow-lg: 0 28px 70px rgba(17, 45, 86, .13);
  --ac-radius-sm: 12px;
  --ac-radius: 18px;
  --ac-radius-lg: 26px;
  --ac-max: 1480px;
}

html {
  background: var(--ac-bg);
  scroll-behavior: smooth;
}

body.ac-body {
  margin: 0;
  min-width: 320px;
  background:
    radial-gradient(circle at 12% 2%, rgba(23, 103, 232, .075), transparent 28%),
    radial-gradient(circle at 94% 18%, rgba(215, 154, 36, .075), transparent 24%),
    var(--ac-bg);
  color: var(--ac-text);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.ac-body *,
.ac-body *::before,
.ac-body *::after {
  box-sizing: border-box;
}

.ac-body a {
  color: inherit;
}

.ac-body button,
.ac-body input,
.ac-body textarea,
.ac-body select {
  font: inherit;
}

.ac-body button,
.ac-body a {
  -webkit-tap-highlight-color: transparent;
}

.ac-shell {
  min-height: 100vh;
}

.ac-topbar {
  position: sticky;
  top: 0;
  z-index: 1000;
  width: 100%;
  border-bottom: 1px solid rgba(205, 219, 235, .92);
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 7px 24px rgba(17, 45, 86, .055);
  backdrop-filter: blur(16px) saturate(140%);
  -webkit-backdrop-filter: blur(16px) saturate(140%);
}

.ac-topbar-inner {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 26px;
  width: min(calc(100% - 48px), var(--ac-max));
  min-height: 72px;
  margin: 0 auto;
}

.ac-brand {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
  text-decoration: none;
}

.ac-brand-logo {
  display: block;
  width: 122px;
  max-height: 54px;
  object-fit: contain;
}

.ac-brand-divider {
  width: 1px;
  height: 31px;
  background: var(--ac-line);
}

.ac-brand-center {
  color: var(--ac-navy);
  font-size: 18px;
  font-weight: 850;
  letter-spacing: -.02em;
  white-space: nowrap;
}

.ac-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-width: 0;
}

.ac-nav-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 42px;
  padding: 0 10px;
  border-radius: 10px;
  color: #536782;
  font-size: 13px;
  font-weight: 760;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  transition: color .18s ease, background-color .18s ease, transform .18s ease;
}

.ac-nav-link svg {
  width: 17px;
  height: 17px;
  flex: 0 0 auto;
  stroke: currentColor;
  stroke-width: 1.9;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ac-nav-link:hover,
.ac-nav-link:focus-visible {
  color: var(--ac-blue);
  background: var(--ac-blue-soft);
  outline: none;
}

.ac-nav-link.is-active {
  color: var(--ac-blue);
  background: rgba(23, 103, 232, .055);
}

.ac-nav-link.is-active::after {
  content: "";
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: -15px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--ac-blue), #4b8ff2);
  box-shadow: 0 2px 10px rgba(23, 103, 232, .30);
}

.ac-topbar-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}

.ac-signout {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 40px;
  padding: 0 12px;
  border: 1px solid transparent;
  border-radius: 10px;
  color: #41546f;
  font-size: 13px;
  font-weight: 780;
  text-decoration: none;
}

.ac-signout:hover,
.ac-signout:focus-visible {
  border-color: var(--ac-line);
  background: #f8fbff;
  color: var(--ac-navy);
  outline: none;
}

.ac-signout svg,
.ac-menu-toggle svg {
  width: 18px;
  height: 18px;
  stroke: currentColor;
  stroke-width: 2;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ac-menu-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border: 1px solid var(--ac-line);
  border-radius: 11px;
  background: #fff;
  color: var(--ac-navy);
  cursor: pointer;
}

.ac-notice-wrap {
  width: min(calc(100% - 48px), var(--ac-max));
  margin: 18px auto 0;
}

.ac-main {
  width: min(calc(100% - 48px), var(--ac-max));
  margin: 0 auto;
  padding: 26px 0 46px;
}

.ac-card {
  border: 1px solid var(--ac-line);
  border-radius: var(--ac-radius);
  background: rgba(255, 255, 255, .96);
  box-shadow: var(--ac-shadow-sm);
}

.ac-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(420px, .96fr);
  align-items: center;
  min-height: 298px;
  overflow: hidden;
  border: 1px solid #d8e5f4;
  border-radius: 28px;
  background:
    radial-gradient(circle at 82% 30%, rgba(255, 255, 255, .78), transparent 30%),
    radial-gradient(circle at 70% 98%, rgba(215, 154, 36, .16), transparent 27%),
    linear-gradient(112deg, #f7fbff 0%, #edf5ff 50%, #edf3ff 100%);
  box-shadow: var(--ac-shadow);
}

.ac-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background-image:
    linear-gradient(rgba(23, 103, 232, .035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(23, 103, 232, .035) 1px, transparent 1px);
  background-size: 34px 34px;
  mask-image: linear-gradient(90deg, transparent 0%, rgba(0,0,0,.45) 55%, #000 100%);
}

.ac-hero::after {
  content: "";
  position: absolute;
  right: 18%;
  top: -80px;
  z-index: -1;
  width: 340px;
  height: 340px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(23, 103, 232, .15), rgba(23, 103, 232, 0) 67%);
  filter: blur(2px);
}

.ac-hero-copy {
  position: relative;
  z-index: 3;
  padding: 46px 34px 46px 52px;
}

.ac-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 30px;
  padding: 0 11px;
  margin-bottom: 14px;
  border: 1px solid rgba(23, 103, 232, .16);
  border-radius: 999px;
  background: rgba(255, 255, 255, .72);
  color: var(--ac-blue);
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
  box-shadow: 0 6px 18px rgba(23, 103, 232, .07);
}

.ac-hero-eyebrow-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--ac-gold);
  box-shadow: 0 0 0 5px rgba(215, 154, 36, .11);
}

.ac-hero h1 {
  max-width: 660px;
  margin: 0;
  color: var(--ac-navy);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(38px, 4.25vw, 64px);
  font-weight: 800;
  line-height: .98;
  letter-spacing: -.042em;
}

.ac-hero p {
  max-width: 650px;
  margin: 20px 0 0;
  color: #4d6482;
  font-size: clamp(15px, 1.45vw, 19px);
  line-height: 1.58;
}

.ac-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 27px;
}

.ac-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 46px;
  padding: 0 18px;
  border: 1px solid transparent;
  border-radius: 11px;
  font-size: 14px;
  font-weight: 820;
  line-height: 1;
  text-decoration: none;
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease, border-color .18s ease;
}

.ac-btn svg {
  width: 18px;
  height: 18px;
  stroke: currentColor;
  stroke-width: 2;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ac-btn:hover,
.ac-btn:focus-visible {
  transform: translateY(-1px);
  outline: none;
}

.ac-btn-primary {
  background: linear-gradient(135deg, #1767e8 0%, #0e55c7 100%);
  color: #fff;
  box-shadow: 0 10px 22px rgba(23, 103, 232, .22);
}

.ac-btn-primary:hover,
.ac-btn-primary:focus-visible {
  box-shadow: 0 14px 26px rgba(23, 103, 232, .28);
}

.ac-btn-secondary {
  border-color: #cbdcf2;
  background: rgba(255, 255, 255, .88);
  color: var(--ac-blue);
  box-shadow: 0 7px 18px rgba(17, 45, 86, .055);
}

.ac-btn-secondary:hover,
.ac-btn-secondary:focus-visible {
  border-color: #a8c6ec;
  background: #fff;
}

.ac-btn-purple {
  background: linear-gradient(135deg, #7457df, #6849d2);
  color: #fff;
  box-shadow: 0 10px 22px rgba(116, 87, 223, .20);
}

.ac-btn-green {
  border-color: #b8e7d6;
  background: #f4fcf9;
  color: #12845f;
}

.ac-btn-block {
  width: 100%;
}

.ac-hero-visual {
  position: relative;
  align-self: stretch;
  min-height: 298px;
  overflow: hidden;
}

.ac-hero-visual::before {
  content: "";
  position: absolute;
  inset: 13% 7% 12% 2%;
  border: 1px solid rgba(23, 103, 232, .08);
  border-radius: 50%;
  background: radial-gradient(circle at 50% 52%, rgba(255,255,255,.88), rgba(255,255,255,.30) 47%, transparent 70%);
}

.ac-hero-art {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center right;
  mix-blend-mode: normal;
}

.ac-edition-badge {
  position: absolute;
  right: 22px;
  top: 22px;
  z-index: 4;
  display: grid;
  place-items: center;
  width: 82px;
  height: 82px;
  border: 1px solid rgba(23, 103, 232, .18);
  border-radius: 50%;
  background: rgba(255, 255, 255, .85);
  color: var(--ac-blue);
  box-shadow: 0 12px 34px rgba(17, 45, 86, .12), inset 0 0 0 6px rgba(23,103,232,.035);
  backdrop-filter: blur(10px);
  text-align: center;
  line-height: 1;
}

.ac-edition-badge strong {
  display: block;
  color: var(--ac-navy);
  font-size: 22px;
  letter-spacing: -.03em;
}

.ac-edition-badge span {
  display: block;
  margin-top: 5px;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .13em;
}

.ac-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin-top: 18px;
}

.ac-kpi {
  position: relative;
  overflow: hidden;
  min-height: 124px;
  padding: 20px 21px;
}

.ac-kpi::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -52px;
  width: 130px;
  height: 130px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(23,103,232,.055), transparent 68%);
}

.ac-kpi-row {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

.ac-kpi-icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 12px;
  background: var(--ac-blue-soft);
  color: var(--ac-blue);
}

.ac-kpi-icon.is-teal { background: var(--ac-teal-soft); color: var(--ac-teal); }
.ac-kpi-icon.is-gold { background: var(--ac-gold-soft); color: var(--ac-gold); }
.ac-kpi-icon.is-purple { background: var(--ac-purple-soft); color: var(--ac-purple); }

.ac-kpi-icon svg {
  width: 23px;
  height: 23px;
  stroke: currentColor;
  stroke-width: 1.9;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ac-kpi-label {
  color: #506580;
  font-size: 12px;
  font-weight: 790;
}

.ac-kpi-value {
  margin-top: 2px;
  color: var(--ac-navy);
  font-size: clamp(24px, 2vw, 31px);
  font-weight: 900;
  line-height: 1.12;
  letter-spacing: -.035em;
}

.ac-kpi-note {
  margin-top: 7px;
  color: var(--ac-muted);
  font-size: 11px;
  font-weight: 670;
  line-height: 1.35;
}

.ac-kpi-note.is-up { color: var(--ac-teal); }
.ac-kpi-note.is-blue { color: var(--ac-blue); }
.ac-kpi-note.is-purple { color: var(--ac-purple); }

.ac-dashboard-grid {
  display: grid;
  grid-template-columns: minmax(320px, .9fr) minmax(520px, 1.35fr) minmax(260px, .72fr);
  gap: 18px;
  align-items: start;
  margin-top: 18px;
}

.ac-stack {
  display: grid;
  gap: 18px;
}

.ac-panel {
  overflow: hidden;
}

.ac-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 22px 16px;
  border-bottom: 1px solid #e6edf6;
}

.ac-panel-title-wrap {
  display: flex;
  align-items: flex-start;
  gap: 11px;
}

.ac-panel-icon {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  flex: 0 0 auto;
  border-radius: 10px;
  background: var(--ac-blue-soft);
  color: var(--ac-blue);
}

.ac-panel-icon.is-purple { background: var(--ac-purple-soft); color: var(--ac-purple); }
.ac-panel-icon.is-green { background: var(--ac-green-soft); color: var(--ac-green); }

.ac-panel-icon svg {
  width: 19px;
  height: 19px;
  stroke: currentColor;
  stroke-width: 1.9;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ac-panel h2,
.ac-panel h3 {
  margin: 0;
  color: var(--ac-navy);
  letter-spacing: -.02em;
}

.ac-panel h2 { font-size: 19px; font-weight: 860; }
.ac-panel h3 { font-size: 15px; font-weight: 830; }

.ac-panel-subtitle {
  margin: 2px 0 0;
  color: var(--ac-muted);
  font-size: 11px;
}

.ac-panel-body {
  padding: 20px 22px 22px;
}

.ac-field-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.ac-field {
  min-width: 0;
}

.ac-field.ac-span-2 {
  grid-column: 1 / -1;
}

.ac-label {
  display: block;
  margin-bottom: 7px;
  color: #354d6c;
  font-size: 11px;
  font-weight: 800;
}

.ac-input,
.ac-select,
.ac-textarea {
  width: 100%;
  border: 1px solid #d8e3f0;
  border-radius: 10px;
  background: #fff;
  color: var(--ac-navy);
  box-shadow: 0 1px 0 rgba(17, 45, 86, .02) inset;
  transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.ac-input,
.ac-select {
  min-height: 42px;
  padding: 0 12px;
}

.ac-textarea {
  min-height: 94px;
  padding: 11px 12px;
  resize: vertical;
}

.ac-input::placeholder,
.ac-textarea::placeholder {
  color: #9aa8ba;
}

.ac-input:focus,
.ac-select:focus,
.ac-textarea:focus {
  border-color: #78aaf0;
  background: #fff;
  outline: none;
  box-shadow: 0 0 0 4px rgba(23, 103, 232, .10);
}

.ac-money-input {
  position: relative;
}

.ac-money-input span {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  color: #73849b;
  font-weight: 800;
}

.ac-money-input .ac-input {
  padding-left: 28px;
}

.ac-upload-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 14px;
}

.ac-upload {
  display: flex;
  align-items: center;
  gap: 11px;
  min-height: 72px;
  padding: 12px 13px;
  border: 1px dashed #b8cbe2;
  border-radius: 12px;
  background: #fbfdff;
  color: #45617f;
  cursor: pointer;
  transition: border-color .18s ease, background-color .18s ease, transform .18s ease;
}

.ac-upload:hover,
.ac-upload:focus-within {
  border-color: #75a7ea;
  background: #f4f9ff;
  transform: translateY(-1px);
}

.ac-upload-icon {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  flex: 0 0 auto;
  border-radius: 10px;
  background: var(--ac-blue-soft);
  color: var(--ac-blue);
}

.ac-upload-icon svg {
  width: 20px;
  height: 20px;
  stroke: currentColor;
  stroke-width: 1.9;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ac-upload strong {
  display: block;
  color: var(--ac-blue);
  font-size: 11px;
}

.ac-upload small {
  display: block;
  margin-top: 2px;
  color: #8594a7;
  font-size: 9px;
  line-height: 1.35;
}

.ac-submit-row {
  margin-top: 16px;
}

.ac-select-compact {
  min-height: 34px;
  padding: 0 9px;
  border: 1px solid var(--ac-line);
  border-radius: 9px;
  background: #fff;
  color: #556b87;
  font-size: 10px;
  font-weight: 730;
}

.ac-analytics-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  padding: 17px 18px 14px;
}

.ac-analytics-kpi {
  min-width: 0;
  padding: 11px;
  border: 1px solid #e3ebf5;
  border-radius: 12px;
  background: #fbfdff;
}

.ac-analytics-kpi-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.ac-analytics-kpi-label {
  color: #72839a;
  font-size: 9px;
  font-weight: 800;
}

.ac-analytics-kpi-value {
  margin-top: 4px;
  color: var(--ac-navy);
  font-size: 18px;
  font-weight: 900;
  letter-spacing: -.03em;
}

.ac-analytics-up {
  color: var(--ac-teal);
  font-size: 9px;
  font-weight: 800;
}

.ac-analytics-charts {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(210px, .85fr);
  gap: 13px;
  padding: 0 18px 18px;
}

.ac-chart-card {
  min-width: 0;
  padding: 14px;
  border: 1px solid #e1e9f3;
  border-radius: 13px;
  background: #fff;
}

.ac-chart-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}

.ac-chart-title {
  color: var(--ac-navy);
  font-size: 11px;
  font-weight: 830;
}

.ac-chart-legend {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #78889d;
  font-size: 8px;
  font-weight: 740;
}

.ac-legend-dot {
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-right: 4px;
  border-radius: 50%;
  background: var(--ac-blue);
}

.ac-legend-dot.is-gold { background: var(--ac-gold); }

.ac-line-chart {
  position: relative;
  min-height: 178px;
  overflow: hidden;
  border-radius: 10px;
  background:
    linear-gradient(to bottom, rgba(216,226,240,.7) 1px, transparent 1px);
  background-size: 100% 25%;
}

.ac-line-chart svg {
  position: absolute;
  inset: 12px 10px 22px 10px;
  width: calc(100% - 20px);
  height: calc(100% - 34px);
  overflow: visible;
}

.ac-chart-axis {
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 2px;
  display: flex;
  justify-content: space-between;
  color: #98a6b8;
  font-size: 7px;
}

.ac-bar-list {
  display: grid;
  gap: 10px;
}

.ac-bar-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 34px;
  gap: 8px;
  align-items: center;
}

.ac-bar-meta {
  min-width: 0;
}

.ac-bar-title {
  overflow: hidden;
  color: #4c607c;
  font-size: 9px;
  font-weight: 760;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ac-bar-track {
  height: 6px;
  margin-top: 5px;
  overflow: hidden;
  border-radius: 999px;
  background: #ecf1f7;
}

.ac-bar-fill {
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #2d79e7, #1767e8);
}

.ac-bar-value {
  color: #6a7c92;
  font-size: 9px;
  font-weight: 800;
  text-align: right;
}

.ac-analytics-footer {
  display: flex;
  justify-content: center;
  padding: 0 18px 18px;
}

.ac-promo-visual {
  position: relative;
  display: grid;
  place-items: center;
  width: 104px;
  height: 104px;
  margin: 2px auto 14px;
  border-radius: 50%;
  background:
    radial-gradient(circle at 36% 30%, rgba(255,255,255,.95), rgba(255,255,255,.42) 45%, transparent 46%),
    linear-gradient(145deg, #eef1ff, #f8f1ff);
  box-shadow: inset 0 0 0 1px rgba(124, 92, 229, .09);
}

.ac-promo-visual::before,
.ac-promo-visual::after {
  content: "";
  position: absolute;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--ac-gold);
  box-shadow: 0 0 0 5px rgba(215,154,36,.10);
}

.ac-promo-visual::before { top: 11px; right: 9px; }
.ac-promo-visual::after { bottom: 8px; left: 8px; width: 5px; height: 5px; }

.ac-promo-visual svg {
  width: 56px;
  height: 56px;
}

.ac-promo-copy {
  text-align: left;
}

.ac-promo-copy strong {
  display: block;
  color: var(--ac-navy);
  font-size: 13px;
}

.ac-promo-kicker {
  display: block;
  margin-top: 2px;
  color: var(--ac-purple);
  font-size: 10px;
  font-weight: 820;
}

.ac-promo-copy p {
  margin: 9px 0 0;
  color: #718097;
  font-size: 10px;
  line-height: 1.55;
}

.ac-budget-box {
  margin-top: 14px;
  padding: 12px;
  border: 1px solid #e7e1fa;
  border-radius: 12px;
  background: #faf8ff;
}

.ac-budget-label,
.ac-payout-label {
  color: #74859a;
  font-size: 9px;
  font-weight: 800;
}

.ac-budget-value {
  margin-top: 3px;
  color: var(--ac-navy);
  font-size: 19px;
  font-weight: 900;
}

.ac-payout-amount {
  margin-top: 4px;
  color: var(--ac-green);
  font-size: 31px;
  font-weight: 900;
  letter-spacing: -.035em;
}

.ac-info-list {
  display: grid;
  gap: 10px;
  margin-top: 15px;
}

.ac-info-item {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
}

.ac-info-icon {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 8px;
  background: #f3f7fb;
  color: #5d718a;
}

.ac-info-icon svg {
  width: 15px;
  height: 15px;
  stroke: currentColor;
  stroke-width: 1.9;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ac-info-item strong {
  display: block;
  color: #405775;
  font-size: 9px;
}

.ac-info-item span {
  display: block;
  margin-top: 1px;
  overflow: hidden;
  color: var(--ac-navy);
  font-size: 10px;
  font-weight: 760;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ac-motivation {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  margin-top: 18px;
  padding: 17px 20px;
  overflow: hidden;
  border: 1px solid #f0dfb8;
  border-radius: var(--ac-radius);
  background:
    radial-gradient(circle at 8% 10%, rgba(215,154,36,.12), transparent 32%),
    linear-gradient(100deg, #fffaf0, #fffdf7);
  box-shadow: var(--ac-shadow-sm);
}

.ac-motivation-copy {
  display: flex;
  align-items: center;
  gap: 13px;
  min-width: 0;
}

.ac-motivation-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  border-radius: 12px;
  background: var(--ac-gold-soft);
  color: var(--ac-gold);
}

.ac-motivation-icon svg {
  width: 22px;
  height: 22px;
  stroke: currentColor;
  stroke-width: 1.9;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ac-motivation strong {
  display: block;
  color: #624d21;
  font-size: 12px;
}

.ac-motivation p {
  margin: 3px 0 0;
  color: #8a7854;
  font-size: 10px;
}

.ac-footer {
  width: min(calc(100% - 48px), var(--ac-max));
  margin: 0 auto;
  padding: 8px 0 30px;
  color: #8b99aa;
  font-size: 11px;
  text-align: center;
}

.ac-empty-state {
  display: grid;
  place-items: center;
  min-height: 150px;
  padding: 24px;
  text-align: center;
}

.ac-empty-state strong {
  color: var(--ac-navy);
}

.ac-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@media (max-width: 1320px) {
  .ac-topbar-inner,
  .ac-main,
  .ac-notice-wrap,
  .ac-footer {
    width: min(calc(100% - 34px), var(--ac-max));
  }

  .ac-topbar-inner {
    gap: 16px;
  }

  .ac-nav {
    gap: 2px;
  }

  .ac-nav-link {
    padding-left: 7px;
    padding-right: 7px;
    font-size: 12px;
  }

  .ac-dashboard-grid {
    grid-template-columns: minmax(300px, .9fr) minmax(470px, 1.35fr) minmax(235px, .72fr);
  }
}

@media (max-width: 1160px) {
  .ac-menu-toggle {
    display: inline-flex;
  }

  .ac-nav {
    position: absolute;
    left: 17px;
    right: 17px;
    top: calc(100% + 9px);
    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 3px;
    padding: 10px;
    border: 1px solid var(--ac-line);
    border-radius: 14px;
    background: rgba(255,255,255,.98);
    box-shadow: var(--ac-shadow-lg);
  }

  .ac-topbar.is-open .ac-nav {
    display: flex;
  }

  .ac-nav-link {
    min-height: 42px;
    padding: 0 12px;
    font-size: 13px;
  }

  .ac-nav-link.is-active::after {
    display: none;
  }

  .ac-dashboard-grid {
    grid-template-columns: minmax(310px, .86fr) minmax(500px, 1.3fr);
  }

  .ac-dashboard-grid > .ac-stack:last-child {
    grid-column: 1 / -1;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 920px) {
  .ac-hero {
    grid-template-columns: 1fr;
  }

  .ac-hero-copy {
    padding: 38px 34px 24px;
  }

  .ac-hero-visual {
    min-height: 220px;
  }

  .ac-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ac-dashboard-grid {
    grid-template-columns: 1fr;
  }

  .ac-dashboard-grid > .ac-stack:last-child {
    grid-column: auto;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ac-analytics-charts {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 700px) {
  .ac-topbar-inner,
  .ac-main,
  .ac-notice-wrap,
  .ac-footer {
    width: min(calc(100% - 24px), var(--ac-max));
  }

  .ac-topbar-inner {
    min-height: 66px;
  }

  .ac-brand-logo {
    width: 92px;
  }

  .ac-brand-divider,
  .ac-signout span {
    display: none;
  }

  .ac-brand-center {
    font-size: 15px;
  }

  .ac-main {
    padding-top: 16px;
  }

  .ac-hero {
    border-radius: 22px;
  }

  .ac-hero-copy {
    padding: 30px 22px 20px;
  }

  .ac-hero h1 {
    font-size: clamp(36px, 11vw, 52px);
  }

  .ac-hero p {
    font-size: 15px;
  }

  .ac-hero-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .ac-hero-actions .ac-btn {
    width: 100%;
  }

  .ac-hero-visual {
    min-height: 180px;
  }

  .ac-edition-badge {
    width: 68px;
    height: 68px;
    right: 14px;
    top: 14px;
  }

  .ac-edition-badge strong {
    font-size: 18px;
  }

  .ac-kpi-grid,
  .ac-field-grid,
  .ac-upload-grid,
  .ac-dashboard-grid > .ac-stack:last-child,
  .ac-analytics-kpis {
    grid-template-columns: 1fr;
  }

  .ac-panel-head,
  .ac-panel-body {
    padding-left: 16px;
    padding-right: 16px;
  }

  .ac-analytics-kpis,
  .ac-analytics-charts,
  .ac-analytics-footer {
    padding-left: 14px;
    padding-right: 14px;
  }

  .ac-motivation {
    align-items: flex-start;
    flex-direction: column;
  }

  .ac-motivation .ac-btn {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ac-body *,
  .ac-body *::before,
  .ac-body *::after {
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }
}

/* --------------------------------------------------------------------------
   Author Center inner pages
   -------------------------------------------------------------------------- */
.ac-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:6px 0 22px}.ac-page-head h1{margin:0;color:var(--ac-navy);font-size:clamp(30px,4vw,46px);line-height:1.04;letter-spacing:-.035em}.ac-page-head p{max-width:760px;margin:9px 0 0;color:var(--ac-muted);font-size:15px}.ac-page-actions{display:flex;gap:10px;flex-wrap:wrap}.ac-form-card{padding:24px}.ac-form-card h2,.ac-list-card h2{margin:0 0 6px;color:var(--ac-navy);font-size:20px}.ac-help{margin:0 0 18px;color:var(--ac-muted);font-size:13px}.ac-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ac-form-grid .ac-wide{grid-column:1/-1}.ac-checkbox{display:flex;align-items:flex-start;gap:10px;color:var(--ac-text);font-size:13px}.ac-checkbox input{margin-top:3px}.ac-alert{margin:0 0 18px;padding:13px 15px;border:1px solid var(--ac-line);border-radius:13px;background:#fff;color:var(--ac-text);box-shadow:var(--ac-shadow-sm)}.ac-alert.is-success{border-color:#bfe8da;background:#edf9f5;color:#176d57}.ac-alert.is-error{border-color:#f0c5cc;background:#fff2f4;color:#9d3042}.ac-alert.is-info{border-color:#cbdff9;background:#f0f6ff;color:#295e9e}.ac-table-wrap{overflow:auto;border:1px solid var(--ac-line);border-radius:14px}.ac-table{width:100%;min-width:650px;border-collapse:collapse;background:#fff}.ac-table th,.ac-table td{padding:13px 14px;border-bottom:1px solid var(--ac-line);text-align:left;vertical-align:middle}.ac-table th{background:#f8fbff;color:#5e7089;font-size:11px;text-transform:uppercase;letter-spacing:.055em}.ac-table td{color:var(--ac-text);font-size:13px}.ac-table tr:last-child td{border-bottom:0}.ac-status{display:inline-flex;align-items:center;min-height:26px;padding:3px 9px;border-radius:999px;background:var(--ac-blue-soft);color:var(--ac-blue-2);font-size:11px;font-weight:800;text-transform:capitalize}.ac-status.is-published,.ac-status.is-paid,.ac-status.is-active{background:var(--ac-green-soft);color:var(--ac-green)}.ac-status.is-rejected,.ac-status.is-failed,.ac-status.is-cancelled{background:#fff0f2;color:var(--ac-danger)}.ac-status.is-pending,.ac-status.is-submitted,.ac-status.is-under_review,.ac-status.is-processing,.ac-status.is-approved{background:var(--ac-gold-soft);color:#9a6c13}.ac-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.ac-summary-box{padding:18px;border:1px solid var(--ac-line);border-radius:16px;background:#fff;box-shadow:var(--ac-shadow-sm)}.ac-summary-box small{display:block;color:var(--ac-muted);font-weight:700}.ac-summary-box strong{display:block;margin-top:5px;color:var(--ac-navy);font-size:26px;letter-spacing:-.03em}.ac-section{margin-bottom:20px}.ac-list-card{padding:22px}.ac-empty-compact{padding:22px;border:1px dashed var(--ac-line-strong);border-radius:14px;background:var(--ac-surface-soft);text-align:center;color:var(--ac-muted)}.ac-agreement{max-width:920px}.ac-agreement h2{margin:25px 0 7px;color:var(--ac-navy);font-size:18px}.ac-agreement p,.ac-agreement li{color:var(--ac-text);font-size:14px}.ac-agreement ul{padding-left:22px}.ac-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.ac-chart-bars{display:grid;gap:9px}.ac-day-bar{display:grid;grid-template-columns:90px 1fr 70px;gap:12px;align-items:center}.ac-day-bar-label{font-size:12px;color:var(--ac-muted)}.ac-day-bar-track{height:9px;overflow:hidden;border-radius:999px;background:#edf2f8}.ac-day-bar-fill{height:100%;min-width:2px;border-radius:inherit;background:linear-gradient(90deg,var(--ac-blue),#6ca6f5)}.ac-day-bar-value{text-align:right;color:var(--ac-navy);font-size:12px;font-weight:800}.ac-file-note{margin-top:6px;color:var(--ac-muted);font-size:11px}.ac-profile-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.ac-chip{display:inline-flex;padding:5px 9px;border-radius:999px;background:#f0f5fb;color:#526b8c;font-size:11px;font-weight:700}.ac-danger-text{color:var(--ac-danger)}
@media(max-width:920px){.ac-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ac-page-head{align-items:flex-start;flex-direction:column}}@media(max-width:700px){.ac-form-grid,.ac-summary-grid{grid-template-columns:1fr}.ac-page-actions,.ac-page-actions .ac-btn{width:100%}.ac-day-bar{grid-template-columns:76px 1fr 52px}.ac-form-card,.ac-list-card{padding:16px}}

.ac-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
@media(max-width:920px){.ac-resource-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.ac-resource-grid{grid-template-columns:1fr}}
.ac-status.is-under-review,.ac-status.is-changes-requested{background:var(--ac-gold-soft);color:#9a6c13}


/* ==========================================================================
   Author Center Public Recruitment + Sign-In — Build 1.3
   ========================================================================== */

.ac-public-body {
  background:
    radial-gradient(circle at 8% 5%, rgba(23,103,232,.10), transparent 26%),
    radial-gradient(circle at 90% 10%, rgba(215,154,36,.11), transparent 23%),
    linear-gradient(180deg, #f7faff 0, #f4f8fd 44%, #f8fafc 100%);
}

.ac-public-topbar {
  position: sticky;
  top: 0;
  z-index: 1000;
  border-bottom: 1px solid rgba(205,219,235,.9);
  background: rgba(255,255,255,.94);
  box-shadow: 0 7px 24px rgba(17,45,86,.05);
  backdrop-filter: blur(16px) saturate(140%);
  -webkit-backdrop-filter: blur(16px) saturate(140%);
}

.ac-public-topbar-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  width: min(calc(100% - 48px), 1320px);
  min-height: 76px;
  margin: 0 auto;
}

.ac-public-nav {
  display: flex;
  align-items: center;
  gap: 8px;
}

.ac-public-nav a {
  padding: 10px 12px;
  border-radius: 10px;
  color: #536782;
  font-size: 13px;
  font-weight: 780;
  text-decoration: none;
}

.ac-public-nav a:hover,
.ac-public-nav a:focus-visible {
  color: var(--ac-blue);
  background: var(--ac-blue-soft);
  outline: none;
}

.ac-public-nav .ac-public-nav-cta {
  margin-left: 4px;
  padding: 11px 16px;
  background: var(--ac-blue);
  color: #fff;
  box-shadow: 0 8px 20px rgba(23,103,232,.20);
}

.ac-public-nav .ac-public-nav-cta:hover,
.ac-public-nav .ac-public-nav-cta:focus-visible {
  color: #fff;
  background: var(--ac-blue-2);
}

.ac-public-main {
  width: min(calc(100% - 48px), 1320px);
  margin: 0 auto;
  padding: 34px 0 38px;
}

.ac-public-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(360px, .75fr);
  gap: 42px;
  align-items: center;
  overflow: hidden;
  padding: 54px;
  border: 1px solid #d8e4f1;
  border-radius: 30px;
  background:
    radial-gradient(circle at 82% 14%, rgba(215,154,36,.15), transparent 24%),
    radial-gradient(circle at 18% 4%, rgba(23,103,232,.12), transparent 31%),
    linear-gradient(135deg, #ffffff 0, #f8fbff 54%, #f1f6fd 100%);
  box-shadow: var(--ac-shadow-lg);
}

.ac-public-hero::before {
  content: "";
  position: absolute;
  width: 360px;
  height: 360px;
  right: -130px;
  bottom: -200px;
  border: 50px solid rgba(23,103,232,.045);
  border-radius: 50%;
}

.ac-public-hero-copy {
  position: relative;
  z-index: 1;
}

.ac-public-hero h1 {
  max-width: 800px;
  margin: 13px 0 18px;
  color: var(--ac-navy);
  font-size: clamp(44px, 5.4vw, 76px);
  font-weight: 900;
  line-height: .98;
  letter-spacing: -.052em;
}

.ac-public-lead {
  max-width: 720px;
  margin: 0;
  color: #5e7089;
  font-size: 18px;
  line-height: 1.7;
}

.ac-public-hero-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 28px;
}

.ac-btn-large {
  min-height: 50px;
  padding-left: 20px;
  padding-right: 20px;
  font-size: 14px;
}

.ac-public-trust-row {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 26px;
}

.ac-public-trust-row span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 31px;
  padding: 5px 10px;
  border: 1px solid #dce7f3;
  border-radius: 999px;
  background: rgba(255,255,255,.78);
  color: #58708f;
  font-size: 11px;
  font-weight: 780;
}

.ac-public-trust-row span::before {
  content: "✓";
  display: inline-grid;
  width: 17px;
  height: 17px;
  place-items: center;
  border-radius: 50%;
  background: var(--ac-green-soft);
  color: var(--ac-green);
  font-size: 10px;
  font-weight: 900;
}

.ac-public-login-card {
  position: relative;
  z-index: 2;
  padding: 30px;
  border: 1px solid #d9e4f1;
  border-radius: 24px;
  background: rgba(255,255,255,.97);
  box-shadow: 0 24px 55px rgba(17,45,86,.14);
}

.ac-public-login-badge,
.ac-public-kicker {
  color: var(--ac-blue);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.ac-public-login-card h2 {
  margin: 9px 0 6px;
  color: var(--ac-navy);
  font-size: 32px;
  line-height: 1.08;
  letter-spacing: -.035em;
}

.ac-public-login-card > p {
  margin: 0 0 22px;
  color: var(--ac-muted);
  font-size: 13px;
}

.ac-public-login-error {
  margin: 0 0 16px;
  padding: 12px 13px;
  border: 1px solid #f0c5cc;
  border-radius: 12px;
  background: #fff2f4;
  color: #9d3042;
  font-size: 12px;
  font-weight: 700;
}

.ac-public-login-form {
  display: grid;
  gap: 9px;
}

.ac-public-login-form > label,
.ac-public-password-row label {
  color: var(--ac-navy-2);
  font-size: 12px;
  font-weight: 800;
}

.ac-public-login-form input[type="email"],
.ac-public-login-form input[type="password"] {
  width: 100%;
  min-height: 48px;
  padding: 10px 13px;
  border: 1px solid #cad8e8;
  border-radius: 11px;
  background: #fbfdff;
  color: var(--ac-navy);
  outline: none;
  transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.ac-public-login-form input[type="email"]:focus,
.ac-public-login-form input[type="password"]:focus {
  border-color: #79aaf0;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(23,103,232,.09);
}

.ac-public-password-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 3px;
}

.ac-public-password-row a {
  color: var(--ac-blue);
  font-size: 11px;
  font-weight: 800;
  text-decoration: none;
}

.ac-public-remember {
  display: flex !important;
  align-items: center;
  gap: 8px;
  margin: 4px 0 6px;
  color: var(--ac-muted) !important;
  font-weight: 650 !important;
}

.ac-public-remember input {
  width: 16px;
  height: 16px;
  margin: 0;
  accent-color: var(--ac-blue);
}

.ac-public-signin-button {
  width: 100%;
  min-height: 50px;
  border: 0;
  cursor: pointer;
}

.ac-public-new-author {
  display: grid;
  gap: 3px;
  margin-top: 18px;
  padding-top: 17px;
  border-top: 1px solid var(--ac-line);
  text-align: center;
}

.ac-public-new-author span {
  color: var(--ac-muted);
  font-size: 11px;
  font-weight: 700;
}

.ac-public-new-author a {
  color: var(--ac-blue);
  font-size: 13px;
  font-weight: 850;
  text-decoration: none;
}

.ac-public-section {
  padding: 78px 0 42px;
}

.ac-public-section-heading {
  max-width: 850px;
  margin: 0 auto 28px;
  text-align: center;
}

.ac-public-section-heading h2,
.ac-public-process-copy h2,
.ac-public-cta h2 {
  margin: 9px 0 12px;
  color: var(--ac-navy);
  font-size: clamp(30px, 4vw, 48px);
  line-height: 1.04;
  letter-spacing: -.04em;
}

.ac-public-section-heading p,
.ac-public-process-copy p,
.ac-public-cta p {
  margin: 0;
  color: var(--ac-muted);
  font-size: 15px;
  line-height: 1.75;
}

.ac-public-benefit-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 16px;
}

.ac-public-benefit-card {
  min-height: 220px;
  padding: 22px;
  border: 1px solid #dfe8f4;
  border-radius: 18px;
  background: #fff;
  box-shadow: var(--ac-shadow-sm);
}

.ac-public-benefit-card h3 {
  margin: 16px 0 8px;
  color: var(--ac-navy);
  font-size: 17px;
  line-height: 1.25;
  letter-spacing: -.02em;
}

.ac-public-benefit-card p {
  margin: 0;
  color: var(--ac-muted);
  font-size: 13px;
  line-height: 1.65;
}

.ac-public-icon {
  display: inline-grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 900;
}

.ac-public-icon.is-blue {
  background: var(--ac-blue-soft);
  color: var(--ac-blue);
}

.ac-public-icon.is-teal {
  background: var(--ac-teal-soft);
  color: var(--ac-teal);
}

.ac-public-icon.is-gold {
  background: var(--ac-gold-soft);
  color: #9a6c13;
}

.ac-public-icon.is-purple {
  background: var(--ac-purple-soft);
  color: var(--ac-purple);
}

.ac-public-process {
  display: grid;
  grid-template-columns: minmax(0,.75fr) minmax(0,1.25fr);
  gap: 42px;
  align-items: center;
  margin: 30px 0 72px;
  padding: 40px;
  border: 1px solid #d9e5f2;
  border-radius: 24px;
  background: linear-gradient(135deg, #fff, #f5f9ff);
  box-shadow: var(--ac-shadow);
}

.ac-public-process-steps {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
}

.ac-public-process-steps div {
  display: flex;
  align-items: center;
  gap: 11px;
  min-height: 60px;
  padding: 11px 13px;
  border: 1px solid #e0e9f3;
  border-radius: 14px;
  background: rgba(255,255,255,.88);
  color: var(--ac-navy-2);
  font-size: 12px;
  font-weight: 800;
}

.ac-public-process-steps strong {
  display: inline-grid;
  width: 32px;
  height: 32px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 50%;
  background: var(--ac-blue);
  color: #fff;
  font-size: 11px;
}

.ac-public-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 34px;
  padding: 38px 40px;
  border-radius: 24px;
  background:
    radial-gradient(circle at 92% 10%, rgba(255,217,129,.18), transparent 24%),
    linear-gradient(135deg, #0c2146, #153966 68%, #1b4779);
  box-shadow: var(--ac-shadow-lg);
}

.ac-public-cta h2 {
  max-width: 720px;
  color: #fff;
}

.ac-public-cta p {
  max-width: 760px;
  color: #c9d8ea;
}

.ac-public-cta .ac-public-kicker {
  color: #8dbbff;
}

.ac-public-cta-actions {
  display: flex;
  gap: 10px;
  flex: 0 0 auto;
  flex-wrap: wrap;
}

.ac-public-cta .ac-btn-secondary {
  border-color: rgba(255,255,255,.28);
  background: rgba(255,255,255,.08);
  color: #fff;
}

.ac-public-cta .ac-btn-secondary:hover,
.ac-public-cta .ac-btn-secondary:focus-visible {
  background: rgba(255,255,255,.15);
  color: #fff;
}

.ac-public-terms-note {
  max-width: 900px;
  margin: 18px auto 0;
  color: #7b899d;
  font-size: 11px;
  line-height: 1.6;
  text-align: center;
}

.ac-public-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  width: min(calc(100% - 48px), 1320px);
  margin: 0 auto;
  padding: 24px 0 34px;
  color: #71819a;
  font-size: 11px;
}

.ac-public-footer-links {
  display: flex;
  gap: 16px;
}

.ac-public-footer a {
  color: #58708f;
  font-weight: 750;
  text-decoration: none;
}

@media (max-width: 1080px) {
  .ac-public-nav a:not(.ac-public-nav-cta) {
    display: none;
  }

  .ac-public-hero {
    grid-template-columns: 1fr;
    padding: 42px;
  }

  .ac-public-login-card {
    max-width: 620px;
  }

  .ac-public-benefit-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .ac-public-process {
    grid-template-columns: 1fr;
  }

  .ac-public-cta {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 700px) {
  .ac-public-topbar-inner,
  .ac-public-main,
  .ac-public-footer {
    width: min(calc(100% - 24px), 1320px);
  }

  .ac-public-topbar-inner {
    min-height: 68px;
  }

  .ac-public-topbar .ac-brand-logo {
    width: 94px;
  }

  .ac-public-topbar .ac-brand-divider {
    display: none;
  }

  .ac-public-nav .ac-public-nav-cta {
    padding: 10px 12px;
    font-size: 11px;
  }

  .ac-public-main {
    padding-top: 16px;
  }

  .ac-public-hero {
    gap: 28px;
    padding: 28px 20px 22px;
    border-radius: 22px;
  }

  .ac-public-hero h1 {
    font-size: clamp(39px, 11.5vw, 56px);
  }

  .ac-public-lead {
    font-size: 15px;
  }

  .ac-public-hero-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .ac-public-hero-actions .ac-btn,
  .ac-public-cta-actions,
  .ac-public-cta-actions .ac-btn {
    width: 100%;
  }

  .ac-public-login-card {
    padding: 22px 18px;
    border-radius: 18px;
  }

  .ac-public-section {
    padding-top: 52px;
  }

  .ac-public-benefit-grid,
  .ac-public-process-steps {
    grid-template-columns: 1fr;
  }

  .ac-public-benefit-card {
    min-height: 0;
  }

  .ac-public-process {
    gap: 26px;
    margin-bottom: 52px;
    padding: 26px 20px;
  }

  .ac-public-cta {
    padding: 28px 20px;
  }

  .ac-public-footer {
    align-items: flex-start;
    flex-direction: column;
  }
}


/* ==========================================================================
   PayPal + Author Book Store — Build 1.4
   ========================================================================== */

.ac-book-store-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 18px;
}

.ac-book-store-card {
  overflow: hidden;
  border: 1px solid var(--ac-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: var(--ac-shadow-sm);
}

.ac-book-cover-wrap {
  display: block;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: linear-gradient(135deg,#edf4ff,#f8fbff);
  text-decoration: none;
}

.ac-book-cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ac-book-cover-placeholder {
  display: grid;
  width: 100%;
  height: 100%;
  min-height: 260px;
  place-items: center;
  background:
    radial-gradient(circle at 70% 20%, rgba(215,154,36,.16), transparent 24%),
    linear-gradient(145deg,#eaf3ff,#f8fbff);
  color: var(--ac-blue);
  font-size: 22px;
  font-weight: 900;
  letter-spacing: .06em;
}

.ac-book-store-content {
  padding: 18px;
}

.ac-book-store-content h2 {
  margin: 0;
  color: var(--ac-navy);
  font-size: 18px;
  line-height: 1.25;
}

.ac-book-store-content h2 a {
  text-decoration: none;
}

.ac-book-subtitle {
  margin: 5px 0 0;
  color: var(--ac-muted);
  font-size: 12px;
  line-height: 1.45;
}

.ac-book-author {
  margin: 10px 0 0;
  color: #5c7190;
  font-size: 12px;
  font-weight: 760;
}

.ac-book-store-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 18px;
}

.ac-book-store-footer > strong {
  color: var(--ac-navy);
  font-size: 21px;
  letter-spacing: -.03em;
}

.ac-book-detail {
  display: grid;
  grid-template-columns: minmax(260px,390px) minmax(0,1fr);
  gap: 44px;
  align-items: start;
  padding: 34px;
  border: 1px solid var(--ac-line);
  border-radius: 24px;
  background: #fff;
  box-shadow: var(--ac-shadow);
}

.ac-book-detail-cover {
  overflow: hidden;
  border-radius: 18px;
  background: #f4f8fd;
  box-shadow: 0 18px 42px rgba(17,45,86,.13);
}

.ac-book-detail-cover img {
  display: block;
  width: 100%;
  height: auto;
}

.ac-book-detail-copy h1 {
  margin: 10px 0 8px;
  color: var(--ac-navy);
  font-size: clamp(36px,5vw,62px);
  line-height: 1;
  letter-spacing: -.045em;
}

.ac-book-detail-subtitle {
  margin: 0;
  color: #5f738f;
  font-size: 18px;
  line-height: 1.45;
}

.ac-book-description {
  max-width: 850px;
  margin-top: 24px;
  color: var(--ac-text);
  font-size: 15px;
  line-height: 1.75;
}

.ac-book-buy-card {
  display: grid;
  gap: 18px;
  max-width: 560px;
  margin-top: 28px;
  padding: 22px;
  border: 1px solid #d8e5f4;
  border-radius: 18px;
  background: linear-gradient(135deg,#f8fbff,#fff);
  box-shadow: var(--ac-shadow-sm);
}

.ac-book-buy-card > div:first-child {
  display: grid;
  gap: 2px;
}

.ac-book-buy-card small {
  color: var(--ac-muted);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.ac-book-buy-card strong {
  color: var(--ac-navy);
  font-size: 34px;
  letter-spacing: -.04em;
}

.ac-book-buy-card span {
  color: #607792;
  font-size: 12px;
}

.ac-paypal-checkout-panel {
  display: grid;
  gap: 14px;
  max-width: 560px;
}

paypal-button {
  display: block;
  min-height: 48px;
}

.ac-paypal-message {
  min-height: 18px;
  color: #58708e;
  font-size: 12px;
  font-weight: 700;
}

.ac-paypal-message.is-error {
  color: var(--ac-danger);
}

.ac-paypal-download {
  display: grid;
  gap: 10px;
  padding: 15px;
  border: 1px solid #bfe8da;
  border-radius: 13px;
  background: #edf9f5;
}

.ac-paypal-download[hidden] {
  display: none;
}

.ac-paypal-download strong {
  color: #176d57;
  font-size: 14px;
}

@media (max-width: 1100px) {
  .ac-book-store-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }
}

@media (max-width: 840px) {
  .ac-book-store-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .ac-book-detail {
    grid-template-columns: 1fr;
    padding: 24px;
  }

  .ac-book-detail-cover {
    max-width: 390px;
  }
}

@media (max-width: 560px) {
  .ac-book-store-grid {
    grid-template-columns: 1fr;
  }

  .ac-book-detail {
    padding: 18px;
  }
}

/* Shared public Author eBook promotion box */
.htg-author-ebook-box{background:#fff;border:1px solid #dfe5ec;border-radius:12px;padding:14px;box-shadow:0 4px 18px rgba(25,40,60,.06);margin:16px 0;max-width:320px}
.htg-author-ebook-kicker{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#607086;margin-bottom:8px}
.htg-author-ebook-cover{display:block;width:100%;max-height:280px;object-fit:contain;border-radius:8px;background:#f3f5f7;margin-bottom:10px}
.htg-author-ebook-box h3{font-size:17px;line-height:1.3;margin:8px 0 4px}
.htg-author-ebook-box h3 a{text-decoration:none}
.htg-author-ebook-author{font-size:13px;color:#667085;margin:0 0 8px}
.htg-author-ebook-price{font-weight:800;margin:8px 0 12px}
.htg-author-ebook-button{display:inline-block;padding:9px 13px;border-radius:7px;background:#1d4ed8;color:#fff!important;text-decoration:none;font-weight:700}
