:root {
    --ui-ink: #0f172a;
    --ui-secondary: #334155;
    --ui-muted: #475569;
    --ui-accent: #0369a1;
    --ui-accent-strong: #075985;
    --ui-page: #f8fafc;
    --ui-surface: #fff;
    --ui-soft: #e8ecf1;
    --ui-border: #cbd5e1;
    --ui-success: #166534;
    --ui-warning: #92400e;
    --ui-danger: #b91c1c;
    --ui-radius-sm: 6px;
    --ui-radius-md: 10px;
    --ui-radius-lg: 14px;
    --ui-shadow: 0 1px 3px rgb(15 23 42 / 7%), 0 8px 20px rgb(15 23 42 / 4%);
    --ui-focus: 0 0 0 3px rgb(3 105 161 / 24%);
}

html { scroll-behavior: smooth; }
body { color: var(--ui-ink); font-size: 16px; line-height: 1.55; text-rendering: optimizeLegibility; }
button, a, input, select, textarea { touch-action: manipulation; }
a, button { -webkit-tap-highlight-color: transparent; }
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
    outline: 3px solid var(--ui-accent);
    outline-offset: 2px;
}
::selection { background: #bae6fd; color: #082f49; }
.skip-link { position: fixed; top: 8px; left: 8px; z-index: 2000; display: block; transform: translateY(-160%); border-radius: 6px; background: #0f172a; color: #fff; padding: 12px 16px; font-size: 14px; }
.skip-link:focus { transform: translateY(0); }

/* Public pages */
.site-header {
    min-height: 76px;
    height: auto;
    padding-inline: max(calc((100vw - 1240px) / 2), 24px);
    border-bottom-color: #dbe3ec;
    box-shadow: 0 1px 0 rgb(15 23 42 / 2%);
}
.site-header nav { gap: clamp(16px, 2.2vw, 30px); font-size: 14px; }
.site-header nav a { min-height: 44px; display: inline-flex; align-items: center; }
.brand { letter-spacing: .04em; }
.brand small { font-size: 10px; letter-spacing: .08em; color: #475569; }
.brand-logo { object-fit: contain; }
.hero h1 { max-width: 13ch; line-height: 1.04; }
.hero-copy > p { font-size: 17px; line-height: 1.7; }
.hero-actions .button { min-height: 48px; }
.hero-slider-controls { display: flex; align-items: center; justify-content: center; gap: 8px; position: absolute; right: max(calc((100vw - 1240px) / 2), 24px); bottom: 58px; z-index: 2; }
.hero-slider-controls button { min-width: 44px; min-height: 44px; border: 1px solid rgb(255 255 255 / 55%); border-radius: 6px; background: rgb(7 26 51 / 72%); color: #fff; cursor: pointer; }
.hero-slider-controls [data-slide-to] { min-width: 18px; width: 18px; height: 18px; min-height: 18px; border-radius: 50%; }
.hero-slider-controls [data-slide-to].active { background: #fff; }
.hero-slider-controls [data-slide-toggle] { padding-inline: 10px; font-size: 12px; }
.hero-proof span strong { font-size: 13px; }
.hero-proof span small, .hero-bottom { font-size: 12px; }
.quick-track { width: min(1190px, calc(100% - 48px)); border-radius: var(--ui-radius-lg); box-shadow: var(--ui-shadow); }
.quick-track h2 { font-size: 24px; }
.quick-track p, .section-heading > p { font-size: 15px; line-height: 1.65; color: #475569; }
.section { width: min(1190px, calc(100% - 64px)); padding-block: clamp(64px, 8vw, 100px); }
.section-heading { gap: 28px; margin-bottom: 30px; }
.section-heading h2, .contact-cta h2 { line-height: 1.12; }
.service-grid { gap: 18px; }
.service-card { min-width: 0; min-height: 0; padding: 24px; border-radius: var(--ui-radius-md); transition: border-color .18s ease, box-shadow .18s ease; }
.service-card:hover { transform: none; border-color: #94a3b8; box-shadow: var(--ui-shadow); }
.service-card h3 { font-size: 18px; line-height: 1.35; }
.service-card p { min-height: 0; color: #475569; font-size: 15px; line-height: 1.65; }
.service-card > a { min-height: 44px; align-items: center; font-size: 14px; }
.service-icon { margin-bottom: 17px; }
.stats-band small { color: #475569; font-size: 13px; }
.contact-cta { border-radius: var(--ui-radius-lg); background: #123b5d; }
.contact-cta p { font-size: 15px; }
.site-footer { font-size: 14px; line-height: 1.55; }
.footer-main { width: min(1240px, 100%); margin-inline: auto; }
.footer-column { gap: 12px; }
.footer-column strong { color: #fff; font-size: 14px; }
.footer-column a, .footer-column span { font-size: 14px; color: #d0dae6; overflow-wrap: anywhere; }
.footer-bottom { font-size: 12px; }
.status-page, .login-page { background: var(--ui-page); }
.status-wrap { max-width: 800px; }
.back-link { min-height: 44px; display: inline-flex; align-items: center; margin-bottom: 28px; font-size: 14px; }
.status-wrap h1, .login-card h1 { font-size: clamp(30px, 4vw, 42px); line-height: 1.12; }
.muted { color: #475569; font-size: 15px; line-height: 1.65; }
.result-card, .login-card { border-color: var(--ui-border); border-radius: var(--ui-radius-lg); box-shadow: var(--ui-shadow); }
.status-form input, .track-form input, .login-form input, .search-form input,
.ai-form input, .ai-form textarea, .field-label input, .field-label textarea,
.field-label select, .form-dialog label > input, .form-dialog label > textarea,
.form-dialog label > select { min-height: 46px; border-radius: var(--ui-radius-sm); font-size: 16px; }
.button { min-height: 46px; border-radius: var(--ui-radius-sm); font-size: 14px; transition: background-color .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease; }
.button:hover { transform: none; filter: none; }
.button-dark { background: #123b5d; }
.button-dark:hover { background: #0c2c46; }

/* Admin shell and information hierarchy */
.admin-body { background: var(--ui-page); font-size: 14px; }
.admin-sidebar { width: 276px; border-right-color: var(--ui-border); padding: 18px 14px 12px; box-shadow: 1px 0 0 rgb(15 23 42 / 2%); }
.admin-sidebar > .brand { min-height: 58px; padding: 0 10px 16px; }
.tenant-chip { padding-block: 14px; }
.tenant-avatar, .user-avatar { border-radius: 8px; }
.tenant-chip b, .sidebar-user b { font-size: 13px; }
.tenant-chip small, .sidebar-user small { font-size: 12px; color: #475569; }
.admin-nav { scrollbar-color: #cbd5e1 transparent; scrollbar-width: thin; }
.nav-group { margin-top: 17px; }
.nav-group > small { padding: 0 11px 7px; color: #475569; font-size: 10px; letter-spacing: .1em; }
.nav-link { min-height: 42px; height: auto; padding: 6px 10px; gap: 11px; margin: 2px 0; border-radius: 7px; font-size: 13px; line-height: 1.3; }
.nav-link > span { width: 18px; font-size: 15px; }
.nav-link.active { color: #075985; background: #e0f2fe; }
.admin-main { min-width: 0; }
.admin-topbar { height: 62px; padding-inline: clamp(16px, 2.2vw, 32px); }
.crumb { color: #334155; font-size: 13px; }
.topbar-right { color: #334155; font-size: 12px; }
.topbar-date { margin-left: 10px; }
.admin-content { width: 100%; max-width: 1560px; padding: clamp(22px, 3vw, 36px) clamp(18px, 3vw, 40px) 24px; }
.page-heading, .page-intro { align-items: flex-end; gap: 20px; margin-bottom: 24px; }
.page-heading h1, .page-intro h1 { margin: 5px 0 8px; color: var(--ui-ink); font-size: clamp(24px, 2.2vw, 32px); line-height: 1.16; letter-spacing: -.035em; }
.page-heading p, .page-intro p { max-width: 760px; color: #475569; font-size: 14px; line-height: 1.6; }
.section-kicker, .eyebrow { color: #075985; font-size: 11px; letter-spacing: .12em; }
.metric-grid { gap: 14px; margin-bottom: 20px; }
.metric-card, .panel { border: 1px solid #dbe3ec; border-radius: var(--ui-radius-md); box-shadow: none; }
.metric-card { padding: 18px; }
.metric-card small { color: #475569; font-size: 11px; letter-spacing: .07em; }
.metric-card > strong { margin-top: 12px; font-size: clamp(24px, 2vw, 30px); }
.metric-card p { color: #475569; font-size: 13px; line-height: 1.5; }
.panel-heading { min-height: 66px; padding: 16px 20px; }
.panel-heading h2 { color: var(--ui-ink); font-size: 15px; line-height: 1.3; }
.panel-heading p { color: #475569; font-size: 13px; line-height: 1.5; }
.panel-heading > a { font-size: 13px; }
.dashboard-columns { gap: 18px; }
.agenda-panel { min-height: 0; }
.agenda-item { gap: 14px; padding: 16px 20px; }
.agenda-item time { font-size: 13px; }
.agenda-item b { font-size: 13px; }
.agenda-item small { color: #475569; font-size: 12px; }
.table-scroll { max-width: 100%; overscroll-behavior-inline: contain; scrollbar-color: #94a3b8 #f1f5f9; }
.table-scroll table { min-width: 100%; }
th { padding: 12px 14px; color: #475569; font-size: 10px; letter-spacing: .07em; }
td { padding: 13px 14px; color: #334155; font-size: 13px; line-height: 1.45; }
td small { display: block; margin-top: 4px; color: #475569; font-size: 12px; }
.status-pill { min-height: 26px; align-items: center; padding: 4px 9px; font-size: 11px; }
.empty-cell { color: #475569 !important; font-size: 14px !important; padding: 36px 18px !important; }
.search-form { gap: 8px; }
.search-form input { min-width: 220px; }
.row-actions { gap: 6px; }
.icon-button { width: 40px; height: 40px; border-radius: 7px; }
.form-dialog { max-width: min(760px, calc(100vw - 32px)); max-height: min(90dvh, 900px); overflow: auto; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-lg); padding: 24px; box-shadow: 0 24px 70px rgb(15 23 42 / 22%); }
.form-dialog::backdrop { background: rgb(15 23 42 / 48%); backdrop-filter: blur(2px); }
.dialog-head { position: sticky; top: -24px; z-index: 1; margin: -24px -24px 20px; padding: 18px 24px; border-bottom: 1px solid #dbe3ec; background: #fff; }
.dialog-head h2 { margin: 5px 0 0; font-size: 20px; }
.dialog-head small { color: #475569; font-size: 11px; letter-spacing: .08em; }
.field-label, .login-form label, .form-dialog label { color: #334155; font-size: 14px; line-height: 1.4; }
.field-label small, .field-label .hint { color: #475569; font-size: 12px; line-height: 1.5; }
.field-label textarea, .field-label select { padding: 10px 12px; }
.check-line { min-height: 44px; color: #334155; font-size: 14px !important; }
.alert-success, .alert-error { border-radius: var(--ui-radius-sm); padding: 13px 16px; font-size: 14px; line-height: 1.5; }
.admin-footer { padding: 18px 0 4px; color: #475569; font-size: 12px; }
.notice-panel, .ops-callout { border-radius: var(--ui-radius-md); font-size: 14px; line-height: 1.55; }
.report-bars { padding: 20px; }
.report-bars > div { min-height: 42px; font-size: 13px; }
.file-list a { min-height: 58px; }
.pagination { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 8px; padding: 16px; color: #334155; font-size: 13px; }
.pagination nav { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; width: 100%; }
.pagination a, .pagination span { min-width: 40px; min-height: 40px; display: inline-flex; align-items: center; justify-content: center; border-radius: 6px; }
.pagination a { color: #075985; }
.pagination a:hover { background: #e0f2fe; }
.pagination [aria-current="page"] span { background: #075985; color: white; }

/* Store surfaces */
.store-hero { background: #f1f5f9; }
.store-hero-inner, .store-catalog, .store-related, .store-account-shell, .store-product-detail { width: min(1240px, calc(100% - 64px)); }
.store-hero h1 { max-width: 15ch; font-size: clamp(34px, 4.6vw, 58px); line-height: 1.08; }
.store-hero p { max-width: 62ch; font-size: 16px; line-height: 1.65; }
.store-catalog { padding-top: 44px; }
.store-section-heading h1, .store-section-heading h2, .store-account-head h1 { line-height: 1.15; }
.store-category-row { scrollbar-width: thin; }
.store-category-row a { border-radius: var(--ui-radius-sm); }
.store-product-grid { gap: 16px; }
.store-card { border-radius: var(--ui-radius-md); transition: border-color .16s ease, box-shadow .16s ease; }
.store-card:hover { transform: none; border-color: #94a3b8; box-shadow: var(--ui-shadow); }
.store-card-body { padding: 16px; }
.store-card-body > small { color: #475569; font-size: 13px; }
.store-card h3 { min-height: 0; font-size: 16px; line-height: 1.4; }
.store-card-bottom strong, .store-card-body > strong { font-size: 18px; }
.store-stock { font-size: 13px; }
.store-card-action { min-height: 44px; font-size: 14px; }
.store-auth-card, .store-summary, .store-checkout-form { border: 1px solid var(--ui-border); border-radius: var(--ui-radius-lg); box-shadow: var(--ui-shadow); }
.store-auth-card p, .store-auth-foot { font-size: 15px; line-height: 1.6; }
.store-search { max-width: 660px; }
.store-search input { flex: 1; min-width: 0; min-height: 46px; padding-inline: 12px; }
.store-products-table td, .store-products-table th { vertical-align: middle; }
.store-product-cell small { color: #475569; font-size: 12px; }
.store-cart-product input { font-size: 16px; }
.store-order-status, .store-notice, .store-tracking-box { line-height: 1.5; }

@media (min-width: 821px) and (max-width: 1180px) {
    .admin-sidebar { width: 248px; }
    .admin-main { margin-left: 248px; }
    .dashboard-columns { grid-template-columns: minmax(0, 1.2fr) minmax(260px, .8fr); }
    .store-product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
    .section { width: calc(100% - 48px); }
    .service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dashboard-columns { grid-template-columns: minmax(0, 1fr); }
    .store-product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .admin-content { padding-inline: 22px; }
}

@media (max-width: 820px) {
    .site-header { position: relative; min-height: 64px; padding-inline: 16px; gap: 12px; }
    .site-header .brand { min-width: 0; flex: 1 1 auto; }
    .site-header .brand > span:last-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .site-header .brand small { overflow: hidden; text-overflow: ellipsis; }
    .site-header nav { position: absolute; z-index: 30; top: 100%; right: 0; left: 0; display: none; max-height: calc(100dvh - 72px); overflow-y: auto; padding: 10px 16px 16px; border: 1px solid var(--ui-border); border-top: 0; background: #fff; box-shadow: var(--ui-shadow); }
    .site-header nav.open { display: grid; }
    .site-header nav a { min-height: 48px; padding-inline: 12px; border-bottom: 1px solid #e8ecf1; font-size: 15px; }
    .mobile-menu { display: grid; flex: none; min-width: 46px; min-height: 46px; place-items: center; border-radius: 7px; cursor: pointer; }
    .admin-sidebar { width: min(320px, calc(100vw - 48px)); }
    .admin-main { margin-left: 0; }
    .admin-menu-button { display: grid; width: 46px; height: 46px; min-width: 46px; min-height: 46px; place-items: center; flex: none; border-radius: 7px; }
    .admin-topbar { gap: 12px; }
    .crumb { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .topbar-right { margin-left: auto; }
}

@media (max-width: 640px) {
    .site-header { min-height: 64px; }
    .site-header .brand { min-width: 0; flex: 1; font-size: 13px; }
    .site-header .brand > span:last-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .site-header .brand small { overflow: hidden; text-overflow: ellipsis; }
    .site-header nav { top: 64px; right: 0; left: 0; display: none; max-height: calc(100dvh - 72px); overflow-y: auto; padding: 10px 16px 16px; border: 1px solid var(--ui-border); border-top: 0; background: #fff; box-shadow: var(--ui-shadow); }
    .site-header nav.open { display: grid; }
    .site-header nav a { min-height: 48px; border-bottom: 1px solid #e8ecf1; font-size: 15px; }
    .mobile-menu { display: grid; min-width: 46px; min-height: 46px; place-items: center; border-radius: 7px; cursor: pointer; }
    .hero { min-height: 590px; height: auto; }
    .hero-inner { min-height: 590px; padding: 54px 22px 116px; }
    .hero h1 { font-size: clamp(36px, 10vw, 48px); }
    .hero-copy > p { font-size: 16px; }
    .hero-note { justify-self: start; max-width: 100%; margin: 24px 0 0; }
    .hero-bottom { left: 22px; right: 22px; bottom: 20px; font-size: 10px; }
    .hero-slider-controls { right: 16px; bottom: 62px; gap: 5px; }
    .hero-slider-controls [data-slide-to] { min-width: 14px; width: 14px; height: 14px; min-height: 14px; }
    .hero-slider-controls button { min-width: 40px; min-height: 40px; }
    .hero-slider-controls [data-slide-toggle] { min-width: 44px; width: auto; padding-inline: 8px; font-size: 11px; }
    .quick-track { width: calc(100% - 24px); margin: 0 12px; padding: 22px 18px; border-radius: 0 0 10px 10px; }
    .quick-track h2 { font-size: 22px; line-height: 1.2; }
    .quick-track p { font-size: 14px; }
    .quick-track-form, .status-lookup-form { grid-template-columns: minmax(0, 1fr); }
    .quick-track-form .button, .status-lookup-form .button { width: 100%; }
    .section { width: calc(100% - 32px); margin-inline: 16px; padding-block: 58px; }
    .section-heading { align-items: flex-start; flex-direction: column; gap: 12px; margin-bottom: 22px; }
    .section-heading h2 { font-size: clamp(30px, 8vw, 38px); }
    .service-grid { grid-template-columns: minmax(0, 1fr); gap: 14px; }
    .service-card { padding: 20px; }
    .service-card h3 { font-size: 18px; }
    .service-card p { font-size: 15px; }
    .stats-band { gap: 16px; padding: 28px 18px; }
    .stats-band div { padding-left: 12px; }
    .stats-band strong { font-size: 26px; }
    .stats-band small { font-size: 12px; }
    .contact-cta { margin: 42px 14px; padding: 26px 20px; display: grid; gap: 16px; }
    .contact-cta h2 { font-size: 30px; }
    .contact-cta .button { width: 100%; }
    .site-footer { padding: 28px 18px; }
    .footer-main { grid-template-columns: minmax(0, 1fr); gap: 24px; }
    .footer-bottom { grid-template-columns: minmax(0, 1fr); gap: 8px; line-height: 1.5; }
    .admin-topbar { height: 58px; padding-inline: 10px; }
    .admin-content { padding: 20px 14px 18px; }
    .page-heading, .page-intro { align-items: stretch; flex-direction: column; gap: 12px; margin-bottom: 20px; }
    .page-heading h1, .page-intro h1 { font-size: 25px; }
    .page-heading p, .page-intro p { font-size: 14px; }
    .page-heading .button, .page-intro .button { width: 100%; }
    .metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .metric-card { min-width: 0; padding: 14px; }
    .metric-card small { font-size: 10px; }
    .metric-card > strong { font-size: clamp(20px, 6vw, 26px); }
    .metric-card p { font-size: 12px; }
    .panel-heading { align-items: flex-start; flex-wrap: wrap; padding: 14px; }
    .panel-heading h2 { font-size: 14px; }
    .panel-heading p { font-size: 12px; }
    .table-scroll { margin: 0; }
    .table-scroll table { min-width: 100%; }
    .table-scroll tbody tr { padding: 10px 13px; }
    .table-scroll tbody td { gap: 10px; padding: 10px 0; font-size: 14px; }
    .table-scroll tbody td::before { font-size: 11px; }
    .row-actions { gap: 8px; }
    .icon-button { width: 44px; height: 44px; }
    .search-form, .store-search { width: 100%; max-width: none; }
    .search-form input, .store-search input { flex: 1; min-width: 0; }
    .form-dialog { width: calc(100vw - 16px); max-width: none; max-height: calc(100dvh - 16px); padding: 18px; border-radius: 12px; }
    .dialog-head { top: -18px; margin: -18px -18px 16px; padding: 15px 18px; }
    .dialog-head h2 { font-size: 18px; }
    .form-grid { grid-template-columns: minmax(0, 1fr); gap: 12px; }
    .field-label:has(textarea) { grid-column: auto; }
    .ops-callout, .notice-panel { align-items: flex-start; flex-direction: column; padding: 15px; }
    .report-bars { padding: 14px; }
    .report-bars > div { grid-template-columns: minmax(72px, 100px) minmax(30px, 1fr) 24px; gap: 8px; font-size: 12px; }
    .file-list { grid-template-columns: minmax(0, 1fr); padding-inline: 12px; }
    .file-upload { flex-wrap: wrap; padding: 14px; }
    .pagination { justify-content: flex-start; overflow-x: auto; }
    .pagination nav { align-items: flex-start; flex-direction: column; }
    .service-form-design-preview { max-width: 100%; }
}

@media (max-width: 430px) {
    .store-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .store-card-body { padding: 11px; }
    .store-card h3 { font-size: 14px; }
    .store-card-bottom { align-items: flex-start; flex-direction: column; }
    .store-card-bottom strong { font-size: 16px; }
    .store-condition { max-width: calc(100% - 16px); font-size: 11px; }
    .store-category-row { gap: 7px; padding-bottom: 14px; }
    .store-category-row a { padding-inline: 11px; font-size: 13px; }
    .store-category-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .store-category-summary p { grid-column: 1 / -1; }
    .result-grid { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 360px) {
    .site-header { padding-inline: 10px; }
    .site-header .brand { font-size: 12px; }
    .site-header .brand small { font-size: 9px; }
    .hero-bottom { left: 18px; right: 18px; display: grid; gap: 5px; font-size: 9px; letter-spacing: .1em; line-height: 1.4; }
    .admin-content { padding-inline: 10px; }
    .metric-grid { gap: 8px; }
    .metric-card { padding: 11px; }
    .store-product-grid { grid-template-columns: minmax(0, 1fr); }
    .store-card-image { aspect-ratio: 1.2; }
    .contact-cta h2 { font-size: 27px; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* SEO service catalog and detail pages */
.service-index-hero,
.service-detail-hero {
    color: #fff;
    background: #102a43;
}
.service-index-inner,
.service-detail-inner {
    width: min(1240px, calc(100% - 48px));
    margin-inline: auto;
    padding: 26px 0 54px;
}
.service-index-inner { padding-block: 30px 58px; }
.breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-bottom: 24px;
    color: #d7e3ef;
    font-size: 13px;
    line-height: 1.5;
}
.breadcrumbs a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.service-index-inner .section-kicker,
.service-detail-inner .section-kicker { color: #9bc9f4; }
.service-index-inner h1,
.service-detail-inner h1 {
    max-width: 19ch;
    margin: 12px 0 16px;
    color: #fff;
    font: 700 clamp(32px, 4.4vw, 52px)/1.12 Manrope, sans-serif;
    letter-spacing: -.035em;
}
.service-index-inner h1 em { color: #a8cbf3; font-style: normal; }
.service-index-inner > p,
.service-detail-inner > p {
    max-width: 780px;
    margin: 0;
    color: #e1eaf4;
    font-size: 17px;
    line-height: 1.7;
}
.service-index-inner > .button { margin-top: 24px; }
.service-detail-inner .hero-actions { flex-wrap: wrap; margin-top: 24px; }
.public-page-hero .service-index-inner { padding-block: 30px 58px; }
.public-page-hero .service-index-inner h1 { max-width: 22ch; }
.public-page-content { min-height: 360px; padding: 56px 20px 76px; background: #f5f7fb; }
.public-page-content .status-wrap { max-width: 900px; }
.public-content-heading { margin: 0 0 8px; color: #14243a; font: 700 24px/1.25 Manrope, sans-serif; letter-spacing: -.025em; }
.public-page-content .muted { margin: 0; line-height: 1.65; }
.status-content-page .status-form { margin-top: 24px; }
.contact-content-wrap .contact-details { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.contact-content-wrap .contact-detail-address { grid-column: 1 / -1; }
.contact-content-wrap .contact-form { margin-top: 28px; }
.contact-map { margin: 28px 0; overflow: hidden; border: 1px solid var(--ui-border, #dce4ee); border-radius: 12px; background: #fff; }
.contact-map-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 20px; }
.contact-map-heading h2 { margin: 5px 0 0; font: 700 20px/1.3 Manrope, sans-serif; }
.contact-map-heading a { color: #1459a7; font-size: 14px; font-weight: 700; }
.contact-map iframe { display: block; width: 100%; height: 380px; border: 0; background: #e8eef4; }
.website-settings-panel .website-settings-form textarea { width: 100%; max-width: 100%; min-height: 110px; padding: 12px; border: 1px solid #dfe5ed; border-radius: 7px; background: #fff; color: var(--ink); font: 13px/1.55 ui-monospace, Consolas, monospace; resize: vertical; }
.website-settings-panel .website-settings-form textarea:focus { border-color: #6b9cdc; outline: 0; box-shadow: 0 0 0 3px #2674d51c; }
.service-index-section { padding-top: 64px; }
.service-grid-seo { grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; }
.service-grid-seo .service-card { min-width: 0; overflow: hidden; }
.service-grid-seo .service-card > .service-card-image-link {
    display: block;
    min-height: 0;
    margin: -24px -24px 18px;
    padding: 0;
    overflow: hidden;
    border: 0;
    border-radius: var(--ui-radius-md) var(--ui-radius-md) 0 0;
}
.service-grid-seo .service-card-image { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.service-grid-seo .service-card > a:last-child {
    display: flex;
    min-height: 44px;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    border-top: 1px solid #e2e8f0;
    padding-top: 12px;
    margin-top: 14px;
    color: #075985;
    line-height: 1.4;
}
.service-detail-main {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 320px);
    align-items: start;
    gap: clamp(28px, 5vw, 64px);
    width: min(1240px, calc(100% - 48px));
    margin: 0 auto;
    padding-block: 56px 88px;
}
.service-article { min-width: 0; color: #334155; }
.service-detail-image {
    display: block;
    width: 100%;
    max-height: 440px;
    aspect-ratio: 16 / 8.5;
    margin: 0 0 26px;
    border-radius: 12px;
    object-fit: cover;
    background: #e8eef5;
}
.service-lead { margin: 0 0 34px; color: #26374c; font-size: 18px; line-height: 1.75; }
.service-article > section { margin-top: 42px; }
.service-article > section > .section-kicker { color: #075985; }
.service-article h2,
.service-contact-card h2 { margin: 8px 0 14px; color: #14243a; font: 700 clamp(22px, 2.5vw, 29px)/1.25 Manrope, sans-serif; letter-spacing: -.02em; }
.service-article section > p,
.service-contact-card p { color: #475569; font-size: 16px; line-height: 1.7; }
.service-checklist { display: grid; gap: 10px; padding: 0; margin: 20px 0 0; list-style: none; }
.service-checklist li { display: flex; align-items: flex-start; gap: 11px; color: #334155; font-size: 15px; line-height: 1.6; }
.service-checklist li > span { flex: 0 0 22px; display: grid; width: 22px; height: 22px; place-items: center; border-radius: 50%; background: #e0f2fe; color: #075985; font-size: 13px; font-weight: 800; }
.service-steps { display: grid; gap: 12px; padding: 0; margin: 20px 0 0; list-style: none; counter-reset: service-step; }
.service-steps li { display: grid; grid-template-columns: 42px minmax(0, 1fr); align-items: start; gap: 14px; padding: 16px; border: 1px solid #dbe3ec; border-radius: 9px; background: #fff; counter-increment: service-step; }
.service-steps li > span { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 7px; background: #eaf2f8; color: #123b5d; font: 700 14px Manrope, sans-serif; }
.service-steps li > p { margin: 7px 0 0; color: #334155; font-size: 15px; line-height: 1.6; }
.service-faq details { border-bottom: 1px solid #dbe3ec; padding: 15px 0; }
.service-faq summary { position: relative; padding-right: 28px; color: #1e293b; font-size: 16px; font-weight: 700; line-height: 1.5; cursor: pointer; }
.service-faq details > p { margin: 10px 0 2px; color: #475569; font-size: 15px; line-height: 1.65; }
.related-service-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 18px; }
.related-service-links > a { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 5px 12px; min-width: 0; padding: 15px; border: 1px solid #dbe3ec; border-radius: 8px; background: #fff; }
.related-service-links > a > span:first-child { grid-column: 1 / -1; color: #64748b; font-size: 11px; }
.related-service-links > a > b { min-width: 0; color: #123b5d; font-size: 14px; line-height: 1.4; overflow-wrap: anywhere; }
.related-service-links > a > span:last-child { color: #0369a1; }
.service-contact-card { position: sticky; top: 96px; padding: 24px; border: 1px solid #dbe3ec; border-radius: 10px; background: #f8fafc; }
.service-contact-card .service-icon { margin-bottom: 14px; }
.service-contact-card h2 { font-size: 22px; }
.service-contact-card p { margin: 0 0 20px; font-size: 15px; }
.service-contact-card .button { width: 100%; }
.service-status-link { display: block; margin-top: 16px; color: #075985; font-size: 14px; font-weight: 700; line-height: 1.5; }

/* Give the homepage tracking module a measured text/form split. */
.quick-track { display: grid; grid-template-columns: minmax(0, .9fr) minmax(360px, 1.1fr); align-items: center; gap: clamp(24px, 4vw, 54px); }
.quick-track > div { min-width: 0; max-width: 540px; }
.quick-track-form { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 12px; width: 100%; min-width: 0; }
.quick-track-form .field-label { min-width: 0; }
.quick-track-form .field-label input { width: 100%; min-width: 0; }
.quick-track-form .button { min-width: 164px; white-space: nowrap; }
.quick-track-captcha { grid-column: 1 / -1; min-width: 0; overflow-x: auto; }

@media (max-width: 900px) {
    .service-grid-seo { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .service-detail-main { grid-template-columns: minmax(0, 1fr); width: min(760px, calc(100% - 40px)); padding-block: 38px 64px; }
    .service-contact-card { position: static; }
    .quick-track { grid-template-columns: minmax(0, 1fr); gap: 20px; }
    .quick-track > div { max-width: none; }
    .quick-track-form { grid-template-columns: minmax(0, 1fr) auto; }
}
@media (max-width: 640px) {
    .public-page-hero .service-index-inner { width: calc(100% - 36px); padding-block: 22px 36px; }
    .public-page-hero .service-index-inner h1 { font-size: clamp(30px, 9vw, 40px); }
    .public-page-hero .service-index-inner > p { font-size: 16px; }
    .public-page-content { min-height: 0; padding: 34px 14px 50px; }
    .public-content-heading { font-size: 21px; }
    .contact-content-wrap .contact-details { grid-template-columns: minmax(0, 1fr); }
    .contact-content-wrap .contact-detail-address { grid-column: auto; }
    .contact-map-heading { align-items: flex-start; flex-direction: column; }
    .contact-map iframe { height: 300px; }
    .service-index-inner, .service-detail-inner { width: calc(100% - 36px); padding-block: 20px 34px; }
    .service-index-inner h1, .service-detail-inner h1 { font-size: clamp(30px, 9vw, 40px); }
    .service-index-inner > p, .service-detail-inner > p { font-size: 16px; }
    .service-index-inner .button { width: 100%; }
    .service-index-section { padding-top: 36px; }
    .service-grid-seo { grid-template-columns: minmax(0, 1fr); }
    .service-grid-seo .service-card { padding: 20px; }
    .service-grid-seo .service-card > .service-card-image-link { margin: -20px -20px 16px; }
    .service-detail-main { width: calc(100% - 36px); gap: 24px; padding-block: 28px 48px; }
    .service-detail-image { aspect-ratio: 4 / 3; margin-bottom: 20px; }
    .service-lead { font-size: 16px; }
    .service-article > section { margin-top: 32px; }
    .related-service-links { grid-template-columns: minmax(0, 1fr); }
    .service-contact-card { padding: 20px; }
    .quick-track { width: calc(100% - 24px); margin: 0 12px; padding: 20px 18px; border-radius: 0 0 10px 10px; }
    .quick-track-form { grid-template-columns: minmax(0, 1fr); }
    .quick-track-form .button { width: 100%; min-width: 0; }
    .quick-track-captcha { grid-column: auto; max-width: 100%; }
}

/* Keep the tracking panel fully below the hero and inside narrow viewports. */
.quick-track {
    position: relative;
    z-index: 1;
    box-sizing: border-box;
    width: min(1190px, calc(100% - 48px));
    margin: 28px auto 0;
    border-radius: var(--ui-radius-lg);
}
.brand-logo-fallback { width: 70px; height: 50px; max-width: 70px; }
.branding-upload-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.branding-upload-card { display: grid; align-content: start; gap: 12px; min-width: 0; padding: 16px; border: 1px solid #dbe3ec; border-radius: 9px; background: #f8fafc; }
.branding-preview { display: flex; min-height: 74px; align-items: center; gap: 16px; color: #334155; font-size: 13px; font-weight: 700; }
.branding-preview img { display: block; width: auto; max-width: 180px; height: 64px; object-fit: contain; object-position: left center; background: #fff; }
.favicon-preview img { width: 48px; height: 48px; padding: 3px; border: 1px solid #dbe3ec; border-radius: 8px; }
.branding-rules { color: #64748b; font-size: 12px; line-height: 1.5; }
.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: 1100px) {
    .quick-track { grid-template-columns: minmax(0, 1fr); gap: 18px; }
    .quick-track > div { max-width: none; }
}
@media (max-width: 640px) {
    .quick-track { width: calc(100% - 24px); margin: 20px 12px 0; padding: 20px 18px; border-radius: var(--ui-radius-md); }
    .quick-track-form { grid-template-columns: minmax(0, 1fr); }
    .quick-track-form .button { width: 100%; min-width: 0; }
    .quick-track-captcha { grid-column: auto; max-width: 100%; }
    .brand-logo-fallback { width: 54px; height: 40px; max-width: 54px; }
    .branding-upload-grid { grid-template-columns: minmax(0, 1fr); }
}
.contact-details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 26px 0 30px; }
.contact-detail { display: grid; align-content: start; gap: 6px; min-width: 0; padding: 14px 16px; border: 1px solid var(--ui-border, #dce4ee); border-radius: 10px; background: #fff; color: inherit; text-decoration: none; }
.contact-detail small { display: block; color: #526177; font-size: 12px; font-weight: 650; line-height: 1.4; }
.contact-detail b { display: block; min-width: 0; color: #15243a; font-size: 15px; font-weight: 650; line-height: 1.5; overflow-wrap: anywhere; }
.contact-detail-address { grid-column: 1 / -1; }
.contact-details a:focus-visible { outline: 3px solid #7db4ff; outline-offset: 2px; }
.search-engine-links { margin-top: 18px; }
.store-google-link { display: grid; gap: 6px; margin-top: 14px; padding: 14px 16px; border: 1px solid var(--ui-border, #dce4ee); border-radius: 9px; background: #fff; }
.store-google-link strong { color: #15243a; font-size: 14px; }
.store-google-link a { width: fit-content; max-width: 100%; overflow-wrap: anywhere; }
.store-google-link p, .store-google-link small { margin: 0; color: #526177; font-size: 13px; line-height: 1.55; }
.store-google-local-note { margin-top: 14px; padding: 12px 14px; border-left: 3px solid #d39b2a; background: #fff8e7; color: #624814; font-size: 13px; line-height: 1.55; }
.search-engine-link-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; padding: 18px; }
.search-engine-link-list > div { display: grid; align-content: start; gap: 7px; min-width: 0; padding: 14px; border: 1px solid var(--ui-border, #dce4ee); border-radius: 9px; }
.search-engine-link-list a { overflow-wrap: anywhere; }
.search-engine-link-list small { color: #526177; line-height: 1.5; }
@media (max-width: 640px) {
  .contact-details { grid-template-columns: minmax(0, 1fr); gap: 9px; margin: 20px 0 24px; }
  .contact-detail { padding: 12px 14px; }
  .contact-detail-address { grid-column: auto; }
  .search-engine-link-list { grid-template-columns: minmax(0, 1fr); padding: 12px; }
}
.finance-report-note{margin:0 0 18px}.finance-filter{margin:0 0 18px;padding:18px}.finance-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.finance-filter-grid label{display:grid;gap:6px;font-size:.85rem;font-weight:600}.finance-filter-grid input,.finance-filter-grid select{width:100%;min-width:0;min-height:42px;padding:9px 11px;border:1px solid #d6e0eb;border-radius:8px;background:#fff;color:#172b45;font:inherit}.finance-filter-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid #e6edf4;color:#51647d;font-size:.88rem}.finance-filter-actions>div{display:flex;gap:8px}.finance-report-metrics .metric-card strong{display:block;font-size:1.2rem}.finance-report-metrics .metric-card p{margin-top:8px}@media(max-width:850px){.finance-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.finance-filter{padding:14px}.finance-filter-grid{grid-template-columns:1fr}.finance-filter-actions{align-items:stretch;flex-direction:column}.finance-filter-actions>div{display:grid;grid-template-columns:1fr 1fr}.finance-report-metrics .metric-card strong{font-size:1.1rem}}
.inline-create-toggle{margin-top:7px;font-size:.78rem;color:#526783}.inline-create-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px;padding:10px;border:1px dashed #b9cbe0;border-radius:8px;background:#f7faff}.inline-create-fields[hidden]{display:none}.inline-create-fields>div{display:grid;gap:4px}.inline-create-fields span{font-size:.75rem;color:#526783}.inline-create-fields input{width:100%;min-width:0;min-height:38px;padding:8px;border:1px solid #d6e0eb;border-radius:6px}.report-breakdown-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px}.report-breakdown-grid .panel{margin:0}@media(max-width:1000px){.report-breakdown-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.inline-create-fields,.report-breakdown-grid{grid-template-columns:1fr}}

/* Yönetim paneli altı: web sitesi ve oturum işlemleri */
.sidebar-user{display:block;border-top:1px solid #edf0f4;padding:11px 4px 4px;flex:none}
.sidebar-user-profile{display:flex;align-items:center;gap:9px;min-width:0}
.sidebar-user-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:10px 0 0 38px}
.sidebar-user-actions a,.sidebar-user-actions button{display:flex;align-items:center;justify-content:center;gap:5px;min-height:30px;padding:5px 7px;border:1px solid #e4eaf1;border-radius:6px;background:#fff;color:#52647c;font-family:inherit;font-size:10px;font-weight:600;text-decoration:none;white-space:nowrap;cursor:pointer}
.sidebar-user-actions a:hover{background:#f3f7fc;color:#1c5b9e}
.sidebar-user-actions form{margin:0}
.sidebar-user-actions .sidebar-logout{width:100%;color:#9b4a45}
.sidebar-user-actions .sidebar-logout:hover{background:#fff4f2;border-color:#f0d7d4}
/* Genel 404 sayfası */
.not-found-page{min-height:min(690px,calc(100vh - 150px));display:grid;place-items:center;padding:64px 24px;background:#f4f7fa}
.not-found-card{width:min(1080px,100%);display:grid;grid-template-columns:minmax(250px,.86fr) minmax(0,1.14fr);align-items:center;gap:clamp(28px,6vw,82px);padding:clamp(28px,5vw,64px);border:1px solid #e2e9f1;border-radius:16px;background:#fff;box-shadow:0 14px 42px #10243b0b}
.not-found-art{position:relative;min-height:270px;display:grid;place-items:center;overflow:hidden;border-radius:12px;background:linear-gradient(145deg,#102b45,#173d5c)}
.not-found-code{position:relative;z-index:1;color:#f7fbff;font:800 clamp(76px,11vw,138px)/1 Manrope, sans-serif;letter-spacing:-.09em;text-shadow:0 10px 24px #07182b66}
.not-found-orbit{position:absolute;width:220px;height:220px;border:1px solid #8db8df45;border-radius:50%}
.not-found-orbit-one{transform:scaleX(1.45) rotate(-24deg)}
.not-found-orbit-two{transform:scaleX(.78) rotate(34deg)}
.not-found-spark{position:absolute;color:#9fc9fa;font-size:27px}
.not-found-spark-one{top:22%;right:22%}
.not-found-spark-two{bottom:18%;left:20%;font-size:46px}
.not-found-copy .section-kicker{font-size:9px;color:#2672b5;letter-spacing:.15em;font-weight:700}
.not-found-copy h1{margin:12px 0 13px;color:#14253a;font:700 clamp(30px,4vw,44px)/1.12 Manrope,sans-serif;letter-spacing:-.045em}
.not-found-copy p{max-width:500px;margin:0;color:#64748a;font-size:15px;line-height:1.8}
.not-found-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}
.not-found-actions .button{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:0 17px}
.not-found-contact{display:inline-flex;gap:6px;margin-top:20px;color:#306d9f;font-size:12px;font-weight:600;text-decoration:none}
.not-found-contact:hover{text-decoration:underline}
@media(max-width:700px){.not-found-page{min-height:0;padding:28px 16px 40px}.not-found-card{grid-template-columns:1fr;gap:25px;padding:20px;border-radius:12px}.not-found-art{min-height:180px}.not-found-orbit{width:160px;height:160px}.not-found-code{font-size:88px}.not-found-copy h1{font-size:32px}.not-found-copy p{font-size:14px}.not-found-actions{display:grid;grid-template-columns:1fr}.not-found-actions .button{justify-content:center}.sidebar-user-actions{margin-left:0}}

/* Cloudflare modülü */
.cloudflare-module-card{margin:0 0 16px}.cloudflare-module-form{padding:16px 18px;display:flex;align-items:center;flex-wrap:wrap;gap:10px}.cloudflare-module-form .store-toggle{flex:1 1 100%;margin:0}.cloudflare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.cloudflare-panel{min-width:0}.cloudflare-form,.cloudflare-action-body{display:grid;gap:15px;padding:18px}.cloudflare-form .field-label{font-size:12px}.cloudflare-form input{min-height:42px}.cloudflare-form small,.cloudflare-permissions small{color:#718096;font-size:11px;line-height:1.55}.cloudflare-form .button{justify-self:start}.cloudflare-permissions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:0 18px 18px}.cloudflare-permissions b,.cloudflare-permissions small{flex-basis:100%}.cloudflare-permissions b{font-size:12px}.cloudflare-permissions span{padding:6px 9px;border:1px solid #dce6f0;border-radius:5px;background:#f7f9fc;color:#38536f;font-size:11px}.cloudflare-action-body p{margin:0;color:#61738a;font-size:13px;line-height:1.65}.cloudflare-action-body .button{min-height:42px}.cloudflare-muted{font-size:12px!important}.cloudflare-caution{margin:0 0 15px;align-items:flex-start}.cloudflare-security-panel{align-self:start}
@media(max-width:760px){.cloudflare-grid{grid-template-columns:1fr}.cloudflare-module-form{align-items:stretch;flex-direction:column}.cloudflare-module-form .button,.cloudflare-module-form>a{width:100%;justify-content:center}.cloudflare-form,.cloudflare-action-body{padding:15px}.cloudflare-permissions{padding:0 15px 15px}}
