@layer utilities {
  .ruler-toggle { display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px; }.ruler-toggle input { width:18px;min-height:18px;accent-color:var(--accent); }
  .screen-ruler { position:fixed;z-index:4;left:24px;bottom:24px;width:min(600px,calc(100vw - 48px));max-height:85dvh;overflow:auto;padding:16px;border:1px solid #bbc4ce;border-radius:10px;background:#fafbfc;color:#18212c;box-shadow:0 4px 8px #18212c18; }.screen-ruler[hidden] { display:none!important; }
  .ruler-head { display:flex;justify-content:space-between;align-items:center;margin-bottom:12px; }.screen-ruler button { border:1px solid #c9d1da;border-radius:6px;background:white;color:inherit;min-height:36px;padding:6px 12px;font-size:13px; }.ruler-handle { cursor:grab;touch-action:none; }.ruler-close { min-width:36px; }.ruler-track { position:relative;height:86px;touch-action:none;cursor:crosshair;background:#edf1f6; }.ruler-track svg { display:block;width:100%;height:56px;margin:0;overflow:visible;stroke:#354657;fill:#354657; }.ruler-track svg text { stroke:none;font-size:12px; }.ruler-selection { position:absolute;top:48px;height:8px;background:#146ef560; }.ruler-point { position:absolute;top:58px;transform:translateX(-50%);font:600 12px 'Segoe UI',sans-serif;color:#174d88;cursor:ew-resize; }
  .ruler-points { display:flex;gap:16px;margin:12px 0; }.ruler-points label { flex:1;min-width:0;font-size:12px; }.ruler-points input,.calibration-range { display:block;width:100%;min-height:28px;padding:0;accent-color:#146ef5; }.ruler-readout { display:block;font-size:14px;font-weight:600; }.screen-ruler .ruler-warning,.screen-ruler p { margin:8px 0;font-size:12px;color:#465360;line-height:1.5; }.ruler-calibration { margin-top:12px; }.ruler-calibration summary { cursor:pointer;font-size:13px; }.ruler-calibration label { font-size:12px; }.calibration-scroll { overflow-x:auto;margin:12px 0; }.calibration-line { height:32px;border:1px solid #354657;border-top:0;text-align:center;font-size:12px; }.ruler-save { margin-top:8px; }
  .focused-home { background:#f5f5f7; --muted:#565c65; --faint:#636b76; }
  .focused-home [hidden] { display:none !important; }
  .focused-home .topbar { grid-template-columns:1fr minmax(220px,420px) 1fr; background:rgba(250,250,252,.94); gap:24px; padding-inline:32px; }
  .focused-home .brand-mark { box-shadow:none; border-radius:8px; }
  .section-nav { position:sticky; top:72px; z-index:29; display:flex; align-items:center; justify-content:center; gap:4px; min-height:56px; padding:8px 24px; background:#f5f5f7; border-bottom:1px solid var(--line); }
  .section-nav > a,.section-more summary { padding:10px 16px; font-size:14px; font-weight:560; color:#56606b; border-radius:8px; white-space:nowrap; cursor:pointer; }
  .section-nav > a[aria-current] { background:#e5e7eb; color:#17191d; }
  .section-nav > a:hover,.section-more summary:hover { background:#eaecf0; color:#17191d; }
  .section-more { position:relative; }
  .section-more summary { list-style:none; }
  .section-more summary::after { content:'⌄'; margin-left:8px; }
  .section-more summary::-webkit-details-marker { display:none; }
  .section-more > div { position:absolute; right:0; top:48px; min-width:240px; padding:8px; background:#fff; border:1px solid var(--line); border-radius:12px; box-shadow:0 4px 8px #15171b12; }
  .section-more a { display:block; padding:12px; border-radius:6px; font-size:13px; }
  .section-more a:hover { background:#eef0f4; }
  .focused-home main { min-height:calc(100dvh - 220px); }
  .focused-home main > section[id] { scroll-margin-top:148px; }
  .focused-home .application-filters { margin:24px 0 12px; padding:0; border:0; overflow:visible; }
  .compact-filter { display:flex; align-items:center; gap:10px; color:#565c65; font-size:12px; white-space:nowrap; }
  .compact-filter select { width:auto; min-width:140px; min-height:40px; padding:8px 32px 8px 12px; border:1px solid #d6dae0; border-radius:8px; background:#fff; font-size:13px; color:#1c2026; }
  .focused-home .application-costs { padding:0; border:0; overflow:visible; }
  .focused-home .application-control-group { gap:16px; }
  .focused-home .application-card { animation:none; }
  .focused-home .application-controls { grid-template-columns:minmax(260px,1fr) auto; margin:24px 0; align-items:center; }
  .focused-home .application-controls .application-filters { margin:0; }
  .focused-home .applications-head > p,.focused-home .resource-catalog-head > p { max-width:60ch; font-size:14px; color:#56606b; }
  .web-directory-group { margin-bottom:24px; }
  .web-directory-group h3 { padding:16px 4px 12px; border-bottom:1px solid #d7dbe0; font-size:17px; font-weight:620; }
  .focused-home .web-catalog .resource-row { min-height:102px; padding:16px 4px; animation:none; }
  .focused-home .resource-row .resource-main small { font-size:12px; color:#636b76; }
  .focused-home .resource-row .resource-main p { max-width:72ch; font-size:13px; color:#565c65; }
  .resource-mark img { width:100%; height:100%; object-fit:contain; }
  .focused-home .web-resource-controls { display:flex; gap:16px; align-items:center; margin:24px 0; }
  .focused-home .web-resource-search { flex:1; }
  .focused-home .web-resource-controls .resource-filters { margin:0; padding:0; border:0; overflow:visible; }
  @media(max-width:900px){.focused-home .topbar { grid-template-columns:auto minmax(150px,1fr) auto; gap:16px; padding-inline:16px; }.top-actions .top-link { display:none; }.focused-home .application-control-group { flex-direction:row; }.focused-home .application-controls { grid-template-columns:1fr; }}
  @media(max-width:600px){.focused-home .topbar { height:64px; grid-template-columns:1fr auto; }.focused-home .topbar .search-trigger { display:none; }.section-nav { position:relative; top:0; flex-wrap:wrap; gap:4px 0; justify-content:flex-start; padding:8px 12px; }.section-nav > a,.section-more summary { padding:9px 12px; font-size:13px; }.section-more > div { right:auto; left:-160px; }.focused-home main > section[id] { scroll-margin-top:80px; }.focused-home .web-resource-controls { align-items:stretch; flex-direction:column; }.focused-home .application-control-group { flex-wrap:wrap; }.compact-filter { flex:1; }.compact-filter select { min-width:0; flex:1; }.focused-home .web-catalog .resource-row { min-height:0; padding:16px 0; gap:12px; }}
  @media(max-width:600px){.section-more > div { position:fixed; top:160px; left:16px; right:16px; min-width:0; }}
  @media(prefers-reduced-motion:reduce){.section-nav * { transition:none; }}
  .hosted-apps-note { display:flex; flex-wrap:wrap; align-items:baseline; gap:10px 24px; margin-top:22px; padding:16px 0; border-block:1px solid var(--line); font-size:13px; line-height:1.6; color:#465260; }
  .hosted-apps-note a { color:#174d88; font-weight:620; text-underline-offset:3px; }
  .hosted-apps-note span { max-width:76ch; }
  .software-actions .software-open { font-weight:650; }
  #loadMoreApplications[hidden] { display:none; }
  #applications { scroll-margin-top:148px; }
  .application-directory-row:has(.software-actions-hosted) .application-directory-main small,
  .application-directory-row:has(.software-actions-hosted) .application-directory-price small { font-size:12px; color:#565c65; }
  .calculation-row .solar-analysis-link { grid-column:2; width:max-content; max-width:100%; font-size:12px; color:#174d88; text-underline-offset:3px; }
  .focused-home .home-start { width:min(1400px,calc(100% - 48px)); margin:38px auto 26px; display:grid; grid-template-columns:1fr minmax(360px,600px); align-items:center; gap:24px; }
  .home-start h1 { font-size:26px; font-weight:620; letter-spacing:-.025em; }.home-start p { margin-top:7px; color:#56606b; font-size:14px; }
  .home-search { display:flex; align-items:center; gap:12px; padding:0 16px; min-height:54px; border:1px solid var(--line); background:white; border-radius:9px; }.home-search svg { flex:0 0 22px; width:22px; fill:none; stroke:#58646f; stroke-width:1.6; }.home-search input { width:100%; border:0; background:transparent; padding:12px 0; font-size:14px; min-height:50px; }.home-search input::placeholder { color:#56606b; }.home-search:focus-within { outline:2px solid #146ef5; outline-offset:2px; }.home-search input:focus { outline:none; box-shadow:none; }
  .focused-home .workspace { width:min(1400px,calc(100% - 48px)); grid-template-columns:180px minmax(0,1fr); gap:36px; margin-top:0; margin-bottom:32px; padding:24px 0 32px; }.focused-home .category-rail { padding-top:10px; }.focused-home .library-head { margin-bottom:20px; }.focused-home .library-head h2 { font-size:22px; letter-spacing:-.025em; }.focused-home .library-filter-label { font-size:12px; }.focused-home .library-filter-label::before { display:none; }
  .primary-workspaces { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 24px; border-top:1px solid var(--line); }.primary-workspaces.list { grid-template-columns:1fr; }
  .workspace-entry { display:grid; grid-template-columns:38px minmax(0,1fr) 18px; align-items:center; gap:16px; min-height:104px; padding:20px 8px; border:0; border-bottom:1px solid var(--line); border-radius:0; background:transparent; color:var(--ink); text-align:left; transition:background .18s; }.workspace-entry:hover { background:#fff; }.workspace-entry-icon svg { width:30px; height:30px; color:#465968; }.workspace-entry h3 { font-size:17px; font-weight:630; letter-spacing:-.02em; }.workspace-entry p { margin-top:5px; color:#56606b; font-size:13px; line-height:1.5; }.workspace-entry > b { font-weight:400; }
  .secondary-tools { margin-top:22px; }.secondary-tools summary { cursor:pointer; font-size:13px; color:#465260; }.secondary-tools > div { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }.secondary-tools button { padding:9px 12px; border:1px solid var(--line); border-radius:7px; background:white; color:#465260; font-size:12px; }
  .geometry-quick { display:flex; gap:6px; }.geometry-quick button { flex:1; min-height:38px; padding:8px; font-size:13px; border:1px solid var(--line); border-radius:7px; background:white; color:#465260; }.geometry-quick button.active { background:var(--ink); color:white; border-color:var(--ink); }
  .workspace-back { text-align:left; border:0; background:transparent; padding:0 0 8px; color:#174d88; font-size:13px; }.workspace-advanced { padding-bottom:8px; border-bottom:1px solid var(--line); }.workspace-advanced summary { cursor:pointer; font-size:13px; color:#465260; }.workspace-advanced label { display:grid; gap:8px; margin-top:12px; font-size:12px; }
  .workspace-operations { display:grid; gap:0; }.workspace-operation { display:grid; grid-template-columns:30px minmax(0,1fr) 18px; gap:14px; align-items:center; padding:18px 0; color:var(--ink); background:transparent; border:0; border-bottom:1px solid var(--line); text-align:left; }.workspace-operation svg { width:26px; height:26px; }.workspace-operation strong { display:block; font-size:16px; }.workspace-operation small { display:block; margin-top:5px; font-size:13px; color:#56606b; line-height:1.5; }.workspace-operation b { font-weight:400; }
  .tool-dialog.group-picker { max-width:740px; }.group-picker .sheet-body { display:block; }.group-picker .result-panel { display:none; }.group-picker .tool-form-panel { padding:24px 32px; }.group-picker #toolForm { display:block; }.group-picker .workspace-advanced { margin-top:20px; }.scale-preview { padding:15px; border:1px solid var(--line); border-radius:8px; background:#f7f9fb; }.scale-preview span { color:#56606b; font-size:12px; }.scale-preview strong { display:block; margin-top:5px; font-size:23px; font-weight:620; }.scale-preview svg { margin-top:14px; width:100%; color:#516473; }.scale-preview small { display:block; color:#56606b; font-size:11px; line-height:1.5; }
  .focused-home .resource-hub,.focused-home .resource-catalog,.focused-home .applications,.focused-home .community-roadmap,.focused-home .extensions,.focused-home .legal { padding-top:36px; margin-bottom:52px; }.focused-home .resource-hub-head h2,.focused-home .resource-catalog-head h2,.focused-home .applications-head h2,.focused-home .extensions-head h2 { font-size:28px; line-height:1.2; letter-spacing:-.025em; }.focused-home .resource-hub-head { margin-bottom:22px; }.focused-home .resource-hub-grid { display:flex; flex-wrap:wrap; gap:10px; }.focused-home .resource-hub-card,.focused-home .resource-hub-card:first-child { display:block; flex:1 1 230px; min-height:0; border-radius:7px; padding:16px; }.focused-home .resource-hub-media { display:none; }.focused-home .resource-hub-body { padding:0; }.focused-home .resource-hub-body strong { font-size:16px; }.focused-home .resource-hub-body p { font-size:12px; }.focused-home .resource-hub-body small { display:none; }.focused-home .resource-hub-body > span { margin-top:12px; }.focused-home .continuity { display:none; }
  .software-actions { display:flex; flex-wrap:wrap; gap:8px 14px; margin-top:10px; font-size:12px; }.software-actions a { color:#174d88; text-decoration:underline; text-underline-offset:3px; }.application-directory-row .software-actions { min-width:145px; margin:0; }.application-directory-main a { color:inherit; text-decoration:none; }.application-grid.directory .application-directory-row { grid-template-columns:48px minmax(0,1.2fr) minmax(100px,.7fr) minmax(130px,.7fr) 160px; }.application-card.featured .software-actions a { color:#fff; }
  .software-open svg { width:20px;height:20px;vertical-align:middle; }
  .focused-home :is(.resource-hub,.resource-catalog,.applications,.community-roadmap,.extensions,.legal) { width:min(1400px,calc(100% - 48px));margin:0 auto 32px;padding:24px 0 32px;border-top:0; }
  .focused-home :is(.resource-hub-head,.resource-catalog-head,.applications-head,.extensions-head) { display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 20px; }
  .focused-home :is(.resource-hub-head,.resource-catalog-head,.applications-head,.extensions-head) h2 { font-size:22px;line-height:1.3;letter-spacing:-.025em;font-weight:620; }
  .focused-home .resource-hub-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;border-top:1px solid var(--line); }
  .focused-home .resource-hub-grid .workspace-entry { min-height:104px; }
  .focused-home .resource-toolbar { margin:24px 0 20px; }
  .focused-home .resource-row { min-height:104px;animation:none; }
  .focused-home .resource-main strong { font-size:17px;font-weight:630; }
  .focused-home .resource-directory { border-top-color:var(--line); }
  .focused-home .resource-row:nth-child(odd) { border-right:0; }
  .focused-home .resource-main p { font-size:13px; }
  .focused-home .hosted-apps-note { margin:0 0 16px;padding:0;border:0;font-size:13px; }
  .hosted-workspaces { grid-column:1/-1;min-width:0;margin-bottom:24px; }
  .hosted-workspaces > header { display:flex;align-items:baseline;justify-content:space-between;margin-bottom:14px; }
  .hosted-workspaces h3 { font-size:17px;font-weight:620;letter-spacing:-.02em; }
  .hosted-workspaces > header > span { color:var(--muted);font-size:12px; }
  .hosted-workspace-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;border-top:1px solid var(--line); }
  .hosted-workspace { position:relative;min-width:0;border-bottom:1px solid var(--line); }
  .hosted-launch { display:grid;grid-template-columns:112px minmax(0,1fr) 48px;align-items:center;gap:16px;min-height:132px;padding:16px 6px 28px;color:var(--ink);transition:background .18s; }
  .hosted-launch:hover { background:white; }
  .hosted-thumbnail { width:112px;aspect-ratio:1.5;overflow:hidden;border-radius:6px;background:#e2e6eb; }
  .hosted-thumbnail img { width:100%;height:100%;object-fit:cover; }
  .hosted-identity { min-width:0; }
  .hosted-identity > span { display:flex;align-items:center;gap:8px; }
  .hosted-identity img { width:26px;height:26px;object-fit:contain; }
  .hosted-identity strong { font-size:17px;letter-spacing:-.02em; }
  .hosted-identity > small { display:block;margin-top:6px;font-size:13px;line-height:1.5;color:var(--muted); }
  .hosted-play { display:grid;place-items:center;gap:4px; }
  .hosted-play svg { box-sizing:content-box;width:20px;height:20px;padding:12px;border-radius:50%;color:white;background:var(--ink);transition:transform .18s,background .18s; }
  .hosted-launch:hover .hosted-play svg { background:#146ef5;transform:scale(1.06); }
  .hosted-play small { font-size:12px;color:var(--muted); }
  .hosted-source { position:absolute;left:134px;bottom:9px;font-size:12px;color:#174d88;text-underline-offset:3px; }
  @media(max-width:1100px){.hosted-workspace-grid { grid-template-columns:1fr; }}
  @media(max-width:780px){.focused-home :is(.resource-hub,.resource-catalog,.applications,.community-roadmap,.extensions,.legal) { width:calc(100% - 32px); }.focused-home .resource-hub-grid { grid-template-columns:1fr; }}
  @media(max-width:480px){.hosted-launch { grid-template-columns:70px minmax(0,1fr) 44px;gap:10px; }.hosted-thumbnail { width:70px; }.hosted-identity strong { font-size:15px; }.hosted-identity img { width:22px;height:22px; }.hosted-source { left:86px; }.hosted-play svg { padding:10px; }}
  .hosted-apps-note { display:flex;flex-wrap:wrap;gap:12px 24px; }
  .catalog-refinements { display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin:0 0 24px; }
  .catalog-filter-chips { display:flex;flex-wrap:wrap;gap:6px; }
  .catalog-filter-panel { flex:1 1 420px;font-size:12px;color:var(--muted); }
  .catalog-filter-panel summary { cursor:pointer;padding:10px 0;min-height:40px;width:fit-content; }
  .catalog-filter-panel[open] .catalog-filter-chips { margin-top:6px; }
  .catalog-filter-chips button { font:inherit;font-size:12px;border:1px solid var(--line);border-radius:6px;background:transparent;padding:8px 11px;color:var(--muted);cursor:pointer;min-height:36px; }
  .catalog-filter-chips button[aria-pressed="true"] { background:#e5ecf7;border-color:#a9c0e4;color:#184e91; }
  .catalog-filter-chips button:focus-visible,.catalog-details summary:focus-visible { outline:2px solid #146ef5;outline-offset:3px; }
  .catalog-task-filter select { max-width:min(320px,65vw); }
  .application-directory-main p { font-size:13px;line-height:1.6;color:var(--muted);margin:6px 0;max-width:65ch; }
  .catalog-access { display:block;font-size:11px;color:#3e6758;margin-top:6px;line-height:1.5; }
  .catalog-featured { border-left:2px solid #146ef5;padding-left:12px!important; }
  .catalog-details { font-size:12px;color:var(--muted);margin-top:10px;max-width:65ch; }
  .catalog-details summary { cursor:pointer;width:fit-content;min-height:28px;padding:4px 0;color:#4b617d; }
  .catalog-details p { font-size:12px;line-height:1.6;margin:8px 0; }
  .catalog-details ul { padding-left:16px;margin:8px 0; }
  .catalog-details a { color:#174d88;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere; }
  .catalog-web-row { border-bottom:1px solid var(--line);padding-bottom:12px; }
  .focused-home #webResourceGrid { display:block; }
  #webResourceGrid .web-directory-group { margin-bottom:32px; }
  .catalog-web-row .resource-row { grid-template-columns:48px minmax(0,1fr) minmax(180px,260px) 24px; }
  .catalog-web-row .resource-main p { max-width:74ch; }
  .catalog-web-row:has(img[src$="/scielo.png"]) .catalog-logo { background:#25313e; }
  .catalog-web-row .resource-row { border-bottom:0; }
  .catalog-web-row > .catalog-details { margin:0 48px 0 86px; }
  .resource-mark.catalog-logo,.application-logo { background:#fff;border:1px solid #e2e5ea;border-radius:8px; }
  .resource-mark.catalog-logo img,.application-logo img { object-fit:contain;max-height:36px;max-width:36px; }
  .application-logo:has(img[src$="twinmotion.svg"]) { background:#15171b; }
  .hosted-identity .hosted-kind { color:#3e6758;font-size:11px;margin-top:4px; }
  .hosted-desktop { position:absolute;right:8px;bottom:9px;font-size:12px;color:#174d88;text-underline-offset:3px; }
  .identity-preview img { object-fit:contain!important;padding:48px;max-height:220px; }
  .focused-home .application-controls { margin-bottom:12px; }
  @media(max-width:780px){.catalog-web-row > .catalog-details { margin-left:66px; }.catalog-web-row .resource-row { grid-template-columns:44px minmax(0,1fr) 18px; }.catalog-web-row .resource-meta { display:block;grid-column:2;text-align:left; }.application-directory-row .application-directory-price { display:block;grid-column:2; }.catalog-refinements { gap:12px; }.catalog-filter-chips button { min-height:40px; }}
  @media(prefers-color-scheme:dark){.catalog-logo img,.application-logo img { color-scheme:light; }}
  @media(prefers-reduced-motion:reduce){.hosted-launch,.hosted-play svg { transition:none; }}
  @media(max-width:1050px){.focused-home .home-start { grid-template-columns:1fr; gap:18px; }.application-grid.directory .application-directory-row { grid-template-columns:42px minmax(0,1fr) minmax(120px,.6fr) 145px; }.application-directory-platform { display:none; }}
  @media(max-width:780px){.focused-home .home-start,.focused-home .workspace { width:calc(100% - 32px); }.focused-home .home-start { margin:24px auto; }.home-start h1 { font-size:23px; }.primary-workspaces { grid-template-columns:1fr; }.workspace-entry { min-height:90px; }.application-grid.directory .application-directory-row { grid-template-columns:42px minmax(0,1fr); }.application-directory-row .software-actions { grid-column:2; }.application-directory-price { display:none; }.focused-home .resource-hub-card { flex-basis:220px; }.group-picker .tool-form-panel { padding:20px; }}
}
