:root, html[data-theme="light"], html[data-theme="dark"], html[data-theme="auto"] {
  --fr-bg:#f4f6f3; --fr-surface:#fff; --fr-soft:#f7f9f6; --fr-text:#20342d;
  --fr-muted:#65776d; --fr-line:#dfe7df; --fr-primary:#276b53; --fr-hover:#1d5541;
  --fr-tint:#e9f3eb; --fr-lilac:#eeeaf7; --fr-amber:#faf0dc; --fr-blue:#e9f0f8;
  --fr-shadow:0 5px 24px #223c2c06; --fr-header-height:78px;
  --font-family-primary:ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --body-bg:var(--fr-bg); --body-fg:var(--fr-text); --body-quiet-color:var(--fr-muted);
  --body-loud-color:var(--fr-text); --primary:var(--fr-primary); --secondary:var(--fr-primary);
  --primary-fg:var(--fr-surface);
  --accent:var(--fr-primary); --header-bg:var(--fr-surface); --header-color:var(--fr-text);
  --header-branding-color:var(--fr-text); --header-link-color:var(--fr-text);
  --breadcrumbs-bg:var(--fr-bg); --breadcrumbs-fg:var(--fr-muted);
  --breadcrumbs-link-fg:var(--fr-primary); --link-fg:var(--fr-primary);
  --link-hover-color:var(--fr-hover); --link-selected-fg:var(--fr-primary);
  --hairline-color:var(--fr-line); --border-color:var(--fr-line);
  --darkened-bg:var(--fr-soft); --selected-bg:var(--fr-tint); --selected-row:var(--fr-tint);
  --button-bg:var(--fr-primary); --button-hover-bg:var(--fr-hover);
  --default-button-bg:var(--fr-primary); --default-button-hover-bg:var(--fr-hover);
  --close-button-bg:var(--fr-soft); --close-button-hover-bg:var(--fr-tint); --object-tools-bg:var(--fr-primary);
  --object-tools-hover-bg:var(--fr-hover);
}
html[data-theme="dark"] {
  --fr-bg:#101a16; --fr-surface:#19251f; --fr-soft:#1d2c24; --fr-text:#eaf1eb;
  --fr-muted:#afbeb3; --fr-line:#34473b; --fr-primary:#96d3ac; --fr-hover:#b8e5c7;
  --fr-tint:#273f30; --fr-lilac:#322e43; --fr-amber:#3e3525; --fr-blue:#273647;
  --fr-shadow:none; --button-bg:#396d4b; --button-hover-bg:#467e5b;
  --default-button-bg:#396d4b; --default-button-hover-bg:#467e5b;
  --object-tools-bg:#396d4b; --object-tools-hover-bg:#467e5b;
}
@media (prefers-color-scheme:dark) {
  html[data-theme="auto"] {
    --fr-bg:#101a16; --fr-surface:#19251f; --fr-soft:#1d2c24; --fr-text:#eaf1eb;
    --fr-muted:#afbeb3; --fr-line:#34473b; --fr-primary:#96d3ac; --fr-hover:#b8e5c7;
    --fr-tint:#273f30; --fr-lilac:#322e43; --fr-amber:#3e3525; --fr-blue:#273647;
    --fr-shadow:none; --button-bg:#396d4b; --button-hover-bg:#467e5b;
    --default-button-bg:#396d4b; --default-button-hover-bg:#467e5b;
    --object-tools-bg:#396d4b; --object-tools-hover-bg:#467e5b;
  }
}
* { box-sizing:border-box; }
html { scroll-padding-top:calc(var(--fr-header-height) + 18px); }
body { font-family:var(--font-family-primary); font-size:14px; line-height:1.55; }
#container { min-width:0;min-height:100dvh;height:auto; }
.login #container { min-height:0; }
button,input,select,textarea { font-family:inherit; }
input[type=checkbox],input[type=radio] { accent-color:var(--fr-primary); }
a,button,input,select,textarea,summary { -webkit-tap-highlight-color:transparent; }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible { outline:3px solid var(--fr-primary); outline-offset:3px; }
[hidden] { display:none!important; }
.sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
#header { min-height:var(--fr-header-height);padding:14px 32px;background:var(--fr-surface);border-bottom:1px solid var(--fr-line);position:sticky;top:0;z-index:50;gap:20px;flex-direction:row;justify-content:space-between; }
#branding { display:flex;align-items:center;gap:16px;float:none; }
.fr-brand { display:flex;align-items:center;gap:12px;color:var(--fr-text)!important;font-size:23px;font-weight:720;letter-spacing:-.8px;line-height:1.1; }
.fr-brand small { display:block;font-size:10px;letter-spacing:1.1px;text-transform:uppercase;color:var(--fr-muted);font-weight:600;margin-top:5px; }
.fr-brand-mark { width:44px;height:44px;border-radius:13px;background:var(--fr-tint);color:var(--fr-primary);display:grid;place-content:center;font-size:26px;letter-spacing:-2px;position:relative; }
.fr-brand-mark>span { position:absolute;bottom:7px;right:8px;font-size:18px; }
#user-tools.fr-user-tools { display:flex;align-items:center;gap:18px;margin:0;font-size:13px;text-transform:none;letter-spacing:normal;padding:0; }
.fr-environment { display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border:1px solid var(--fr-line);border-radius:20px;color:var(--fr-muted);font-size:11px;white-space:nowrap; }
.fr-environment>span,.fr-note-dot { width:6px;height:6px;flex:none;border-radius:50%;background:var(--fr-primary); }
#user-tools .theme-toggle { color:var(--fr-muted);padding:6px;border-radius:8px; }
.fr-account { position:relative;text-align:left; }
.fr-account summary { cursor:pointer;list-style:none;display:flex;gap:14px;align-items:center;font-weight:600;color:var(--fr-text); }
.fr-account summary::-webkit-details-marker { display:none; }
.fr-account-menu { position:absolute;right:0;top:34px;min-width:220px;background:var(--fr-surface);border:1px solid var(--fr-line);border-radius:12px;box-shadow:0 12px 32px #0002;padding:8px; }
.fr-account-menu strong { display:block;padding:10px;color:var(--fr-muted);font-size:12px;overflow-wrap:anywhere; }
#user-tools .fr-account-menu a,#user-tools .fr-account-menu button { display:block;text-align:left;width:100%;font-size:13px;padding:10px!important;margin:0;color:var(--fr-text);background:none;border:0;border-radius:7px; }
#user-tools .fr-account-menu a:hover,#user-tools .fr-account-menu button:hover { background:var(--fr-tint);text-decoration:none; }
#logout-form { display:block; }
.fr-menu-button { display:none;flex-direction:column;gap:4px;justify-content:center;align-items:center;width:44px;height:44px;border:1px solid var(--fr-line);border-radius:9px;background:var(--fr-soft);cursor:pointer; }
.fr-menu-button>span { display:block;width:16px;height:2px;background:var(--fr-text);border-radius:2px; }
div.breadcrumbs { background:var(--fr-bg);color:var(--fr-muted);padding:14px 32px;border-bottom:1px solid var(--fr-line);font-size:12px;line-height:1.6; }
div.breadcrumbs a { color:var(--fr-primary); }
#main { display:flex;align-items:flex-start;min-width:0; }
#main>.content { flex:1;min-width:0;width:auto;max-width:none; }
#content { padding:32px 38px;max-width:1540px;margin:0 auto!important; }
#content>h1 { margin:0 0 24px;color:var(--fr-text);font-size:28px;font-weight:680;letter-spacing:-.7px;line-height:1.25; }
#content>h2 { color:var(--fr-muted);font-size:15px; }
.fr-sidebar { width:248px;min-width:248px;padding:26px 18px;background:var(--fr-surface);border-right:1px solid var(--fr-line);position:sticky;top:var(--fr-header-height);height:calc(100dvh - var(--fr-header-height));overflow:auto;scrollbar-width:thin; }
.fr-sidebar a { color:var(--fr-muted);text-decoration:none; }
.fr-home-link { display:flex;align-items:center;gap:10px;padding:11px 12px;font-weight:620;border-radius:9px;font-size:12px; }
.fr-nav-symbol { font-size:20px;width:20px;text-align:center;line-height:1; }
.fr-sidebar .is-current { color:var(--fr-primary);background:var(--fr-tint);font-weight:650; }
.fr-nav-search { display:block;margin:20px 0 23px; }
#fr-nav-search { width:100%;font-size:12px;padding:10px 11px;background:var(--fr-soft);border:1px solid var(--fr-line);border-radius:8px;color:var(--fr-text); }
.fr-nav-section { margin:0 0 22px; }
.fr-nav-section h2 { padding:0 12px;margin:0 0 7px;font-size:10px;line-height:1.5;letter-spacing:1.3px;text-transform:uppercase;color:var(--fr-muted);font-weight:650;background:none; }
.fr-sidebar ul { padding:0;margin:0;list-style:none; }
.fr-sidebar li { padding:0;margin:2px 0;list-style:none; }
.fr-sidebar li a { display:block;padding:8px 12px;font-size:13px;border-radius:7px;line-height:1.5; }
.fr-sidebar li a:hover,.fr-home-link:hover { background:var(--fr-soft);color:var(--fr-text); }
.fr-nav-technical { border-top:1px solid var(--fr-line);padding-top:15px;margin-top:8px; }
.fr-nav-technical summary { font-size:11px;font-weight:600;color:var(--fr-muted);padding:8px 12px;cursor:pointer; }
.fr-nav-technical ul { padding-top:6px; }
.fr-sidebar-note { border-top:1px solid var(--fr-line);margin-top:22px;padding:18px 9px 0;display:flex;align-items:center;gap:8px;color:var(--fr-muted);font-size:10px; }
.fr-nav-empty { font-size:12px;padding:0 12px;color:var(--fr-muted); }
.fr-nav-backdrop { position:fixed;inset:var(--fr-header-height) 0 0;background:#07120c66;border:0;z-index:54;cursor:pointer; }
.fr-page-heading { display:flex;justify-content:space-between;align-items:center;gap:24px;margin:3px 0 30px; }
.fr-eyebrow { color:var(--fr-primary);font-size:10px;font-weight:700;letter-spacing:1.7px;margin:0 0 12px; }
.fr-page-heading h1 { font-size:32px;line-height:1.2;letter-spacing:-1px;color:var(--fr-text);margin:0;font-weight:700; }
.fr-lead { color:var(--fr-muted);font-size:14px;margin:12px 0 0; }
.fr-heading-actions { display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end; }
.fr-date { font-size:11px;border:1px solid var(--fr-line);border-radius:8px;padding:9px 12px;color:var(--fr-muted);white-space:nowrap; }
.fr-button { display:inline-flex;align-items:center;justify-content:center;gap:18px;border-radius:9px;font-size:12px;font-weight:620;padding:11px 16px;text-decoration:none;white-space:nowrap; }
.fr-button-primary { color:var(--fr-surface)!important;background:var(--fr-primary); }
.fr-button-primary:hover { background:var(--fr-hover); }
.fr-metrics { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:30px; }
.fr-metric { display:flex;flex-direction:column;justify-content:space-between;gap:12px;padding:22px;border:1px solid var(--fr-line);border-radius:15px;background:var(--fr-surface);box-shadow:var(--fr-shadow);text-decoration:none;min-height:172px;transition:transform .15s,border-color .15s; }
.fr-metric:hover { transform:translateY(-2px);border-color:var(--fr-primary); }
.fr-metric-top { display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;font-weight:600;color:var(--fr-muted); }
.fr-metric-icon { width:31px;height:31px;border-radius:9px;background:var(--fr-tint);display:grid;place-content:center;color:var(--fr-primary);font-size:18px; }
.fr-metric-inquiries .fr-metric-icon { background:var(--fr-lilac);color:var(--fr-text); }
.fr-metric-review .fr-metric-icon { background:var(--fr-amber);color:var(--fr-text); }
.fr-metric-visits .fr-metric-icon { background:var(--fr-blue);color:var(--fr-text); }
.fr-metric>strong { font-size:35px;line-height:1.15;letter-spacing:-1px;color:var(--fr-text);font-weight:650; }
.fr-metric-bottom { display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:11px;line-height:1.6;color:var(--fr-muted); }
.fr-metric-bottom>span:last-child { color:var(--fr-primary);font-size:16px; }
.fr-setup { display:grid;grid-template-columns:1.2fr 1fr;gap:30px;padding:26px;border:1px solid var(--fr-line);border-radius:14px;background:var(--fr-surface);margin:0 0 32px; }
.fr-tag { display:inline-block;background:var(--fr-tint);color:var(--fr-primary);font-size:10px;font-weight:600;border-radius:20px;padding:4px 9px;white-space:nowrap; }
.fr-setup h2 { font-size:20px;color:var(--fr-text);margin:12px 0 8px;letter-spacing:-.4px; }
.fr-setup p { font-size:12px;line-height:1.7;color:var(--fr-muted);max-width:450px;margin:0; }
.fr-setup-links { display:flex;flex-direction:column;justify-content:center;gap:10px; }
.fr-setup-links a { border:1px solid var(--fr-line);border-radius:9px;padding:12px 14px;display:block; }
.fr-setup-links strong { display:flex;justify-content:space-between;gap:12px;font-size:12px;font-weight:600; }
.fr-setup-links a>span { font-size:10px;color:var(--fr-muted);display:block;margin-top:4px; }
.fr-section-heading { display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 17px; }
.fr-section-heading h2 { font-size:19px;font-weight:670;letter-spacing:-.3px;color:var(--fr-text);margin:0; }
.fr-section-heading>span,.fr-section-heading>a { color:var(--fr-muted);font-size:11px; }
.fr-module-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px; }
.fr-module-card { border:1px solid var(--fr-line);border-radius:14px;padding:23px;background:var(--fr-surface);box-shadow:var(--fr-shadow); }
.fr-module-heading { display:flex;align-items:center;gap:12px; }
.fr-module-heading h3 { font-size:16px;font-weight:660;letter-spacing:-.2px;color:var(--fr-text);margin:0; }
.fr-module-icon { display:grid;place-content:center;background:var(--fr-tint);color:var(--fr-primary);width:35px;height:35px;border-radius:10px;font-size:20px;flex:none; }
.fr-icon-operation { background:var(--fr-lilac);color:var(--fr-text); }
.fr-icon-schedule { background:var(--fr-blue);color:var(--fr-text); }
.fr-icon-assistant { background:var(--fr-amber);color:var(--fr-text); }
.fr-module-card>p { font-size:13px;color:var(--fr-muted);line-height:1.7;margin:14px 0 18px;min-height:40px; }
.fr-module-card ul { padding:0;margin:0;list-style:none; }
.fr-module-card li { list-style:none;padding:0;margin:0;border-top:1px solid var(--fr-line); }
.fr-module-card li a { display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 1px;font-size:13px;color:var(--fr-text); }
.fr-module-card li a>span:last-child { color:var(--fr-muted); }
.fr-module-card li a:hover { color:var(--fr-primary); }
.fr-upcoming { margin-top:32px; }
.fr-empty { border:1px dashed var(--fr-line);border-radius:14px;background:var(--fr-surface);text-align:center;padding:32px 22px; }
.fr-empty-symbol { display:grid;place-content:center;width:42px;height:42px;border-radius:13px;background:var(--fr-tint);color:var(--fr-primary);font-size:24px;margin:0 auto 14px; }
.fr-empty h3,.fr-empty h2 { font-size:15px;color:var(--fr-text);font-weight:630;margin:0 0 7px; }
.fr-empty p { color:var(--fr-muted);font-size:12px;margin:0 0 15px; }
.fr-empty>a { font-size:12px;font-weight:600; }
.fr-visit-list { border:1px solid var(--fr-line);border-radius:13px;overflow:hidden;background:var(--fr-surface); }
.fr-visit-row { display:grid;grid-template-columns:120px minmax(0,1fr) auto 18px;align-items:center;gap:15px;padding:18px 22px;border-bottom:1px solid var(--fr-line);color:var(--fr-text); }
.fr-visit-row:last-child { border-bottom:0; }
.fr-visit-time { color:var(--fr-primary);font-size:12px;font-weight:600; }
.fr-visit-row strong { font-size:12px;font-weight:600;overflow-wrap:anywhere; }
.fr-visit-row small { display:block;color:var(--fr-muted);font-size:11px;margin-top:3px; }
#footer { padding:18px 30px;color:var(--fr-muted);text-align:center;border-top:1px solid var(--fr-line);background:var(--fr-surface); }
.fr-footer { font-size:10px;letter-spacing:.2px; }
/* Las pantallas nativas mantienen sus controles, formularios y acciones. */
.module { border:1px solid var(--fr-line);border-radius:12px;background:var(--fr-surface);box-shadow:var(--fr-shadow);margin-bottom:22px;overflow:visible; }
.module h2,.module caption,.inline-group h2 { background:var(--fr-soft);color:var(--fr-text);font-size:13px;letter-spacing:0;font-weight:650;padding:14px 18px;border-radius:12px 12px 0 0;border-bottom:1px solid var(--fr-line); }
.module caption a { color:var(--fr-primary)!important; }
.module p { padding-inline:18px; }
.object-tools { float:none;display:flex;justify-content:flex-end;gap:8px;margin:0 0 18px;padding:0;position:static; }
.object-tools li { float:none;list-style:none;padding:0;height:auto; }
.object-tools li a:link,.object-tools li a:visited { border-radius:9px;padding:10px 14px;font-size:12px;font-weight:600;text-transform:none;letter-spacing:0; }
.object-tools li a.addlink,.object-tools li a.viewsitelink { padding-right:30px;background-position:right 12px center; }
input,textarea,select { color:var(--fr-text);background-color:var(--fr-surface); }
input[type=text],input[type=password],input[type=email],input[type=url],input[type=number],input[type=date],input[type=search],textarea,select { border:1px solid var(--fr-line);border-radius:7px;padding:9px 11px;font-size:13px;max-width:100%; }
input:focus,textarea:focus,select:focus { border-color:var(--fr-primary); }
input[type=submit],input[type=button],button.button,a.button,.button { border-radius:8px;padding:10px 16px;font-size:12px;font-weight:600;line-height:1.5; }
.form-row { border-color:var(--fr-line);padding:17px 20px; }
.aligned label { color:var(--fr-text);font-size:12px;font-weight:600; }
.form-row p.help,.form-row .help { color:var(--fr-muted);font-size:11px;line-height:1.65; }
.aligned .vTextField,.aligned textarea { max-width:100%; }
.aligned .form-row>div { width:100%;max-width:100%; }
form .aligned .form-row div.help { max-width:100%;white-space:normal;overflow-wrap:anywhere; }
.related-widget-wrapper { min-width:0;max-width:100%; }
.related-widget-wrapper select { min-width:0; }
.submit-row { border:1px solid var(--fr-line);background:var(--fr-surface);border-radius:10px;padding:15px;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px; }
.submit-row input { margin:0; }
.submit-row a.closelink { color:var(--fr-text);border:1px solid var(--fr-line); }
.errornote { border-radius:8px;padding:12px 15px!important;font-size:12px;line-height:1.7; }
.messagelist { margin:0 0 20px!important; }
.messagelist li { border:1px solid var(--fr-line);border-radius:9px;margin:0 0 8px!important;font-size:12px;padding:14px 16px 14px 40px!important; }
#content-main { min-width:0;width:100%; }
#changelist { border-radius:12px;border:1px solid var(--fr-line);background:var(--fr-surface);box-shadow:var(--fr-shadow);overflow:hidden; }
#changelist .results { overflow-x:auto; }
#changelist #toolbar { background:var(--fr-surface);border-bottom:1px solid var(--fr-line);padding:18px 20px; }
#changelist #toolbar form { display:flex;flex-wrap:wrap;align-items:center;gap:8px; }
#changelist #toolbar input[type=submit] { padding:8px 14px; }
#changelist .actions { padding:12px 18px;background:var(--fr-soft);border-color:var(--fr-line);display:flex;align-items:center;flex-wrap:wrap;gap:7px; }
#changelist .actions label { color:var(--fr-muted);font-size:11px; }
#changelist .actions select { height:auto;min-height:32px;margin:0; }
#changelist .actions .button { height:auto;padding:7px 10px;font-size:11px;border-radius:7px;border-color:var(--fr-line); }
#changelist table thead th { background:var(--fr-soft);font-size:10px;letter-spacing:.4px;text-transform:uppercase;color:var(--fr-muted);border-color:var(--fr-line);padding:13px 14px; }
#changelist table tbody td,#changelist table tbody th { padding:14px;font-size:13px;line-height:1.6;vertical-align:middle;border-color:var(--fr-line); }
#changelist table tbody tr { background:var(--fr-surface); }
#changelist table tbody tr:nth-child(even) { background:var(--fr-soft); }
#changelist table tbody tr.selected { background:var(--fr-tint); }
#changelist .paginator { background:var(--fr-surface);border-color:var(--fr-line);padding:16px 20px;font-size:12px; }
#changelist-filter { background:var(--fr-soft);border-left:1px solid var(--fr-line); }
#changelist-filter h2 { background:transparent;color:var(--fr-text);font-size:13px;font-weight:650;padding:16px; }
#changelist-filter h3 { font-size:12px;color:var(--fr-text);padding-inline:16px; }
#changelist-filter li a { font-size:12px;padding:5px 16px; }
.fr-list-filters { display:contents; }
.fr-list-filters>summary { display:none; }
.fr-list-empty { margin:18px;border-style:dashed;box-shadow:none; }
#change-history { background:var(--fr-surface);border:1px solid var(--fr-line);border-radius:12px; }
body.login { background:var(--fr-bg); }
.login #container { max-width:440px;border:1px solid var(--fr-line);border-radius:16px;box-shadow:var(--fr-shadow);overflow:hidden;background:var(--fr-surface); }
.login #header { position:static;justify-content:center;padding:25px; }
.login #content { padding:26px 32px; }
.login .form-row { padding:10px 0; }
.login .form-row label { font-size:12px;font-weight:600;color:var(--fr-text); }
.login .form-row input { padding:11px;border-radius:8px; }
.login .submit-row { border:0;padding:12px 0 0;display:block; }
.login .submit-row input { width:100%;padding:12px; }
.popup #content { padding:20px; }
/* Fichas, operaciones y editores comparten los mismos componentes. */
.fr-screen.fr-guide { max-width:1000px; }
.fr-guide-section { padding:0!important;margin-bottom:16px; }
.fr-guide-section>summary { display:flex;align-items:center;gap:16px;padding:22px 24px;list-style:none;cursor:pointer;color:var(--fr-text); }
.fr-guide-section>summary::-webkit-details-marker { display:none; }
.fr-guide-section>summary:focus-visible { outline:2px solid var(--fr-primary);outline-offset:3px;border-radius:10px; }
.fr-guide-section>summary>span:nth-child(2) { flex:1;min-width:0; }
.fr-guide-section>summary strong { display:block;font-size:16px;line-height:1.5;font-weight:650; }
.fr-guide-section>summary small { display:block;font-size:13px;line-height:1.65;color:var(--fr-muted);margin-top:4px; }
.fr-guide-number { display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:11px;background:var(--fr-soft);color:var(--fr-primary);font-size:12px;font-weight:700; }
.fr-guide-chevron { font-size:20px;transition:transform .15s; }
.fr-guide-section[open]>summary .fr-guide-chevron { transform:rotate(180deg); }
.fr-guide-body { border-top:1px solid var(--fr-line);padding:22px 26px 24px; }
.fr-guide-body ol { margin:0;padding-left:22px; }
.fr-guide-body li { padding-left:5px;margin:0 0 17px;font-size:14px;line-height:1.9;color:var(--fr-text);overflow-wrap:anywhere; }
.fr-guide-note { padding:14px 17px;border-left:3px solid var(--fr-primary);border-radius:8px;background:var(--fr-soft);color:var(--fr-muted);font-size:13px; }
.fr-guide-body .fr-page-links { margin-bottom:0; }
@media(max-width:600px) {
  .fr-guide-section>summary { padding:18px 15px;gap:11px;align-items:flex-start; }
  .fr-guide-section>summary strong { font-size:15px; }
  .fr-guide-number { width:30px;height:30px;flex-basis:30px; }
  .fr-guide-body { padding:18px 16px; }
}
.fr-screen { max-width:1140px;min-width:0; }
.fr-screen-narrow { max-width:760px; }
.fr-error-page { max-width:650px;margin:35px auto;padding:35px; }
.fr-error-page h1 { font-size:28px;line-height:1.4;margin:20px 0 12px;color:var(--fr-text);font-weight:650; }
.fr-error-page p { color:var(--fr-muted);margin-bottom:24px; }
.fr-screen-intro { color:var(--fr-muted);line-height:1.8;margin-bottom:23px; }
.fr-screen-intro p { margin:0 0 9px; }
.fr-card { min-width:0;border:1px solid var(--fr-line);border-radius:13px;background:var(--fr-surface);box-shadow:var(--fr-shadow);padding:24px;margin:0 0 22px; }
.fr-card h2 { color:var(--fr-text);font-size:17px;line-height:1.5;font-weight:650;margin:0 0 17px; }
.fr-card p { line-height:1.8;overflow-wrap:anywhere; }
.fr-card-heading { display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap; }
.fr-card-heading h2 { margin:0; }
.fr-form-fields { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px; }
.fr-field { min-width:0; }
.fr-field label { display:block;color:var(--fr-text);font-size:13px;font-weight:600;margin-bottom:8px; }
.fr-field input:not([type=checkbox]):not([type=radio]),.fr-field select,.fr-field textarea { width:100%;min-width:0;max-width:100%;min-height:42px; }
.fr-field textarea { resize:vertical;min-height:86px; }
.fr-field-wide,.fr-field-checkbox { grid-column:1/-1; }
.fr-checkbox { display:flex;align-items:flex-start;gap:10px; }
.fr-checkbox input { width:17px;height:17px;flex:none;margin:3px 0 0;accent-color:var(--fr-primary); }
.fr-checkbox label { margin:0;line-height:1.7; }
.fr-field-help { font-size:12px;color:var(--fr-muted);line-height:1.75;margin-top:7px; }
.fr-form-errors,.fr-notice { padding:14px 17px;border:1px solid var(--fr-line);border-left:3px solid var(--fr-primary);border-radius:9px;background:var(--fr-soft);color:var(--fr-text);line-height:1.75;font-size:13px;margin:0 0 20px;overflow-wrap:anywhere; }
.fr-notice-warning { background:var(--fr-amber);border-left-color:#b08034; }
.fr-notice-error,.fr-form-errors { border-left-color:var(--error-fg); }
.fr-form-errors ul { margin:0;padding:0;list-style:none; }
.fr-field .errorlist { margin:8px 0 0;padding:0;list-style:none;font-size:12px;line-height:1.7; }
.fr-field-invalid input,.fr-field-invalid textarea,.fr-field-invalid select { border-color:var(--error-fg); }
.fr-form-actions { display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:12px;padding-top:22px;margin-top:24px;border-top:1px solid var(--fr-line); }
.fr-form-actions input { margin:0;min-height:42px; }
.fr-button-secondary { color:var(--fr-primary)!important;background:var(--fr-surface);border:1px solid var(--fr-line); }
.fr-button-secondary:hover { background:var(--fr-tint);text-decoration:none; }
.fr-button,input[type=submit] { cursor:pointer; }
input[type=submit]:disabled,button:disabled { opacity:.5;cursor:not-allowed; }
.fr-page-links { display:flex;flex-wrap:wrap;align-items:center;gap:14px 23px;margin:24px 0;font-size:13px; }
.fr-case-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 28px;margin:20px 0 0; }
.fr-case-grid>div { border-top:1px solid var(--fr-line);padding-top:15px;min-width:0; }
.fr-case-grid dt { font-size:12px;color:var(--fr-muted);font-weight:500;margin-bottom:5px; }
.fr-case-grid dd { margin:0;font-size:14px;line-height:1.75;overflow-wrap:anywhere; }
.fr-case-grid dd small { display:block;color:var(--fr-muted);font-size:12px; }
.fr-case-grid+.fr-notice { margin-top:20px; }
.fr-table-scroll { max-width:100%;overflow-x:auto;border:1px solid var(--fr-line);border-radius:9px;margin:18px 0 0; }
.fr-table { width:100%;min-width:520px;border-collapse:collapse; }
.fr-table caption { text-align:left;padding:13px 16px;color:var(--fr-text);font-size:13px;font-weight:600;background:var(--fr-soft); }
.fr-table thead th { text-align:left;font-size:12px;background:var(--fr-soft);color:var(--fr-muted);font-weight:600;white-space:nowrap; }
.fr-table th,.fr-table td { border-bottom:1px solid var(--fr-line);padding:14px 16px;vertical-align:top;line-height:1.75; }
.fr-table td,.fr-table tbody th { font-size:13px;color:var(--fr-text);overflow-wrap:anywhere; }
.fr-table tbody th { text-align:left;font-weight:600;min-width:180px; }
.fr-table tr:last-child td,.fr-table tr:last-child th { border-bottom:0; }
.fr-table tr:nth-child(even) { background:var(--fr-soft); }
.fr-tag-muted { color:var(--fr-muted);background:var(--fr-soft); }
.fr-summary-stats { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:21px 0; }
.fr-summary-stats>div { border:1px solid var(--fr-line);border-radius:10px;padding:17px;background:var(--fr-soft); }
.fr-summary-stats strong { display:block;font-size:26px;line-height:1.3;color:var(--fr-text); }
.fr-summary-stats span { display:block;color:var(--fr-muted);font-size:12px;margin-top:7px; }
.fr-date-form { display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap; }
.fr-date-form .fr-form-fields { flex:1;min-width:210px;grid-template-columns:1fr; }
.fr-date-form input[type=submit] { min-height:42px;margin:0; }
.fr-question-card legend { padding:0 10px;font-size:14px;font-weight:650;color:var(--fr-primary); }
.messagelist li.success { background-color:var(--fr-tint);color:var(--fr-text); }
.messagelist li.info { background-color:var(--fr-blue);color:var(--fr-text); }
.messagelist li.warning { background-color:var(--fr-amber);color:var(--fr-text); }
#content pre { white-space:pre-wrap;overflow-wrap:anywhere; }
#change-history { display:block;max-width:100%;overflow-x:auto; }
.inline-group .tabular { max-width:100%;overflow-x:auto; }
.aligned .readonly { overflow-wrap:anywhere;max-width:100%; }
.selector .selector-chosen-title { background:var(--fr-tint);color:var(--fr-text);border-color:var(--fr-line); }
.selector .selector-chosen-title label { color:var(--fr-text); }
.selector .list-footer-display { background:var(--fr-tint);color:var(--fr-text); }
.delete-confirmation #content form { padding:20px;background:var(--fr-surface);border:1px solid var(--fr-line);border-radius:12px; }
.delete-confirmation #content form input { margin:5px 8px 5px 0; }
.chat-layout { max-width:1050px;margin:0;min-width:0; }
.chat-box { border:1px solid var(--fr-line);border-radius:13px;overflow:hidden;margin:22px 0;background:var(--fr-surface); }
.chat-heading { padding:20px 24px;background:var(--fr-tint);color:var(--fr-text);display:flex;align-items:center;gap:14px;flex-wrap:wrap;border-bottom:1px solid var(--fr-line); }
.chat-heading h2 { margin:0;color:var(--fr-text);font-size:19px;font-weight:650; }
.chat-heading p { margin:6px 0 0;color:var(--fr-muted);font-size:12px; }
.chat-state { margin-left:auto;border:1px solid var(--fr-line);border-radius:18px;padding:6px 12px;font-size:12px; }
.chat-thread { background:var(--fr-soft);padding:24px;max-height:540px;overflow:auto;display:flex;flex-direction:column;gap:15px; }
.chat-bubble { border-radius:12px;padding:14px 18px;max-width:78%;border:1px solid var(--fr-line);line-height:1.8;overflow-wrap:anywhere;font-size:13px; }
.chat-bot { align-self:flex-start;background:var(--fr-surface); }
.chat-user { align-self:flex-end;background:var(--fr-tint);color:var(--fr-text); }
.chat-speaker { font-size:10px;letter-spacing:.3px;display:block;font-weight:650;margin-bottom:6px;color:var(--fr-muted); }
.chat-compose { padding:22px 24px; }
.chat-compose label { display:block;font-size:13px;font-weight:600; }
.chat-compose textarea { display:block;width:100%;resize:vertical;min-height:80px;margin:9px 0 14px;font:inherit; }
.chat-actions { display:flex;gap:8px;flex-wrap:wrap;margin-bottom:15px; }
.chat-actions button { cursor:pointer;border:1px solid var(--fr-line);border-radius:18px;padding:9px 14px;background:var(--fr-surface);color:var(--fr-text);min-height:40px; }
.chat-actions button:hover { background:var(--fr-tint); }
.chat-send { background:var(--button-bg);color:var(--button-fg);border:0;border-radius:8px;padding:12px 20px;cursor:pointer;font-weight:600; }
.chat-links { display:flex;gap:12px 20px;flex-wrap:wrap;margin:18px 0;font-size:13px; }
.chat-status { padding:0 0 14px;color:var(--fr-muted);line-height:1.8;font-size:13px; }
.chat-details { margin-top:22px; }
.chat-details>summary { cursor:pointer;padding:16px 19px;border:1px solid var(--fr-line);border-radius:10px;font-weight:600;background:var(--fr-surface);font-size:13px; }
.chat-details[open]>summary { margin-bottom:18px; }
.chat-overflow { font-size:12px;text-align:center;color:var(--fr-muted); }
@media (max-width:700px) {
  .fr-card { padding:19px; }
  .fr-form-fields,.fr-case-grid { grid-template-columns:1fr;gap:18px; }
  .fr-form-actions { align-items:stretch; }
  .fr-form-actions>* { flex:1 1 100%;text-align:center; }
  .fr-summary-stats { gap:8px; }
  .fr-summary-stats>div { padding:12px; }
  .fr-summary-stats strong { font-size:23px; }
  .fr-summary-stats span { font-size:11px; }
  .fr-date-form input[type=submit] { width:100%; }
  .chat-thread { padding:15px; }
  .chat-bubble { max-width:94%;padding:13px 15px; }
  .chat-heading,.chat-compose { padding:18px; }
  .chat-state { margin-left:0; }
  .chat-send { width:100%; }
}
@media (max-width:1250px) {
  .fr-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fr-page-heading { align-items:flex-start; }
  .fr-heading-actions { max-width:160px; }
}
@media (max-width:1050px) {
  #header { padding:14px 24px; }
  .fr-menu-button { display:flex; }
  .fr-sidebar { display:none;position:fixed;z-index:55;left:0;top:var(--fr-header-height);width:285px;min-width:0;height:calc(100dvh - var(--fr-header-height));box-shadow:10px 0 35px #0002; }
  body.fr-nav-open .fr-sidebar { display:block; }
  #content { padding:28px; }
  div.breadcrumbs { padding-inline:24px; }
  .fr-heading-actions { max-width:none; }
}
@media (max-width:700px) {
  :root { --fr-header-height:72px; }
  #header { padding:12px 18px;gap:10px;flex-wrap:nowrap; }
  #branding { gap:11px; }
  .fr-brand { font-size:20px;gap:9px; }
  .fr-brand-mark { width:38px;height:38px;font-size:24px;border-radius:11px; }
  .fr-brand small { font-size:8px;letter-spacing:.8px; }
  #user-tools.fr-user-tools { gap:12px; }
  .fr-environment { display:none; }
  .fr-account summary { font-size:11px;gap:7px; }
  #content { padding:25px 20px; }
  #content>h1 { font-size:24px; }
  .fr-page-heading { display:block;margin-bottom:24px; }
  .fr-page-heading h1 { font-size:29px; }
  .fr-heading-actions { justify-content:flex-start;margin-top:19px; }
  .fr-lead { font-size:13px; }
  .fr-metrics { gap:12px;margin-bottom:24px; }
  .fr-metric { padding:17px;min-height:154px; }
  .fr-metric-top { font-size:11px; }
  .fr-metric-icon { width:26px;height:26px;font-size:16px; }
  .fr-metric>strong { font-size:30px; }
  .fr-metric-bottom { font-size:11px; }
  .fr-setup { grid-template-columns:1fr;gap:19px;padding:22px; }
  .fr-section-heading>span { display:none; }
  .fr-module-grid { gap:14px; }
  .fr-module-card { padding:18px; }
  .fr-module-heading { gap:9px; }
  .fr-module-heading h3 { font-size:14px; }
  .fr-module-icon { width:29px;height:29px;font-size:18px; }
  .fr-module-card>p { font-size:12px; }
  .fr-visit-row { padding:16px;grid-template-columns:88px minmax(0,1fr) 15px;gap:12px; }
  .fr-visit-row>.fr-tag { display:none; }
  .fr-visit-time { font-size:11px; }
  .aligned .form-row .flex-container { display:block; }
  .aligned label { float:none;width:auto;display:block;margin-bottom:7px; }
  .aligned .form-row .checkbox-row label { display:inline; }
  .form-row { padding:16px; }
  .aligned .form-row>div { width:100%; }
  .aligned input.vTextField,.aligned textarea { width:100%;min-width:0; }
  .submit-row { justify-content:stretch; }
  .submit-row input,.submit-row a.closelink { flex:1 1 100%;text-align:center; }
  #changelist #toolbar { padding:15px; }
  .fr-list-filters { display:block;border-top:1px solid var(--fr-line); }
  .fr-list-filters>summary { display:flex;justify-content:space-between;padding:15px 18px;cursor:pointer;font-size:12px;font-weight:600;color:var(--fr-text); }
  .fr-list-filters>summary::-webkit-details-marker { display:none; }
  .fr-list-filters #changelist-filter { border-left:0; }
  .fr-list-filters #changelist-filter-header { display:none; }
  .login #container { margin:35px auto;max-width:calc(100% - 32px); }
}
@media (max-width:460px) {
  .fr-brand small { display:none; }
  .fr-brand { font-size:18px; }
  .fr-brand-mark { width:33px;height:33px;font-size:21px; }
  #user-tools.fr-user-tools { gap:9px; }
  .fr-page-heading h1 { font-size:26px; }
  .fr-module-grid { grid-template-columns:1fr; }
  .fr-metric-top { align-items:flex-start;gap:4px; }
  .fr-metric-bottom { min-height:30px; }
  .fr-section-heading h2 { font-size:18px; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { transition:none!important;scroll-behavior:auto!important; }
  .fr-metric:hover { transform:none; }
}
