:root,html[data-theme="light"] {
  color-scheme:light; --page:#f6f7f9; --surface:#fff; --ink:#20252e; --muted:#667085; --line:#e6e9ef;
  --soft:#f2f4f7; --brand:#a77d49; --brand-soft:#f6f1e9; --green:#23744f; --green-soft:#edf8f1; --danger:#b93838;
  --primary:#252b35; --secondary:#252b35; --accent:#fff; --primary-fg:#fff;
  --body-bg:var(--page); --body-fg:var(--ink); --body-quiet-color:var(--muted); --body-loud-color:var(--ink);
  --header-bg:var(--surface); --header-color:var(--ink); --header-link-color:var(--ink); --link-fg:#596374; --link-hover-color:#222831; --link-selected-fg:#222831;
  --hairline-color:var(--line); --border-color:var(--line); --darkened-bg:#f6f7f9; --selected-bg:#f2f4f7; --selected-row:#f8f9fb;
  --button-bg:#252b35; --button-fg:#fff; --button-hover-bg:#11161e; --default-button-bg:#252b35; --default-button-hover-bg:#11161e;
  --close-button-bg:#fff; --close-button-hover-bg:#f2f4f7; --delete-button-bg:#b93838; --delete-button-hover-bg:#992525;
  --breadcrumbs-bg:transparent; --breadcrumbs-fg:var(--muted); --breadcrumbs-link-fg:var(--muted);
  --object-tools-bg:#252b35; --object-tools-hover-bg:#11161e;
  --font-family-primary:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  font-family:var(--font-family-primary); font-size:14px;
}
* {box-sizing:border-box}
[hidden] {display:none!important}
body {margin:0;font:14px/1.5 var(--font-family-primary);color:var(--ink);background:var(--page)}
a {color:inherit;text-decoration:none}
a:visited {color:inherit}
a:hover {color:var(--ink)}
button,input,select,textarea {font:inherit}
button {cursor:pointer}
button:disabled,input:disabled {cursor:not-allowed;opacity:.45}
button,a,input,select,textarea,summary {outline-offset:3px}
:focus-visible {outline:3px solid #8f7049}
.icon {display:inline-block;width:18px;height:18px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
.sr-only,.skip-link:not(:focus) {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip-link:focus {position:fixed;top:12px;left:12px;z-index:100;padding:12px 20px;background:#fff;border:2px solid var(--brand);border-radius:6px}
.panel-shell h1,.panel-shell h2,.panel-shell h3,.auth-page h1,.auth-page h2 {font-family:var(--font-family-primary);color:var(--ink);font-weight:600;letter-spacing:-.5px}
h1 {font-size:28px;line-height:1.25}
h2 {font-size:17px;line-height:1.4}
h3 {font-size:16px;line-height:1.5}
p {line-height:1.65}
.button,a.button,button.button,.panel-shell input[type=submit]:not([hidden]),.auth-card .btn {
  display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 17px;
  border:1px solid transparent;border-radius:7px;font-size:13px;font-weight:600;line-height:20px;letter-spacing:0;
  text-decoration:none;white-space:nowrap;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s,transform .1s;
  box-shadow:0 1px 2px #14203308;text-transform:none;float:none;margin:0;background:var(--primary);color:#fff;
}
.button:hover,a.button:hover,.panel-shell input[type=submit]:hover {background:#11161e;color:#fff;box-shadow:0 2px 4px #14203312}
.button:active,button:active {transform:translateY(1px)}
a.button-secondary,button.button-secondary,.panel-shell .submit-row input.button-secondary,.auth-card .btn-secondary,.panel-shell .closelink {background:#fff;border:1px solid #dce1e8;color:#3b4554;box-shadow:0 1px 2px #14203305}
a.button-secondary:hover,button.button-secondary:hover,.panel-shell .submit-row input.button-secondary:hover,.auth-card .btn-secondary:hover {background:#f7f8fa;border-color:#c8ced9;color:var(--ink)}
a.button-small {min-height:36px;padding:7px 12px;font-size:12px;border-radius:6px}
.button .icon {width:16px;height:16px}
a.button-danger-quiet {color:var(--danger);border-color:#f0d7d7;background:#fff;box-shadow:none}
a.button-danger-quiet:hover {color:#992525;background:#fff4f4;border-color:#dfb3b3}
.icon-button {display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:36px;padding:8px;border:1px solid transparent;border-radius:7px;background:transparent;color:#677182;cursor:pointer}
.icon-button:hover {background:#eef1f5;color:#20252e}
.text-action,.row-action {display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:#4a5667;white-space:nowrap}
.text-action:hover {color:#151b24}
.text-action .icon,.row-action .icon {width:15px;height:15px}
.row-action {border:1px solid var(--line);border-radius:6px;background:#fff;min-height:36px;padding:7px 12px}
.row-action:hover {border-color:#cbd1db;background:#f9fafb}
.mobile-only {display:none}
/* Persistent workspace navigation. */
.app-sidebar {position:fixed;inset:0 auto 0 0;width:244px;height:100svh;z-index:50;display:flex;flex-direction:column;background:#fcfcfd;border-right:1px solid var(--line)}
.sidebar-brand {height:88px;display:flex;align-items:center;justify-content:space-between;padding:24px;gap:12px}
#site-name {display:flex;align-items:center;gap:11px;min-width:0;margin:0}
.brand-monogram {display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;border-radius:9px;background:#242933;color:#fff;font:25px Georgia,serif;letter-spacing:-3px;padding-right:3px}
.brand-name {font:17px Georgia,serif;letter-spacing:1.2px;line-height:1.1;color:#252a33}
.brand-name>span {display:block;margin-top:6px;font:10px var(--font-family-primary);letter-spacing:1.3px;color:#667085;text-transform:uppercase}
.workspace-label {margin:8px 18px 28px;padding:11px 12px;display:flex;align-items:center;gap:9px;border:1px solid #e5e8ee;border-radius:7px;background:#fff;font-size:12px;font-weight:500;color:#414c5c;box-shadow:0 1px 2px #14203303}
.workspace-dot {width:7px;height:7px;border-radius:50%;background:#b99b76}
.workspace-version {margin-left:auto;color:#667085;font-size:11px}
.sidebar-nav {padding:0 14px;display:flex;flex-direction:column;gap:5px}
.nav-section-label {padding:0 12px;margin-bottom:9px;font-size:10px;letter-spacing:1.4px;font-weight:650;color:#667085}
.sidebar-nav>a {display:flex;align-items:center;gap:11px;min-height:44px;padding:11px 13px;border-radius:7px;font-size:13px;font-weight:500;color:#647084;transition:background .15s,color .15s}
.sidebar-nav>a:hover {background:#f0f2f6;color:#242a34}
.sidebar-nav>a[aria-current=page] {background:#edeff3;color:#202630;font-weight:600;box-shadow:inset 0 0 0 1px #e6e8ed}
.sidebar-nav>a[aria-current=page] .icon {color:#667085}
.nav-section-second {margin-top:27px}
.sidebar-bottom {margin-top:auto;padding:20px 18px 16px}
.sidebar-note {padding:16px 12px;background:#f2f3f6;border-radius:8px;font-size:12px;color:#5a6474;line-height:1.7;margin-bottom:20px}
.sidebar-note>span {display:block;font-size:11px;color:#667085;margin-top:2px}
.sidebar-account {display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding-top:18px}
.user-avatar,.topbar-avatar {display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:50%;background:#ece7df;color:#856944;font-size:12px;font-weight:650;width:35px;height:35px}
.user-details {min-width:0;flex:1}
.user-details strong {display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600}
.user-details small {display:block;font-size:11px;color:#667085;margin-top:2px}
.sidebar-account form {margin:0}
.sidebar-account .icon-button {width:30px;height:32px}
.panel-workspace {margin-left:244px;min-height:100svh;min-width:0}
#header.app-topbar {display:flex;align-items:center;justify-content:space-between;gap:20px;position:sticky;top:0;z-index:20;min-height:72px;padding:16px 32px;background:#fff;border-bottom:1px solid var(--line);color:var(--ink);width:auto;height:auto}
.topbar-location {display:flex;align-items:center;gap:14px;min-width:0;font-size:12px}
.topbar-section {color:#667085;white-space:nowrap}
.topbar-divider {color:#667085}
.topbar-page {font-weight:550;white-space:nowrap}
#user-tools.topbar-actions {display:flex;align-items:center;gap:18px;float:none;padding:0;margin:0;font-size:12px;font-weight:500;letter-spacing:0;text-transform:none;text-align:left;flex-shrink:0}
#user-tools.topbar-actions a {text-decoration:none;border:1px solid #dce1e8;color:#445064}
.topbar-avatar {width:32px;height:32px;background:#eef0f5;color:#687488;border:3px solid #fff;box-shadow:0 0 0 1px var(--line)}
.page-breadcrumbs {max-width:1500px;margin:0 auto;padding:20px 36px 0}
.page-breadcrumbs .breadcrumbs {padding:0;margin:0;background:none;font-size:12px;color:#667085;line-height:1.6}
.page-breadcrumbs .breadcrumbs a {color:#667085}
.page-breadcrumbs .breadcrumbs a:hover {color:#20252e}
.page-main {max-width:1500px;padding:32px 36px 0;margin:0 auto;min-height:calc(100svh - 72px);display:flex;flex-direction:column;outline:none}
.panel-shell #content {margin:0;padding:0;width:100%;min-width:0;flex:1}
.panel-shell #content-main {float:none;width:100%;min-width:0}
.panel-shell .colMS {margin-right:0}
.page-heading {display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}
.page-heading h1 {margin:7px 0 0;font-size:29px;font-weight:600;letter-spacing:-1.1px;line-height:1.3}
.page-heading p {margin:9px 0 0;font-size:13px;color:#667085}
.page-eyebrow {display:block;color:#667085;font-size:10px;font-weight:600;letter-spacing:1.6px}
.page-subtitle {font-size:13px;color:var(--muted);margin-bottom:24px}
.back-link {display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#667085;margin-bottom:3px}
.panel-footer {display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 0;margin-top:36px;border-top:1px solid var(--line);color:#667085;font-size:11px}
.panel-footer a {display:inline-flex;align-items:center;gap:6px;color:#667085}
.panel-footer .icon {width:13px;height:13px}
.sidebar-backdrop {position:fixed;inset:0;z-index:40;background:#151c2a66;border:0;backdrop-filter:blur(2px)}
/* Overview contains actual content data, not demo metrics. */
.stats-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:28px}
.stat-card {display:flex;flex-direction:column;padding:22px 24px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 1px 2px #0d183006;color:var(--ink)}
.stat-card:hover {border-color:#cdd4de;box-shadow:0 2px 6px #0d183007}
.stat-label {display:flex;align-items:center;justify-content:space-between;gap:12px;color:#6c7787;font-size:12px;font-weight:500}
.stat-icon {display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:7px;background:#f3f4f7;color:#667085}
.stat-icon-green {background:#edf7f1;color:#667085}
.stat-icon .icon {width:16px;height:16px}
.stat-card>strong {font-size:34px;line-height:1.2;letter-spacing:-1px;font-weight:600;margin:11px 0 12px;font-variant-numeric:tabular-nums}
.stat-description {display:flex;align-items:center;gap:6px;font-size:11px;color:#667085}
.status-dot {width:5px;height:5px;border-radius:50%;display:inline-block;background:#a2acba}
.status-dot.live {background:#4f9b75}
.dashboard-grid {display:grid;grid-template-columns:minmax(0,1fr) 286px;gap:24px;align-items:start}
.surface {background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 1px 2px #0d183005;overflow:hidden;min-width:0}
.surface-heading {display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px;border-bottom:1px solid #edf0f4}
.surface-heading h2 {margin:0;font-size:14px;letter-spacing:-.15px}
.surface-heading p {margin:5px 0 0;color:#667085;font-size:12px}
.dashboard-guide {display:flex;flex-direction:column;gap:20px}
.dashboard-guide .surface-heading {padding:20px}
.dashboard-guide .surface-heading h2 {font-size:13px}
.onboarding-steps {list-style:none;margin:0;padding:22px 20px;display:flex;flex-direction:column;gap:22px}
.onboarding-steps>li {display:flex;gap:12px;align-items:flex-start;margin:0;padding:0}
.onboarding-steps>li>span {width:24px;height:24px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#f4f5f8;border:1px solid #e9ecf1;border-radius:6px;font-size:11px;font-weight:600;color:#667085}
.onboarding-steps strong {font-size:12px;font-weight:600;line-height:1.5}
.onboarding-steps p {font-size:11px;line-height:1.7;color:#667085;margin:4px 0 0}
.art-guide {padding:22px;background:#fdfcfa;border-color:#ebe6df}
.guide-icon {width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#f1ece4;color:#667085;border-radius:8px;margin-bottom:16px}
.art-guide h2 {font-size:14px;margin:0}
.art-guide>p {font-size:12px;color:#667085;margin:8px 0 18px}
.art-guide dl {margin:0;border-top:1px solid #ece7de}
.art-guide dl>div {display:flex;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid #ece7de;font-size:12px}
.art-guide dt {color:#667085}
.art-guide dd {margin:0;font-weight:550;color:#655a48;font-variant-numeric:tabular-nums}
.file-note {display:block;color:#667085;font-size:10px;margin-top:15px}
.empty-state {display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:64px 24px;min-height:340px}
.empty-icon {display:flex;align-items:center;justify-content:center;width:64px;height:64px;border:1px solid #e6eaf0;background:#f7f8fa;box-shadow:0 3px 0 #f2f4f7;border-radius:14px;color:#667085;margin-bottom:24px}
.empty-icon .icon {width:28px;height:28px;stroke-width:1.3}
.empty-state h2,.empty-state h3 {font-size:18px;letter-spacing:-.4px;margin:0 0 10px}
.empty-state p {font-size:12px;line-height:1.8;color:#667085;max-width:310px;margin:0 0 24px}
.empty-state .button {font-size:12px;min-height:40px}
.table-scroll {position:relative;overflow-x:auto;max-width:100%}
.dashboard-table {border-collapse:collapse;width:100%;background:#fff}
.dashboard-table th {padding:12px 22px;text-align:left;font-size:10px;color:#667085;font-weight:550;background:#fbfcfd;border-bottom:1px solid var(--line)}
.dashboard-table td {padding:17px 22px;vertical-align:middle;border-bottom:1px solid #eff1f5;font-size:12px}
.dashboard-table tr:last-child td {border-bottom:0}
.banner-summary {display:flex;align-items:center;gap:13px;min-width:185px}
.banner-summary img {flex-shrink:0;width:80px;height:44px;object-fit:contain;background:#f2f4f7;border:1px solid #eaedf3;border-radius:5px}
.banner-summary>span {display:block;min-width:0;max-width:240px}
.banner-summary strong {display:block;font-size:12px;color:#3b4656;font-weight:550;overflow-wrap:anywhere}
.banner-summary small {display:block;font-size:10px;color:#667085;margin-top:5px}
.numeric {color:#667085;font-variant-numeric:tabular-nums}
.status-badge {display:inline-flex;align-items:center;gap:6px;border:1px solid #e5e8ef;border-radius:5px;padding:4px 8px;font-size:11px;font-weight:550;line-height:16px;white-space:nowrap;color:#667085;background:#f5f6f8}
.status-badge>i {display:inline-block;width:5px;height:5px;background:currentColor;border-radius:50%}
.status-badge.is-live {background:#f0f8f3;border-color:#dcefe3;color:#667085}
/* Search, filters and native Django result tables. */
.panel-shell #changelist {display:flex;flex-direction:column;width:100%;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 1px 2px #0d183005;overflow:hidden}
.panel-shell #changelist .changelist-form-container {order:1;min-width:0;flex:1;width:100%}
.panel-shell #changelist .results {width:100%;overflow-x:auto;border:0;background:#fff}
#changelist-filter {position:static;order:0;flex:none;width:100%;margin:0;border:0;border-bottom:1px solid var(--line);padding:14px 22px;background:#fff;display:flex;flex-wrap:wrap;gap:12px 24px;max-height:none}
#changelist-filter h2 {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#changelist-filter details {margin:0;padding:0;font-size:12px}
#changelist-filter details summary {display:inline-block;cursor:pointer;margin:0 12px 0 0;padding:6px 0;color:#667085;font-size:11px;font-weight:500}
#changelist-filter ul {display:inline-flex;flex-wrap:wrap;gap:4px;padding:0;margin:0;vertical-align:middle;list-style:none}
#changelist-filter li {padding:0;margin:0;list-style:none}
#changelist-filter li a {display:block;border:1px solid transparent;border-radius:5px;padding:6px 10px;font-size:12px;color:#667085}
#changelist-filter li.selected a {background:#f3f4f7;border-color:#e5e8ee;color:#364255;font-weight:550}
#changelist-filter li a:hover {background:#f5f6f8;color:#333e4e}
#changelist-filter-extra-actions {order:10;margin-left:auto;padding:0;background:none;font-size:11px}
#changelist-filter-extra-actions h3 {font-size:11px;padding:0;margin:7px 0 0}
.panel-shell #toolbar {padding:18px 22px;border:0;border-bottom:1px solid #edf0f4;background:#fff}
#toolbar #changelist-search>div {display:flex;align-items:center;gap:10px;flex-wrap:wrap}
#toolbar #changelist-search label {display:flex;align-items:center;flex-shrink:0;padding:0;margin:0}
#toolbar input#searchbar {min-height:40px;border:1px solid #dfe4eb;border-radius:6px;padding:9px 12px;background:#fff;box-shadow:0 1px 2px #14203304;font-size:12px;width:280px;max-width:100%;margin:0;flex:1;min-width:120px;max-width:360px;color:var(--ink)}
#toolbar input[type=submit] {min-height:40px;padding:8px 16px;background:#fff;color:#5c6879;border:1px solid #dde2e9;border-radius:6px;font-size:12px;box-shadow:0 1px 2px #14203304}
#toolbar input[type=submit]:hover {background:#f6f8fa;color:#263142}
#toolbar .small.quiet {margin-left:auto;font-size:11px;color:#667085}
.panel-shell #result_list {width:100%;border-collapse:collapse;border:0}
#result_list thead th {padding:14px 20px;background:#fbfcfd;color:#667085;border:0;border-bottom:1px solid var(--line);font-size:11px;font-weight:550;text-transform:none;white-space:nowrap;vertical-align:middle}
#result_list thead th .text a,#result_list thead th .text span {padding:0;color:inherit;font-size:11px;font-weight:550}
#result_list tbody td,#result_list tbody th {padding:18px 20px;vertical-align:middle;border:0;border-bottom:1px solid #eff1f5;font-size:12px;line-height:1.5;font-weight:400;background:#fff}
#result_list tbody tr:last-child td,#result_list tbody tr:last-child th {border-bottom:0}
#result_list tbody tr:hover td,#result_list tbody tr:hover th {background:#fcfdff}
#result_list tbody th a {color:#3a4657;font-weight:550;font-size:12px;display:block;min-width:130px;max-width:300px;overflow-wrap:anywhere}
#result_list .field-position {font-variant-numeric:tabular-nums;color:#667085}
#result_list .field-updated_at,#result_list .field-last_login {font-size:11px;white-space:nowrap;color:#667085}
#result_list .list-preview {display:block;width:112px;height:56px;max-width:112px;object-fit:contain;border-radius:6px;background:#f5f6f8;border:1px solid #e9edf3}
#result_list .field-edit_link {text-align:right}
#changelist .paginator {padding:17px 22px;margin:0;border-top:1px solid var(--line);background:#fff;font-size:11px;color:#667085;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
#changelist .paginator a,#changelist .paginator .this-page {display:inline-flex;min-width:28px;height:28px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:5px;background:#fff;color:#667085;font-size:11px;padding:3px 8px}
#changelist .paginator .this-page {background:#f0f2f6;color:#374151;font-weight:600}
.table-account {display:inline-flex;align-items:center;gap:11px}
.table-account strong {display:block;font-size:12px;overflow-wrap:anywhere}
.table-account small {display:block;color:#667085;font-size:11px;font-weight:400;margin-top:4px}
.table-account .user-avatar {width:34px;height:34px;background:#eef0f5;color:#667085}
/* Form sections and publication actions. */
.panel-shell fieldset.module {background:#fff;border:1px solid var(--line);border-radius:10px;padding:24px;margin:0 0 20px;min-width:0;box-shadow:0 1px 2px #0d183005;overflow:visible}
.panel-shell fieldset.module h2,.panel-shell fieldset.module .fieldset-heading {background:none;border:0;color:#303c4d;font-size:15px;font-weight:600;padding:0;margin:0 0 7px;line-height:1.5;letter-spacing:-.25px}
.panel-shell fieldset.module>.description {background:none;color:#667085;font-size:12px;line-height:1.7;padding:0;margin:0 0 14px}
.panel-shell .form-row {border:0;padding:15px 0;margin:0;overflow:visible;font-size:13px}
.panel-shell .form-row>div {width:100%;min-width:0}
.panel-shell .form-row .flex-container {display:flex;flex-direction:column;align-items:stretch;gap:9px}
.panel-shell .aligned label {float:none;display:block;width:auto;padding:0;color:#4b586b;font-size:12px;line-height:1.5;font-weight:550;margin:0}
.panel-shell label.required::after {content:" *";color:#667085;font-weight:400}
.panel-shell .aligned label.required {font-weight:550}
.panel-shell .form-row input:not([type=checkbox]):not([type=file]):not([type=hidden]),.panel-shell .form-row select,.panel-shell .form-row textarea,.auth-card input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]),.auth-card select {
 width:100%;min-height:44px;padding:11px 13px;border:1px solid #8894a5;border-radius:7px;background:#fff;color:#334155;font-size:13px;line-height:20px;box-shadow:0 1px 2px #15233304;margin:0;
}
.panel-shell .form-row input:focus,.panel-shell .form-row textarea:focus,.panel-shell .form-row select:focus,.auth-card input:focus,.auth-card select:focus {border-color:#8f7049;box-shadow:0 0 0 3px #aab5c51c;outline:none}
.panel-shell .form-row .vIntegerField {max-width:180px}
.panel-shell .aligned .help,.panel-shell .aligned p.help,.auth-card .helptext {margin:7px 0 0;padding:0;color:#667085;font-size:12px;line-height:1.7;max-width:100%;overflow-wrap:anywhere}
.panel-shell .aligned .help ul {margin:7px 0 0;padding-left:18px;color:inherit}
.panel-shell .form-row .checkbox-row {display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:9px}
.panel-shell .checkbox-row input[type=checkbox],.upload-clear input {appearance:auto;width:16px;height:16px;min-height:0;margin:0;accent-color:#272f3b;cursor:pointer}
.panel-shell .checkbox-row label {margin:0;display:inline;cursor:pointer}
.panel-shell fieldset.banner-media-fields {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}
.banner-media-fields>h2,.banner-media-fields>.description {grid-column:1/-1}
.upload-card {border:1px solid #e0e5ed;border-radius:8px;overflow:hidden;background:#fff;transition:border-color .15s,box-shadow .15s}
.upload-card:focus-within {border-color:#9dabbf;box-shadow:0 0 0 3px #aab5c51c}
.upload-card.is-dragging {border-color:#a77d49;box-shadow:0 0 0 3px #a77d491a}
.upload-preview {height:180px;display:flex;align-items:center;justify-content:center;background:#fafbfd;border-bottom:1px solid #edf0f5;overflow:hidden;padding:16px}
.upload-preview img {display:block;width:100%;height:100%;object-fit:contain;border-radius:3px}
.upload-placeholder {display:flex;align-items:center;flex-direction:column;gap:12px;color:#667085;font-size:12px}
.upload-placeholder .icon {width:30px;height:30px;stroke-width:1.2}
.upload-select {position:relative;display:flex;align-items:center;gap:12px;padding:19px 16px;min-height:82px}
.upload-select-icon {display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #e6eaf0;border-radius:7px;color:#667085;background:#fff;flex-shrink:0}
.upload-select>span>strong {display:block;font-size:12px;color:#58677c;font-weight:550;line-height:1.7}
.upload-select>span>strong>span {font-weight:400;color:#667085}
.upload-select small {display:block;margin-top:3px;font-size:10px;color:#667085;overflow-wrap:anywhere;word-break:break-word}
.upload-input {position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.panel-shell label.upload-clear {display:flex;align-items:center;gap:8px;font-size:11px;border-top:1px solid var(--line);padding:12px 16px;color:#667085;cursor:pointer}
.panel-shell .submit-row {display:flex;align-items:center;justify-content:space-between;gap:20px;position:sticky;bottom:16px;z-index:10;padding:16px 20px;margin:24px 0 0;background:#fff;border:1px solid #e1e6ed;border-radius:9px;box-shadow:0 4px 16px #18243a0a;overflow:visible;flex-wrap:wrap}
.submit-main,.submit-secondary {display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.submit-main {margin-left:auto}
.submit-row .button,.submit-row input[type=submit] {font-size:12px;min-height:40px;padding:9px 14px}
.panel-shell .errornote,.panel-shell .errorlist,.auth-card .errorlist {background:#fff5f5;border:1px solid #f0d4d4;border-radius:6px;padding:12px 14px;color:#a43d3d;font-size:12px;font-weight:400;line-height:1.6;list-style:none;margin:0 0 16px}
.panel-shell .errorlist li,.auth-card .errorlist li {margin:0;padding:0;font-size:12px}
.panel-shell .form-row.errors input {border-color:#d8a1a1}
.panel-shell .messagelist {list-style:none;margin:0 0 24px;padding:0}
.panel-shell .messagelist li {display:flex;gap:10px;align-items:center;padding:13px 16px;border:1px solid #dbece1;background:#f0f8f3;color:#4e8065;border-radius:8px;font-size:12px;font-weight:400;margin:0 0 10px;background-image:none}
.panel-shell .messagelist li.error {background:#fff5f5;color:#ac4e4e;border-color:#efd7d7}
.panel-shell .messagelist .icon {width:16px;height:16px}
.panel-shell .readonly {font-size:12px;color:#667085;margin:0;padding:0}
.panel-shell .readonly p {margin:0 0 10px}
.panel-shell .object-tools {float:none;margin:0 0 20px;padding:0}
.panel-shell .object-tools a {border-radius:6px;padding:8px 12px;background:#fff;border:1px solid var(--line);color:#667085;font-size:12px;font-weight:500;text-transform:none}
.panel-shell .module:not(fieldset):not(#changelist) {background:#fff;border:1px solid var(--line);border-radius:9px;overflow:hidden}
.panel-shell .module caption {padding:16px 20px;background:#fff;border-bottom:1px solid var(--line);color:#364254;font-size:13px}
.panel-shell .module caption a {color:inherit}
.panel-shell .module table {width:100%}
.delete-confirmation #content>p,.delete-confirmation #content>ul,.delete-confirmation #content>h2 {max-width:800px}
.delete-confirmation #content>form {padding:24px;background:#fff;border:1px solid var(--line);border-radius:10px;margin-top:24px}
.delete-confirmation #content>form>div {display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.delete-confirmation input[type=submit] {background:#b93838}
.delete-confirmation input[type=submit]:hover {background:#962a2a}
.password-control {position:relative;width:100%;min-width:0}
.password-control input {padding-right:70px!important}
.password-visibility {position:absolute;top:0;right:0;height:44px;padding:0 13px;background:none;border:0;color:#667085;font-size:11px;font-weight:500;border-radius:0 7px 7px 0;box-shadow:none;transform:none}
.password-visibility:hover {color:#343f51;background:#f7f9fb}
/* Authentication is a separate, focused workspace. */
.auth-page {display:grid;grid-template-columns:43% 57%;min-height:100svh;background:#fff}
.auth-brand-panel {position:relative;min-height:100svh;background:#1b2027;overflow:hidden;padding:48px;color:#fff;display:flex;flex-direction:column;align-items:flex-start}
.auth-brand-image {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.72;object-position:48% center}
.auth-brand-shade {position:absolute;inset:0;background:linear-gradient(180deg,#10151b88 0%,#11172005 34%,#0c111bd9 100%)}
.auth-wordmark {position:relative;z-index:1;color:#fff!important;font:26px Georgia,serif;letter-spacing:3px;line-height:1.3}
.auth-wordmark>span {display:block;margin-top:9px;font:9px var(--font-family-primary);letter-spacing:6px;color:#e0d7c9;text-align:center}
.auth-brand-message {position:relative;z-index:1;margin-top:auto;padding-top:200px}
.auth-brand-kicker {display:block;color:#c6bca9;font-size:10px;font-weight:500;letter-spacing:2px;margin-bottom:20px}
.auth-brand-message h2 {color:#fff;font:36px/1.25 Georgia,serif;letter-spacing:-.6px;margin:0 0 20px}
.auth-brand-message p {max-width:290px;color:#d0d3d7;font-size:12px;line-height:1.8;margin:0}
.auth-brand-foot {position:relative;z-index:1;color:#9b9fa7;font-size:9px;letter-spacing:2px;margin-top:72px}
.auth-form-panel {display:flex;flex-direction:column;justify-content:center;min-width:0;padding:48px 72px;min-height:100svh;position:relative}
.auth-card {width:100%;max-width:410px;margin:auto;min-width:0;padding:56px 0}
.auth-mobile-brand {display:none}
.auth-emblem {display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #e0e5ed;border-radius:10px;box-shadow:0 2px 4px #16213a05;margin-bottom:28px;color:#667085}
.auth-emblem .icon {width:20px;height:20px;stroke-width:1.5}
.auth-eyebrow {display:block;font-size:10px;letter-spacing:1.6px;font-weight:550;color:#667085;margin-bottom:12px}
.auth-card h1 {font-size:30px;line-height:1.3;letter-spacing:-1px;margin:0 0 14px;font-weight:600;color:#242d3a}
.auth-intro,.auth-card>p {font-size:12px;color:#667085;line-height:1.8;margin:0 0 30px}
.auth-form {margin:0}
.auth-field {margin-bottom:22px}
.auth-card label {display:block;font-size:12px;font-weight:550;color:#58667a;margin:0 0 9px}
.auth-card input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]),.auth-card select {font-size:13px;min-height:46px;padding:12px 13px}
.auth-card input[autocomplete=one-time-code] {font-size:23px;font-variant-numeric:tabular-nums;letter-spacing:8px;text-align:center}
.auth-card .helptext {font-size:11px;color:#667085}
.auth-card .helptext ul,.auth-card p>ul {padding-left:17px;margin:6px 0;font-size:11px;line-height:1.7;color:#667085}
.auth-card>form>p {margin:0 0 20px;font-size:12px}
.auth-card .auth-actions {display:flex;gap:10px;margin-top:28px}
.auth-actions .button-primary {flex:1}
.auth-card .btn-primary,.auth-card form>button[type=submit]:not(.text-action):not(.password-visibility) {display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:12px 18px;background:#252c36;border:1px solid #252c36;border-radius:7px;color:#fff;font-size:12px;font-weight:600;box-shadow:0 1px 2px #16213a18;cursor:pointer;width:100%}
.auth-card .btn-primary:hover {background:#111720;border-color:#111720}
.auth-card .auth-actions .button-secondary {min-width:70px;min-height:46px;background:#fff;color:#667085;border:1px solid #dce2eb}
.auth-cancel {display:block;text-align:center;font-size:11px;color:#667085;margin:18px 0 0;text-decoration:none}
.auth-recovery {border-top:1px solid #edf0f5;padding-top:22px;margin-top:28px;display:flex;flex-direction:column;align-items:center;gap:8px}
.auth-recovery>span {font-size:11px;color:#667085}
.auth-recovery form {margin:0}
.auth-recovery button.text-action {border:0;background:transparent;color:#65758a;font-size:12px;padding:5px;display:flex;align-items:center;gap:8px}
.auth-footer {display:flex;align-items:center;justify-content:center;gap:6px;color:#667085;font-size:10px;flex-wrap:wrap;padding-top:24px;margin:0 auto;max-width:410px;width:100%}
.auth-footer .icon {width:12px;height:12px}
.auth-footer a {color:#667085;margin-left:auto;font-size:10px}
.auth-card img {max-width:100%;height:auto}
.auth-card img.bg-white {display:block;width:190px;height:190px;padding:10px;border:1px solid var(--line);border-radius:8px;margin:20px auto;background:#fff}
.auth-card .password-visibility {height:46px}
.auth-card .eyebrow {font-size:10px;color:#667085;letter-spacing:1.5px;margin:0 0 12px}
.auth-card h2,.auth-card h3 {font-size:16px;letter-spacing:-.25px;margin:24px 0 12px}
.auth-card p a {color:#64758c;text-decoration:underline;text-underline-offset:3px}
.auth-card .button {text-decoration:none}
/* Screen-specific space and keyboard navigation remain predictable. */
@media(min-width:1600px){.page-main{padding-top:40px}.auth-form-panel{padding-inline:100px}.auth-brand-panel{padding:64px}}
@media(max-width:1300px){.dashboard-grid{grid-template-columns:minmax(0,1fr) 260px;gap:18px}.page-main{padding:28px 28px 0}.page-breadcrumbs{padding-left:28px;padding-right:28px}.surface-heading{padding:20px}.dashboard-table th,.dashboard-table td{padding-left:16px;padding-right:16px}.stat-card{padding:20px}.auth-form-panel{padding-inline:48px}.auth-brand-panel{padding:36px}.auth-brand-message h2{font-size:32px}}
@media(max-width:1100px){
 .mobile-only{display:inline-flex}.app-sidebar{transform:translateX(-100%);transition:transform .2s ease;width:260px;box-shadow:6px 0 24px #0e1b3510}.navigation-open .app-sidebar{transform:none}.navigation-open{overflow:hidden}.sidebar-brand{padding:24px 20px}.sidebar-brand .icon-button{width:30px;margin-right:-6px}.panel-workspace{margin-left:0}#header.app-topbar{padding-inline:24px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 286px}.auth-page{grid-template-columns:40% 60%}.auth-brand-message h2{font-size:30px}.auth-brand-panel{padding:32px}.auth-form-panel{padding-inline:40px}
}
@media(max-width:800px){
 .dashboard-grid{grid-template-columns:1fr}.dashboard-guide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid{gap:12px}.stat-card{padding:18px}.stat-label{font-size:12px}.stat-card>strong{font-size:30px}.auth-page{display:block}.auth-brand-panel{display:none}.auth-form-panel{min-height:100svh;padding:0 28px 24px}.auth-mobile-brand{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0;border-bottom:1px solid #edf0f5;flex-shrink:0}.auth-mobile-brand>a{font:27px Georgia,serif;display:flex;align-items:center;gap:12px;color:#5c4932}.auth-mobile-brand>a>span{font:10px var(--font-family-primary);letter-spacing:1.6px;color:#728093}.auth-mobile-brand>span{font-size:9px;letter-spacing:1.5px;color:#a7afbb}.auth-card{max-width:410px;padding:42px 0}.auth-footer{padding-top:20px}}
@media(max-width:700px){
 #header.app-topbar{padding:12px 16px;min-height:64px;gap:12px}.topbar-location{gap:9px}.topbar-section,.topbar-divider{display:none}.topbar-page{font-size:12px}#user-tools.topbar-actions{gap:10px}#user-tools .button-small{font-size:0;gap:0;min-width:36px;padding:8px}.topbar-avatar{width:29px;height:29px}.page-main{padding:26px 18px 0;min-height:calc(100svh - 64px)}.page-breadcrumbs{padding:18px 18px 0}.page-breadcrumbs .breadcrumbs{font-size:11px;overflow-wrap:anywhere}.page-heading{gap:16px;align-items:flex-start;flex-wrap:wrap;margin-bottom:24px}.page-heading h1{font-size:26px}.page-heading p{font-size:12px;max-width:310px}.page-heading>.button{min-height:40px;padding:9px 13px;font-size:12px}.page-eyebrow{font-size:9px}.stats-grid{grid-template-columns:1fr;gap:10px;margin-bottom:22px}.stat-card{display:grid;grid-template-columns:1fr auto;gap:0 12px;padding:17px 18px}.stat-label{grid-column:1;font-size:12px;justify-content:flex-start;gap:9px;flex-direction:row-reverse;justify-self:start}.stat-icon{width:27px;height:27px}.stat-card>strong{grid-column:2;grid-row:1/3;font-size:29px;margin:0;align-self:center}.stat-description{grid-column:1;font-size:11px;margin-top:7px;padding-left:36px}.dashboard-guide{grid-template-columns:1fr}.surface-heading{padding:18px}.surface-heading h2{font-size:13px}.surface-heading p{font-size:11px}.surface-heading .text-action{font-size:11px}.empty-state{min-height:310px;padding:44px 20px}.dashboard-table{min-width:550px}.dashboard-table th,.dashboard-table td{padding:14px 16px}.panel-footer{font-size:10px;margin-top:28px;padding:22px 0}.panel-footer a{font-size:10px}.panel-shell fieldset.module{padding:20px;margin-bottom:16px}.panel-shell fieldset.banner-media-fields{grid-template-columns:1fr;gap:0}.panel-shell .submit-row{position:static;padding:14px;gap:14px}.submit-main{gap:8px;width:100%;margin-left:0;justify-content:flex-end}.submit-main .button-primary{flex:1}.panel-shell .submit-row input.button-secondary{flex:1;min-width:0;white-space:normal;line-height:1.5;text-align:center;padding:8px 10px}.submit-row .button-danger-quiet{font-size:12px}.upload-preview{height:160px}#changelist-filter{padding:12px 16px;gap:10px}#changelist-filter details summary{font-size:10px;margin-right:7px}#changelist-filter li a{padding:5px 8px;font-size:11px}.panel-shell #toolbar{padding:14px 16px}#toolbar .small.quiet{width:100%;margin-left:0}#toolbar input#searchbar{width:100px}#result_list{min-width:680px}.model-user #result_list{min-width:600px}#result_list thead th,#result_list tbody td,#result_list tbody th{padding-left:16px;padding-right:16px}#changelist .paginator{padding:15px 16px}.auth-card h1{font-size:29px}.auth-form-panel{padding-inline:24px}.auth-brand-message{display:none}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

.sr-only {left:0;top:0}
a.stat-card,a.stat-card:visited,.stat-card>strong {color:var(--ink)}
.status-badge.is-live {color:#2f7453}
.security-state {display:flex;gap:13px;padding:17px;border:1px solid #dcebe2;background:#f1f8f4;border-radius:9px;margin:24px 0;color:#2f7453}
.security-state .icon {margin-top:2px}
.security-state strong {display:block;font-size:13px;font-weight:600}
.security-state p {font-size:12px;line-height:1.7;color:#4f735f;margin:5px 0 0}
.security-state.is-optional {border-color:var(--line);background:#f8f9fb;color:#64748b}
.security-state.is-optional p {color:#667085}
.security-actions {display:flex;flex-direction:column;gap:10px;margin:24px 0}
.security-action {display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);border-radius:8px;color:#435169}
.security-action:hover {border-color:#b9c3d1;background:#fafbfd}
.security-action>span {flex:1}
.security-action strong {display:block;font-size:12px;font-weight:550}
.security-action small {display:block;font-size:11px;color:#667085;margin-top:4px;line-height:1.6}
.auth-card .security-actions .button {width:100%}
.auth-card .account-back {display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:20px;margin-top:28px}
.account-back a {font-size:11px;color:#64748b}
.account-back form {margin:0}
.auth-card .account-back button {width:auto!important;background:none!important;color:#64748b!important;border:0!important;padding:5px!important;min-height:32px!important;font-size:11px!important;box-shadow:none!important}
.auth-card .manual-key {padding:13px 15px;border:1px solid var(--line);border-radius:7px;margin:18px 0;color:#667085;font-size:11px}
.manual-key summary {cursor:pointer;font-weight:500}
.manual-key code {display:block;margin-top:12px;overflow-wrap:anywhere;font-size:12px;letter-spacing:1px;color:#334155}
.auth-card .setup-steps {list-style:none;padding:0;margin:22px 0 28px;counter-reset:setup;display:flex;flex-direction:column;gap:14px}
.setup-steps li {counter-increment:setup;display:flex;align-items:center;gap:11px;font-size:12px;color:#667085;margin:0}
.setup-steps li::before {content:counter(setup);width:23px;height:23px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:#f3f4f7;border:1px solid #e6e9ef;color:#64748b;font-size:10px;flex-shrink:0}
.backup-code-grid {list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:14px;background:#f8f9fb;border:1px solid var(--line);border-radius:8px;gap:8px;margin:22px 0}
.backup-code-grid li {font:13px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:1px;text-align:center;padding:6px;margin:0;border:1px solid #e5e9f0;border-radius:5px;background:#fff;color:#46556d}
.deletion-card {max-width:680px;padding:36px}
.deletion-icon {display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid #f0d7d7;border-radius:10px;background:#fff4f4;color:#b93838;margin-bottom:24px}
.deletion-icon .icon {width:22px;height:22px}
.deletion-card h2 {font-size:21px;margin:0 0 12px;overflow-wrap:anywhere}
.deletion-card>p {font-size:13px;color:#667085;max-width:520px;margin:0 0 22px;line-height:1.8}
.deletion-details {font-size:12px;color:#667085;padding:16px 0;margin-bottom:24px;border-block:1px solid var(--line)}
.deletion-details summary {cursor:pointer;font-weight:550}
.deletion-details ul {margin:16px 0;padding-left:20px;font-size:12px}
.deletion-actions {display:flex;align-items:center;justify-content:flex-end;gap:10px}
button.button-danger {background:#b93838;border-color:#b93838;color:#fff}
button.button-danger:hover {background:#992b2b;border-color:#992b2b;color:#fff}
@media(max-width:700px){.deletion-card{padding:24px}.deletion-card h2{font-size:19px}.deletion-actions{flex-wrap:wrap}}
@media(max-width:700px){.submit-main{display:flex;flex-direction:column;align-items:stretch}.submit-row .submit-main input.button-secondary,.submit-row .submit-main .button{width:100%;flex:none;min-height:44px;height:44px;white-space:nowrap}.row-action{min-height:44px}}
