/* Shared interaction states and horizontal composition. Official measures: ui-tokens.css. */

[hidden]{display:none!important}
.ui-skip-link{position:fixed;inset:8px auto auto 8px;z-index:12000;transform:translateY(-150%);background:#fffaf2;color:var(--ui-ink);padding:12px 18px;border:2px solid var(--ui-focus);border-radius:8px}
.ui-skip-link:focus{transform:none}
:where(button,a,input,select,summary,[tabindex]):focus-visible{outline:2px solid var(--ui-focus);outline-offset:3px}
:where(input,select){accent-color:var(--ui-green);caret-color:var(--ui-green)}
::selection{background:#dce8c7;color:#253a18}
:where(.view,.card,.toolbar,.actions)>*{min-width:0}
:where(.ui-guide,.ui-filter-summary,.ui-section-nav,.ui-import-bar,.ui-assumptions,.ui-empty-state){color:var(--ui-ink)}
.ui-guide{margin-block:16px;overflow:visible}
.ui-guide>summary{cursor:pointer;min-height:44px;padding:12px 16px;color:var(--ui-ink);font-size:14px;font-weight:700;line-height:1.45;list-style-position:inside}
.ui-guide>summary::marker{color:var(--ui-green)}
.ui-guide>summary:hover{color:var(--ui-green)}
.ui-guide[open]>summary{border-bottom:1px solid var(--ui-line)}
.ui-guide-content{margin:0!important;border:0!important;box-shadow:none!important;padding:16px!important}
.ui-guide .ui-guide-content{background:transparent}
#workerLegend{display:flex;flex-wrap:wrap;gap:12px 20px;padding:12px 16px}
.ui-filter-summary,.ui-assumptions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:12px 0 16px;font-size:13px;line-height:1.55;color:var(--ui-muted)}
.ui-filter-summary .btn,.ui-assumptions .btn{margin-inline-start:auto}
.ui-section-nav{display:flex;flex-wrap:wrap;gap:8px;padding-block:8px 16px;margin-block:4px 16px;border-bottom:1px solid var(--ui-line)}
.ui-section-nav button{min-height:44px;white-space:normal}
.ui-section-nav button[aria-current=true]{background:var(--ui-green-bg);color:var(--ui-green);border-color:var(--ui-green)}
:where(#navPermuta,#navMateriais,#navOficina,#navCaca,#worldMapSection,#profileSimulatorCard,#favoriteRecipesGrid,#navigationFavoritesGrid,#profileSettingsAnchor){scroll-margin-top:24px}
.ui-import-bar{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-block:16px;padding:16px 0;border-block:1px solid var(--ui-line)}
.ui-import-bar>div{flex:1 1 260px}
.ui-import-bar p,#homeImportSummary{color:var(--ui-muted);font-size:13px;line-height:1.55;margin:8px 0;overflow-wrap:anywhere}
.ui-empty-state{grid-column:1/-1;text-align:center;padding:24px 16px;line-height:1.55;min-width:0;font-size:14px}
.ui-empty-state strong{font-size:15px;color:var(--ui-ink)}
.ui-empty-state p{max-width:62ch;margin:8px auto 14px;color:var(--ui-muted)}
.ui-empty-state .btn{min-height:44px}
#workerImportError{padding:14px 16px;margin-block:12px;background:#f9e9df;color:#793423;border:1px solid #b8755e;border-radius:8px;font-size:14px;line-height:1.5}
.ui-data-state{display:inline-block;width:fit-content;max-width:100%;font-size:var(--ui-type-secondary)!important;line-height:1.45;font-weight:600!important;color:#604725;background:#f2e8d6;border:1px solid #d9c6a7;border-radius:5px;padding:2px 5px;white-space:normal;vertical-align:middle;letter-spacing:0!important}
.ui-data-state[data-state=updated]{color:#365622;background:#edf3e2;border-color:#b4c897}
.ui-data-state[data-state=unavailable]{color:#793423;background:#f9e9df;border-color:#d8ae96}
.ui-data-state[data-state=partial]{color:#644514;background:#f8edce;border-color:#d3bb80}
.resource-list-metric .ui-data-state{margin-top:4px;font-size:var(--ui-type-secondary)!important}
#resourcesBody .resource-list-metric{display:flex;flex-direction:column;justify-content:center;align-items:flex-end}
#resourcesBody .resource-list-copy strong{font-size:13px;line-height:1.4;overflow-wrap:anywhere}
#resourcesBody .resource-card-label{font-size:10px;color:var(--ui-muted)}
#resourcesBody .resource-list-metric strong{font-variant-numeric:tabular-nums;line-height:1.4}
#resourcesBody .resource-list-row{align-items:center}
#view-zonas .zone-drop-cell .drop-row{display:grid!important;grid-template-columns:18px minmax(44px,max-content) minmax(0,1fr)!important;gap:6px!important;align-items:center;min-height:28px!important;width:100%;padding:4px 2px!important;background:transparent;border:0;border-radius:4px;cursor:pointer;text-align:left;color:var(--ui-ink);font:inherit}
#view-zonas .zone-drop-cell .drop-row b{color:var(--ui-green)!important;font-size:var(--ui-type-label)!important;line-height:1.4!important;font-weight:700!important;font-variant-numeric:tabular-nums;text-shadow:none!important}
#view-zonas .zone-drop-cell .drop-row span{font-size:var(--ui-type-label)!important;line-height:1.45!important;color:var(--ui-ink)!important;overflow-wrap:anywhere}
#view-zonas .zone-drop-cell .drop-row:hover,#view-zonas .zone-drop-cell .drop-row:focus-visible{background:#edf3e2!important}
#view-zonas .zone-list-node .node-name{font-size:14px!important;line-height:1.4;font-weight:800!important}
#view-zonas .zone-list-row [data-label="Melhor cidade"]>strong{font-size:13px!important;line-height:1.4;color:var(--ui-ink)!important}
#zonesBody[data-sort="cycleM"] [data-label="M$/ciclo"] strong,#zonesBody[data-sort="cyclePerCp"] [data-label="M$/CP"] strong,#zonesBody[data-sort="value"] [data-label="M$/ciclo"] strong,#zonesBody[data-sort="cp"] [data-label="M$/CP"] strong{color:var(--ui-green)!important;font-size:15px!important;font-weight:800!important}
#workerLegend .worker-legend-label{font-size:12px;color:var(--ui-ink)}
#workersBody [data-label="Velocidade de trabalho"] strong,#workersBody [data-label="Velocidade de deslocamento"] strong{font-variant-numeric:tabular-nums}
#globalHoverTooltip{pointer-events:auto!important;max-width:min(360px,calc(100vw - 24px));font-size:13px;line-height:1.5;color:var(--ui-ink);overflow-wrap:anywhere}
.ui-confirm-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;padding:24px;background:#fffaf2;color:var(--ui-ink);border:1px solid var(--ui-line);border-radius:14px;box-shadow:0 16px 48px #30241640}
.ui-confirm-dialog::backdrop{background:#20170f8c}
.ui-confirm-dialog h2{margin:0 0 16px;font-size:22px;line-height:1.3}
.ui-confirm-dialog p{font-size:14px;line-height:1.6;margin:12px 0}
.ui-confirm-dialog .actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.ui-confirm-dialog .btn{min-height:44px}
.ui-confirm-dialog .danger-soft{background:#f9e9df;color:#793423;border-color:#b8755e}
#profileAccountDetails{padding:0;grid-column:1/-1}
#profileAccountDetails .profile-layout{width:auto}
#profileCompactSummary{font-size:14px}
#navRouteStepSummary{padding:10px 0;margin:8px 0;font-size:14px;line-height:1.5;color:var(--ui-green);font-weight:700}
.navigation-route-stage.is-current-step>header{background:#e5eed6;color:var(--ui-green);box-shadow:inset 0 -2px var(--ui-green)}
.navigation-route-stage.is-next-step>header{box-shadow:inset 0 -2px #8b7938}
.navigation-query-empty .btn{min-height:36px;white-space:normal;margin-top:10px}
#profileSimulatorMount .sim-save-state{display:block;min-height:18px;text-align:center;margin:4px 0 0;font-size:12px;line-height:1.5;color:var(--ui-muted);font-weight:600}
#profileSimulatorMount .sim-save-state[data-state=saved]{color:var(--ui-green)}
#profileSimulatorMount .sim-save-state[data-state=dirty]{color:#79500f}
@media(max-width:760px),(pointer:coarse){
  .ui-section-nav button,.ui-import-bar .btn,.ui-filter-summary .btn,.ui-assumptions .btn,.toolbar>.btn, .ui-guide>summary{min-height:44px}
  #view-zonas .zone-drop-cell .drop-row{min-height:44px!important}
  :where(.toolbar,.filter-row,.ui-import-bar) :where(input,select){min-height:44px;font-size:16px}
  #workersBody .site-list-metric::before{font-size:11px;line-height:1.4;white-space:normal}
  .ui-filter-summary,.ui-assumptions{align-items:flex-start;font-size:13px}
  .ui-filter-summary .btn,.ui-assumptions .btn{margin-inline-start:0}
  .ui-import-bar>div{flex-basis:100%}
  .ui-import-bar>.btn{flex:1 1 auto}
  .ui-confirm-dialog{padding:20px}
  .ui-confirm-dialog .actions .btn{flex:1 1 100%}
  .ui-section-nav{gap:8px}
  .ui-section-nav button{flex:1 1 calc(50% - 8px)}
}
@media(prefers-reduced-motion:reduce){.ui-skip-link,.ui-section-nav button,.navigation-route-stage{transition:none!important;animation:none!important}}
/* Shared bars wrap without introducing another panel hierarchy. */
.ui-filter-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;grid-column:1/-1;margin:10px 0 16px;font-size:13px;line-height:1.5;color:var(--ui-muted)}
.ui-filter-bar p{flex:1 1 280px;margin:0}
.ui-filter-bar .btn{min-height:40px}
.ui-section-nav button{border:1px solid var(--ui-line);border-radius:8px;padding:10px 16px;font-family:inherit;font-size:14px;line-height:1.4;font-weight:600;background:#fffaf2;color:var(--ui-ink);cursor:pointer}
.ui-section-nav button:hover{background:var(--ui-green-bg);color:var(--ui-green)}
#workerLegend{display:block;padding:0;margin:0;flex:1 1 320px}
#workerLegend>summary{font-size:12px}
#workerLegend .worker-legend{display:flex;flex-wrap:wrap;gap:10px;line-height:1.5;font-size:12px}
#view-zonas[data-sort=daily] [data-label="M$/ciclo"] strong,#view-zonas[data-sort=eff] [data-label="M$/CP"] strong{font-size:15px!important;font-weight:800!important;color:var(--ui-green)!important}
#profileAccountDetails>summary{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center}
#profileAccountDetails>summary::before{content:'▸';color:var(--ui-green)}
#profileAccountDetails[open]>summary::before{content:'▾'}
#profileAccountDetails>summary small{font-size:12px;font-weight:400;color:var(--ui-muted)}
@media(max-width:760px),(pointer:coarse){.ui-filter-bar .btn{min-height:44px}}

.ui-field-hint{font-size:12px;color:var(--ui-muted);line-height:1.4}
.ui-field-error,.ui-validation-summary{color:#793423}
.ui-validation-summary{padding:16px;background:#f9e9df;border:1px solid #b8755e;border-radius:8px}
#app input[aria-invalid=true]{border-color:#a2482e!important;background:#fff4ed!important}
#profileSimulatorMount #simWarnings:empty{display:none}

/* Horizontal composition v1.4.118. This replaces the old per-release density
   rules in this file. Legacy art/map CSS remains in styles.css. */
body[data-ui=horizontal]{font-size:14px;line-height:1.45;color:var(--ui-ink)}
#app main{width:min(calc(100% - 2 * var(--ui-gutter)),var(--ui-content))!important;max-width:var(--ui-content)!important;margin:0 auto!important;padding:24px 0 48px!important}
#app .view{min-width:0}
#app .card{border-radius:var(--ui-radius-panel)!important;box-shadow:none!important}
#app :is(.toolbar,.farming-controls,.ui-import-bar){padding:16px!important;border:0!important;background:var(--ui-surface)!important;border-radius:var(--ui-radius-panel)!important;margin-block:0 24px!important}
#app :is(#view-zonas,#view-horta,#view-oficinas,#view-recursos,#view-trabalhadores,#view-perfil) :is(.toolbar,.farming-controls,.profile-settings-card) label{font-size:14px!important;line-height:20px!important;gap:8px!important;color:var(--ui-ink)!important}
#app :is(.btn,.ui-section-nav button,.ui-route-stages button,.ui-sort,.sort-dir-btn){min-height:var(--ui-control)!important;font-family:inherit;font-size:14px;font-weight:600;line-height:20px;border-radius:var(--ui-radius)!important;transform:none!important;white-space:normal}
#app .btn{font-family:inherit!important;font-size:14px!important;line-height:20px!important;padding:8px 16px!important}
#app .btn.primary{background:var(--ui-green)!important;color:#fffaf4!important;border-color:var(--ui-green)!important;text-shadow:none!important}
#app .btn.ghost{color:var(--ui-ink)!important}
#app :is(input:not([type=checkbox]):not([type=radio]):not([type=file]),select){min-height:var(--ui-control)!important;font-size:var(--ui-type-control)!important;line-height:20px!important;border-radius:var(--ui-radius)!important;border-color:var(--ui-control-border)!important;max-width:100%;min-width:0}
#app :is(input[type=checkbox],input[type=radio]){width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;margin:0}
#app .check{min-height:44px!important;display:flex!important;align-items:center;gap:8px!important;font-size:14px!important;padding:0!important}
#app .page-title{margin:0 0 24px!important;border-radius:12px!important}
#app .page-title h1{font-size:28px!important;line-height:36px!important}
#app .page-title p{font-size:14px!important;line-height:20px!important}
#app .eyebrow{display:none!important}
#app :is(.site-list-metric,.money,.stat strong,.resource-list-metric strong){font-variant-numeric:tabular-nums}
#app :is(button,a,input,select,summary,[tabindex]):focus-visible{outline:2px solid var(--ui-focus)!important;outline-offset:2px!important}
#app :is(.workshop-list-row,.resource-list-row,.navigation-ship-card,.favorite-recipe-card):hover{transform:none!important;box-shadow:none!important}
#app :is(.ui-context,.ui-filter-bar,.ui-assumptions){font-size:12px;line-height:18px;color:var(--ui-muted)}
#app :is(.toolbar,.farming-controls)>*{min-width:0}
#app :is(.ui-guide,.ui-filter-bar){margin-block:16px!important}
#app .ui-guide{border:0!important;background:var(--ui-subtle)!important}
#app .ui-guide>summary{font-size:14px;min-height:44px;padding:12px 16px}
#app .ui-guide-content{font-size:14px!important;line-height:1.6!important}
#app #view-inicio .worker-json-guide :is(small,code){font-size:12px!important;line-height:18px!important}
#app #view-inicio .worker-json-guide .worker-guide-actions .btn{font-size:14px!important;line-height:20px!important;min-height:44px!important}
#app .ui-guide-content :is(li,p,small){font-size:14px!important;line-height:1.6!important}
#app .pager{gap:16px;margin-top:24px;font-size:14px}
#app :is(.navigation-route-grid,.site-list-panel,.sim-picker-list){scrollbar-width:thin;scrollbar-color:#8b735b var(--ui-subtle);overscroll-behavior:contain}

/* Main artwork spans the same HUD width as the page, at its original 3:1 ratio. */
#app .topbar{width:min(calc(100% - 2 * var(--ui-gutter)),var(--ui-content))!important;max-width:var(--ui-content)!important;display:block!important;margin:16px auto 0!important;padding:0!important;border-radius:12px!important}
#app .topbar-hero-shell{position:relative!important;width:100%!important;height:auto!important;min-height:0!important;overflow:visible!important}
#app .topbar-hero-link{display:block!important;width:100%!important;height:auto!important;min-height:0!important;border-radius:12px!important;overflow:hidden!important}
#app .topbar-loop-viewport{display:block!important;width:100%!important;height:auto!important;aspect-ratio:3/1!important;border-radius:12px!important}
#app .topbar-organic-waves{height:auto!important}
#app .header-motion-toggle{position:absolute;left:16px;right:auto;bottom:24px;z-index:9;width:44px;height:44px;min-height:44px;padding:0;font-size:0;background:#fffaf4e8;border:1px solid var(--ui-line);border-radius:8px;cursor:pointer}
#app .header-motion-toggle::before{content:none}
#app .header-motion-toggle{display:grid;place-items:center}
#app .header-motion-toggle .header-motion-icon{display:block;width:24px;height:24px;object-fit:contain;pointer-events:none}
#app .topbar-hero-shell[data-motion=playing] .header-motion-toggle::before{content:none}
#app .topbar-subbar{width:100%!important;margin:8px 0 0!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important}
#app #nav.nav.nav-tabs{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;align-items:center!important;gap:4px!important;padding:8px!important;background:var(--ui-surface)!important;border:0!important;border-radius:12px!important;height:auto!important;overflow:visible!important}
#app #nav.nav.nav-tabs>button:not(.hidden){flex:0 0 auto!important;min-width:0!important;width:auto!important;height:auto!important;min-height:44px!important;margin:0!important;padding:8px 12px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border:0!important;border-radius:8px!important;background:transparent!important;color:var(--ui-ink)!important;box-shadow:none!important;font-size:14px!important;line-height:20px!important}
#app #nav.nav.nav-tabs>button::before{display:none!important}
#app #nav.nav.nav-tabs>button>.nav-label{font-size:14px!important;line-height:20px!important;white-space:nowrap!important}
#app #nav.nav.nav-tabs>button.active{background:var(--ui-green-bg)!important;color:var(--ui-green)!important;box-shadow:inset 0 -2px var(--ui-green)!important}
#app #navAccount.header-account-overlay{position:absolute!important;left:auto!important;right:16px!important;bottom:24px!important;display:flex!important;justify-content:flex-end!important;width:auto!important;min-width:0!important;margin:0!important;transform:none!important}
#app #navAccount button{min-height:44px!important;max-width:240px!important;font-size:14px!important}
#app .nav-account-name{max-width:176px!important}

/* Toolbars share structure; secondary fields are a true disclosure everywhere. */
#app :is(#view-zonas .zones-toolbar,#view-oficinas .workshop-toolbar,#view-recursos .toolbar){display:grid!important;grid-template-columns:minmax(240px,1fr) auto auto!important;align-items:end!important;gap:16px!important}
#app :is(#view-zonas .zones-toolbar,#view-oficinas .workshop-toolbar,#view-recursos .toolbar)>label{grid-column:1!important}
#app .toolbar input[type=search]{width:100%!important;min-width:0!important}
#app .ui-mobile-disclosure{display:block!important;position:relative;min-width:0!important;align-self:end!important}
#app .ui-mobile-disclosure>summary{display:list-item!important;list-style-position:inside;min-height:44px!important;padding:12px 16px!important;border:1px solid var(--ui-line);border-radius:8px;font-size:14px!important;line-height:20px;font-weight:600;cursor:pointer;color:var(--ui-ink)!important}
#app .ui-mobile-disclosure[open]{grid-column:1/-1!important;grid-row:auto!important}
#app .ui-mobile-disclosure[open]>summary{width:fit-content}
#app .ui-mobile-disclosure>.ui-disclosure-fields{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;padding-top:16px!important}
#app .ui-mobile-disclosure .ui-disclosure-fields label{display:flex;flex-direction:column;min-width:0;gap:8px}
#app .ui-mobile-disclosure:not([open])>.ui-disclosure-fields{display:none!important}
#app .ui-mobile-disclosure::details-content{display:block!important}
#app .ui-mobile-disclosure:not([open])::details-content{display:none!important}
#app .ui-mobile-disclosure :is(input,select){width:100%!important;min-width:0!important}
#app #view-zonas .zones-toolbar-meta{display:flex!important;flex-wrap:wrap;align-items:center;grid-column:1/-1!important;gap:8px 16px!important;margin:0!important;padding:0!important;border:0!important;width:100%!important}
#app #view-zonas .zones-toolbar-meta>p{margin:0;flex:1}
#app #view-zonas #usedZonesInfo{font-size:12px!important;line-height:16px!important;height:auto!important;min-height:28px!important}
#app #workerLegend{background:none!important;border:0!important;margin:0!important;flex:0 1 auto}
#app #workerLegend>summary{padding:8px 0}
#app #zoneSortDir{min-width:44px!important}
#app #view-trabalhadores .toolbar{display:grid!important;grid-template-columns:minmax(240px,2fr) repeat(2,minmax(160px,1fr)) auto!important;gap:16px!important;align-items:end!important}
#app #view-trabalhadores .toolbar>label:has(#workerSearch){grid-column:1;grid-row:1}
#app #view-trabalhadores .toolbar>.check{grid-column:1/-2}
#app #view-horta .farming-controls{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:end;gap:16px!important}
#app .ui-farm-primary{display:grid!important;grid-template-columns:minmax(0,2fr) minmax(160px,1fr)!important;gap:16px!important;grid-column:1/-1}
#app #farmPremises{grid-column:1}

/* Home: status/actions → KPIs → controls → map. Help follows the canvas. */
#app #view-inicio .hero-intro{display:block!important;min-height:0!important;padding:12px 16px!important;margin:0 0 16px!important;background:var(--ui-surface)!important;border:0!important}
#app #view-inicio .hero-intro::before,#app #view-inicio .hero-intro::after,#app #view-inicio .hero-brand{display:none!important}
#app #view-inicio .hero-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;align-items:center}
#app #view-inicio .hero-copy #homeIntroTitle{font-size:20px!important;line-height:28px!important;margin:0!important;grid-column:1;grid-row:1}
#app #view-inicio #homeIntroDescription{display:none!important}
#app #view-inicio .hero-copy>.actions{grid-column:2;grid-row:1/3;display:flex;gap:8px;margin:0!important}
#app #view-inicio .hero-copy .btn{font-size:14px!important;line-height:20px!important}
#app #view-inicio #homeImportSummary{grid-column:1;grid-row:2;font-size:12px!important;line-height:18px!important;margin:0!important}
#app #view-inicio .ui-home-status{display:flex!important;flex-wrap:wrap;gap:4px 16px;grid-column:1;grid-row:2}
#app #view-inicio .ui-home-status .pill{font-size:12px!important;line-height:16px!important;min-height:0!important;padding:0!important;border:0!important;background:none!important;white-space:normal!important}
#app #view-inicio #siteLoadNotice{grid-column:1/-1}
#app #view-inicio>.stats-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;margin:0 0 16px!important}
#app #view-inicio .stat{display:flex!important;flex-direction:column;gap:0!important;padding:8px 16px!important;background:transparent!important;border:0!important;border-left:1px solid var(--ui-line)!important;border-radius:0!important;min-height:0!important}
#app #view-inicio .stat:first-child{border-left:0!important}
#app #view-inicio .stat>span{font-size:12px!important;line-height:16px!important}
#app #view-inicio .stat>strong{font-size:24px!important;line-height:28px!important;margin:0!important}
#app #view-inicio .stat>small{font-size:12px!important;line-height:16px!important}
#app #worldMapSection{padding:0!important;margin:0!important;border:0!important;background:none!important;overflow:visible!important}
#app #worldMapSection .map-toolbar-head{display:flex!important;flex-wrap:wrap;align-items:center;gap:8px 16px!important;margin:0 0 8px!important;padding:0!important;border:0!important;background:none!important;border-radius:0!important}
#app #worldMapSection .map-heading-copy{flex:0 1 auto}
#app #worldMapSection h2{font-size:16px!important;line-height:24px!important;margin:0!important}
#app .map-route-helper{display:none!important}
#app #worldMapSection .map-controls{display:flex!important;flex:1 1 auto!important;flex-wrap:wrap;justify-content:flex-end!important;gap:8px!important;align-items:center;width:auto!important;max-width:none!important;min-width:0!important}
#app #worldMapSection .map-controls>:is(button,label.check){width:auto!important;min-width:0!important;max-width:none!important;flex:0 0 auto!important;grid-area:auto!important;white-space:nowrap!important}
#app #worldMapSection .map-controls label.check{padding:0 8px!important;background:none!important;border:0!important;box-shadow:none!important;overflow:visible!important}
#app #bestRouteBtn{order:5}
#app #worldMapSection .bdo-map-stage{border-radius:12px;overflow:hidden}
#app #bdoMap{height:max(420px,calc(100svh - 320px))!important;min-height:0!important;max-height:820px!important;aspect-ratio:auto!important}
#app .map-caption{font-size:12px!important;line-height:18px!important;padding:12px 0!important;color:var(--ui-muted)!important}

/* Data tables: an aligned header and right-aligned tabular metrics. */
#app :is(.zones-list-panel,.workers-list-panel,.farming-list-panel){border:0!important;background:var(--ui-surface)!important;overflow:auto!important;max-height:72vh;scrollbar-gutter:stable;padding:0!important}
#app :is(.zones-list-head,.workers-list-head,.farming-list-head){position:sticky!important;top:0!important;z-index:4!important;background:var(--ui-subtle)!important;border-radius:0!important;align-items:center!important;font-size:12px!important;line-height:16px!important;color:var(--ui-ink)!important;padding:8px 16px!important}
#app :is(.zone-list-row,.worker-list-row,.farming-list-row){border:0!important;border-bottom:1px solid #e6d9c5!important;border-radius:0!important;box-shadow:none!important;padding:12px 16px!important;min-height:56px!important;align-items:center!important;background:var(--ui-surface)!important;transform:none!important}
#app :is(.zone-list-row,.worker-list-row,.farming-list-row):nth-child(even){background:#faf4e9!important}
#app :is(#view-zonas,#view-trabalhadores,#view-horta) :is(.zone-list-row,.worker-list-row,.farming-list-row) :is(strong,.node-name){font-size:14px!important;line-height:20px!important}
#app .site-list-metric{font-size:14px!important;line-height:20px!important;text-align:right!important;justify-content:flex-end!important}
#app :is(.zone-list-row,.worker-list-row,.farming-list-row) small{font-size:12px!important;line-height:16px!important}
#app #view-zonas :is(.zones-list-head,.zone-list-row){display:grid!important;grid-template-columns:minmax(240px,2fr) minmax(150px,1fr) minmax(150px,1fr) 130px 88px 64px 100px 100px!important;gap:16px!important;min-width:1150px}
#app #view-zonas .zone-list-node .node-name{font-size:16px!important;font-weight:700!important;line-height:24px!important}
#app #view-zonas .zone-list-row [data-label="M$/CP"] strong{font-size:18px!important;font-weight:700!important;color:var(--ui-green)!important}
#app #view-zonas .zone-list-row [data-label="M$/ciclo"] strong{font-size:16px!important;font-weight:600!important}
#app #view-zonas .zone-drop-cell .drop-row{grid-template-columns:24px 44px minmax(0,1fr)!important;gap:8px!important;min-height:44px!important;padding:4px!important}
#app #view-zonas .zone-drop-cell .drop-row :is(span,b){font-size:12px!important;line-height:16px!important}
#app #view-zonas .zone-drop-cell .drop-row img{width:24px;height:24px}
#app #view-zonas .zone-profit-model{display:block!important;font-size:12px!important;line-height:18px!important;padding:8px 0!important;background:none!important;border:0!important}
#app .ui-sort{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;max-width:100%;border:0;background:none;color:inherit;font-family:inherit;font-size:12px;font-weight:600;line-height:16px;cursor:pointer;padding:0;text-align:right}
#app .ui-sort [data-sort-indicator],#app .ui-sort [data-zone-indicator]{color:var(--ui-green);font-size:16px}
#app #view-trabalhadores :is(.workers-list-head,.worker-list-row){display:grid!important;grid-template-columns:160px 64px 56px minmax(240px,1fr) 112px 112px 72px 96px 112px!important;gap:16px!important;min-width:1180px}
#app #view-trabalhadores .worker-list-row [data-label="Velocidade de trabalho"] strong,#app #view-trabalhadores .worker-list-row [data-label="M$/DIA"] strong{font-size:18px!important;font-weight:700!important;color:var(--ui-green)!important}
#app #view-trabalhadores .ui-import-bar{gap:8px 16px!important;align-items:center!important;margin-bottom:16px!important}
#app #view-trabalhadores .ui-import-bar.has-import{padding:12px 16px!important}
#app #view-trabalhadores .ui-import-bar.has-import>div>strong{font-size:14px!important}
#app #view-trabalhadores .ui-import-bar p{margin:4px 0 0!important;font-size:12px!important}
#app #view-trabalhadores .stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;margin-bottom:24px!important}
#app #view-trabalhadores .stat{padding:16px!important;background:none!important;border:0!important}
#app #view-trabalhadores .stat strong{font-size:28px!important;line-height:32px!important}
#app #view-trabalhadores .stat :is(span,small){font-size:12px!important;line-height:16px!important}
#app #view-horta .farming-highlight-stats{display:grid!important;grid-template-columns:1fr 1fr!important;gap:24px!important;padding:24px!important;margin:0 0 24px!important;background:var(--ui-green-bg)!important;border-radius:12px}
#app #view-horta .farming-highlight-stats .stat{border:0!important;background:none!important;padding:0!important;border-radius:0!important}
#app #view-horta .farm-location-card strong{font-size:14px!important;line-height:20px!important}
#app #view-horta .farm-method-badge{font-size:12px!important;line-height:16px!important}
#app #view-horta #farmBestCrop{font-size:24px!important;line-height:32px!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;max-width:none!important}
#app #view-horta #farmBestProfit{font-size:32px!important;line-height:40px!important;color:var(--ui-green)!important}
#app #view-horta .farming-highlight-stats span{font-size:14px!important;line-height:20px!important}
#app #view-horta .farming-highlight-stats small{font-size:12px!important;line-height:16px!important}
#app #view-horta :is(.farming-list-head,.farming-list-row){display:grid!important;grid-template-columns:minmax(200px,2fr) 112px 56px 96px 100px 112px 96px 96px 112px 96px!important;gap:16px!important;min-width:1300px}

#app :is(.zone-list-row,.worker-list-row,.farming-list-row)>div{grid-area:auto!important;order:0!important}
#app :is(.zone-list-row,.worker-list-row,.farming-list-row)>div::before{display:none!important}

/* Resources have one surface; price and availability lead the internal reading. */
#app #view-recursos .resources-panel{padding:0!important;border:0!important;background:none!important}
#app #view-recursos .resources-list-head{display:none!important}
#app #view-recursos #resourcesBody{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;background:none!important}
#app #view-recursos #resourcesBody .resource-list-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:16px!important;padding:16px!important;height:auto!important;min-height:0!important;border:0!important;border-radius:12px!important;background:var(--ui-surface)!important;align-content:start;overflow:visible!important}
#app #view-recursos #resourcesBody .resource-list-item{grid-column:1/-1!important;grid-row:1!important;min-height:0!important;padding:0!important;border:0!important;align-items:start!important;gap:12px!important}
#app #view-recursos #resourcesBody .resource-list-copy strong{font-size:16px!important;line-height:24px!important;color:var(--ui-ink)!important;white-space:normal!important}
#app #view-recursos #resourcesBody .resource-card-label{display:none!important}
#app #view-recursos #resourcesBody .resource-list-metric{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;gap:4px!important;min-height:0!important;padding:0!important;border:0!important;background:none!important;grid-row:2!important;min-width:0!important;text-align:left!important}
#app #view-recursos #resourcesBody .resource-list-metric::before{content:attr(data-label)!important;display:block!important;font-size:12px!important;line-height:16px!important;color:var(--ui-muted)!important;order:2}
#app #view-recursos #resourcesBody .resource-list-metric strong{font-size:24px!important;line-height:32px!important;font-weight:700!important;color:var(--ui-ink)!important;overflow-wrap:anywhere;max-width:100%}
#app #view-recursos #resourcesBody .resource-list-metric[data-label="Nós"]{grid-column:1/-1!important;grid-row:3!important;flex-direction:row!important;gap:8px!important;align-items:center!important}
#app #view-recursos #resourcesBody .resource-list-metric[data-label="Nós"]::before{order:0}
#app #view-recursos #resourcesBody .resource-list-metric[data-label="Nós"] strong{font-size:14px!important;line-height:20px!important}
#app #view-recursos .resource-market-status{grid-column:1/-1!important;grid-row:4!important;font-size:12px!important;margin:0!important;padding:0!important;border:0!important}
#app #view-recursos :is(.resource-source-badge,.resource-workshop-link,.resource-workshop-types>span){font-size:12px!important;line-height:16px!important}
#app .resource-workshop-link{min-height:44px;padding:4px 0!important}
#app .resource-item-icon-trigger{width:48px!important;min-width:48px!important;height:48px!important;display:grid;place-items:center}
#app .resource-item-icon-trigger img{width:36px!important;height:36px!important}

/* Workshop results: project → infrastructure → consistent action. */
#app #view-oficinas .workshop-list-head{display:none!important}
#app #view-oficinas .workshop-list-panel{border:0!important;background:none!important;padding:0!important;overflow:visible!important}
#app #view-oficinas .workshop-list-body{display:grid!important;grid-template-columns:1fr!important;gap:16px!important}
#app #view-oficinas .workshop-list-row{display:grid!important;grid-template-columns:minmax(260px,2fr) minmax(160px,1fr) 88px 64px 152px!important;align-items:center!important;gap:16px!important;padding:16px!important;border:0!important;border-radius:12px!important;background:var(--ui-surface)!important;min-width:0!important}
#app #view-oficinas .workshop-project-lead{display:flex!important;flex-direction:row!important;gap:12px;align-items:center;min-width:0;text-align:left!important;padding:0!important}
#app #view-oficinas .workshop-project-lead>img{width:48px;height:48px;object-fit:contain;flex:none}
#app #view-oficinas .workshop-project-lead>div{min-width:0;display:flex;flex-direction:column;gap:4px}
#app #view-oficinas .workshop-project-lead strong{font-size:16px;line-height:24px;color:var(--ui-ink)}
#app #view-oficinas .workshop-project-lead :is(small,span){font-size:12px;line-height:16px;color:var(--ui-muted)}
#app #view-oficinas .workshop-list-city,#app #view-oficinas .workshop-list-row>[data-label="Casa"]{display:none!important}
#app #view-oficinas .workshop-list-row>.site-list-metric{display:flex!important;flex-direction:column!important;gap:4px;grid-column:auto!important;grid-row:auto!important;padding:0!important;border:0!important;align-items:flex-start!important;text-align:left!important}
#app #view-oficinas .workshop-list-row>:is(.workshop-list-city,[data-label="Casa"]){display:none!important}
#app #view-oficinas .workshop-list-row>.site-list-metric::before{content:attr(data-label)!important;display:block!important;font-size:12px!important;line-height:16px!important;color:var(--ui-muted)!important}
#app #view-oficinas .workshop-list-row>.site-list-metric strong{font-size:14px!important;line-height:20px!important}
#app #view-oficinas .workshop-list-row>.workshop-list-action{grid-column:auto!important;grid-row:auto!important;padding:0!important;border:0!important}
#app #view-oficinas .workshop-expand{width:152px!important;min-height:44px!important;margin:0!important}
#app #view-oficinas .workshop-card-detail{grid-column:1/-1!important;padding-top:24px!important;border-top:1px solid var(--ui-line)!important}
#app :is(.workshop-card-detail,.workshop-recipe-card) :is(p,li){font-size:14px!important;line-height:20px!important}
#app .workshop-level-badge{font-size:12px!important}

/* Navigation modules and a prominent, readable active route. */
#app #navigationSectionNav{position:sticky;top:0;z-index:20;display:flex;flex-wrap:wrap;gap:8px;padding:8px;margin:0 0 16px;background:var(--ui-surface);border:0;border-radius:12px}
#app #navigationSectionNav button{flex:1 1 160px;min-height:48px;font-size:16px;font-weight:600;border:0;background:transparent}
#app #navigationSectionNav button[aria-selected=true]{background:var(--ui-green-bg);color:var(--ui-green);box-shadow:inset 0 -2px var(--ui-green)}
#app #view-navegacao [role=tabpanel]{padding:24px!important;border:0!important;margin:0!important}
#app .ui-navigation-utilities{margin:0 0 16px;display:flex;justify-content:flex-end}
#app .ui-navigation-utilities .navigation-refresh-timers{flex-direction:row!important;position:static!important;inset:auto!important;display:flex!important;flex-wrap:wrap;gap:16px!important;width:auto!important;max-width:100%!important;height:auto!important;max-height:none!important;padding:0!important;margin:0!important;transform:none!important;border:0!important;background:none!important;box-shadow:none!important;z-index:auto!important}
#app .ui-navigation-utilities .navigation-refresh-row{height:44px!important;min-height:44px!important;display:flex!important;align-items:center;gap:8px!important;width:auto!important;font-size:12px!important}
#app .ui-navigation-utilities .navigation-refresh-row>span:first-child{font-size:12px!important;line-height:16px!important;overflow:visible!important}
#app .ui-navigation-utilities .navigation-refresh-row strong{font-size:14px!important;line-height:20px!important;font-variant-numeric:tabular-nums}
#app .ui-navigation-utilities .navigation-refresh-play{flex:0 0 44px!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}
#app #view-navegacao .btn{font-size:14px!important;line-height:20px!important;min-height:44px!important}
#app #view-navegacao :is(.navigation-toolbar label,.navigation-ship-material-copy strong,.navigation-item-copy strong,.navigation-material-stage>header strong,.navigation-route-summary b){font-size:14px!important;line-height:20px!important}
#app #view-navegacao :is(.navigation-toolbar .navigation-hint,.navigation-item-meta,.navigation-item-meta span,.navigation-material-meta,.navigation-material-meta span,.navigation-route-summary small,.navigation-barter-cargo small,.navigation-ship-material-copy small,.navigation-ship-material-line,.navigation-ship-material-count){font-size:12px!important;line-height:16px!important}
#app #navigationMyShip .navigation-my-ship-weight>small{max-height:none!important;overflow:visible!important;display:block!important;-webkit-line-clamp:unset!important}
#app #view-navegacao .navigation-barter-head{display:grid!important;grid-template-columns:minmax(0,1fr) 280px!important;grid-template-rows:auto auto!important;gap:16px 24px!important;align-items:start}
#app #view-navegacao .navigation-barter-copy{grid-column:1!important;grid-row:1!important}
#app #view-navegacao .navigation-barter-copy p{font-size:14px!important;line-height:20px!important;max-width:70ch}
#app #view-navegacao .navigation-barter-side{grid-column:2!important;grid-row:1/3!important}
#app #navigationMyShip{position:static!important;width:280px!important;max-width:100%!important;min-width:0!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;padding:16px!important;background:var(--ui-subtle)!important;border:0!important}
#app #navigationMyShip :is(.navigation-my-ship-selects,.navigation-my-ship-topbar){display:grid!important;grid-template-columns:1fr!important;gap:8px!important;height:auto!important}
#app #navigationMyShip :is(label,small){font-size:12px!important;line-height:16px!important;white-space:normal!important}
#app #navigationMyShip :is(h3,.navigation-my-ship-weight-head strong,.navigation-my-ship-percent){font-size:14px!important;line-height:20px!important}
#app #navigationMyShip .navigation-my-ship-weight-head{font-size:12px!important;line-height:16px!important}
#app #view-navegacao .navigation-barter-toolbar{display:grid!important;grid-column:1!important;grid-row:2!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px 16px!important;padding:0!important;border:0!important;background:none!important;align-items:end!important;max-width:none!important;width:100%!important}
#app #view-navegacao .navigation-barter-toolbar>label{grid-column:1!important;grid-row:1!important;width:100%!important;max-width:none!important;font-size:14px!important;gap:8px!important}
#app #view-navegacao .navigation-barter-toolbar input{width:100%!important;max-width:none!important}
#app #view-navegacao .navigation-barter-toolbar>.navigation-barter-clear-action{grid-column:2!important;grid-row:1!important;align-self:end!important;margin:0!important}
#app #view-navegacao .navigation-barter-toolbar>.navigation-hint{grid-column:1/-1!important;grid-row:2!important;font-size:12px!important}
#app #navBarterSummary{padding:16px!important;margin:16px 0!important;background:var(--ui-green-bg)!important;border:0!important;border-radius:12px!important;font-size:14px!important}
#app #navBarterSummary .navigation-summary-chain{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}
#app #navBarterSummary .navigation-summary-chain>span{font-size:16px!important;line-height:24px!important;font-weight:600;color:var(--ui-green)!important;padding:8px!important}
#app #navBarterSummary .navigation-summary-chain>span>small{display:block;font-weight:400;color:var(--ui-muted)}
#app #navBarterSummary small,#app #navRouteStepSummary{font-size:12px!important;line-height:18px!important}
#app #navRouteStepNav{display:flex!important;gap:8px!important;flex-wrap:wrap!important;margin:16px 0!important}
#app #navRouteStepNav button{font-size:14px!important;min-height:44px!important;flex:1 0 64px}
#app .navigation-route-shell{overflow-x:auto!important;max-width:100%!important}
#app .navigation-route-grid{display:grid!important;grid-template-columns:repeat(8,minmax(180px,1fr))!important;gap:8px!important;min-width:1496px!important}
#app .navigation-route-stage>header{min-height:56px;padding:12px!important}
#app .navigation-route-stage>header strong{font-size:14px!important;line-height:20px!important}
#app .navigation-route-stage>header small{font-size:12px!important;line-height:16px!important}
#app .navigation-route-stage.is-current-step>header{background:var(--ui-green)!important;color:#fffaf4!important}
#app .navigation-route-stage.is-current-step>header :is(strong,small){color:inherit!important}
#app .navigation-route-stage.is-next-step>header{box-shadow:inset 0 -2px var(--ui-green)}
#app #view-navegacao .navigation-route-item{flex:0 0 auto!important;height:auto!important;min-height:64px!important;padding:0!important;transform:none!important}
#app #view-navegacao .navigation-material-item{flex:0 0 auto!important;height:auto!important;min-height:64px!important;padding:12px!important}
#app .navigation-route-select{min-height:64px!important;padding:12px!important;gap:8px!important}
#app .navigation-item-copy strong{font-size:14px!important;line-height:20px!important}
#app :is(.navigation-item-meta,.navigation-selection-state){font-size:12px!important;line-height:16px!important}
#app .navigation-item-copy{min-width:0!important}
#app .navigation-route-item.is-selected{background:var(--ui-green-bg)!important;border-color:var(--ui-green)!important}
#app .navigation-route-item.is-associated:not(.is-selected){background:#f3f6ed!important}

/* Simulator: activity/preset | equipment | persistent result. */
#app #view-perfil .market-tax-formula{font-size:12px!important;line-height:18px!important}
#app #profileSimulatorCard{padding:24px!important;border:0!important}
#app #profileSimulatorMount{--sim-icon-size:36px;--sim-shortcut-size:48px;max-width:100%!important;container-type:inline-size}
#app #profileSimulatorMount .sim-profile-wrap{max-width:none!important;width:100%!important;padding:0!important}
#app #profileSimulatorMount .sim-master-layout{display:grid!important;grid-template-columns:224px minmax(360px,1fr) 280px!important;grid-template-areas:'life equipment outcome' 'supplements supplements supplements' 'allresults allresults allresults'!important;gap:24px!important;max-width:none!important;width:100%!important;align-items:start!important}
#app #profileSimulatorMount .sim-life-card{grid-area:life!important;height:auto!important;min-height:0!important;width:100%!important}
#app #profileSimulatorMount .sim-equipment-panel{grid-area:equipment!important;width:100%!important;min-width:0!important;max-width:560px!important;justify-self:center!important;align-self:start!important;padding:24px!important;height:auto!important;min-height:0!important}
#app #profileSimulatorMount .sim-outcome-column{grid-area:outcome!important;display:block!important;position:sticky;top:16px}
#app #profileSimulatorMount .sim-supplements{grid-area:supplements!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px!important;align-items:start}
#app #profileSimulatorMount .sim-supplements>*{grid-area:auto!important;max-width:none!important;width:100%!important;min-height:0!important;height:auto!important;align-self:start!important}
#app #profileSimulatorMount .sim-result-panel{grid-area:allresults!important;width:100%!important;max-width:none!important}
#app #profileSimulatorMount .official-block{background:var(--ui-surface)!important;border:0!important;border-radius:12px!important;box-shadow:none!important;padding:16px!important}
#app #profileSimulatorMount :is(.sim-block-title,.sim-equipment-kicker){font-size:16px!important;line-height:24px!important;margin-bottom:12px!important}
#app #profileSimulatorMount :is(.sim-help,.sim-profile-subtitle,.sim-account-line,.sim-local-pill,.sim-notice,.sim-save-state){font-size:12px!important;line-height:18px!important;white-space:normal!important}
#app #profileSimulatorMount .sim-life-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:4px!important}
#app #profileSimulatorMount .sim-life-tile{display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;grid-template-rows:20px 16px!important;column-gap:8px!important;row-gap:0!important;height:48px!important;min-height:48px!important;padding:4px 8px!important;text-align:left!important;justify-items:start!important;align-content:center!important;border-color:transparent!important;background:transparent!important}
#app #profileSimulatorMount .sim-life-tile.is-active{background:var(--ui-green-bg)!important;border-color:var(--ui-green)!important}
#app #profileSimulatorMount .sim-life-tile>.sim-activity-glyph{width:24px!important;height:24px!important;grid-column:1;grid-row:1/3}
#app #profileSimulatorMount .sim-life-tile>strong{grid-column:2;grid-row:2;font-size:12px!important;line-height:16px!important}
#app #profileSimulatorMount .sim-life-tile>span{justify-self:start!important;text-align:left!important;grid-column:2;grid-row:1;font-size:14px!important;line-height:20px!important;overflow-wrap:normal!important;white-space:normal!important}
#app #profileSimulatorMount .sim-life-tile small{font-size:12px!important;line-height:16px!important}
#app #profileSimulatorMount .sim-equipment-presets{margin:0 0 12px!important;width:100%!important;height:44px!important;align-self:start!important}
#app #profileSimulatorMount .sim-hud-grid{display:grid!important;grid-template-columns:repeat(3,minmax(48px,1fr))!important;grid-template-rows:repeat(5,48px)!important;gap:8px 16px!important;width:100%!important;max-width:360px!important;margin:16px auto!important}
#app #profileSimulatorMount .sim-hud-stage{width:100%!important;max-width:none!important;min-height:0!important;flex:none!important;gap:0!important}
#app #profileSimulatorMount :is(.sim-hud-slot,.sim-tool-slot,.sim-lightstone-slot,.sim-crystal-slot,.sim-pet-slot,.sim-buff-category){width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;max-width:none!important;padding:4px!important;display:flex!important;align-items:center!important;justify-content:center!important;flex:0 0 48px!important;gap:0!important;transform:none!important;position:relative}
#app #profileSimulatorMount .sim-hud-slot-label{display:none!important}
#app #profileSimulatorMount .sim-hud-slot-art{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;flex:none!important}
#app #profileSimulatorMount .sim-hud-slot-art :is(img,svg,.sim-empty-glyph){width:32px!important;height:32px!important;max-width:32px!important;max-height:32px!important}
#app #profileSimulatorMount .sim-hud-slot-enhance{font-size:12px!important;line-height:16px!important;top:-4px!important;right:-4px!important;padding:0 4px!important}
#app #profileSimulatorMount .sim-artifacts-strip{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;width:100%;max-width:360px;margin:0 auto 16px}
#app #profileSimulatorMount .sim-artifact-group{position:static!important;display:grid!important;grid-template-columns:48px 48px!important;grid-template-rows:48px 48px!important;gap:8px!important;width:112px!important;height:112px!important;padding:4px!important;margin:0!important;grid-area:auto!important}
#app #profileSimulatorMount .sim-artifact-group>.sim-hud-slot{grid-column:1!important;grid-row:1/3!important;align-self:center!important;margin:0!important}
#app #profileSimulatorMount .sim-artifact-group .sim-lightstones{position:static!important;inset:auto!important;display:grid!important;grid-column:2!important;grid-row:1/3!important;grid-template-rows:48px 48px!important;gap:8px!important;width:48px!important;height:104px!important;margin:0!important;transform:none!important}
#app #profileSimulatorMount .sim-tool-strip{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:8px!important;width:100%!important;max-width:none!important;height:auto!important;margin:0 0 16px!important;grid-template-columns:none!important}
#app #profileSimulatorMount .sim-save-large{height:auto!important;min-height:44px!important;margin-top:8px!important;font-size:14px!important;line-height:20px!important;background:var(--ui-green)!important;color:#fffaf4!important;border-radius:8px!important}
#app #profileSimulatorMount #simLiveResult{width:100%!important;max-width:none!important;background:var(--ui-green-bg)!important;grid-area:auto!important}
#app #profileSimulatorMount .sim-live-head{display:flex;flex-direction:column;align-items:flex-start!important;gap:8px!important;min-height:0!important;margin-bottom:16px!important}
#app #profileSimulatorMount #simLiveTitle{font-size:16px!important;line-height:24px!important;white-space:normal!important}
#app #profileSimulatorMount .sim-live-values{display:grid!important;grid-template-columns:1fr!important;gap:16px!important}
#app #profileSimulatorMount .sim-live-values strong{font-size:32px!important;line-height:40px!important;color:var(--ui-green)!important}
#app #profileSimulatorMount .sim-live-values span{font-size:14px!important;line-height:20px!important;white-space:normal!important}
#app #profileSimulatorMount :is(.sim-live-details,.sim-result-details){font-size:14px!important;line-height:20px!important;min-height:44px!important;white-space:normal!important}
#app #profileSimulatorMount details>summary{cursor:pointer;min-height:44px;font-size:16px;line-height:24px;font-weight:600;color:var(--ui-ink)}
#app #profileSimulatorMount details>summary>span{font-size:12px;color:var(--ui-muted);font-weight:400;margin-left:8px}
#app #profileSimulatorMount .sim-disclosure-body{padding-top:16px}
#app #profileSimulatorMount .sim-crystal-grid{width:280px!important;height:280px!important;max-width:100%!important;aspect-ratio:1!important;margin:8px auto!important}
#app #profileSimulatorMount .sim-crystal-position{width:48px!important;height:48px!important}
#app #profileSimulatorMount .sim-crystal-bottom-bar{display:flex!important;flex-wrap:wrap;justify-content:center;gap:8px!important;width:100%!important;margin-top:16px!important;padding:16px 0 0!important}
#app #profileSimulatorMount .sim-crystal-extra-position{width:48px!important;max-width:none!important;height:48px!important}
#app #profileSimulatorMount .sim-pet-slots,#app #profileSimulatorMount .sim-buff-shortcuts{display:flex!important;flex-wrap:wrap!important;gap:8px!important;justify-content:flex-start!important;overflow:visible!important}
#app #profileSimulatorMount .sim-category-art,#app #profileSimulatorMount .sim-category-art :is(img,svg){width:32px!important;height:32px!important}
#app #profileSimulatorMount .sim-category-count{font-size:12px!important;line-height:16px!important;height:16px!important;min-width:16px!important}
#app #profileSimulatorMount #simAllResults .sim-exp-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}
#app #profileSimulatorMount #simAllResults .sim-exp-grid :is(span,strong){font-size:14px!important;line-height:20px!important}
#app #profileSimulatorMount #simAllResults .sim-result-expanded{padding-top:16px}
#app #profileSimulatorMount :is(.sim-picker,.sim-buff-picker,.sim-item-tooltip){font-size:14px!important;line-height:20px!important}
#app #profileSimulatorMount :is(.sim-picker-copy,.sim-buff-copy) strong{font-size:14px!important;line-height:20px!important}
#app #profileSimulatorMount :is(.sim-picker-copy,.sim-buff-copy) small{font-size:12px!important;line-height:16px!important}

/* Responsive changes are structural; hit targets and type never shrink. */
@media(max-width:1279px){
 #app #nav.nav.nav-tabs{flex-wrap:nowrap!important;justify-content:flex-start!important;overflow-x:auto!important;gap:8px!important}
 #app #view-recursos #resourcesBody{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 #app #view-oficinas .workshop-list-row{grid-template-columns:minmax(240px,2fr) minmax(120px,1fr) 72px 48px 152px!important}
 #app #view-trabalhadores .toolbar{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
#app #profileSimulatorMount[data-workspace=tablet] .sim-master-layout{grid-template-columns:minmax(0,1fr) 264px!important;grid-template-areas:'life life' 'equipment outcome' 'supplements supplements' 'allresults allresults'!important;gap:16px!important}
#app #profileSimulatorMount[data-workspace=tablet] .sim-life-card{display:grid;grid-template-columns:1fr 240px;gap:12px 16px}
#app #profileSimulatorMount[data-workspace=tablet] .sim-life-card .sim-block-title{grid-column:1;grid-row:1;margin-bottom:0!important}
#app #profileSimulatorMount[data-workspace=tablet] .sim-equipment-presets{grid-column:2;grid-row:1;margin-bottom:0!important}
#app #profileSimulatorMount[data-workspace=tablet] .sim-life-grid{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr))!important}
#app #profileSimulatorMount[data-workspace=mobile] .sim-master-layout{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:'life' 'live' 'equipment' 'supplements' 'allresults'!important;gap:16px!important}
#app #profileSimulatorMount[data-workspace=mobile] #simLiveResult{grid-area:live!important;position:static!important}
#app #profileSimulatorMount[data-workspace=mobile] .sim-live-head{flex-direction:row;justify-content:space-between;align-items:center!important;margin-bottom:8px!important}
#app #profileSimulatorMount[data-workspace=mobile] .sim-live-values{grid-template-columns:1fr 1fr!important}
#app #profileSimulatorMount[data-workspace=mobile] .sim-supplements{grid-template-columns:1fr!important}
#app #profileSimulatorMount[data-workspace=mobile] .sim-activity-toggle{display:flex!important;min-height:44px!important;font-size:14px!important}
#app #profileSimulatorMount[data-workspace=mobile] .sim-life-card:not(.is-activity-open) #simLifeGrid{display:none!important}
#app #profileSimulatorMount[data-workspace=mobile] .sim-life-card>.sim-block-title{display:none!important}
#app #profileSimulatorMount[data-workspace=mobile] #simAllResults .sim-exp-grid{grid-template-columns:1fr!important}
@media(max-width:767px){
 #app main{padding-top:16px!important}
 #app .topbar{margin-top:8px!important}
 #app .header-motion-toggle{left:8px;bottom:8px}
 #app #navAccount.header-account-overlay{right:8px!important;bottom:8px!important}
 #app .nav-account-name{max-width:108px!important}
 #app #nav.nav.nav-tabs>button:not(.hidden){padding:8px 12px!important}
 #app .page-title h1{font-size:24px!important;line-height:32px!important}
 #app .page-title>div:first-child{max-width:100%!important}
 #app :is(#view-zonas .zones-toolbar,#view-oficinas .workshop-toolbar,#view-recursos .toolbar,#view-trabalhadores .toolbar){grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
 #app .toolbar>*,#app #view-trabalhadores .toolbar>label:has(#workerSearch){grid-column:auto!important;grid-row:auto!important}
 #app .ui-mobile-disclosure>.ui-disclosure-fields{grid-template-columns:minmax(0,1fr)!important}
 #app #view-horta .farming-controls,#app .ui-farm-primary{grid-template-columns:minmax(0,1fr)!important}
 #app .ui-mobile-disclosure,#app #farmPremises{grid-column:1/-1!important}
 #app #view-inicio .hero-copy{grid-template-columns:1fr}
 #app #view-inicio .ui-home-status{grid-column:1;grid-row:2}
 #app #view-inicio .hero-copy>.actions{grid-column:1;grid-row:3;flex-wrap:wrap;margin-top:8px!important}
 #app #view-inicio .hero-copy>.actions .btn{flex:1}
 #app #view-inicio>.stats-grid,#app #view-trabalhadores .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}
 #app #view-inicio .stat{padding:8px!important}
 #app #worldMapSection .map-controls{justify-content:flex-start;gap:8px!important}
 #app #worldMapSection .map-controls>#bestRouteBtn{width:100%!important;order:-1;white-space:normal!important}
 #app #worldMapSection .map-heading-copy{flex-basis:100%}
 #app #bdoMap{height:480px!important;max-height:70svh!important;min-height:360px!important}
 #app #view-recursos #resourcesBody{grid-template-columns:minmax(0,1fr)!important}
 #app #view-horta .farming-highlight-stats{grid-template-columns:1fr!important;padding:16px!important;gap:24px!important}
 #app #view-oficinas .workshop-list-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:16px!important;gap:16px!important}
 #app #view-oficinas .workshop-project-lead{grid-column:1/-1!important}
 #app #view-oficinas .workshop-list-row>.workshop-list-action{grid-column:1/-1!important}
 #app #view-oficinas .workshop-list-row>[data-label="Oficina"]{grid-column:1/-1!important}
 #app #view-oficinas .workshop-expand{width:100%!important}
 #app :is(.zones-list-panel,.workers-list-panel,.farming-list-panel){max-height:70svh!important}
 #app #view-navegacao [role=tabpanel]{padding:16px!important}
 #app #navigationSectionNav{position:static;display:grid;grid-template-columns:1fr 1fr}
 #app #navigationSectionNav button{font-size:14px}
 #app #view-navegacao .navigation-barter-head{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto auto!important}
 #app #view-navegacao .navigation-barter-copy{grid-column:1!important;grid-row:1!important}
 #app #view-navegacao .navigation-barter-toolbar{grid-column:1!important;grid-row:2!important;grid-template-columns:minmax(0,1fr)!important}
 #app #view-navegacao .navigation-barter-side{grid-column:1!important;grid-row:3!important}
 #app #view-navegacao .navigation-barter-toolbar>.navigation-barter-clear-action{grid-column:1!important;grid-row:3!important}
 #app #navigationMyShip{width:100%!important}
 #app .ui-navigation-utilities{justify-content:flex-start}
 #app .ui-navigation-utilities .navigation-refresh-timers{gap:8px!important;flex-direction:column}
 #app #navBarterSummary .navigation-summary-chain{flex-direction:column;align-items:stretch}
 #app #navBarterSummary .navigation-summary-chain>i{transform:rotate(90deg);align-self:center}
 #app #profileSimulatorCard{padding:16px!important}
 #app #profileSimulatorMount .sim-equipment-panel{padding:16px!important}
 #app #profileSimulatorMount .sim-hud-grid{column-gap:8px!important}
 #app #profileSimulatorMount .sim-live-values strong{font-size:28px!important;line-height:32px!important}
 #app #profileSimulatorMount .sim-artifacts-strip{gap:8px}
 #app #profileSimulatorMount .sim-life-card .sim-equipment-presets{max-width:100%!important}
}

/* Map failures keep the recovery action and useful diagnostic together. */
#app #bdoMap .map-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px;color:#fff8e9;text-align:center;font-size:14px;line-height:1.5}
#app #bdoMap .map-error p{margin:0;max-width:640px}
#app #bdoMap .map-error details{max-width:640px;overflow-wrap:anywhere;text-align:left}
#app #bdoMap .map-error summary{cursor:pointer;padding:8px 0}

/* v1.4.120: Início e Meu perfil compartilham a geometria dos sub-headers. */
#view-inicio .page-title{background:linear-gradient(90deg,rgba(255,248,239,.02) 0%,rgba(255,248,239,.08) 22%,rgba(255,248,239,.74) 54%,rgba(255,248,239,.96) 100%),url("assets/headers/inicio-header.webp") left 30%/cover no-repeat!important}
:is(#view-perfil,#view-assinatura) .page-title{background:linear-gradient(90deg,rgba(255,248,239,.02) 0%,rgba(255,248,239,.08) 22%,rgba(255,248,239,.74) 54%,rgba(255,248,239,.96) 100%),url("assets/headers/perfil-header.webp") left 30%/cover no-repeat!important}

/* Editor fields retain a visible focus ring inside scrollable popovers. */
#app #profileSimulatorMount :is(.sim-picker,.sim-buff-picker) :is(input,select):focus-visible{outline-offset:-3px!important}



/* Profile and subscription subheaders share the incumbent page-title geometry. */
#view-assinatura .subscription-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.72fr);gap:20px;align-items:start}
#view-assinatura .subscription-main,#view-assinatura .subscription-side{display:grid;gap:20px;min-width:0}
#view-assinatura :is(.subscription-current-card,.subscription-checkout-card,.subscription-billing-card,.subscription-invoices-card,.subscription-status-card,.subscription-help-card){padding:22px!important}
#view-assinatura .subscription-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}
#view-assinatura .subscription-section-heading>div{min-width:0}
#view-assinatura :is(.subscription-section-heading,.subscription-status-card,.subscription-help-card) h2{margin:4px 0 0!important;font-size:19px!important;line-height:1.25!important;color:#5a3b26!important}
#view-assinatura :is(.subscription-section-heading,.subscription-status-card,.subscription-help-card) p{margin:4px 0 0!important;font-size:12px!important;line-height:1.45!important;color:#7b6958!important}
#view-assinatura .eyebrow{font-size:9.5px!important;line-height:1.2!important;letter-spacing:.08em!important}
#view-assinatura .subscription-plan-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
#view-assinatura .subscription-plan-summary>div{min-width:0;padding:16px;border:1px solid #d7c19d;border-radius:12px;background:linear-gradient(180deg,#fffdf9,#f3e6d3)}
#view-assinatura .subscription-plan-summary small,#view-assinatura .subscription-plan-summary span{display:block;color:#7b6958;font-size:11px;line-height:1.35}
#view-assinatura .subscription-plan-summary strong{display:block;margin:4px 0;color:#5a3b26;font-size:18px;line-height:1.2;font-variant-numeric:tabular-nums}
#view-assinatura .subscription-actions{margin-top:16px}
#view-assinatura .subscription-empty-state{padding:18px;border:1px dashed #cdb993;border-radius:12px;background:#fbf5eb;color:#5b4635}
#view-assinatura .subscription-empty-state strong{display:block;font-size:14px;line-height:1.4}
#view-assinatura .subscription-empty-state p{margin:6px 0 0;font-size:12px;line-height:1.5;color:#7b6958}
#view-assinatura .subscription-status-list{display:grid;gap:0;margin-top:16px;border-top:1px solid #e1d1b8}
#view-assinatura .subscription-status-list>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #e1d1b8;font-size:12px}
#view-assinatura .subscription-status-list span{color:#7b6958}
#view-assinatura .subscription-status-list strong{color:#5a3b26;text-align:right;font-variant-numeric:tabular-nums}
#view-perfil .profile-account-actions .profile-subscription-glow{order:-1}
#app .profile-identity-row{flex-wrap:wrap;gap:12px}
#app .profile-identity-row>div{flex:1;min-width:100px}
#app .profile-discord-btn{margin-left:auto;display:inline-flex;align-items:center;gap:8px;background:#5865f2!important;color:#fff!important;border-color:#4752c4!important;text-decoration:none;white-space:nowrap}
#app .profile-discord-btn[hidden]{display:none!important}
#app .profile-subscription-glow{position:relative;isolation:isolate;display:inline-flex;flex:none}
#app .profile-subscription-glow::before{content:"";position:absolute;inset:-9px -12px;z-index:-1;border-radius:16px;background:radial-gradient(ellipse,#fbc64bea 0%,#efbd4870 48%,transparent 74%);filter:blur(5px);opacity:.32;animation:pro-gold-light 2.6s ease-in-out infinite;pointer-events:none}
#app #profileSubscriptionBtn{position:relative;overflow:hidden;background:linear-gradient(110deg,#efc568,#fff0b4 52%,#e7b544)!important;color:#53330b!important;border-color:#b78928!important;font-weight:700}
#profileSubscriptionBtn::after{content:"";position:absolute;inset:-30% auto -30% -65%;width:35%;background:linear-gradient(90deg,transparent,#ffffffc0,transparent);transform:skewX(-18deg);animation:pro-gold-shimmer 3.8s ease-in-out infinite;pointer-events:none}
@keyframes pro-gold-light{0%,100%{opacity:.2}45%,60%{opacity:1}}
@keyframes pro-gold-shimmer{0%,15%{left:-65%}55%,100%{left:145%}}
#app .profile-subscription-glow.is-motion-paused::before,#app .profile-subscription-glow.is-motion-paused #profileSubscriptionBtn::after{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){#app .profile-subscription-glow::before,#profileSubscriptionBtn::after{animation:none}#app .profile-subscription-glow::before{opacity:.55}#profileSubscriptionBtn::after{display:none}}
#app .pro-unlock-btn{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,#fff8ec,#f5e4c5)!important;border-color:#d7a65a!important;color:#674719!important;text-decoration:none;box-shadow:0 3px 9px #8b64200d!important}
#app .pro-unlock-btn svg{width:18px;height:18px;flex:none}
#app .pro-unlock-btn span{min-width:0}
#view-assinatura .subscription-provider-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
#view-assinatura .subscription-provider-card{display:flex;flex-direction:column;gap:13px;min-width:0;padding:18px;border:1px solid #d7c19d;border-radius:14px;background:linear-gradient(180deg,#fffdf9,#f7ecdc)}
#view-assinatura .subscription-provider-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
#view-assinatura .subscription-provider-heading>div{display:grid;gap:3px;min-width:0}
#view-assinatura .subscription-provider-heading strong{font-size:16px;line-height:1.25;color:#5a3b26}
#view-assinatura .subscription-provider-heading span:not(.bdo-status-badge){font-size:11px;color:#7b6958}
#view-assinatura .subscription-provider-card>p{margin:0;font-size:12px;line-height:1.5;color:#6e5a4a}
#view-assinatura .subscription-provider-price{display:flex;align-items:baseline;gap:7px;padding-top:2px}
#view-assinatura .subscription-provider-price strong{font-size:21px;color:#5a3b26;font-variant-numeric:tabular-nums}
#view-assinatura .subscription-provider-price span{font-size:11px;color:#7b6958}
#view-assinatura .subscription-email-field{display:grid;gap:6px;font-size:11px;font-weight:700;color:#5a3b26}
#view-assinatura .subscription-email-field input,#view-assinatura .subscription-email-field select{width:100%;min-width:0}
#view-assinatura .subscription-email-field select{padding:10px;border:1px solid #bfa788;border-radius:6px;background:#fffdf8;color:#382618}
#view-assinatura .subscription-provider-card>.btn{width:100%;margin-top:auto}
#view-assinatura .subscription-provider-note{display:block;font-size:10.5px;line-height:1.45;color:#7b6958}
#view-assinatura .subscription-cycle-switch{display:flex;gap:8px;margin:-4px 0 14px}
#view-assinatura .subscription-cycle-switch .btn.active{background:#6d4b2e;color:#fff;border-color:#6d4b2e}
#view-assinatura .subscription-security-note{margin:14px 0 0;padding:12px 14px;border:1px solid #d9c8ab;border-radius:12px;background:#fbf5eb;font-size:11px;line-height:1.5;color:#6e5a4a}
#view-assinatura .subscription-invoice-list{display:grid;gap:8px}
#view-assinatura .subscription-invoice-row{display:grid;grid-template-columns:minmax(0,1.4fr) auto auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid #e1d1b8;border-radius:10px;background:#fffdf9;font-size:11px}
#view-assinatura .subscription-invoice-row strong{color:#5a3b26}
#view-assinatura .subscription-invoice-row span{color:#7b6958;font-variant-numeric:tabular-nums}
@media(max-width:980px){
  #view-assinatura .subscription-layout{grid-template-columns:1fr}
  #view-assinatura .subscription-side{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  #view-assinatura .subscription-plan-summary,#view-assinatura .subscription-side,#view-assinatura .subscription-provider-grid{grid-template-columns:1fr}
  #view-assinatura :is(.subscription-current-card,.subscription-checkout-card,.subscription-billing-card,.subscription-invoices-card,.subscription-status-card,.subscription-help-card){padding:16px!important}
  #view-assinatura .subscription-section-heading{align-items:flex-start;flex-direction:column}
  #view-assinatura .subscription-invoice-row{grid-template-columns:1fr;gap:5px}
}



#app #view-oficinas .workshop-toolbar{grid-template-columns:minmax(240px,1fr) auto auto!important}
#app #view-oficinas .workshop-toolbar>.workshop-search{grid-column:1!important;grid-row:1!important}
#app #view-oficinas #workshopAdvancedFilters,#app #view-oficinas #workshopAdvancedFilters::details-content{display:contents!important}
#app #view-oficinas #workshopAdvancedFilters>summary{grid-column:2!important;grid-row:1!important;align-self:end!important;min-height:44px!important;margin:0!important}
#app #view-oficinas .workshop-toolbar>.btn{grid-column:3!important;grid-row:1!important;align-self:end!important}
#app #view-oficinas #workshopAdvancedFilters .ui-disclosure-fields{grid-column:1/-1!important;grid-row:2!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media(max-width:760px){
 #app #view-oficinas .workshop-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 #app #view-oficinas .workshop-toolbar>.workshop-search{grid-column:1/-1!important}
 #app #view-oficinas #workshopAdvancedFilters>summary{grid-column:1!important;grid-row:2!important}
 #app #view-oficinas .workshop-toolbar>.btn{grid-column:2!important;grid-row:2!important}
 #app #view-oficinas #workshopAdvancedFilters .ui-disclosure-fields{grid-row:3!important;grid-template-columns:minmax(0,1fr)!important}
}

.resource-name-line{display:flex;align-items:flex-start;gap:8px}.resource-name-line h2{flex:1;min-width:0;overflow-wrap:anywhere}.resource-card-header>div{flex:1;min-width:0}
.resource-favorite-btn{flex:none;width:44px;min-height:44px}.resource-alert-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:16px 0 8px}.resource-favorites-filter{display:flex;align-items:center;gap:8px;min-height:44px}.resource-alert-controls>span{flex:1;min-width:180px}
#app .resource-favorites-filter input[type=checkbox]{box-sizing:border-box!important;width:16px!important;min-width:16px!important;max-width:16px!important;height:16px!important;min-height:16px!important;max-height:16px!important;flex:0 0 16px!important;aspect-ratio:1;border-radius:50%!important;margin:0!important;padding:0!important}
#app .resource-favorites-filter.check{border:0!important;background:none!important;box-shadow:none!important;border-radius:0!important}
#app .resource-favorites-filter input[type=checkbox]:checked{background:radial-gradient(circle at center,#8fbc4c 0 34%,#f8f1e6 35% 100%)!important;border-color:#5d7f33!important;box-shadow:0 0 0 3px rgba(118,162,63,.18),0 0 12px rgba(118,162,63,.48),inset 0 0 0 2px rgba(255,255,255,.46)!important}
#app .resource-favorites-filter input:focus-visible{outline:3px solid #557336;outline-offset:4px}
.resource-alert-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.resource-alert-actions .btn{min-height:44px;margin:0!important}
.resource-restock-alerts:empty{display:none}.resource-restock-alerts{display:grid;gap:8px;margin-bottom:16px}.resource-restock-alerts p{display:flex;align-items:center;gap:12px;margin:0;padding:12px 16px;border-radius:12px;background:#eaf1df;color:#2d491b}.resource-restock-alerts p span{flex:1;min-width:0;overflow-wrap:anywhere}.resource-restock-alerts button{min-width:44px;min-height:44px}.resource-alert-controls .btn:focus-visible,.resource-favorite-btn:focus-visible{outline:3px solid #557336;outline-offset:3px}
@media(max-width:480px){.resource-alert-controls>span{flex-basis:100%}.resource-alert-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.resource-alert-actions .btn{width:100%;white-space:normal}}
