﻿/* 1.12: shared design contract. No remote font, animation library or global skin reset.
   --ew-* tokens are optional; edit this file to customize the module independently. */
:is(.eb-module,.eb-admin,.eb-editor,.eb-widget) {
  --eb-radius-sm:min(10px, var(--eb-radius));
  --eb-shadow:0 8px 24px #1833420c;
  font-size:.95rem; line-height:1.7; text-align:start;
}
:is(.eb-module,.eb-admin,.eb-editor,.eb-widget) :is(button,input,select,textarea) { font-family:inherit; }
:is(.eb-module,.eb-admin,.eb-editor,.eb-widget) .eb-button {
  min-block-size:40px; padding:10px 16px; font-size:13px; line-height:1.4;
  border-radius:9px; box-shadow:none; transform:none; gap:6px; white-space:normal;
}
:is(.eb-module,.eb-admin,.eb-editor,.eb-widget) .eb-button--primary { color:var(--eb-button-fg,#fff); background:var(--eb-button-bg,var(--eb-brand)); }
:is(.eb-module,.eb-admin,.eb-editor,.eb-widget) .eb-button--primary:hover { color:var(--eb-button-fg,#fff); background:color-mix(in srgb,var(--eb-button-bg,var(--eb-brand)) 85%,#000); }
:is(.eb-module,.eb-admin,.eb-editor,.eb-widget) .eb-button--secondary { color:var(--eb-text); background:var(--eb-surface); }
:is(.eb-module,.eb-admin,.eb-editor,.eb-widget) button:disabled,
:is(.eb-module,.eb-admin,.eb-editor,.eb-widget) input:disabled { opacity:.55; cursor:not-allowed; }
:is(.eb-module,.eb-admin,.eb-editor,.eb-widget) [hidden] { display:none !important; }
.eb-module .eb-toolbar { border:1px solid var(--eb-border); background:var(--eb-canvas); padding:8px; border-radius:12px; margin:0 0 20px; gap:8px; }
.eb-module .eb-section-heading { margin:0 0 24px; padding-block:12px 20px; border-block-end:1px solid var(--eb-border); }
.eb-module .eb-section-title { color:var(--eb-text); font-size:clamp(26px,4cqi,42px); line-height:1.35; letter-spacing:-.025em; margin:0; }
:is(.eb-module,.eb-admin,.eb-editor,.eb-widget) .eb-eyebrow { font-size:11px; line-height:1.7; letter-spacing:.08em; margin-block-end:5px; }
:is(.eb-module,.eb-admin,.eb-editor,.eb-widget)[dir=rtl] .eb-eyebrow { letter-spacing:0; }
.eb-module .eb-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.eb-module .eb-card { grid-column:auto; grid-row:auto; position:relative; content-visibility:visible; box-shadow:none; border-color:var(--eb-border); border-radius:var(--eb-radius); transform:none; }
.eb-module .eb-card:hover { border-color:var(--eb-brand); box-shadow:var(--eb-shadow); transform:none; }
.eb-module .eb-card__media { aspect-ratio:16/10; flex-shrink:0; }
.eb-module .eb-card__placeholder { z-index:0; }
.eb-module .eb-card__media img { position:relative; z-index:1; }
.eb-module .eb-card__content { padding:20px; gap:0; }
.eb-module .eb-card__date { font-size:12px; line-height:1.6; }
.eb-module .eb-card__title { font-size:21px; line-height:1.5; margin:8px 0; letter-spacing:-.015em; text-wrap:pretty; }
.eb-module .eb-card__excerpt { font-size:14px; line-height:1.85; margin:0 0 18px; }
.eb-module .eb-card__read { color:var(--eb-brand); font-size:13px; line-height:1.5; padding-block:6px; }
.eb-module .eb-card__edit { position:absolute; inset-block-start:12px; inset-inline-end:12px; z-index:3; display:inline-flex; align-items:center; min-height:36px; padding:6px 12px; border:1px solid #ffffffb3; border-radius:8px; background:#fff; color:#192b38; box-shadow:0 2px 12px #0002; font-size:12px; font-weight:700; }
.eb-module .eb-card__edit:hover { background:var(--eb-button-bg,var(--eb-brand)); color:var(--eb-button-fg,#fff); }
.eb-module[data-eb-template=editorial] .eb-card:first-child { grid-column:span 2; grid-row:span 2; }
.eb-module[data-eb-template=editorial] .eb-card:first-child .eb-card__media { flex:1; min-block-size:260px; }
.eb-module[data-eb-template=editorial] .eb-card:first-child .eb-card__title { font-size:clamp(24px,3cqi,34px); }
.eb-module[data-eb-template=editorial] .eb-card:nth-child(2) .eb-card__excerpt,
.eb-module[data-eb-template=editorial] .eb-card:nth-child(3) .eb-card__excerpt { display:none; }
.eb-module[data-eb-template=magazine] .eb-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.eb-module[data-eb-template=magazine] .eb-card { grid-column:auto; }
.eb-module[data-eb-template=magazine] .eb-card:first-child { grid-column:span 2; }
.eb-module[data-eb-template=magazine] .eb-card__title { font-size:19px; }
.eb-module[data-eb-template=spotlight] .eb-card:first-child { grid-column:1/-1; min-block-size:450px; }
.eb-module[data-eb-template=spotlight] .eb-card:first-child .eb-card__content { max-inline-size:900px; padding:40px; }
.eb-module[data-eb-template=spotlight] .eb-card:first-child .eb-card__title { color:white; font-size:clamp(26px,4cqi,46px); line-height:1.4; }
.eb-module[data-eb-template=spotlight] .eb-card:first-child .eb-card__media::after { z-index:2; pointer-events:none; }
.eb-module[data-eb-template=spotlight] .eb-card:first-child .eb-card__content { z-index:2; }
.eb-module[data-eb-template=spotlight] .eb-card:first-child .eb-card__edit { z-index:4; }
.eb-module[data-eb-template=minimal] .eb-grid,
.eb-module[data-eb-template=timeline] .eb-grid { display:grid; grid-template-columns:1fr; gap:0; }
.eb-module[data-eb-template=minimal] .eb-card,
.eb-module[data-eb-template=timeline] .eb-card { display:grid; grid-template-columns:minmax(140px,28%) minmax(0,1fr); border-radius:0; gap:24px; padding:24px 0; }
.eb-module[data-eb-template=minimal] .eb-card__content,
.eb-module[data-eb-template=timeline] .eb-card__content { padding:0; }
.eb-module[data-eb-template=timeline] .eb-card { padding-inline-start:24px; }
.eb-module[data-eb-template=portfolio] .eb-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
.eb-module[data-eb-template=portfolio] .eb-card { border:0; border-radius:0; }
.eb-module[data-eb-template=portfolio] .eb-card__media { border-radius:var(--eb-radius); aspect-ratio:4/3; }
.eb-module[data-eb-template=portfolio] .eb-card__content { padding:18px 0; }
.eb-module[data-eb-template=portfolio] .eb-card:hover { box-shadow:none; }
.eb-module[data-eb-template=journal] .eb-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.eb-module[data-eb-template=journal] .eb-card:first-child { grid-column:1/-1; display:grid; grid-template-columns:1.25fr 1fr; }
.eb-module[data-eb-template=journal] .eb-card:first-child .eb-card__media { height:100%; aspect-ratio:auto; min-height:300px; }
.eb-module[data-eb-template=journal] .eb-card:first-child .eb-card__content { padding:32px; justify-content:center; }
.eb-module[data-eb-template=journal] .eb-card:first-child .eb-card__read { margin-block-start:10px; }
.eb-module .eb-article { max-inline-size:1120px; }
.eb-module .eb-article-actions { display:flex; align-items:center; flex-wrap:wrap; justify-content:space-between; gap:12px; margin-block-end:24px; }
.eb-module .eb-article-back { margin:0; font-size:13px; }
.eb-module .eb-article__header { text-align:start; max-inline-size:820px; }
.eb-module .eb-article__header h1 { font-size:clamp(28px,4cqi,48px); line-height:1.4; letter-spacing:-.025em; margin:8px 0 18px; overflow-wrap:break-word; }
.eb-module .eb-article__excerpt { max-inline-size:none; font-size:18px; line-height:1.85; margin:0 0 18px; }
.eb-module .eb-article__date { font-size:13px; }
.eb-module .eb-article__hero { margin:32px 0; }
.eb-module .eb-prose { max-inline-size:780px; font-size:17px; line-height:1.95; }
.eb-module .eb-prose h2 { font-size:27px; line-height:1.5; }
.eb-module .eb-prose h3 { font-size:22px; line-height:1.6; }
.eb-module .eb-prose :is(pre,table) { max-width:100%; overflow:auto; }
.eb-module .eb-prose a { color:var(--eb-brand); text-decoration:underline; text-underline-offset:3px; }
.eb-module :is(.eb-comments,.eb-faq,.eb-article-sources,.eb-engagement) { max-inline-size:820px; margin-inline:auto; margin-block-start:32px; }
.eb-module .eb-category-intro { border-inline-start:3px solid var(--eb-brand); padding:20px 24px; margin:0 0 24px; }
.eb-module .eb-empty { padding:40px 24px; border-style:solid; }
.eb-module .eb-empty h3 { font-size:20px; line-height:1.7; }
.eb-module .eb-empty p { font-size:14px; }
/* Administration: same shell and controls across content, AI, SEO, social and widgets. */
:is(.eb-admin,.eb-editor) { max-inline-size:1440px; padding:24px; border-radius:16px; background:var(--eb-canvas); font-size:14px; }
:is(.eb-admin,.eb-editor) .eb-admin__header { gap:16px; margin:4px 0 24px; }
:is(.eb-admin,.eb-editor) h1 { font-size:clamp(23px,3cqi,30px); line-height:1.5; letter-spacing:-.015em; }
:is(.eb-admin,.eb-editor) h2 { font-size:18px; line-height:1.65; margin-block:0 14px; }
:is(.eb-admin,.eb-editor) h3 { font-size:16px; line-height:1.65; }
:is(.eb-admin,.eb-editor) .eb-workspace-nav { display:flex; flex-wrap:wrap; gap:4px; padding:8px; border:1px solid var(--eb-border); border-radius:12px; background:var(--eb-surface); margin-block-end:24px; }
:is(.eb-admin,.eb-editor) .eb-workspace-nav a { display:inline-flex; align-items:center; min-block-size:38px; padding:8px 12px; border-radius:7px; color:var(--eb-muted); font-size:13px; font-weight:650; }
:is(.eb-admin,.eb-editor) .eb-workspace-nav a:hover { background:var(--eb-canvas); color:var(--eb-text); }
:is(.eb-admin,.eb-editor) .eb-workspace-nav a[aria-current=page] { background:var(--eb-brand); color:white; }
.eb-admin .eb-workspace-tools { border:1px solid var(--eb-border); border-radius:12px; background:var(--eb-surface); padding:0 16px; }
.eb-admin .eb-workspace-tools>summary { cursor:pointer; padding:14px 0; font-weight:700; font-size:14px; }
.eb-admin .eb-workspace-tools[open] { padding-block-end:16px; }
.eb-admin .eb-admin-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr)); gap:10px; margin-block:10px; }
.eb-admin .eb-admin-card { min-block-size:92px; padding:14px; gap:4px; border-radius:10px; transform:none; box-shadow:none; align-content:start; }
.eb-admin .eb-admin-card--accent { background:var(--eb-surface); color:var(--eb-text); border-inline-start:3px solid var(--eb-brand); }
.eb-admin .eb-admin-card__icon { float:none; block-size:28px; inline-size:28px; font-size:18px; border-radius:6px; margin:0 0 3px; }
.eb-admin .eb-admin-card strong { font-size:14px; line-height:1.6; padding-inline-end:20px; }
.eb-admin .eb-admin-card small { font-size:12px; line-height:1.7; color:var(--eb-muted); }
:is(.eb-admin,.eb-editor) :is(.eb-form-card,.eb-admin-panel) { padding:20px; border-radius:12px; }
:is(.eb-admin,.eb-editor) .eb-admin-panel { margin-block-start:20px; }
:is(.eb-admin,.eb-editor) .eb-field { gap:6px; margin-block-end:16px; }
:is(.eb-admin,.eb-editor) :is(.eb-field,.eb-form-grid,.eb-field-row)>label { font-size:13px; }
:is(.eb-admin,.eb-editor) :is(input[type=text],input[type=email],input[type=password],input[type=number],input[type=url],input[type=datetime-local],input[type=date],select,textarea) {
  box-sizing:border-box; background:var(--eb-surface); border:1px solid var(--eb-border); color:var(--eb-text); border-radius:8px; font-size:14px; line-height:1.6; padding:9px 12px; min-block-size:42px; inline-size:100%; max-inline-size:100%;
}
:is(.eb-admin,.eb-editor) :is(input,select,textarea):focus-visible { outline:2px solid var(--eb-brand); outline-offset:2px; }
:is(.eb-admin,.eb-editor) :is(input[type=checkbox],input[type=radio]) { accent-color:var(--eb-brand); width:17px; height:17px; margin-inline-end:7px; vertical-align:middle; flex-shrink:0; }
:is(.eb-admin,.eb-editor) :is(label,.eb-field label,.eb-check label) { font-size:13px; line-height:1.7; }
:is(.eb-admin,.eb-editor) :is(.eb-hint,small) { font-size:12px; line-height:1.7; }
:is(.eb-admin,.eb-editor) .eb-input--title { font-size:21px; font-weight:700; }
:is(.eb-admin,.eb-editor) .eb-textarea--editor { min-height:340px; }
:is(.eb-admin,.eb-editor) .eb-form-grid { gap:16px; }
:is(.eb-admin,.eb-editor) .eb-table { font-size:13px; }
:is(.eb-admin,.eb-editor) .eb-table th { font-size:11px; letter-spacing:0; background:var(--eb-canvas); }
:is(.eb-admin,.eb-editor) .eb-table :is(th,td) { padding:14px 12px; line-height:1.7; }
:is(.eb-admin,.eb-editor) .eb-table tr:hover td { background:var(--eb-canvas); }
:is(.eb-admin,.eb-editor) .eb-table a { color:var(--eb-brand); }
.eb-admin .eb-content-filters { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto; gap:12px; align-items:end; padding:16px; background:var(--eb-canvas); border-radius:10px; }
.eb-admin .eb-content-filters .eb-field { margin:0; }
.eb-admin .eb-result-count { font-size:12px; color:var(--eb-muted); margin:16px 0; }
.eb-admin .eb-seo-status { font-size:12px; }
:is(.eb-admin,.eb-editor) .eb-settings-layout { grid-template-columns:180px minmax(0,1fr); gap:20px; }
:is(.eb-admin,.eb-editor) .eb-settings-nav a { font-size:13px; padding:10px 14px; }
:is(.eb-admin,.eb-editor) .eb-actions { gap:8px; margin-block-start:16px; }
:is(.eb-admin,.eb-editor) .eb-template-picker label { font-size:13px; line-height:1.6; min-block-size:54px; padding:12px; }
:is(.eb-admin,.eb-editor) :is(.eb-form-card,.eb-admin-panel,[id^=articles-]) { scroll-margin-block-start:90px; }
:is(.eb-admin,.eb-editor) .eb-kpi strong { font-size:28px; line-height:1.4; }
.eb-widget .eb-widget__header h2 { font-size:20px; line-height:1.5; }
/* Container rules support several module instances on one page and narrow DNN panes. */
@container (max-width:900px) {
  .eb-module .eb-grid,.eb-module[data-eb-template=magazine] .eb-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
  .eb-module[data-eb-template=editorial] .eb-card:first-child { grid-column:1/-1; grid-row:auto; }
  .eb-module[data-eb-template=editorial] .eb-card:nth-child(2) .eb-card__excerpt,.eb-module[data-eb-template=editorial] .eb-card:nth-child(3) .eb-card__excerpt { display:-webkit-box; }
  :is(.eb-admin,.eb-editor) .eb-settings-layout { grid-template-columns:1fr; }
  :is(.eb-admin,.eb-editor) .eb-workspace-nav { flex-wrap:nowrap; overflow-x:auto; white-space:nowrap; }
  :is(.eb-admin,.eb-editor) .eb-workspace-nav a { flex-shrink:0; }
  .eb-admin .eb-content-filters { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
}
@container (max-width:600px) {
  .eb-module .eb-grid,.eb-module[data-eb-template=magazine] .eb-grid,.eb-module[data-eb-template=portfolio] .eb-grid,.eb-module[data-eb-template=journal] .eb-grid { grid-template-columns:1fr; gap:20px; }
  .eb-module .eb-card,.eb-module[data-eb-template=magazine] .eb-card:first-child { grid-column:auto; }
  .eb-module .eb-card__content { padding:16px; }
  .eb-module .eb-card__title { font-size:20px; }
  .eb-module[data-eb-template=journal] .eb-card:first-child { grid-template-columns:1fr; }
  .eb-module[data-eb-template=journal] .eb-card:first-child .eb-card__media { min-height:200px; aspect-ratio:16/10; }
  .eb-module[data-eb-template=journal] .eb-card:first-child .eb-card__content { padding:20px; }
  .eb-module[data-eb-template=spotlight] .eb-card:first-child { min-block-size:380px; }
  .eb-module[data-eb-template=spotlight] .eb-card:first-child .eb-card__content { padding:24px; }
  .eb-module[data-eb-template=minimal] .eb-card,.eb-module[data-eb-template=timeline] .eb-card { grid-template-columns:1fr; gap:14px; }
  .eb-module .eb-prose { font-size:16px; }
  .eb-module .eb-article__excerpt { font-size:16px; }
  .eb-admin .eb-content-filters { grid-template-columns:1fr; padding:12px; }
  :is(.eb-admin,.eb-editor) :is(.eb-form-card,.eb-admin-panel) { padding:14px; }
  :is(.eb-admin,.eb-editor) .eb-admin__header { flex-direction:row; align-items:center; }
  :is(.eb-admin,.eb-editor) .eb-admin__header>.eb-button { inline-size:auto; }
}
@media (max-width:600px) { :is(.eb-admin,.eb-editor) { padding:12px; border-radius:12px; } }
@media (prefers-reduced-motion:reduce) { :is(.eb-module,.eb-admin,.eb-editor,.eb-widget) * { scroll-behavior:auto !important; transition:none !important; } }
@media print { .eb-module :is(.eb-toolbar,.eb-card__edit,.eb-article-actions,.eb-engagement,.eb-comment-form) { display:none; } }
:is(.eb-admin,.eb-editor) .eb-section-jumps {display:flex;flex-wrap:wrap;gap:6px;margin:0 0 20px;padding:12px;background:var(--eb-surface);border-radius:10px;border:1px solid var(--eb-border)}
:is(.eb-admin,.eb-editor) .eb-section-jumps button {border:1px solid var(--eb-border);background:var(--eb-canvas);border-radius:7px;padding:8px 12px;font:inherit;font-size:12px;color:var(--eb-text);cursor:pointer;min-height:36px}
:is(.eb-admin,.eb-editor) .eb-section-jumps button:hover {border-color:var(--eb-brand);color:var(--eb-brand)}
.eb-editor .eb-search-preview {padding:20px;background:var(--eb-canvas);border:1px solid var(--eb-border);border-radius:10px;margin-block:12px 16px;overflow-wrap:anywhere}
.eb-editor .eb-search-preview strong {display:block;font-size:21px;line-height:1.5;color:#18468c;margin:6px 0}
.eb-editor .eb-search-preview p {font-size:14px;line-height:1.8;margin:6px 0 14px}
.eb-editor [data-preview-url] {font-size:12px;margin-block-start:14px}
.eb-editor .eb-readiness-checks {list-style:none;padding:0;margin:0 0 20px;display:grid;gap:6px;font-size:13px}
.eb-editor .eb-readiness-checks [data-complete=true] {color:#176242}
.eb-editor .eb-readiness-checks [data-complete=false] {color:#945c00}
.eb-editor .eb-readiness {font-size:12px;color:var(--eb-muted)}
/* Keep absolutely positioned accessible labels inside the scrolling table. */
:is(.eb-admin,.eb-editor) .eb-table-wrap {position:relative;min-width:0}
/* Editorial lead: one cover and two supporting stories, followed by regular cards. */
@container (min-width:901px) {
 .eb-module[data-eb-template=editorial] .eb-card:nth-child(-n+3) {min-height:240px;isolation:isolate}
 .eb-module[data-eb-template=editorial] .eb-card:first-child {min-height:504px}
 .eb-module[data-eb-template=editorial] .eb-card:nth-child(-n+3) .eb-card__media {position:absolute;inset:0;aspect-ratio:auto;min-block-size:0}
 .eb-module[data-eb-template=editorial] .eb-card:nth-child(-n+3) .eb-card__media::after {content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0b2235f5,#0b223580 65%,#0b223520);z-index:2;pointer-events:none}
 .eb-module[data-eb-template=editorial] .eb-card:nth-child(-n+3) .eb-card__content {position:relative;z-index:2;justify-content:flex-end;padding:24px;pointer-events:none}
 .eb-module[data-eb-template=editorial] .eb-card:nth-child(-n+3) .eb-card__content a {pointer-events:auto;color:white}
 .eb-module[data-eb-template=editorial] .eb-card:nth-child(-n+3) .eb-card__title {color:white;font-size:21px;line-height:1.55}
 .eb-module[data-eb-template=editorial] .eb-card:first-child .eb-card__title {font-size:clamp(26px,3cqi,38px)}
 .eb-module[data-eb-template=editorial] .eb-card:nth-child(-n+3) .eb-card__date {color:#e3edf3}
 .eb-module[data-eb-template=editorial] .eb-card:nth-child(-n+3) .eb-card__excerpt {display:none}
 .eb-module[data-eb-template=editorial] .eb-card:nth-child(-n+3) .eb-card__read {margin-block-start:12px}
}
@container (max-width:600px) {
 .eb-admin .eb-articles-table {min-inline-size:0;display:block}
 .eb-admin .eb-articles-table thead {display:none}
 .eb-admin .eb-articles-table tbody {display:grid;gap:14px}
 .eb-admin .eb-articles-table tr {display:block;border:1px solid var(--eb-border);border-radius:10px;padding:12px}
 .eb-admin .eb-articles-table td {display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;max-inline-size:none;padding:8px 0;border:0}
 .eb-admin .eb-articles-table td:first-child {font-size:15px}
 .eb-admin .eb-articles-table td[data-label]::before {content:attr(data-label);color:var(--eb-muted);font-size:12px}
 .eb-admin .eb-articles-table td:last-child {justify-content:flex-start;border-block-start:1px solid var(--eb-border);margin-block-start:6px}
}
.eb-widget .eb-latest-item {position:relative}
.eb-widget .eb-latest-edit {position:absolute;inset-block-start:10px;inset-inline-end:10px;z-index:4;padding:6px 10px;min-height:34px;border-radius:8px;background:white;color:#192b38;font-size:12px;font-weight:700;box-shadow:0 2px 10px #0002}
.eb-widget .eb-latest-edit:hover {background:var(--eb-button-bg,var(--eb-brand));color:var(--eb-button-fg,#fff)}
@media print {.eb-widget .eb-latest-edit {display:none}}

/* Destructive actions are reversible through the article trash. */
.eb-admin .eb-trash-action {color:#a62b32;margin-inline-start:12px}
.eb-editor .eb-button--danger {background:#fff1f2;color:#9c202a;border:1px solid #d89299}
.eb-editor [data-preview-url] {display:block;direction:ltr;unicode-bidi:isolate;text-align:left;overflow-wrap:anywhere}
/* 1.17 compact workspace menu: groups row + pages row, sticky, scrolls sideways on phones. */
:is(.eb-admin,.eb-editor) .eb-appnav { position:sticky; inset-block-start:0; z-index:20; margin-block-end:20px; border:1px solid var(--eb-border); border-radius:12px; background:color-mix(in srgb,var(--eb-surface) 94%,transparent); backdrop-filter:blur(8px); box-shadow:0 4px 18px color-mix(in srgb,var(--eb-text) 7%,transparent); }
:is(.eb-admin,.eb-editor) .eb-appnav a { display:inline-flex; align-items:center; gap:7px; flex-shrink:0; min-block-size:38px; padding:7px 12px; border-radius:8px; color:var(--eb-muted); font-size:13px; font-weight:650; text-decoration:none; white-space:nowrap; }
:is(.eb-admin,.eb-editor) .eb-appnav a:hover { background:var(--eb-canvas); color:var(--eb-text); }
:is(.eb-admin,.eb-editor) .eb-appnav a:focus-visible { outline:2px solid var(--eb-brand); outline-offset:1px; }
:is(.eb-admin,.eb-editor) .eb-appnav__groups,
:is(.eb-admin,.eb-editor) .eb-appnav__pages { display:flex; align-items:center; gap:4px; padding:6px; overflow-x:auto; scrollbar-width:none; }
:is(.eb-admin,.eb-editor) .eb-appnav__pages { border-block-start:1px solid var(--eb-border); background:var(--eb-canvas); border-end-start-radius:12px; border-end-end-radius:12px; }
:is(.eb-admin,.eb-editor) .eb-appnav__group[aria-current] { color:var(--eb-brand); background:color-mix(in srgb,var(--eb-brand) 10%,transparent); }
:is(.eb-admin,.eb-editor) .eb-appnav__pages a[aria-current=page] { background:var(--eb-button-bg,var(--eb-brand)); color:var(--eb-button-fg,#fff); }
:is(.eb-admin,.eb-editor) .eb-appnav__spacer { flex:1 1 auto; }
:is(.eb-admin,.eb-editor) .eb-appnav__new { background:var(--eb-button-bg,var(--eb-brand)); color:var(--eb-button-fg,#fff) !important; }
:is(.eb-admin,.eb-editor) .eb-appnav__view { border:1px solid var(--eb-border); }
:is(.eb-admin,.eb-editor) .eb-settings-nav { position:sticky; inset-block-start:104px; z-index:10; }
.eb-admin .eb-workspace-tools { display:none; }
:is(.eb-admin,.eb-editor) .eb-appnav, :is(.eb-admin,.eb-editor) .eb-appnav > div { min-inline-size:0; max-inline-size:100%; box-sizing:border-box; }
@container (max-width: 560px) { :is(.eb-admin,.eb-editor) .eb-appnav__group span, :is(.eb-admin,.eb-editor) .eb-appnav__view { display:none; } :is(.eb-admin,.eb-editor) .eb-appnav__group[aria-current] span { display:inline; } :is(.eb-admin,.eb-editor) .eb-appnav a { padding-inline:9px; } }/* 1.18 Excel import */
.eb-admin .eb-import { display:grid; gap:16px; }
.eb-admin .eb-import__steps { margin:0 0 14px; padding-inline-start:20px; display:grid; gap:8px; font-size:14px; }
.eb-admin .eb-import__pick { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-block-end:10px; }
.eb-admin .eb-import__table td small { display:block; color:var(--eb-muted); font-size:12px; }
.eb-admin .eb-import__table tr.is-skip td:first-child { box-shadow:inset 3px 0 0 #c2410c; }
.eb-admin .eb-import__table tr.is-ok td:first-child { box-shadow:inset 3px 0 0 #15803d; }
.eb-admin .eb-import__table span { display:block; font-size:12px; line-height:1.6; }
.eb-admin .eb-import__err { color:#b42318; } .eb-admin .eb-import__warn { color:#a15c07; } .eb-admin .eb-import__dup { color:var(--eb-muted); } .eb-admin .eb-import__ok { color:#15803d; font-weight:700; }
/* 2.2 Growth center */
.eb-admin .eb-growth__stages { display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:8px 16px; }
.eb-admin .eb-growth__stages .eb-growth__stage { display:flex; gap:8px; align-items:center; padding:10px 12px; border:1px solid var(--eb-border); border-radius:10px; background:var(--eb-canvas); }
.eb-admin .eb-growth__policy { max-block-size:420px; overflow:auto; padding:12px 16px; border:1px solid var(--eb-border); border-radius:10px; background:var(--eb-canvas); font-size:14px; line-height:1.9; }
.eb-admin .eb-growth__policy h3 { font-size:16px; margin:14px 0 6px; }
.eb-admin .eb-growth__edit { margin-block:14px; } .eb-admin .eb-growth__edit > summary { cursor:pointer; font-weight:700; padding-block:8px; }
.eb-admin .eb-growth__text { font-family:ui-monospace,Consolas,monospace; font-size:13px; }
.eb-admin .eb-growth__proposal { border:1px solid var(--eb-border); border-radius:12px; padding:12px 16px; margin-block-end:12px; }
.eb-admin .eb-growth__reason { white-space:pre-line; color:var(--eb-muted); }
.eb-admin .eb-growth__diff { display:grid; gap:2px; font-size:13px; max-block-size:360px; overflow:auto; }
.eb-admin .eb-growth__diff ins { text-decoration:none; background:#e7f6ec; color:#14532d; padding:2px 6px; border-radius:4px; }
.eb-admin .eb-growth__diff del { background:#fdecec; color:#7f1d1d; padding:2px 6px; border-radius:4px; }
/* 2.3 Insights inbox */
.eb-admin .eb-insights__bar { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-block-end:14px; }
.eb-admin .eb-insights__counts { color:var(--eb-muted); font-size:13px; }
.eb-admin .eb-insights__excel > summary { cursor:pointer; font-weight:700; }
.eb-admin .eb-insight { border:1px solid var(--eb-border); border-inline-start:4px solid var(--eb-border); border-radius:10px; padding:10px 14px; margin-block-end:8px; background:var(--eb-surface); }
.eb-admin .eb-insight--high { border-inline-start-color:#b42318; } .eb-admin .eb-insight--medium { border-inline-start-color:#c27c0e; } .eb-admin .eb-insight--low { border-inline-start-color:#6b7280; }
.eb-admin .eb-insight header { display:flex; gap:10px; align-items:baseline; } .eb-admin .eb-insight__sev { font-size:11px; font-weight:800; text-transform:uppercase; color:var(--eb-muted); }
.eb-admin .eb-insight__where, .eb-admin .eb-insight__hint { margin:4px 0; font-size:13px; color:var(--eb-muted); }
.eb-admin .eb-insight__actions { display:flex; flex-wrap:wrap; gap:14px; font-size:13px; }
/* 2.4 Keyword research */
.eb-admin .eb-research__score { display:inline-block; min-inline-size:44px; padding:2px 8px; border-radius:999px; background:color-mix(in srgb,var(--eb-brand) 12%,transparent); font-weight:800; text-align:center; }
.eb-admin .eb-research__actions { display:flex; flex-wrap:wrap; gap:6px 12px; font-size:13px; }
.eb-admin .eb-research__more { margin-block-start:6px; font-size:13px; } .eb-admin .eb-research__more > summary { cursor:pointer; color:var(--eb-brand-text); }
/* 2.6 Reports */
.eb-admin .eb-reports__body { line-height:1.9; } .eb-admin .eb-reports__body h3 { margin-block:18px 6px; font-size:16px; } .eb-admin .eb-reports__body small { color:var(--eb-muted); }

/* ---------- 2.8 admin side rail: every page visible at once, quick filter, collapsible, drawer on phones ---------- */
:is(.eb-admin,.eb-editor):has(> .eb-rail) { display:grid; grid-template-columns:var(--eb-rail-w,236px) minmax(0,1fr); column-gap:clamp(16px,2vw,28px); align-items:start; }
:is(.eb-admin,.eb-editor):has(> .eb-rail[data-collapsed]) { --eb-rail-w:64px; }
:is(.eb-admin,.eb-editor):has(> .eb-rail) > :not(.eb-rail) { grid-column:2; min-inline-size:0; }
:is(.eb-admin,.eb-editor) .eb-rail { grid-column:1; grid-row:1 / span 60; position:sticky; inset-block-start:12px; z-index:30; display:flex; flex-direction:column; gap:8px; max-block-size:calc(100vh - 24px); margin:0; padding:10px; border:0; border-radius:18px;
  background:radial-gradient(120% 60% at 0% 0%, color-mix(in srgb,var(--eb-brand) 12%,transparent), transparent 60%), var(--eb-surface); box-shadow:0 0 0 1px color-mix(in srgb,var(--eb-text) 10%,transparent), 0 18px 40px -18px rgb(15 23 42 / .25); overflow:hidden; }
:is(.eb-admin,.eb-editor) .eb-rail a, :is(.eb-admin,.eb-editor) .eb-rail button { display:flex; align-items:center; gap:10px; min-block-size:30px; padding:4px 10px; border:0; border-radius:9px; background:none; color:var(--eb-muted); font:inherit; font-size:13px; font-weight:650; text-decoration:none; cursor:pointer; white-space:nowrap; flex-shrink:0; inline-size:100%; text-align:start; }
:is(.eb-admin,.eb-editor) .eb-rail svg { flex:none; }
:is(.eb-admin,.eb-editor) .eb-rail a:hover, :is(.eb-admin,.eb-editor) .eb-rail button:hover { background:color-mix(in srgb,var(--eb-brand) 9%,transparent); color:var(--eb-text); }
:is(.eb-admin,.eb-editor) .eb-rail a[aria-current=page] { background:var(--eb-button-bg,var(--eb-brand)); color:var(--eb-button-fg,#fff); box-shadow:0 8px 18px -8px color-mix(in srgb,var(--eb-brand) 70%,transparent); }
:is(.eb-admin,.eb-editor) .eb-rail__top { display:flex; flex-direction:column; gap:6px; }
:is(.eb-admin,.eb-editor) .eb-rail__toggle { display:none !important; }
:is(.eb-admin,.eb-editor) .eb-rail__new { justify-content:center; background:linear-gradient(135deg,var(--eb-button-bg,var(--eb-brand)),color-mix(in srgb,var(--eb-button-bg,var(--eb-brand)) 70%,var(--eb-accent))) !important; color:var(--eb-button-fg,#fff) !important; font-weight:800 !important; min-block-size:40px !important; }
:is(.eb-admin,.eb-editor) .eb-rail__body { display:flex; flex-direction:column; gap:2px; overflow-y:auto; scrollbar-width:thin; min-block-size:0; }
:is(.eb-admin,.eb-editor) .eb-rail__search { display:flex; align-items:center; gap:8px; margin-block-end:6px; padding:0 10px; min-block-size:36px; border-radius:10px; background:color-mix(in srgb,var(--eb-text) 5%,transparent); color:var(--eb-muted); }
:is(.eb-admin,.eb-editor) .eb-rail__search input { flex:1; min-inline-size:0; border:0; background:none; outline:none; font:inherit; font-size:13px; color:var(--eb-text); padding:0; }
:is(.eb-admin,.eb-editor) .eb-rail__search kbd { font:inherit; font-size:10px; padding:1px 5px; border-radius:5px; box-shadow:0 0 0 1px var(--eb-border); color:var(--eb-muted); }
:is(.eb-admin,.eb-editor) .eb-rail__group { display:flex; flex-direction:column; gap:0; padding-block:3px; }
:is(.eb-admin,.eb-editor) .eb-rail__group + .eb-rail__group { border-block-start:1px solid color-mix(in srgb,var(--eb-text) 8%,transparent); }
:is(.eb-admin,.eb-editor) .eb-rail__label { display:flex; align-items:center; gap:8px; margin:4px 0 1px; padding-inline:10px; font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:color-mix(in srgb,var(--eb-text) 50%,transparent); }
:is(.eb-admin,.eb-editor) .eb-rail__label svg { inline-size:14px; block-size:14px; }
:is(.eb-admin,.eb-editor) .eb-rail__group[data-active] .eb-rail__label { color:var(--eb-brand-text,var(--eb-brand)); }
:is(.eb-admin,.eb-editor) .eb-rail__view { margin-block-start:6px; border-block-start:1px solid color-mix(in srgb,var(--eb-text) 8%,transparent) !important; border-radius:0 !important; padding-block-start:10px !important; }
:is(.eb-admin,.eb-editor) .eb-rail__collapse { opacity:.75; }
:is(.eb-admin,.eb-editor) .eb-rail [hidden] { display:none !important; }
/* collapsed: icons only, names as tooltips */
:is(.eb-admin,.eb-editor) .eb-rail[data-collapsed] { padding:8px 6px; }
:is(.eb-admin,.eb-editor) .eb-rail[data-collapsed] :is(a,button) { justify-content:center; padding:6px; }
:is(.eb-admin,.eb-editor) .eb-rail[data-collapsed] :is(a,button,.eb-rail__label) > span, :is(.eb-admin,.eb-editor) .eb-rail[data-collapsed] .eb-rail__search { display:none; }
:is(.eb-admin,.eb-editor) .eb-rail[data-collapsed] .eb-rail__label { justify-content:center; padding:0; }
:is(.eb-admin,.eb-editor) .eb-rail[data-collapsed] .eb-rail__collapse svg { transform:scaleX(-1); }
/* phones and narrow windows: a bar with the menu button; the full menu opens as a drawer in two columns */
@media (max-width: 900px) {
  :is(.eb-admin,.eb-editor):has(> .eb-rail) { display:block; }
  :is(.eb-admin,.eb-editor) .eb-rail { position:sticky; inset-block-start:0; max-block-size:none; margin-block-end:16px; padding:8px; }
  :is(.eb-admin,.eb-editor) .eb-rail__top { flex-direction:row; }
  :is(.eb-admin,.eb-editor) .eb-rail__toggle { display:flex !important; inline-size:auto !important; flex:1; }
  :is(.eb-admin,.eb-editor) .eb-rail__new { inline-size:auto !important; }
  :is(.eb-admin,.eb-editor) .eb-rail__body { display:none; max-block-size:70vh; }
  :is(.eb-admin,.eb-editor) .eb-rail[data-open] .eb-rail__body { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px 10px; padding-block-start:8px; }
  :is(.eb-admin,.eb-editor) .eb-rail__search, :is(.eb-admin,.eb-editor) .eb-rail__view, :is(.eb-admin,.eb-editor) .eb-rail__collapse { grid-column:1/-1; }
  :is(.eb-admin,.eb-editor) .eb-rail__collapse { display:none !important; }
  :is(.eb-admin,.eb-editor) .eb-rail[data-collapsed] :is(a,button,.eb-rail__label) > span { display:inline; }
  :is(.eb-admin,.eb-editor) .eb-rail[data-collapsed] .eb-rail__search { display:flex; }
}
@media (max-width: 480px) { :is(.eb-admin,.eb-editor) .eb-rail[data-open] .eb-rail__body { grid-template-columns:minmax(0,1fr); } }

/* 3.0 rail help: bilingual tooltip (skin pattern) and the collapsed rail's group menu */
:is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__label { inline-size:100%; min-block-size:26px; margin:4px 0 1px; padding:2px 10px; border-radius:7px; background:none; cursor:pointer; justify-content:flex-start; color:color-mix(in srgb,var(--eb-text) 50%,transparent); font-size:11px; font-weight:800; }
:is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__label::after { content:""; margin-inline-start:auto; inline-size:7px; block-size:7px; border:solid currentColor; border-width:0 1.6px 1.6px 0; transform:rotate(45deg); opacity:.6; transition:transform .2s cubic-bezier(.23,1,.32,1); }
:is(.eb-admin,.eb-editor) .eb-rail__group[data-folded] button.eb-rail__label::after { transform:rotate(-45deg); }
[dir="rtl"] :is(.eb-admin,.eb-editor) .eb-rail__group[data-folded] button.eb-rail__label::after { transform:rotate(135deg); }
:is(.eb-admin,.eb-editor) .eb-rail__group[data-folded] .eb-rail__link { display:none; }
:is(.eb-admin,.eb-editor) .eb-rail[data-collapsed] button.eb-rail__label { justify-content:center; min-block-size:34px; color:var(--eb-brand-text,var(--eb-brand)); background:color-mix(in srgb,var(--eb-brand) 8%,transparent); }
:is(.eb-admin,.eb-editor) .eb-rail[data-collapsed] button.eb-rail__label::after { display:none; }
:is(.eb-admin,.eb-editor) .eb-rail[data-collapsed] button.eb-rail__label.is-flyout { background:var(--eb-brand); color:#fff; }
:is(.eb-admin,.eb-editor) .eb-rail[data-collapsed] .eb-rail__label svg { inline-size:18px; block-size:18px; }
:is(.eb-admin,.eb-editor) .eb-rail :is(a,button):focus-visible { outline:2px solid var(--eb-accent,var(--eb-brand)); outline-offset:1px; }
.eb-railtip { position:fixed; z-index:100000; inline-size:max-content; max-inline-size:min(300px,calc(100vw - 16px)); padding:10px 12px; border-radius:12px; background:#111827; color:#f9fafb; box-shadow:0 14px 34px -10px rgb(0 0 0 / .45); font:13px/1.55 system-ui,-apple-system,"Segoe UI",Tahoma,sans-serif; pointer-events:none; opacity:0; transform:translateY(3px); transition:opacity .14s ease,transform .14s cubic-bezier(.23,1,.32,1); }
.eb-railtip.is-in { opacity:1; transform:none; }
.eb-railtip strong { display:block; margin-block-end:6px; font-size:13.5px; }
.eb-railtip p { margin:0; padding-block:5px; color:#e5e7eb; }
.eb-railtip p + p { border-block-start:1px solid rgb(255 255 255 / .14); }
.eb-railtip p[lang="fa"] { font-family:"EB Vazirmatn",Vazirmatn,Tahoma,sans-serif; }
.eb-railtip__lang { display:inline-block; margin-inline-end:6px; padding:0 6px; border-radius:5px; background:rgb(255 255 255 / .14); color:#fff; font-size:10.5px; font-weight:700; line-height:18px; vertical-align:1px; }
.eb-railfly { position:fixed; z-index:100000; inline-size:min(300px,calc(100vw - 16px)); padding:8px; border-radius:16px; background:var(--eb-surface,#fff); color:var(--eb-text,#111); box-shadow:0 22px 50px -16px rgb(0 0 0 / .35),0 0 0 1px rgb(0 0 0 / .06); font-family:system-ui,-apple-system,"Segoe UI",Tahoma,sans-serif; font-size:13px; line-height:1.45; }
.eb-railfly__title { margin:2px 8px 6px; font-size:11px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--eb-muted,#667085); }
.eb-railfly__item { display:flex; align-items:flex-start; gap:10px; padding:8px; border-radius:10px; color:inherit; text-decoration:none; }
.eb-railfly__item svg { flex:none; margin-block-start:1px; color:var(--eb-brand-text,var(--eb-brand)); }
.eb-railfly__item b { display:block; font-size:13px; }
.eb-railfly__item small { display:block; color:var(--eb-muted,#667085); font-size:12px; }
.eb-railfly__item:hover, .eb-railfly__item:focus-visible { background:color-mix(in srgb,var(--eb-brand,#2563eb) 9%,transparent); outline:none; }
.eb-railfly__item[aria-current="page"] { background:color-mix(in srgb,var(--eb-brand,#2563eb) 14%,transparent); }
@media (prefers-reduced-motion: reduce) { .eb-railtip { transition:none; } }

/* 3.0 AI studio: status, due warning, quick connect and the manual prompt panel */
.eb-alert--warning { background: #fff8e6; border: 1px solid #f3d48a; color: #7a5200; }
.eb-alert--info { background: #eef5ff; border: 1px solid #c4dafc; color: #1d4f91; }
.eb-alert ul { margin: .4rem 0 0; padding-inline-start: 1.2rem; }
.eb-alert p { margin: .6rem 0 0; }
.eb-ai-due { margin-block: 0 1rem; }
.eb-ai-steps { counter-reset: ebstep; list-style: none; margin: 0; padding: 0; display: grid; gap: 1.25rem; }
.eb-ai-steps > li { counter-increment: ebstep; display: grid; gap: .6rem; padding-inline-start: 2.6rem; position: relative; }
.eb-ai-steps > li::before { content: counter(ebstep); position: absolute; inset-inline-start: 0; inset-block-start: 0; inline-size: 1.9rem; block-size: 1.9rem; border-radius: 50%; display: grid; place-items: center; background: var(--eb-accent, #2563eb); color: #fff; font-weight: 700; font-size: .9rem; }
.eb-ai-code { inline-size: 100%; min-inline-size: 0; font: 12.5px/1.55 ui-monospace, SFMono-Regular, Consolas, monospace; direction: ltr; text-align: left; border: 1px solid color-mix(in srgb, currentColor 18%, transparent); border-radius: 10px; padding: .7rem .8rem; background: color-mix(in srgb, currentColor 4%, transparent); resize: vertical; }
.eb-ai-copy { display: grid; gap: .5rem; justify-items: start; }
.eb-ai-images { list-style: none; margin: .25rem 0 0; padding: 0; display: grid; gap: .8rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); }
.eb-ai-images li { display: grid; gap: .35rem; border: 1px solid color-mix(in srgb, currentColor 12%, transparent); border-radius: 12px; padding: .7rem; }
.eb-ai-images small { opacity: .75; direction: ltr; unicode-bidi: isolate; }
[data-eb-copy].is-copied { color: #136847; }

/* 3.0 quick guide on every workspace page (BlogModuleBase.Guides.cs). */
.eb-guide { background:color-mix(in srgb,var(--eb-brand) 6%,var(--eb-surface)); border:1px solid color-mix(in srgb,var(--eb-brand) 22%,transparent); border-radius:var(--eb-radius-sm); margin:0 0 16px; padding:0; }
.eb-guide > summary { align-items:center; cursor:pointer; display:flex; gap:10px; list-style:none; padding:10px 14px; font-size:.9rem; line-height:1.5; }
.eb-guide > summary::-webkit-details-marker { display:none; }
.eb-guide > summary::after { content:""; margin-inline-start:auto; flex:none; width:8px; height:8px; border-inline-end:2px solid currentColor; border-block-end:2px solid currentColor; transform:rotate(45deg); opacity:.55; transition:transform .2s cubic-bezier(.23,1,.32,1); }
.eb-guide[open] > summary::after { transform:rotate(225deg); }
.eb-guide > summary:focus-visible { outline:2px solid var(--eb-brand); outline-offset:-2px; border-radius:var(--eb-radius-sm); }
.eb-guide__ico { background:var(--eb-brand); border-radius:50%; color:var(--eb-button-fg,#fff); display:inline-grid; flex:none; font-weight:800; font-size:.8rem; height:24px; place-items:center; width:24px; }
.eb-guide ol { counter-reset:g; display:grid; gap:6px; list-style:none; margin:0; padding:0 14px 14px; font-size:.88rem; line-height:1.7; }
.eb-guide li { counter-increment:g; display:flex; gap:8px; }
.eb-guide li::before { content:counter(g); flex:none; font-weight:800; color:var(--eb-brand-text); min-width:1.2em; }
@media (prefers-reduced-motion:reduce) { .eb-guide > summary::after { transition:none; } }

/* 3.0 Look and theme page (ThemeEditor.ascx). */
.eb-look__colours { display:grid; gap:10px; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); margin-block:12px 16px; }
.eb-look__colour { align-items:center; background:var(--eb-surface); border:1px solid var(--eb-border); border-radius:var(--eb-radius-sm); display:grid; gap:4px 10px; grid-template-columns:auto 1fr; padding:10px 12px; }
.eb-look__name { font-weight:700; grid-column:1 / -1; font-size:.9rem; }
.eb-look__colour input[type=color] { block-size:36px; border:1px solid var(--eb-border); border-radius:8px; cursor:pointer; inline-size:52px; padding:2px; background:none; }
.eb-look__colour input[type=color]:disabled { cursor:not-allowed; opacity:.35; }
.eb-look__skin { align-items:center; display:inline-flex; font-size:.85rem; gap:6px; }
.eb-look__first label { font-weight:700; }
.eb-look__preview { --eb-local-r:var(--eb-radius); background:var(--eb-surface); border:1px solid var(--eb-border); border-radius:var(--eb-radius); color:var(--eb-text); display:grid; gap:6px; justify-items:start; margin-block-start:14px; max-inline-size:420px; padding:16px; }
.eb-look__preview strong { font-size:1.1rem; }
.eb-look__preview p { color:var(--eb-muted); margin:0; font-size:.9rem; }
.eb-look__chip { background:color-mix(in srgb,var(--eb-accent) 16%,transparent); border-radius:999px; color:var(--eb-text); font-size:.75rem; font-weight:700; padding:2px 10px; }
.eb-look__btn { background:color-mix(in srgb,var(--eb-brand) 72%,#000); border-radius:var(--eb-radius-sm); color:#fff; font-size:.85rem; font-weight:700; padding:6px 14px; }
.eb-look__code { font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; font-size:13px; inline-size:100%; line-height:1.55; min-block-size:120px; tab-size:2; white-space:pre; overflow:auto; }

/* 3.2 smart import */
.eb-imp-head { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:.75rem 1rem; }
.eb-imp-head h2, .eb-imp-head h3 { margin:0; }
.eb-imp-actions { display:flex; flex-wrap:wrap; gap:.5rem; margin-block:1rem 0; }
.eb-imp-state { display:inline-flex; align-items:center; gap:.35rem; border-radius:999px; padding:2px 10px; font-size:12px; font-weight:700; white-space:nowrap; background:color-mix(in srgb,currentColor 10%,transparent); }
.eb-imp-state::before { content:""; inline-size:7px; block-size:7px; border-radius:50%; background:currentColor; }
.eb-imp-state--Imported, .eb-imp-state--Done, .eb-imp-state--Created { color:#13744b; }
.eb-imp-state--Running, .eb-imp-state--Processing, .eb-imp-state--Discovering, .eb-imp-state--Queued { color:#1d5fb8; }
.eb-imp-state--Manual, .eb-imp-state--Paused, .eb-imp-state--Ready, .eb-imp-state--Found { color:#8a5a00; }
.eb-imp-state--Failed { color:#b42323; }
.eb-imp-state--Skipped, .eb-imp-state--Excluded { color:color-mix(in srgb,currentColor 100%,transparent); opacity:.7; }
.eb-imp-bar { display:block; inline-size:100%; min-inline-size:90px; block-size:6px; border-radius:999px; overflow:hidden; background:color-mix(in srgb,currentColor 12%,transparent); }
.eb-imp-bar > span { display:block; block-size:100%; background:var(--eb-brand,#2563eb); border-radius:inherit; }
.eb-imp-filter { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem 1rem; margin-block:0 .75rem; }
.eb-imp-items td { vertical-align:top; }
.eb-imp-items td small { display:block; opacity:.75; overflow-wrap:anywhere; }
.eb-imp-items .eb-button { padding-block:4px; font-size:12px; }
.eb-imp-log summary, .eb-imp-advanced summary { cursor:pointer; font-weight:700; padding-block:.4rem; }
.eb-imp-loglist { list-style:none; margin:.5rem 0 0; padding:0; display:grid; gap:.25rem; max-block-size:260px; overflow:auto; font-size:12.5px; }
.eb-imp-loglist li { padding:.3rem .5rem; border-radius:6px; background:color-mix(in srgb,currentColor 4%,transparent); overflow-wrap:anywhere; }
.eb-imp-report h4 { margin:1.25rem 0 .5rem; }
.eb-imp-report ul { margin:0; padding-inline-start:1.2rem; display:grid; gap:.3rem; }
.eb-imp-report li small { opacity:.75; }
.eb-imp-advanced { border:1px solid color-mix(in srgb,currentColor 12%,transparent); border-radius:12px; padding:.5rem 1rem; margin-block:1rem; }
:is(.eb-admin,.eb-editor) .eb-kpi--good strong { color:#13744b; }
:is(.eb-admin,.eb-editor) .eb-kpi--warn strong { color:#8a5a00; }
:is(.eb-admin,.eb-editor) .eb-kpi--bad strong { color:#b42323; }
.eb-admin .eb-button--danger { background:#fff1f2; color:#9c202a; border:1px solid #d89299; }
.eb-alert--error { background:#fff0f0; border:1px solid #ffc9c9; color:#9c2525; }
.eb-alert--success { background:#e9f8f1; border:1px solid #afe3cd; color:#136847; }

/* ---------- 3.11.0 Atelier (visual only): the admin menu follows the skin's menu rules ----------
   Current page = soft brand tint + dot + bolder text (and aria-current); hover = neutral grey; no glow, no gradient;
   group titles in normal case; 36px rows with a mouse, 44px on touch screens. */
:is(.eb-admin,.eb-editor) .eb-rail { background:var(--eb-surface); box-shadow:0 0 0 1px color-mix(in srgb,var(--eb-text) 10%,transparent); }
:is(.eb-admin,.eb-editor) .eb-rail a, :is(.eb-admin,.eb-editor) .eb-rail button { min-block-size:36px; font-weight:400; color:color-mix(in srgb,var(--eb-text) 82%,var(--eb-surface)); transition:background-color .16s cubic-bezier(.23,1,.32,1), color .16s cubic-bezier(.23,1,.32,1); }
@media (pointer: coarse) { :is(.eb-admin,.eb-editor) .eb-rail a, :is(.eb-admin,.eb-editor) .eb-rail button { min-block-size:44px; } }
:is(.eb-admin,.eb-editor) .eb-rail a:hover, :is(.eb-admin,.eb-editor) .eb-rail button:hover { background:color-mix(in srgb,var(--eb-text) 6%,var(--eb-surface)); color:var(--eb-text); }
:is(.eb-admin,.eb-editor) .eb-rail a[aria-current=page] { background:color-mix(in srgb,var(--eb-brand) 14%,var(--eb-surface)); color:color-mix(in srgb,var(--eb-brand) 72%,var(--eb-text)); font-weight:600; box-shadow:none; }
:is(.eb-admin,.eb-editor) .eb-rail a[aria-current=page]::after { content:""; flex:none; inline-size:6px; block-size:6px; margin-inline-start:auto; border-radius:50%; background:var(--eb-brand); }
:is(.eb-admin,.eb-editor) .eb-rail[data-collapsed] a[aria-current=page]::after { display:none; }
:is(.eb-admin,.eb-editor) .eb-rail__new { background:var(--eb-button-bg,var(--eb-brand)) !important; font-weight:600 !important; min-block-size:44px !important; }
:is(.eb-admin,.eb-editor) .eb-rail__new:hover { background:color-mix(in srgb,var(--eb-button-bg,var(--eb-brand)) 86%,#000) !important; color:var(--eb-button-fg,#fff) !important; }
:is(.eb-admin,.eb-editor) .eb-rail__label { font-size:12px; font-weight:600; letter-spacing:0; text-transform:none; color:color-mix(in srgb,var(--eb-text) 62%,var(--eb-surface)); }
:is(.eb-admin,.eb-editor) .eb-appnav__group[aria-current] { color:color-mix(in srgb,var(--eb-brand) 72%,var(--eb-text)); background:color-mix(in srgb,var(--eb-brand) 14%,var(--eb-surface)); font-weight:600; }
:is(.eb-admin,.eb-editor) .eb-appnav__pages a[aria-current=page], :is(.eb-admin,.eb-editor) .eb-workspace-nav a[aria-current=page] { background:color-mix(in srgb,var(--eb-brand) 14%,var(--eb-surface)); color:color-mix(in srgb,var(--eb-brand) 72%,var(--eb-text)); font-weight:600; }
.eb-railfly__title { letter-spacing:0; text-transform:none; font-size:12px; font-weight:600; }
.eb-admin .eb-insight__sev { text-transform:none; font-size:12px; }
@media (prefers-reduced-motion: reduce) { :is(.eb-admin,.eb-editor) .eb-rail a, :is(.eb-admin,.eb-editor) .eb-rail button { transition:none; } }

/* 3.11 personal admin menu (pin / reorder / hide / reset) */
:is(.eb-admin,.eb-editor) .eb-rail a.eb-rail__link[data-eb-hide] { display:none; }
:is(.eb-admin,.eb-editor) .eb-rail .eb-rail__group[data-eb-allhidden] { display:none; }
:is(.eb-admin,.eb-editor) .eb-rail[data-customizing] a.eb-rail__link[data-eb-hide] { display:flex; opacity:.5; }
:is(.eb-admin,.eb-editor) .eb-rail[data-customizing] .eb-rail__group[data-eb-allhidden] { display:flex; }
:is(.eb-admin,.eb-editor) .eb-rail p.eb-rail__label--static { cursor:default; margin:4px 0 1px; padding:2px 10px; min-block-size:26px; }
:is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__mini { display:none; flex:none; align-items:center; justify-content:center; inline-size:28px; block-size:28px; margin-inline-start:2px; padding:0; border:0; border-radius:8px; background:none; color:color-mix(in srgb,var(--eb-text) 55%,transparent); cursor:pointer; }
:is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__mini:first-of-type { margin-inline-start:auto; }
:is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__mini svg { inline-size:16px; block-size:16px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
:is(.eb-admin,.eb-editor) .eb-rail[data-customizing] button.eb-rail__mini { display:inline-flex; }
:is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__mini[aria-pressed="true"] { color:var(--eb-brand-text,var(--eb-brand)); background:color-mix(in srgb,var(--eb-brand) 14%,transparent); }
:is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__mini--pin[aria-pressed="true"] svg { fill:currentColor; }
:is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__mini:focus-visible { outline:2px solid var(--eb-brand); outline-offset:1px; }
:is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__tune, :is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__reset { display:flex; align-items:center; gap:10px; inline-size:100%; min-block-size:36px; padding:6px 10px; border:0; border-radius:10px; background:none; color:inherit; font:inherit; font-size:13px; cursor:pointer; opacity:.8; text-align:start; }
:is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__tune svg, :is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__reset svg { inline-size:18px; block-size:18px; flex:none; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
:is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__tune[aria-pressed="true"] { opacity:1; background:color-mix(in srgb,var(--eb-brand) 14%,transparent); color:var(--eb-brand-text,var(--eb-brand)); font-weight:600; }
:is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__tune:focus-visible, :is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__reset:focus-visible { outline:2px solid var(--eb-brand); outline-offset:1px; }
:is(.eb-admin,.eb-editor) .eb-rail[data-collapsed] button.eb-rail__tune > span, :is(.eb-admin,.eb-editor) .eb-rail[data-collapsed] button.eb-rail__mini { display:none; }
:is(.eb-admin,.eb-editor) .eb-rail[data-collapsed] button.eb-rail__tune { justify-content:center; }
:is(.eb-admin,.eb-editor) .eb-rail[data-collapsed] .eb-rail__group--pinned p.eb-rail__label--static { justify-content:center; padding:0; }
@media (hover: hover) and (pointer: fine) { :is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__mini:hover, :is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__tune:hover, :is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__reset:hover { background:color-mix(in srgb,var(--eb-text) 6%,transparent); opacity:1; } }
@media (pointer: coarse) { :is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__mini { inline-size:44px; block-size:44px; } :is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__tune, :is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__reset { min-block-size:44px; } }
@media (max-width: 900px) { :is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__tune, :is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__reset { grid-column:1/-1; } }
:is(.eb-admin,.eb-editor) .eb-rail button.eb-rail__reset[hidden], :is(.eb-admin,.eb-editor) .eb-rail .eb-rail__group--pinned[hidden] { display:none; }
@media (max-width: 900px) { :is(.eb-admin,.eb-editor) .eb-rail[data-open] .eb-rail__group--pinned { grid-column:1/-1; } }
:is(.eb-admin,.eb-editor) .eb-rail p.eb-rail__label--static svg { inline-size:14px; block-size:14px; flex:none; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linejoin:round; }
