@font-face {
  font-family: 'Noto Sans SC'; src: url('/gs/fonts/NotoSansSC-Variable.ttf') format('truetype');
  font-weight: 100 900; font-style: normal; font-display: swap;
}
:root { --paper: #f5f0e6; --paper-panel: #fcf9f2; --warm-ink: #514b40; --warm-muted: #7b7264; --warm-line: #e1d8c9; --olive: #69705b; }
.company-site, .business-page { font-family: 'Noto Sans SC', sans-serif; }
.company-site:not([data-theme='dark']), .business-page {
  --ink: var(--warm-ink); --muted: var(--warm-muted); --line: var(--warm-line); --white: var(--paper-panel); --a: var(--olive);
  color: var(--warm-ink); background-color: var(--paper);
  background-image: url('/gs/paper-grain.svg'); background-size: 180px 180px;
}
.company-site:not([data-theme='dark']) .company-sidebar { background: #f9f5ed; border-color: var(--warm-line); }
.company-site:not([data-theme='dark']) .company-nav a[aria-current='page'] { background: #eae5d8; color: #5e614f; font-weight: 450; }
.company-site:not([data-theme='dark']) .secondary { background: var(--paper-panel); border-color: var(--warm-line); color: #706754; font-weight: 400; }
.company-site:not([data-theme='dark']) .company-roles button { background: transparent; color: var(--warm-muted); border-color: transparent; }
.company-site:not([data-theme='dark']) .company-roles [aria-pressed='true'],
.company-site:not([data-theme='dark']) .primary, .business-page .primary { background: var(--olive); border-color: var(--olive); color: #fffdf7; box-shadow: none; font-weight: 450; }
.company-site:not([data-theme='dark']) .eyebrow { color: #82755f; font-weight: 450; }
.company-site:not([data-theme='dark']) .company-composer { background: #fcfaf4; border-color: var(--warm-line); box-shadow: 0 12px 40px #75634808; }
.company-site:not([data-theme='dark']) #current-role { color: #8a806d; }
.company-site:not([data-theme='dark']) .site-section h2 { font-weight: 350; }
.company-site:not([data-theme='dark']) .module-grid article::before { background: #9e9f83; }
.company-site:not([data-theme='dark']) .module-grid article:nth-child(2n)::before { background: #b19e82; }
.company-site:not([data-theme='dark']) .tag { background: #eee8dc; border-color: var(--warm-line); color: #776b58; }
.company-site:not([data-theme='dark']) .field label, .business-page .field label { color: #6d6353; font-weight: 450; }
.company-site:not([data-theme='dark']) .field input, .company-site:not([data-theme='dark']) .field textarea,
.company-site:not([data-theme='dark']) .field select, .business-page .field input { background: #fffdf7; border-color: var(--warm-line); color: var(--warm-ink); }
.company-site:not([data-theme='dark']) .field input:focus, .company-site:not([data-theme='dark']) .field textarea:focus,
.business-page .field input:focus { border-color: #9b9f84; box-shadow: 0 0 0 3px #9b9f8417; }
.company-site:not([data-theme='dark']) .company-welcome h1 { font-weight: 300; }
.company-site:not([data-theme='dark']) .company-account { color: #776c58; }

/* Keep platform management in the same paper palette as the public experience. */
.company-site.management-site { background: var(--paper) !important; color: var(--warm-ink); --ink: var(--warm-ink); --muted: var(--warm-muted); --line: var(--warm-line); --white: var(--paper-panel); }
.management-site .admin-sidebar { background: #eae3d6; color: #625a4b; border-right: 1px solid #ded5c5; }
.management-site .admin-brand, .management-site .admin-monogram, .management-site .admin-monogram span { color: #626b55; }
.management-site .admin-brand small, .management-site .admin-nav-label, .management-site .admin-sidebar-note { color: #8a806d; }
.management-site .admin-sidebar nav a:hover, .management-site .admin-sidebar nav a:focus-visible { background: #ded6c6; color: #615c4a; }
.management-site .admin-return { color: #7d705b; border-color: #d3c9b7; }
.management-site .admin-topbar { color: #8a806d; border-color: var(--warm-line); }
.management-site .admin-intro h1 { font-weight: 300; color: var(--warm-ink); }
.management-site .admin-intro p:not(.eyebrow), .management-site .admin-settings-grid article p { color: var(--warm-muted); }
.management-site .admin-panel, .management-site .admin-stats article { background: var(--paper-panel); border-color: var(--warm-line); }
.management-site .admin-panel input, .management-site .admin-panel textarea { background: #fffdf7; }
.management-site .admin-stats strong { color: #706c56; font-weight: 350; }
.management-site .admin-stats article > span, .management-site .admin-stats p, .management-site .admin-footer { color: #8a806d; }
.management-site .admin-access-note { background: #eee8dc; border-color: #dfd5c3; color: #857760; }
.management-site .admin-access-note.authorized { background: #e9ebdd; border-color: #d9ddc8; color: #6d7459; }
.management-site .admin-card-icon { background: #ece9dc; color: #818368; }
.management-site .admin-page-links a, .management-site .admin-brand-actions { border-color: var(--warm-line); }
.management-site .admin-page-links a:hover { background: #f0ebdf; }
.management-site .admin-page-links span, .management-site .admin-page-links small { color: #948872; }
.management-site .admin-section-title h2, .management-site .admin-settings-grid h3 { font-weight: 400; }
.management-site.admin-locked .admin-shell { display: none; }
.management-site.admin-locked { min-height: 100dvh; background-image: url('/gs/paper-grain.svg') !important; }
.management-site.admin-locked #editor-login-close { display: none; }
.management-site dialog::backdrop { background: #534a362b; backdrop-filter: blur(3px); }
.management-site.admin-locked dialog::backdrop { background: transparent; backdrop-filter: none; }
#editor-login-form { padding: 10px; }
#editor-login-form h2 { font-weight: 350; margin: 18px 0 12px; }
#editor-login-form .primary { width: 100%; margin-top: 8px; }
.login-recovery { font-size: 11px; color: #91836c; margin: 12px 0; }
.login-recovery summary { cursor: pointer; margin-bottom: 12px; }

.business-header { max-width: 1160px; margin: auto; padding: 30px 28px; display: flex; align-items: center; justify-content: space-between; gap: 18px; border-bottom: 1px solid var(--warm-line); }
.business-header a { text-decoration: none; font-size: 12px; color: #8a806d; }
.business-header .business-brand { font-size: 24px; color: #625b4b; font-weight: 400; letter-spacing: 3px; }
.business-brand small { display: block; font-size: 9px; font-weight: 400; letter-spacing: 2px; color: #a09580; margin-top: 6px; }
.business-main { width: min(1100px,100%); margin: 0 auto; padding: 64px 28px 48px; display: grid; grid-template-columns: 1.1fr 1fr; gap: 76px; align-items: start; }
.business-intro { padding-top: 28px; }
.business-intro .eyebrow { color: #94866c; font-weight: 400; }
.business-intro h1 { font-size: clamp(30px,3.3vw,44px); font-weight: 300; line-height: 1.6; letter-spacing: .02em; margin: 18px 0 24px; }
.business-intro > p:not(.eyebrow) { font-size: 14px; color: #91836c; line-height: 2; }
.business-steps { margin-top: 44px; display: grid; gap: 25px; }
.business-steps article { display: flex; gap: 22px; align-items: start; }
.business-steps article > span { color: #b2a48a; font-size: 13px; border: 1px solid #dcd2bf; border-radius: 50%; width: 34px; height: 34px; display: grid; place-items: center; flex-shrink: 0; }
.business-steps h3 { font-size: 14px; font-weight: 450; margin: 3px 0 8px; }
.business-steps p { font-size: 12px; line-height: 1.9; color: #9a8e78; margin: 0; }
.business-account { border-radius: 20px; background: var(--paper-panel); border-color: var(--warm-line); padding: 30px; box-shadow: 0 18px 60px #75634806; }
.business-tabs { display: grid; grid-template-columns: repeat(2,1fr); gap: 6px; background: #eee8dc; border-radius: 10px; padding: 5px; margin-bottom: 30px; }
.business-tabs button { background: transparent; border: 0; border-radius: 7px; padding: 11px 6px; color: #a09279; font-size: 13px; }
.business-tabs [aria-selected='true'] { background: #fffaf0; color: #706753; box-shadow: 0 2px 5px #75634807; }
.business-account h2 { font-size: 25px; font-weight: 350; margin: 0 0 14px; }
.business-account p.muted { font-size: 12px; line-height: 1.9; margin-bottom: 26px; }
.business-account .field { margin-bottom: 20px; }
.business-account input { padding: 12px 13px; border-radius: 9px; }
.business-account .primary { width: 100%; padding: 13px; border-radius: 10px; font-size: 13px; }
.business-account [hidden] { display: none; }
.business-admin-link { border-top: 1px solid var(--warm-line); margin-top: 26px; padding-top: 21px; font-size: 10px; color: #a39780; }
.business-admin-link a { color: #7e7f65; margin-left: 8px; }
.business-footer { max-width: 1044px; margin: 0 auto; padding: 26px 28px 36px; border-top: 1px solid var(--warm-line); color: #9e927b; font-size: 10px; line-height: 1.9; }
.business-footer p { margin: 0 0 6px; }
.business-footer span { display: block; margin-top: 18px; }
@media(max-width:800px) {
  .business-main { grid-template-columns: 1fr; gap: 36px; padding-top: 26px; max-width: 600px; }
  .business-intro h1 { font-size: 32px; }
  .business-steps { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; margin-top: 26px; }
  .business-steps article { display: block; }
  .business-steps article > span { margin-bottom: 10px; }
  .business-steps h3 { font-size: 12px; }
  .business-steps p { font-size: 10px; }
}
@media(max-width:450px) {
  .business-header { padding: 22px; }
  .business-main { padding: 24px 20px; }
  .business-account { padding: 23px; }
  .business-intro h1 { font-size: 28px; }
  .management-site .admin-topbar { flex-wrap: wrap; padding: 18px 0; }
}
