@font-face { font-family: Lato; src: url('/assets/fonts/Lato-Regular.ttf') format('truetype'); font-style: normal; font-weight: 400; font-display: swap; }
@font-face { font-family: Lato; src: url('/assets/fonts/Lato-Bold.ttf') format('truetype'); font-style: normal; font-weight: 700; font-display: swap; }
@font-face { font-family: Lato; src: url('/assets/fonts/Lato-Black.ttf') format('truetype'); font-style: normal; font-weight: 900; font-display: swap; }

:root { --ff-shell-height: 102px; --header-height: var(--ff-shell-height); }
html, body, button, input, textarea, select, option, optgroup, dialog, pre, code, kbd, samp { font-family: Lato, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.ff-shell { position: sticky; top: 0; z-index: 70; height: var(--ff-shell-height); border-bottom: 1px solid #cfdcdd; background: rgba(255,255,255,.985); color: var(--ink, #172326); font-family: Lato, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; letter-spacing: 0; }
.ff-shell * { box-sizing: border-box; letter-spacing: 0; }
.ff-shell a { color: inherit; text-decoration: none; }
.ff-shell button { font: inherit; letter-spacing: 0; cursor: pointer; }
.ff-shell-top { height: 58px; display: grid; grid-template-columns: 238px minmax(340px,1fr) auto; align-items: center; gap: 16px; padding: 0 18px; border-bottom: 1px solid #e2e9ea; }
.ff-shell-brand { min-width: 0; display: inline-flex; align-items: center; gap: 9px; width: fit-content; }
.ff-shell-brand img { width: 43px; height: 43px; flex: 0 0 auto; object-fit: contain; }
.ff-shell-brand span { min-width: 0; display: grid; line-height: 1.05; }
.ff-shell-brand strong { font-size: calc(21px * var(--euvimed-font-scale, 1)); white-space: nowrap; }
.ff-shell-brand small { margin-top: 4px; color: var(--cadet-dark, #0f7480); font-size: calc(14px * var(--euvimed-font-scale, 1)); font-weight: 850; text-transform: uppercase; white-space: nowrap; }
.ff-shell-tenant .ff-shell-brand img { max-width: 72px; object-fit: contain; }
.ff-shell-brand-header .ff-shell-top { border-bottom-color: rgba(255,255,255,.16); background: var(--cadet-deep, #082f49); }
.ff-shell-brand-header .ff-shell-brand strong, .ff-shell-brand-header .ff-shell-brand small { color: white; }
.ff-shell-brand-header .ff-shell-status > span, .ff-shell-brand-header .ff-shell-status > a, .ff-shell-brand-header .ff-shell-status > button, .ff-shell-brand-header .ff-shell-actions > a, .ff-shell-brand-header .ff-shell-actions > button, .ff-shell-brand-header .ff-shell-tier { border-color: rgba(255,255,255,.28); background: rgba(255,255,255,.96); }
.ff-shell-status, .ff-shell-actions { min-width: 0; display: flex; align-items: center; gap: 6px; }
.ff-shell-status { justify-content: flex-end; }
.ff-shell-actions { justify-content: flex-end; }
.ff-shell-language { height: 34px; display: inline-flex; align-items: center; gap: 5px; padding: 0 5px 0 8px; border: 1px solid #d7e1e2; border-radius: 5px; color: var(--cadet-deep, #082f49); background: white; }
.ff-shell-language select { width: 39px; height: 30px; padding: 0; border: 0; outline: 0; color: inherit; background: transparent; font-size: calc(15px * var(--euvimed-font-scale, 1)); font-weight: 850; cursor: pointer; }
.ff-shell-status > span, .ff-shell-status > a, .ff-shell-status > button, .ff-shell-easy, .ff-shell-account, .ff-shell-tier, .ff-shell-icon { height: 34px; display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 0 9px; border: 1px solid #d7e1e2; border-radius: 5px; background: white; color: #4d6064; font-size: calc(15px * var(--euvimed-font-scale, 1)); white-space: nowrap; }
.ff-shell-status > button, .ff-shell-easy, .ff-shell-account, .ff-shell-icon { cursor: pointer; }
.ff-shell-status > a:hover, .ff-shell-status > button:hover, .ff-shell-easy:hover, .ff-shell-account:hover, .ff-shell-icon:hover { border-color: var(--cadet, #159aa6); color: var(--cadet-deep, #082f49); background: #eef7f7; }
.ff-shell-status i, .ff-shell-actions i { color: var(--cadet-dark, #0f7480); font-size: calc(16px * var(--euvimed-font-scale, 1)); }
.ff-shell-status strong { color: var(--cadet-deep, #082f49); font-size: calc(15px * var(--euvimed-font-scale, 1)); }
.ff-shell-status small { font-size: calc(14px * var(--euvimed-font-scale, 1)); }
.ff-shell-easy[aria-pressed="true"] { border-color: var(--cadet, #159aa6); background: #eef7f7; color: var(--cadet-deep, #082f49); }
.ff-shell-icon { position: relative; width: 34px; flex: 0 0 34px; padding: 0; }
.ff-shell-icon b { position: absolute; top: -5px; right: -5px; min-width: 16px; height: 16px; display: grid; place-items: center; border-radius: 50%; background: #c85b50; color: white; font-size: calc(14px * var(--euvimed-font-scale, 1)); }
.ff-shell-beta { height: 34px; display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; gap: 6px; padding: 0 9px; border: 1px solid #e2b859; border-radius: 3px; background: #fff3cf; color: #704400; font-size: calc(13px * var(--euvimed-font-scale, 1)); font-weight: 900; white-space: nowrap; }
.ff-shell-beta i { color: #c66b00; }
.ff-shell-beta span { letter-spacing: .065em; }
.ff-shell-beta:hover { border-color: #c98714; background: #ffe8ac; color: #563300; }
.ff-shell-brand-header .ff-shell-actions > .ff-shell-beta { border-color: #e2b859; background: #fff3cf; color: #704400; }
.ff-shell-brand-header .ff-shell-actions > .ff-shell-beta:hover { border-color: #c98714; background: #ffe8ac; color: #563300; }
.ff-shell-tier { font-weight: 800; }
.ff-shell-tier-demo { border-color: #edcf9c; background: #fff3de; color: #8b5b16; }
.ff-shell-tier-online { border-color: #acd0d2; background: #edf7f7; color: #082f49; }
.ff-shell-tier-full { border-color: #b2dbc4; background: #e4f3eb; color: #256145; }
.ff-shell-account { max-width: 176px; font-weight: 750; }
.ff-shell-account span { overflow: hidden; text-overflow: ellipsis; }
.ff-shell-nav { height: 44px; display: flex; align-items: stretch; gap: 1px; padding: 0 18px; background: #f8fafa; }
.ff-shell-home, .ff-shell-direct, .ff-shell-help, .ff-shell-menu-trigger { height: 44px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; padding: 0 13px; border: 0; border-bottom: 3px solid transparent; background: transparent; color: #536569; font-size: calc(16px * var(--euvimed-font-scale, 1)); font-weight: 800; white-space: nowrap; }
.ff-shell-home:hover, .ff-shell-direct:hover, .ff-shell-help:hover, .ff-shell-menu-trigger:hover { color: var(--cadet-deep, #082f49); background: #edf5f5; }
.ff-shell-home.active, .ff-shell-menu.active > .ff-shell-menu-trigger, .ff-shell[data-shell-active="tree"] .ff-shell-direct[href="/journals/tree"], .ff-shell[data-shell-active="partners"] .ff-shell-direct[href="/partners.php"] { border-bottom-color: var(--cadet, #159aa6); color: var(--cadet-deep, #082f49); }
.ff-shell-menu { position: relative; }
.ff-shell-menu-trigger > i:last-child { font-size: calc(14px * var(--euvimed-font-scale, 1)); transition: transform .15s ease; }
.ff-shell-menu.is-open .ff-shell-menu-trigger > i:last-child { transform: rotate(180deg); }
.ff-shell-dropdown { position: absolute; left: 0; top: 43px; z-index: 90; width: 330px; display: none; padding: 7px; border: 1px solid #cad9da; background: white; box-shadow: 0 15px 34px rgba(23,35,38,.16); }
.ff-shell-menu.is-open .ff-shell-dropdown { display: grid; }
.ff-shell-dropdown a { min-height: 58px; display: grid; grid-template-columns: 35px minmax(0,1fr) auto; align-items: center; gap: 9px; padding: 8px 9px; border-left: 3px solid transparent; }
.ff-shell-dropdown a:hover { border-left-color: var(--cadet, #159aa6); background: #f1f7f7; }
.ff-shell-dropdown a > i { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 4px; color: var(--cadet-deep, #082f49); background: #e3eff0; font-size: calc(18px * var(--euvimed-font-scale, 1)); }
.ff-shell-dropdown a > span { min-width: 0; display: grid; }
.ff-shell-dropdown strong { color: #203034; font-size: calc(16px * var(--euvimed-font-scale, 1)); }
.ff-shell-dropdown small { margin-top: 2px; overflow: hidden; color: #6a7b7f; font-size: calc(15px * var(--euvimed-font-scale, 1)); text-overflow: ellipsis; white-space: nowrap; }
.ff-shell-dropdown b { min-width: 20px; height: 20px; display: grid; place-items: center; border-radius: 10px; background: var(--cadet-dark, #0f7480); color: white; font-size: calc(14px * var(--euvimed-font-scale, 1)); }
.ff-shell-nav-spacer { flex: 1; }
.ff-shell-help { padding-inline: 10px; }
.ff-footer { border-top: 1px solid #d7e1e2; background: white; color: #27383c; font-family: Lato, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; letter-spacing: 0; }
.ff-footer-inner { max-width: 1380px; display: grid; grid-template-columns: 1.45fr repeat(4,1fr); gap: 44px; margin: 0 auto; padding: 42px clamp(20px,5vw,72px) 34px; }
.ff-footer section { min-width: 0; display: grid; align-content: start; gap: 7px; }
.ff-footer h2 { margin: 0 0 6px; color: #4f6266; font-size: calc(15px * var(--euvimed-font-scale, 1)); font-weight: 900; text-transform: uppercase; }
.ff-footer a { width: fit-content; color: #526468; font-size: calc(16px * var(--euvimed-font-scale, 1)); text-decoration: none; }
.ff-footer section > a:hover { color: var(--cadet-deep, #082f49); text-decoration: underline; text-underline-offset: 3px; }
.ff-footer p { margin: 0; color: #6c7d80; font-size: calc(15px * var(--euvimed-font-scale, 1)); line-height: 1.55; }
.ff-footer-brand > a { display: inline-flex; align-items: center; gap: 9px; color: #172326; }
.ff-footer-brand img { width: 48px; height: 48px; object-fit: contain; }
.ff-footer-brand span { display: grid; }
.ff-footer-brand strong { font-size: calc(20px * var(--euvimed-font-scale, 1)); }
.ff-footer-brand small { color: var(--cadet-dark, #0f7480); font-size: calc(14px * var(--euvimed-font-scale, 1)); font-weight: 850; text-transform: uppercase; }
.ff-footer-brand p { max-width: 260px; margin-top: 4px; }
.ff-footer-base { min-height: 38px; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 0 clamp(20px,5vw,72px); border-top: 1px solid #edf1f1; color: #7a898c; background: #f8fafa; font-size: calc(14px * var(--euvimed-font-scale, 1)); }
.explorer-route-tree .ff-footer { display: none; }
.journal-tree-main { height: calc(100dvh - var(--ff-shell-height)); }
.publisher-profile, .journal-year-rail, .doi-side { top: var(--ff-shell-height); }
.journal-year-rail { max-height: calc(100vh - var(--ff-shell-height)); }
body.profile-depth-concise .ff-shell-advanced, body.easy-mode .ff-shell-advanced { display: none; }
.auth-page { display: block; padding: 0; }
.auth-page .auth-shell { margin: 46px auto; }
@media (max-width: 1450px) {
    .ff-shell-top { grid-template-columns: 210px 1fr auto; }
    .ff-shell-status > span:first-child, .ff-shell-status > a:last-child, .ff-shell-tier { display: none; }
    .ff-shell-direct span, .ff-shell-help span { display: none; }
    .ff-shell-direct, .ff-shell-help { width: 42px; padding: 0; }
}
@media (max-width: 760px) {
    :root { --ff-shell-height: 104px; --header-height: var(--ff-shell-height); }
    .ff-shell-top { height: 56px; grid-template-columns: minmax(150px,1fr) auto; gap: 7px; padding: 0 9px; }
    .ff-shell-brand img { width: 38px; height: 38px; }
    .ff-shell-brand strong { font-size: calc(19px * var(--euvimed-font-scale, 1)); }
    .ff-shell-brand small { display: none; }
    .ff-shell-status, .ff-shell-tier, .ff-shell-account span, .ff-shell-easy span, .ff-shell-icon { display: none; }
    .ff-shell-language { height: 34px; padding-left: 6px; }
    .ff-shell-beta { padding-inline: 7px; }
    .ff-shell-account, .ff-shell-easy { width: 36px; padding: 0; }
    .ff-shell-nav { height: 48px; padding: 0 4px; overflow: visible; }
    .ff-shell-home, .ff-shell-direct, .ff-shell-help, .ff-shell-menu-trigger { height: 48px; padding: 0 10px; font-size: calc(18px * var(--euvimed-font-scale, 1)); }
    .ff-shell-home span, .ff-shell-direct span, .ff-shell-help span, .ff-shell-menu-trigger span { display: none; }
    .ff-shell-menu-trigger > i:last-child { display: none; }
    .ff-shell-dropdown { position: fixed; left: 8px; right: 8px; top: 101px; width: auto; max-height: calc(100vh - 112px); overflow-y: auto; }
    .ff-shell-nav-spacer { min-width: 0; }
    .ff-footer-inner { grid-template-columns: 1fr 1fr; gap: 28px 22px; padding: 32px 18px; }
    .ff-footer-brand { grid-column: 1 / -1; }
    .ff-footer-base { align-items: flex-start; flex-direction: column; padding-block: 10px; }
}

/* EUVIMED 1.23.2: shared navigation and footer readability floor. */
.ff-shell-brand small { font-size: calc(15px * var(--euvimed-font-scale, 1)); }
.ff-shell-language select { font-size: calc(16px * var(--euvimed-font-scale, 1)); }
.ff-shell-status>span,
.ff-shell-status>a,
.ff-shell-status>button,
.ff-shell-easy,
.ff-shell-account,
.ff-shell-tier,
.ff-shell-icon,
.ff-shell-status strong { font-size: calc(16px * var(--euvimed-font-scale, 1)); }
.ff-shell-status small { font-size: calc(15px * var(--euvimed-font-scale, 1)); }
.ff-shell-home,
.ff-shell-direct,
.ff-shell-help,
.ff-shell-menu-trigger { font-size: calc(17px * var(--euvimed-font-scale, 1)); }
.ff-shell-dropdown small { font-size: calc(16px * var(--euvimed-font-scale, 1)); }
.ff-footer h2 { font-size: calc(16px * var(--euvimed-font-scale, 1)); }
.ff-footer a { font-size: calc(17px * var(--euvimed-font-scale, 1)); }
.ff-footer p { font-size: calc(16px * var(--euvimed-font-scale, 1)); }
.ff-footer-brand small,
.ff-footer-base { font-size: calc(15px * var(--euvimed-font-scale, 1)); }

@media (min-width: 761px) and (max-width: 1450px) {
    .ff-shell-home,
    .ff-shell-direct,
    .ff-shell-help,
    .ff-shell-menu-trigger { font-size: calc(16px * var(--euvimed-font-scale, 1)); }
}

@media (max-width: 760px) {
    .ff-shell-home,
    .ff-shell-direct,
    .ff-shell-help,
    .ff-shell-menu-trigger { font-size: calc(18px * var(--euvimed-font-scale, 1)); }
}

/* Search-only EUVIMED: the public product is a literature search engine. */
.ff-shell-search-only .ff-shell-evidence-menu,
.ff-shell-search-only .ff-shell-apps-menu,
.ff-shell-search-only .ff-shell-research-menu .ff-shell-dropdown > a:not([href="/?view=research"]),
.ff-shell-search-only #easyToggle,
.ff-shell-search-only #openNotifications,
.ff-shell-search-only #profileButton,
.ff-shell-search-only .ff-shell-actions > a[href="/backoffice.php"] {
    display: none !important;
}

/* Backoffice density is shared by every EUVIMED surface. */
html.settings-density-compact :is(.workspace,.apps-hub,.bo-shell,.learning-shell,.clara-shell) {
    --ui-section-gap: 10px;
}
html.settings-density-compact :is(.source-item,.result-body,.insight-section,.bo-setting-section,.app-launch,.inspector-section,.learning-features article,.clara-question-form) {
    padding-top: 10px;
    padding-bottom: 10px;
}
html.settings-density-compact :is(.source-item,.bo-source-row,.bo-priority-list > div,.app-project-item,.tree-record) {
    min-height: 42px;
}
html.settings-density-compact :is(.results,.bo-settings-form,.app-project-list,.learning-features,.clara-results) {
    gap: 7px;
}

/* Product chrome stays compact while the configured reading size applies to content. */
:root { --ff-shell-height: 94px; --header-height: var(--ff-shell-height); }
.ff-shell-top { height: 54px; grid-template-columns: 220px minmax(320px,1fr) auto; gap: 12px; padding-inline: 16px; }
.ff-shell-brand img { width: 38px; height: 38px; }
.ff-shell-brand strong { font-size: 20px; }
.ff-shell-brand small { margin-top: 2px; font-size: 11px; }
.ff-shell-status > span,
.ff-shell-status > a,
.ff-shell-status > button,
.ff-shell-easy,
.ff-shell-account,
.ff-shell-tier,
.ff-shell-icon,
.ff-shell-status strong { height: 32px; font-size: 13px; }
.ff-shell-status small { font-size: 12px; }
.ff-shell-status i,
.ff-shell-actions i { font-size: 14px; }
.ff-shell-language { height: 32px; }
.ff-shell-language select { height: 28px; font-size: 13px; }
.ff-shell-nav { height: 40px; padding-inline: 14px; }
.ff-shell-home,
.ff-shell-direct,
.ff-shell-help,
.ff-shell-menu-trigger { height: 40px; padding-inline: 11px; font-size: 15px; }
.ff-shell-menu-trigger > i:last-child { font-size: 11px; }
.ff-shell-dropdown { top: 39px; width: 316px; }
.ff-shell-dropdown a { min-height: 52px; }
.ff-shell-dropdown a > i { font-size: 16px; }
.ff-shell-dropdown strong { font-size: 14px; }
.ff-shell-dropdown small { font-size: 12px; }
.ff-shell-dropdown b { font-size: 11px; }

@media (max-width: 760px) {
    :root { --ff-shell-height: 98px; --header-height: var(--ff-shell-height); }
    .ff-shell-top { height: 54px; }
    .ff-shell-nav { height: 44px; }
    .ff-shell-home,
    .ff-shell-direct,
    .ff-shell-help,
    .ff-shell-menu-trigger { height: 44px; font-size: 17px; }
    .ff-shell-dropdown { top: 95px; }
}

/* EUVIMED 1.33.2: compact, nearly square data-box rhythm across the suite. */
:root {
    --euvimed-box-gap: 3px;
    --euvimed-box-inset: 3px;
    --euvimed-box-radius: 2px;
}

main :is([class*="-card"], [class*="-panel"], [class*="-box"], [class*="-section"], [class*="-summary"], [class*="-strip"], [class*="-stat"]),
dialog :is([class*="-card"], [class*="-panel"], [class*="-box"], [class*="-section"], [class*="-summary"], [class*="-strip"], [class*="-stat"]) {
    border-radius: var(--euvimed-box-radius) !important;
}

:is(.source-list, .monitor-list, .history-list, .results, .overview-grid, .ledger-list,
    .portal-news-grid, .portal-publications, .portal-continue, .portal-shifts,
    .tree-overview-grid, .tree-overview-panel > div, .tree-journal-list, .tree-year-list,
    .tree-issue-list, .reader-meta-column, .reader-figure-gallery > div,
    .apps-grid, .app-project-list, .livia-source-list, .clara-practice-grid,
    .clara-doc-grid, .clara-source-list, .learning-features, .bo-settings-form) {
    gap: var(--euvimed-box-gap) !important;
}

/* Component-specific padding remains authoritative. It is intentionally not
   collapsed to the compact grid gap: framed content always keeps at least the
   3 px inset and information-heavy cards retain their larger readable inset. */

:is(.search-composer, .evidence-summary-strip, .shift-banner, .tree-overview-hero,
    .tree-overview-stats, .tree-overview-panel, .reader-hero, .reader-article-preview,
    .reader-publisher, .reader-facts, .reader-origin, .reader-meta-column .reader-citation,
    .reader-figure-gallery figure, .reader-community, .bo-setting-section,
    .clara-ask-card, .clara-results, .livia-source-card, .livia-workspace-panel,
    .institution-panel, .community-review-list > article) {
    border-radius: var(--euvimed-box-radius) !important;
}

:is(.search-progress, .evidence-summary-strip, .shift-banner, .reader-notice,
    .reader-community, .reader-community-invite) {
    margin-block: var(--euvimed-box-gap) !important;
}

:is(input, select, textarea, button, dialog, .ff-shell-dropdown, .mode-switch, .view-switch,
    .portal-search, .tree-global-search) {
    border-radius: var(--euvimed-box-radius);
}

/* EUVIMED product story: globally available from the header info control. */
.ff-about-dialog {
    width: min(720px, calc(100vw - 24px));
    max-width: none;
    max-height: min(760px, calc(100dvh - 24px));
    padding: 0;
    overflow: hidden;
    border: 1px solid #b9cbcd;
    border-radius: 3px;
    background: #fff;
    color: #1b292c;
    box-shadow: 0 24px 64px rgba(8, 47, 73, .28);
}
.ff-about-dialog::backdrop { background: rgba(8, 31, 43, .58); backdrop-filter: blur(2px); }
.ff-about-dialog > form { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; max-height: inherit; margin: 0; }
.ff-about-head { display: grid; grid-template-columns: 56px minmax(0, 1fr) 36px; align-items: center; gap: 14px; padding: 18px 20px; border-bottom: 1px solid #cbdadb; background: linear-gradient(120deg, #eef7f7, #f8fbfb); }
.ff-about-head img { width: 56px; height: 56px; object-fit: contain; }
.ff-about-head div { min-width: 0; }
.ff-about-head p { margin: 0 0 3px; color: var(--cadet-dark, #0f7480); font-size: 13px; font-weight: 900; letter-spacing: .035em; text-transform: uppercase; }
.ff-about-head h2 { margin: 0; color: var(--cadet-deep, #082f49); font-size: clamp(22px, 3vw, 29px); line-height: 1.12; }
.ff-about-close { width: 36px; height: 36px; display: grid; place-items: center; padding: 0; border: 1px solid #c4d4d5; background: #fff; color: var(--cadet-deep, #082f49); cursor: pointer; }
.ff-about-close:hover { border-color: var(--cadet, #159aa6); background: #e6f3f3; }
.ff-about-content { min-height: 0; padding: 24px; overflow-y: auto; }
.ff-about-content > p { margin: 0; color: #33484c; font-size: calc(18px * var(--euvimed-font-scale, 1)); line-height: 1.67; }
.ff-about-principles { display: grid; grid-template-columns: repeat(4, 1fr); gap: 3px; margin-top: 22px; }
.ff-about-principles span { min-width: 0; display: grid; justify-items: center; gap: 7px; padding: 13px 5px; border: 1px solid #d5e1e2; background: #f8fafa; color: #41575b; font-size: 13px; text-align: center; }
.ff-about-principles i { color: var(--cadet-dark, #0f7480); font-size: 20px; }
.ff-about-footer { min-height: 54px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 9px 20px; border-top: 1px solid #d5e1e2; background: #f8fafa; color: #65777a; font-size: 13px; }
.ff-about-footer button { min-height: 34px; padding: 0 16px; border: 1px solid var(--cadet-dark, #0f7480); background: var(--cadet-deep, #082f49); color: white; font-weight: 800; cursor: pointer; }
.ff-about-footer button:hover { background: var(--cadet-dark, #0f7480); }

.ff-beta-dialog { width: min(700px, calc(100vw - 24px)); border-color: #dbb35a; }
.ff-beta-head { background: linear-gradient(120deg, #fff2cb, #fffbef); border-bottom-color: #ead49b; }
.ff-beta-symbol { width: 56px; height: 56px; display: grid; place-items: center; border: 1px solid #e1b24c; border-radius: 3px; background: #fff8e5; color: #b95f00; font-size: 25px; }
.ff-beta-head p { color: #925500; }
.ff-beta-content > p { font-size: calc(17px * var(--euvimed-font-scale, 1)); line-height: 1.55; }
.ff-beta-notices { display: grid; gap: 3px; margin-top: 18px; }
.ff-beta-notice { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 12px; padding: 14px; border: 1px solid #d8e1e2; border-radius: 3px; background: #f8fafa; }
.ff-beta-notice > i { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 3px; background: #e7f2f2; color: var(--cadet-dark, #0f7480); font-size: 20px; }
.ff-beta-notice h3 { margin: 0 0 4px; color: var(--cadet-deep, #082f49); font-size: calc(17px * var(--euvimed-font-scale, 1)); }
.ff-beta-notice p { margin: 0; color: #405357; font-size: calc(15px * var(--euvimed-font-scale, 1)); line-height: 1.5; }
.ff-beta-notice-critical { border-color: #e4c176; background: #fff9e9; }
.ff-beta-notice-critical > i { background: #ffedbd; color: #a24f00; }
.ff-beta-feedback { margin-top: 14px !important; padding: 9px 11px; border-left: 3px solid #d79a22; background: #fffaf0; color: #5c4a27 !important; font-size: calc(14px * var(--euvimed-font-scale, 1)) !important; }
.ff-beta-footer { border-top-color: #ead49b; background: #fffbef; }

@media (max-width: 760px) {
    .ff-shell-about-button { display: inline-flex; }
    .ff-about-dialog { width: calc(100vw - 8px); max-height: calc(100dvh - 8px); }
    .ff-about-head { grid-template-columns: 45px minmax(0, 1fr) 34px; gap: 9px; padding: 14px 12px; }
    .ff-about-head img { width: 45px; height: 45px; }
    .ff-beta-symbol { width: 45px; height: 45px; font-size: 21px; }
    .ff-about-head p { font-size: 11px; }
    .ff-about-head h2 { font-size: 21px; }
    .ff-about-content { padding: 17px 14px; }
    .ff-about-content > p { font-size: 17px; line-height: 1.58; }
    .ff-about-principles { grid-template-columns: 1fr 1fr; }
    .ff-beta-notice { grid-template-columns: 34px minmax(0, 1fr); gap: 9px; padding: 11px; }
    .ff-beta-notice > i { width: 34px; height: 34px; font-size: 17px; }
    .ff-about-footer { padding-inline: 12px; }
    .ff-about-footer span { display: none; }
    .ff-about-footer button { width: 100%; }
}
