@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');

:root {
  --ink: #142033;
  --muted: #657185;
  --line: #e4e8ef;
  --soft: #f4f6f9;
  --white: #fff;
  --navy: #101b2e;
  --orange: #f25b28;
  --orange-dark: #d94718;
  --green: #1d8b62;
  --radius: 14px;
  --shadow: 0 18px 50px rgba(19, 32, 51, .08);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--soft); font-family: "DM Sans", Arial, sans-serif; }
button, input, textarea, select { font: inherit; }
a { color: inherit; text-decoration: none; }
button { cursor: pointer; }

.button {
  display: inline-flex; justify-content: center; align-items: center; gap: 8px;
  border: 0; border-radius: 8px; padding: 13px 20px; color: #fff; background: var(--orange);
  font-weight: 700; font-size: 14px; transition: .2s ease;
}
.button:hover { background: var(--orange-dark); transform: translateY(-1px); }
.button.secondary { color: var(--ink); background: #fff; border: 1px solid var(--line); }
.button.secondary:hover { border-color: #b8c0cc; background: #fafbfc; }
.button.danger { color: #fff; background: #a73535; }
.button.danger:hover { background: #8c2929; }
.button.wide { width: 100%; }
.brand { display: inline-flex; align-items: center; gap: 10px; font-family: Manrope, sans-serif; font-weight: 800; font-size: 20px; }
.brand span { display: grid; place-items: center; width: 32px; height: 32px; color: #fff; background: var(--orange); border-radius: 7px; }
.brand.light { color: #fff; }
.eyebrow { margin: 0 0 8px; color: var(--orange); font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.flash { position: fixed; z-index: 20; top: 76px; left: 50%; transform: translateX(-50%); padding: 12px 18px; border-radius: 8px; box-shadow: var(--shadow); font-weight: 600; }
.flash.success { color: #146446; background: #e7f8f1; }
.flash.error { color: #992a25; background: #fff0ee; }

.topbar {
  position: sticky; z-index: 10; top: 0; height: 64px; display: flex; align-items: center; justify-content: space-between;
  padding: 0 max(28px, calc((100vw - 1240px)/2)); color: #fff; background: var(--navy); border-bottom: 1px solid rgba(255,255,255,.08);
}
.topbar nav { display: flex; align-items: center; gap: 26px; font-size: 14px; }
.topbar nav a { color: #c5ceda; }
.topbar nav a:hover { color: #fff; }
.topbar form { margin: 0; }
.link-button { padding: 0; color: #c5ceda; background: none; border: 0; }

.workspace { width: min(1240px, calc(100% - 48px)); margin: 0 auto; padding: 54px 0 90px; }
.workspace.narrow { width: min(920px, calc(100% - 48px)); }
.page-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: 30px; }
.page-heading h1 { margin: 0; font-family: Manrope, sans-serif; font-size: clamp(30px, 4vw, 46px); letter-spacing: -.04em; }
.page-heading p:not(.eyebrow) { margin: 10px 0 0; color: var(--muted); }
.heading-stat { min-width: 150px; padding: 18px 22px; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); }
.heading-stat strong { display: block; font-family: Manrope; font-size: 28px; }
.heading-stat span { color: var(--muted); font-size: 13px; }
.metric-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-bottom: 22px; }
.metric-row article { padding: 22px; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); }
.metric-row span { color: var(--muted); font-size: 13px; }
.metric-row strong { display: block; margin-top: 8px; font-family: Manrope; font-size: 30px; }
.panel { margin-bottom: 22px; padding: 26px; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: 0 8px 30px rgba(19,32,51,.03); }
.panel-title { display: flex; align-items: center; justify-content: space-between; margin-bottom: 22px; }
.panel-title h2 { margin: 0; font: 700 19px Manrope; }
.panel-title span { color: var(--muted); font-size: 13px; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; text-align: left; }
th { padding: 0 14px 12px; color: #7b8594; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
td { padding: 17px 14px; border-top: 1px solid var(--line); font-size: 14px; }
td small { display: block; margin-top: 3px; color: var(--muted); }
.table-link { color: var(--orange); font-weight: 700; }
.application-tabs { display: flex; gap: 8px; margin: 0 0 18px; }
.application-tabs a { display: flex; align-items: center; gap: 9px; padding: 11px 15px; color: var(--muted); background: #fff; border: 1px solid var(--line); border-radius: 7px; font-weight: 700; }
.application-tabs a.active { color: #fff; background: var(--navy); border-color: var(--navy); }
.application-tabs span { min-width: 22px; padding: 2px 6px; color: inherit; background: rgba(128, 140, 158, .14); border-radius: 12px; font-size: 11px; text-align: center; }
.table-actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; white-space: nowrap; }
.table-actions form { margin: 0; }
.table-actions button { padding: 0; color: #52617a; background: none; border: 0; font-weight: 700; cursor: pointer; }
.table-actions .danger-link { color: #a73535; }
.empty-table { padding: 30px !important; color: var(--muted); text-align: center; }
.application-management { display: flex; align-items: center; justify-content: flex-end; gap: 10px; margin: -10px 0 20px; padding: 14px 18px; background: #fff; border: 1px solid var(--line); }
.application-management form { margin: 0; }
.application-management small { margin-right: auto; color: var(--muted); }
.state { display: inline-flex; padding: 6px 9px; color: #556071; background: #edf0f4; border-radius: 6px; font-size: 11px; font-weight: 700; text-transform: uppercase; }
.state-submitted, .state-under_review { color: #8b5c00; background: #fff2cf; }
.state-ready_for_customer, .state-published { color: #176848; background: #dff5ec; }
.back-link { display: inline-block; margin-bottom: 22px; color: var(--muted); font-size: 14px; }
.detail-grid { display: grid; grid-template-columns: 1.4fr .8fr; gap: 22px; }
.fact-list { margin: 0; }
.fact-list div { display: grid; grid-template-columns: 150px 1fr; gap: 20px; padding: 14px 0; border-top: 1px solid var(--line); }
.fact-list dt { color: var(--muted); font-size: 12px; text-transform: capitalize; }
.fact-list dd { margin: 0; }
.blueprint-list { display: grid; gap: 10px; margin: 0 0 24px; }
.blueprint-list span { padding: 10px 12px; background: var(--soft); border-radius: 7px; font-size: 14px; }
.media-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.media-grid figure { margin: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 8px; }
.media-grid img { width: 100%; aspect-ratio: 4/3; display: block; object-fit: cover; }
.media-grid figcaption { padding: 9px; color: var(--muted); font-size: 11px; }
.success-panel { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 22px; padding: 28px; color: #fff; background: var(--navy); border-radius: var(--radius); }
.success-panel h2 { margin: 0; }
.success-panel p:not(.eyebrow) { color: #bfc8d5; }
.credential-box { display: grid; gap: 8px; margin-top: 18px; padding: 18px; background: #fff7e8; border: 1px solid #f3ddb3; border-radius: 10px; }
.credential-box code { padding: 8px; background: #fff; border: 1px solid #eadbbf; }
.credential-box small { color: #7d6a48; }
.queue-action { margin-top: 10px; }
.queue-banner { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 22px; padding: 20px 24px; color: #fff; background: var(--navy); border-radius: var(--radius); }
.queue-banner strong, .queue-banner span { display: block; }
.queue-banner span { margin-top: 5px; color: #bfc8d5; font-size: 12px; }
.job-list > div { display: grid; grid-template-columns: 1fr auto; gap: 7px 15px; padding: 14px 0; border-top: 1px solid var(--line); }
.job-list small { grid-column: 1/-1; color: var(--muted); }
.quality-score { color: var(--orange); font: 800 27px Manrope; }
.quality-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; }
.quality-grid div { display: flex; align-items: center; gap: 9px; padding: 13px; background: var(--soft); border-radius: 7px; text-transform: capitalize; font-size: 12px; }
.quality-grid span { display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; }
.quality-grid .passed span { color: #176848; background: #dff5ec; }
.quality-grid .failed span { color: #992a25; background: #fff0ee; }
.quality-panel>p { margin: 18px 0 0; color: var(--muted); font-size: 13px; }
.setting-row { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 18px 0; border-bottom: 1px solid var(--line); }
.setting-row:last-child { border-bottom: 0; }
.setting-row p { margin: 5px 0 0; color: var(--muted); font-size: 13px; }
.model-list > div { display: grid; grid-template-columns: 1.2fr 1.8fr 100px; gap: 12px; padding: 13px 0; border-top: 1px solid var(--line); font-size: 13px; }
.model-list code { color: var(--muted); }
.provider-form { display: grid; gap: 22px; }
.provider-form label { gap: 9px; }
.provider-form label small, .provider-form > small { color: var(--muted); font-weight: 400; }
.secret-input { display: grid; grid-template-columns: 1fr auto; }
.secret-input input { border-radius: 8px 0 0 8px; }
.secret-input button { padding: 0 16px; color: var(--ink); background: var(--soft); border: 1px solid #d9dee7; border-left: 0; border-radius: 0 8px 8px 0; font-size: 12px; font-weight: 700; }
.provider-actions { display: flex; gap: 10px; align-items: center; }
.task-models { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; padding-top: 20px; border-top: 1px solid var(--line); }
.task-models > div { grid-column: 1/-1; }
.task-models p { margin: 5px 0 0; color: var(--muted); font-size: 12px; }

.auth-shell { min-height: 100vh; display: grid; grid-template-columns: 1fr 1fr; background: #fff; }
.auth-copy { display: flex; flex-direction: column; justify-content: space-between; padding: 54px clamp(40px, 7vw, 110px); color: #fff; background: var(--navy); }
.auth-copy div { max-width: 530px; padding-bottom: 14vh; }
.auth-copy h1 { margin: 0 0 20px; font: 800 clamp(38px, 5vw, 64px)/1.06 Manrope; letter-spacing: -.05em; }
.auth-copy p { color: #b8c2d0; font-size: 18px; line-height: 1.7; }
.auth-form { display: grid; place-items: center; padding: 40px; }
.auth-form form { width: min(420px, 100%); }
.auth-form h2 { margin: 0 0 30px; font: 800 30px Manrope; }
label { display: grid; gap: 8px; color: #4c5768; font-size: 13px; font-weight: 600; }
input, textarea, select { width: 100%; color: var(--ink); background: #fff; border: 1px solid #d9dee7; border-radius: 8px; outline: 0; }
input, select { height: 46px; padding: 0 13px; }
textarea { min-height: 46px; padding: 13px; resize: vertical; line-height: 1.5; }
input:focus, textarea:focus, select:focus { border-color: var(--orange); box-shadow: 0 0 0 3px rgba(242,91,40,.1); }
.auth-form label { margin-bottom: 18px; }
.muted-link { display: block; margin-top: 18px; color: var(--muted); text-align: center; font-size: 13px; }

.wizard-shell { min-height: 100vh; display: grid; grid-template-columns: 390px 1fr; background: #fff; }
.wizard-aside { display: flex; flex-direction: column; padding: 44px; color: #fff; background: var(--navy); }
.wizard-intro { margin: 13vh 0 48px; }
.step-label { color: #ff9b79; font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.wizard-intro h1 { margin: 12px 0 18px; font: 800 40px/1.08 Manrope; letter-spacing: -.04em; }
.wizard-intro p:last-child { color: #b8c2d0; line-height: 1.65; }
.progress-list { margin: 0; padding: 0; list-style: none; }
.progress-list li { display: flex; align-items: center; gap: 13px; margin: 17px 0; color: #7f8b9e; font-size: 13px; }
.progress-list span { display: grid; place-items: center; width: 28px; height: 28px; border: 1px solid #465166; border-radius: 50%; }
.progress-list li.active { color: #fff; }
.progress-list li.active span { background: var(--orange); border-color: var(--orange); }
.privacy-note { margin-top: auto; color: #7f8b9e; font-size: 11px; }
.chat-panel { width: min(850px, calc(100% - 48px)); height: min(820px, calc(100vh - 64px)); align-self: center; justify-self: center; display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: 16px; box-shadow: var(--shadow); overflow: hidden; }
.chat-panel > header { display: flex; align-items: center; justify-content: space-between; padding: 20px 24px; border-bottom: 1px solid var(--line); }
.chat-panel header strong, .chat-panel header small { display: block; }
.chat-panel header small { margin-top: 3px; color: var(--muted); font-size: 11px; }
.status-dot { color: var(--green); font-size: 12px; }
.status-dot::before { content: ""; display: inline-block; width: 7px; height: 7px; margin-right: 6px; background: var(--green); border-radius: 50%; }
.chat-header-actions { display: flex; align-items: center; gap: 14px; }
.chat-header-actions form { margin: 0; }
.reset-chat { padding: 6px 9px; color: var(--muted); background: #fff; border: 1px solid var(--line); border-radius: 6px; font-size: 11px; }
.messages { flex: 1; overflow: auto; padding: 28px; background: #f8f9fb; }
.message { width: fit-content; max-width: min(620px, 85%); margin-bottom: 14px; padding: 13px 16px; border-radius: 4px 14px 14px 14px; line-height: 1.55; font-size: 14px; }
.message.assistant { background: #fff; border: 1px solid var(--line); }
.message.user { margin-left: auto; color: #fff; background: var(--navy); border-radius: 14px 4px 14px 14px; }
.message-pending { animation: message-in .18s ease-out; }
.message-error { color: #992a25; background: #fff0ee !important; border-color: #f2cbc7 !important; }
.typing-message { display: flex; align-items: center; gap: 5px; color: var(--muted); }
.typing-message span { margin-right: 4px; font-size: 12px; }
.typing-message i { width: 6px; height: 6px; background: #9da7b5; border-radius: 50%; animation: typing-dot 1.1s infinite ease-in-out; }
.typing-message i:nth-child(3) { animation-delay: .15s; }
.typing-message i:nth-child(4) { animation-delay: .3s; }
@keyframes typing-dot { 0%, 60%, 100% { transform: translateY(0); opacity: .45; } 30% { transform: translateY(-4px); opacity: 1; } }
@keyframes message-in { from { transform: translateY(5px); opacity: 0; } }
.upload-summary { width: fit-content; padding: 9px 12px; color: #176848; background: #dff5ec; border-radius: 6px; font-size: 12px; }
.chat-actions { padding: 18px 22px; border-top: 1px solid var(--line); }
.message-form { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 10px; }
.message-form textarea { resize: none; }
.upload-box { margin-top: 10px; color: var(--muted); font-size: 12px; }
.upload-box summary { cursor: pointer; font-weight: 600; }
.upload-box form { display: grid; grid-template-columns: 140px 1fr; gap: 10px; margin-top: 12px; padding: 14px; background: var(--soft); border-radius: 8px; }
.upload-box .checkbox { grid-column: 1/-1; display: flex; align-items: center; }
.checkbox input { width: 16px; height: 16px; }
.completion-card { margin: 20px; padding: 20px; color: #176848; background: #e5f7f0; border-radius: 10px; }
.completion-card p { margin-bottom: 0; }
.media-intake-screen { flex: 1; overflow: auto; padding: clamp(28px, 5vw, 58px); background: linear-gradient(145deg, #f8fafc, #f2f5f8); }
.media-step-indicator { display: grid; gap: 9px; margin-bottom: 42px; }
.media-step-indicator span { color: var(--muted); font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.media-step-indicator div { height: 5px; overflow: hidden; background: #e1e6ed; border-radius: 10px; }
.media-step-indicator i { display: block; height: 100%; background: var(--orange); border-radius: inherit; transition: width .3s; }
.media-kicker { margin: 0 0 8px; color: var(--orange); font-size: 12px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.media-intake-screen h2 { max-width: 620px; margin: 0; font: 800 clamp(25px, 4vw, 38px)/1.15 Manrope; letter-spacing: -.035em; }
.media-description { max-width: 640px; margin: 12px 0 26px; color: var(--muted); line-height: 1.65; }
.media-step-upload { display: grid; gap: 14px; }
.media-dropzone { min-height: 190px; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 7px; padding: 28px; color: var(--ink); background: #fff; border: 1.5px dashed #bdc7d4; border-radius: 14px; text-align: center; cursor: pointer; transition: .2s; }
.media-dropzone:hover { border-color: var(--orange); background: #fffaf8; }
.media-dropzone input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.media-upload-icon { width: 48px; height: 48px; display: grid; place-items: center; margin-bottom: 5px; color: #fff; background: var(--navy); border-radius: 13px; font-size: 28px; font-weight: 300; }
.media-dropzone strong { font: 700 16px Manrope; }
.media-dropzone small { color: var(--muted); font-weight: 400; }
.media-preview-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 10px; }
.media-preview-list > div { min-width: 0; display: grid; grid-template-columns: 54px minmax(0, 1fr); gap: 10px; align-items: center; padding: 8px; background: #fff; border: 1px solid var(--line); border-radius: 9px; }
.media-preview-list img { width: 54px; height: 54px; object-fit: cover; border-radius: 6px; }
.media-preview-list span { min-width: 0; display: grid; gap: 3px; }
.media-preview-list strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; }
.media-preview-list small { color: var(--muted); font-size: 10px; }
.media-upload-submit { justify-self: start; }
.media-upload-submit:disabled, .message-form button:disabled { cursor: wait; opacity: .6; transform: none; }
.media-choice-form { display: flex; gap: 10px; margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--line); }
.media-choice-form button { padding: 11px 16px; color: var(--navy); background: #fff; border: 1px solid var(--line); border-radius: 7px; font-weight: 700; cursor: pointer; }
.media-choice-form button:hover { border-color: var(--navy); }

.content-editor { display: grid; gap: 2px; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.form-grid .full { grid-column: 1/-1; }
.service-editor { display: grid; grid-template-columns: 32px .7fr 1.5fr; align-items: center; gap: 16px; padding: 18px 0; border-top: 1px solid var(--line); }
.service-editor > span { display: grid; place-items: center; width: 28px; height: 28px; color: var(--orange); background: #fff0eb; border-radius: 6px; font-weight: 700; }
.offering-editor{margin-top:18px;padding:20px;border:1px solid var(--line);border-radius:10px;background:#fbfcfd}.offering-editor>header{display:flex;align-items:center;gap:12px;margin-bottom:18px}.offering-editor>header>span{display:grid;place-items:center;width:30px;height:30px;color:var(--orange);background:#fff0eb;border-radius:6px;font-weight:700}.offering-editor>header>div{display:grid;gap:2px}.offering-editor>header small{color:var(--muted)}.offering-editor>header .text-danger{margin-left:auto;padding:7px 10px;color:#a73535;background:#fff;border:1px solid #edcaca;border-radius:6px}.offering-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.offering-fields .wide{grid-column:1/-1}.add-offering{margin-top:2px}
.sticky-actions { position: sticky; bottom: 18px; z-index: 3; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 14px 18px; background: rgba(16,27,46,.96); color: #fff; border-radius: 10px; box-shadow: var(--shadow); }
.sticky-actions span { color: #bfc8d5; font-size: 12px; }
.revision-panel { display: grid; grid-template-columns: .8fr 1.2fr; gap: 30px; margin-top: 30px; }
.revision-panel h2 { margin: 0; }
.revision-panel p { color: var(--muted); }
.revision-panel form { display: grid; gap: 10px; }
.media-upload-form { display: grid; grid-template-columns: 180px 1fr auto; gap: 12px; align-items: center; margin-top: 18px; }
.empty { min-height: 100vh; display: grid; place-content: center; justify-items: center; padding: 30px; text-align: center; }

@media (max-width: 900px) {
  .wizard-shell, .auth-shell { grid-template-columns: 1fr; }
  .wizard-aside { min-height: auto; padding: 28px; }
  .wizard-intro { margin: 50px 0 25px; }
  .progress-list, .privacy-note { display: none; }
  .chat-panel { width: 100%; height: 70vh; border: 0; border-radius: 0; box-shadow: none; }
  .auth-copy { min-height: 42vh; padding: 34px; }
  .auth-copy div { padding: 70px 0 10px; }
  .detail-grid, .revision-panel { grid-template-columns: 1fr; }
  .media-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 650px) {
  .topbar { padding: 0 18px; }
  .topbar nav a { display: none; }
  .workspace, .workspace.narrow { width: min(100% - 28px, 1240px); padding-top: 34px; }
  .page-heading { align-items: flex-start; flex-direction: column; }
  .metric-row, .form-grid { grid-template-columns: 1fr; }
  .form-grid .full { grid-column: auto; }
  .heading-stat { width: 100%; }
  .panel { padding: 18px; }
  .fact-list div { grid-template-columns: 1fr; gap: 5px; }
  .service-editor { grid-template-columns: 28px 1fr; }
  .service-editor label:last-child { grid-column: 2; }
  .offering-fields{grid-template-columns:1fr}.offering-fields .wide{grid-column:auto}
  .sticky-actions { align-items: stretch; flex-direction: column; }
  .media-upload-form { grid-template-columns: 1fr; }
  .quality-grid { grid-template-columns: 1fr 1fr; }
  .message-form { grid-template-columns: 1fr; }
  .upload-box form { grid-template-columns: 1fr; }
  .media-step-upload { grid-template-columns: 1fr; }
  .media-choice-form { flex-direction: column; }
}
.studio-form{display:grid;gap:22px}.studio-form fieldset{margin:0;padding:18px;border:1px solid #dce2ea}.studio-form legend{padding:0 8px;font-weight:700}.studio-checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.studio-checks label{display:flex;align-items:center;gap:8px;text-transform:capitalize}.studio-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.media-plan{display:grid;gap:8px;margin-top:22px;padding-top:18px;border-top:1px solid #e4e8ee}.media-plan span{padding:10px 12px;background:#f5f7fa;border-radius:6px}.approval-panel{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:28px;color:#fff;background:#101a2c}.approval-panel h2{margin:4px 0 8px}.approval-panel p{margin:0;color:#c8d1df}@media(max-width:700px){.approval-panel{align-items:flex-start;flex-direction:column}}
.area-customer{margin:0;background:#f4f6f9;color:#172033}.area-customer .flash{position:fixed;z-index:100;top:18px;right:22px;max-width:420px}.cms-shell{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr)}.cms-sidebar{position:fixed;z-index:40;inset:0 auto 0 0;width:248px;display:flex;flex-direction:column;padding:24px 16px;color:#aebbd0;background:#101a2d}.cms-logo{display:flex;align-items:center;gap:12px;padding:0 10px 28px;color:#fff}.cms-logo>span{width:38px;height:38px;display:grid;place-items:center;background:#ff5c35;border-radius:9px;font-weight:800}.cms-logo div{display:grid}.cms-logo strong{font-size:17px}.cms-logo small{color:#7f90aa;font-size:11px}.cms-sidebar nav{display:grid;gap:5px}.cms-sidebar nav a{display:flex;align-items:center;gap:12px;padding:12px 13px;border-radius:8px;color:#aebbd0;font-size:13px;font-weight:650}.cms-sidebar nav a>span{width:20px;color:#7f90aa;text-align:center}.cms-sidebar nav a>b{margin-left:auto;min-width:20px;padding:2px 6px;color:#fff;background:#ff5c35;border-radius:10px;font-size:10px;text-align:center}.cms-sidebar nav a:hover,.cms-sidebar nav a.active{color:#fff;background:#1c2940}.cms-sidebar nav a.active>span{color:#ff7656}.cms-sidebar-foot{display:grid;gap:10px;margin-top:auto;padding:18px 10px 0;border-top:1px solid #27344a}.cms-sidebar-foot a,.cms-sidebar-foot button{padding:0;color:#9eacc1;background:none;border:0;font-size:12px;cursor:pointer}.cms-main{grid-column:2;min-width:0}.cms-header{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;background:#fff;border-bottom:1px solid #e1e5eb}.cms-header>div:first-child{display:flex;align-items:center;gap:12px}.cms-header h1{margin:0;font-size:21px;letter-spacing:-.02em}.cms-header p{margin:4px 0 0;color:#7a8597;font-size:12px}.cms-status{display:flex;align-items:center;gap:8px;color:#4e5c70;font-size:12px}.cms-status span{width:8px;height:8px;background:#25a56a;border-radius:50%}.cms-menu{display:none}.cms-overview,.cms-wide,.cms-security{margin:30px}.cms-welcome{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:34px 38px;color:#fff;background:#17243a}.cms-welcome h2{margin:0 0 8px;font-size:28px}.cms-welcome p{max-width:680px;margin:0;color:#b8c4d5}.cms-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}.cms-metrics article{padding:22px;background:#fff;border:1px solid #e0e5eb}.cms-metrics span{display:block;color:#7b8798;font-size:12px}.cms-metrics strong{display:block;margin-top:12px;font-size:28px}.cms-dashboard-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.cms-panel{padding:26px;background:#fff;border:1px solid #e0e5eb}.cms-panel h2,.cms-panel h3{margin-top:0}.cms-quick{display:grid}.cms-quick a{display:flex;justify-content:space-between;padding:16px 0;border-top:1px solid #e7eaf0;font-weight:650}.cms-lead-mini{display:grid;gap:4px;padding:13px 0;border-top:1px solid #e7eaf0}.cms-lead-mini span,.cms-empty{color:#7c8797;font-size:13px}.cms-editor-layout{display:grid;grid-template-columns:minmax(390px,520px) minmax(0,1fr);gap:20px;padding:24px;height:calc(100vh - 78px);overflow:hidden}.cms-editor{overflow:auto;padding-right:4px}.cms-editor .cms-panel{display:grid;gap:18px}.cms-editor label,.cms-security label,.cms-form-grid label{display:grid;gap:7px;color:#435066;font-size:12px;font-weight:700}.cms-editor input,.cms-editor textarea,.cms-editor select,.cms-security input,.cms-form-grid input,.cms-form-grid textarea,.cms-upload input,.cms-upload select{width:100%;padding:11px 12px;color:#1b2639;background:#fff;border:1px solid #cfd6df;border-radius:5px;outline:none}.cms-editor input:focus,.cms-editor textarea:focus,.cms-editor select:focus{border-color:#5473ba;box-shadow:0 0 0 3px #e9eef9}.cms-preview{min-width:0;display:grid;grid-template-rows:auto 1fr auto;background:#e7ebf0;border:1px solid #d6dce4}.cms-preview>header,.cms-preview>footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 15px;background:#fff}.cms-preview>header span{display:block;margin-top:3px;color:#8993a2;font-size:10px}.cms-device-switch{display:flex;padding:3px;background:#eef1f5;border-radius:5px}.cms-device-switch button{padding:6px 9px;color:#687386;background:transparent;border:0;border-radius:4px;font-size:10px;cursor:pointer}.cms-device-switch button.active{color:#172033;background:#fff;box-shadow:0 1px 3px #cbd1da}.cms-preview-stage{display:flex;justify-content:center;overflow:auto;padding:18px}.cms-preview iframe{width:100%;height:100%;min-height:640px;background:#fff;border:0;box-shadow:0 4px 18px rgba(22,31,47,.12);transition:width .25s}.cms-preview>footer a,.cms-preview>footer button{color:#52617a;background:none;border:0;font-size:11px;cursor:pointer}.cms-section-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.cms-section-head h2{margin:0 0 5px}.cms-section-head p{margin:0;color:#778397}.cms-offering{border-top:1px solid #e2e6ec}.cms-offering summary{display:flex;align-items:center;justify-content:space-between;padding:17px 5px;cursor:pointer}.cms-offering summary span{color:#7c8797;font-size:12px}.cms-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:5px 5px 22px}.cms-form-grid .full{grid-column:1/-1}.cms-save-row{padding-top:20px}.cms-add-form{margin-top:28px;padding-top:25px;border-top:1px solid #e1e5eb}.cms-upload{display:flex;gap:8px}.cms-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}.cms-media-grid figure{margin:0;background:#f4f6f8;border:1px solid #e0e4e9}.cms-media-grid img{width:100%;height:145px;object-fit:cover}.cms-media-grid figcaption{padding:10px;text-transform:capitalize}.cms-repeat{display:grid;gap:10px;padding:15px;background:#f7f8fa;border:1px solid #e4e7ec}.cms-repeat-head{display:flex;align-items:center;justify-content:space-between}.cms-repeat-head button{color:#4263aa;background:none;border:0;font-size:12px;font-weight:700;cursor:pointer}.cms-repeat-row{display:grid;grid-template-columns:120px 1fr 34px;gap:8px;align-items:start}.cms-repeat-row button{height:39px;color:#b14545;background:#fff;border:1px solid #e0d2d2;border-radius:5px;cursor:pointer}.cms-block-list{display:flex;flex-wrap:wrap;gap:7px}.cms-block-list strong{width:100%}.cms-block-list span{padding:7px 9px;background:#eef1f5;border-radius:4px;font-size:11px;text-transform:capitalize}.cms-table-wrap{overflow:auto}.cms-table{width:100%;border-collapse:collapse}.cms-table th,.cms-table td{padding:14px;text-align:left;border-bottom:1px solid #e3e7ec;font-size:12px;vertical-align:top}.cms-table th{color:#768295;background:#f7f8fa}.cms-security{max-width:680px}.cms-security form{display:grid;gap:16px;margin-top:25px}.cms-security p{color:#6e7a8d}
.cms-value-row{display:grid;gap:8px;padding:12px 0;border-top:1px solid #e2e6ec}.cms-value-row input,.cms-value-row textarea{width:100%;padding:10px 11px;border:1px solid #cfd6df;border-radius:5px}@media(max-width:1100px){.cms-editor-layout{grid-template-columns:1fr;height:auto;overflow:visible}.cms-editor{overflow:visible}.cms-preview{min-height:720px}.cms-metrics{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.cms-shell{grid-template-columns:1fr}.cms-sidebar{transform:translateX(-100%);transition:.25s}.cms-shell.sidebar-open .cms-sidebar{transform:none}.cms-main{grid-column:1}.cms-header{padding:0 18px}.cms-menu{display:block}.cms-overview,.cms-wide,.cms-security{margin:18px}.cms-welcome{align-items:flex-start;flex-direction:column;padding:26px}.cms-dashboard-grid,.cms-form-grid{grid-template-columns:1fr}.cms-form-grid .full{grid-column:auto}.cms-editor-layout{padding:14px}.cms-preview{display:none}.cms-repeat-row{grid-template-columns:1fr 34px}.cms-repeat-row>*:first-child{grid-column:1}.cms-repeat-row>*:nth-child(2){grid-column:1}.cms-repeat-row button{grid-column:2;grid-row:1}.cms-upload{align-items:stretch;flex-direction:column}.cms-status{display:none}}
