/* EEMS – powłoka nad interfejsem ThingsBoard (serwowana przez tb-proxy jako /eems-shell.css; logika: eems-shell.js).
   Klasy na <html>: eems-shell-app (tryb EEMS, domyślny) | eems-shell-admin (Panel administracyjny),
   eems-shell-start (strona startowa panelu admina). Selektory interfejsu TB 4.3. */

/* eems-theme:begin — generowane z tb/theme.py (python tb/theme.py --write-shell), nie edytować ręcznie */
:root { --eems-brand: #318F4D; --eems-brand-dark: #1E7A35; --eems-brand-text: #14532D; --eems-brand-wash: #E6F2E8; --eems-navy: #2F4F7F; --eems-bg: #F4F6F5; --eems-card: #FFFFFF; --eems-border: #E4E7E5; --eems-text: #27272A; --eems-text2: #52525B; --eems-muted: #9CA3AF; --eems-pv: #F9A825; --eems-load: #1565C0; --eems-grid: #455A64; --eems-grid-export: #90A4AE; --eems-battery: #00897B; --eems-rdn: #7B1FA2; --eems-rce: #AD1457; --eems-temp: #EF6C00; --eems-ok: #2E9E48; --eems-warn: #EF6C00; --eems-warn-text: #B26A00; --eems-crit: #C62828; --eems-nodata: #9CA3AF; --eems-radius: 12px; }
/* eems-theme:end */

/* --- system wizualny (etap 10): jeden granat górnego paska (zamiast domyślnego niebieskiego TB), tło aplikacji, cyfry tabelaryczne --- */
tb-home mat-toolbar.mat-primary, tb-home .mat-toolbar.mat-primary { background-color: var(--eems-navy) !important; }
tb-home mat-fab-toolbar .mat-fab-toolbar-background, tb-home mat-fab-toolbar .mat-fab-toolbar-wrapper { background-color: var(--eems-navy) !important; }
tb-home .tb-dashboard-page, tb-home tb-dashboard-page .tb-dashboard-container { background-color: var(--eems-bg); }
tb-home { font-variant-numeric: tabular-nums; }

/* --- tryb EEMS: bez bocznego menu TB, treść na pełnej szerokości --- */
html.eems-shell-app tb-home mat-sidenav.tb-site-sidenav,
html.eems-shell-app tb-home .mat-drawer-backdrop,
html.eems-shell-app tb-home mat-toolbar.tb-primary-toolbar > button#main { display: none !important; }
html.eems-shell-app tb-home mat-sidenav-content { margin-left: 0 !important; }
/* okruszki: zostaje tylko bieżąca pozycja (linki nadrzędne, np. „Panele”, prowadziłyby na listy TB bez menu) */
html.eems-shell-app tb-home .tb-breadcrumb > span:has(> a) { display: none !important; }

/* logo EcoReg w górnym pasku (w trybie admina logo jest w menu TB) */
#eems-shell-logo { display: none; align-items: center; flex: none; margin: 0 4px 0 8px; cursor: pointer; text-decoration: none;
  border: none !important; background: none !important; }
#eems-shell-logo img { height: 36px; display: block; }
html.eems-shell-app #eems-shell-logo { display: flex; }
@media (max-width: 599px) {
  /* plik logo ma szerokie marginesy (proporcje logo TB): na telefonie przycięty do samego znaku */
  #eems-shell-logo { margin: 0 6px 0 2px; }
  #eems-shell-logo img { height: 30px; width: 80px; object-fit: cover; }
}

/* --- Panel administracyjny: pasek nad górnym paskiem TB --- */
#eems-shell-adminbar { display: none; flex: none; align-items: center; gap: 10px; box-sizing: border-box; min-height: 34px;
  padding: 4px 12px; background: var(--eems-warn-text); color: #fff; font: 500 13px/1.2 Roboto, "Helvetica Neue", sans-serif; z-index: 3; }
html.eems-shell-admin #eems-shell-adminbar { display: flex; }
#eems-shell-adminbar .material-icons { font-size: 18px; width: 18px; height: 18px; flex: none; }
#eems-shell-adminbar .eems-shell-adminbar-text { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#eems-shell-adminbar .eems-shell-adminbar-hint { font-weight: 400; opacity: 0.9; }
#eems-shell-adminbar button { flex: none; display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 4px;
  border: 1px solid rgba(255, 255, 255, 0.7); background: transparent; color: #fff; font: inherit; cursor: pointer; white-space: nowrap; }
#eems-shell-adminbar button:hover, #eems-shell-adminbar button:focus-visible { background: rgba(255, 255, 255, 0.18); }
#eems-shell-adminbar button.eems-shell-exit { background: #fff; color: #7A4900; border-color: #fff; font-weight: 600; }
#eems-shell-adminbar button.eems-shell-exit:hover, #eems-shell-adminbar button.eems-shell-exit:focus-visible { background: #FFF3E0; }
@media (max-width: 599px) {
  #eems-shell-adminbar .eems-shell-adminbar-hint, #eems-shell-adminbar button.eems-shell-home span:last-child { display: none; }
  #eems-shell-adminbar button.eems-shell-home { padding: 4px 6px; }
}

/* --- strona startowa panelu admina (kafelki grup) — zasłania dashboard domowy pod /home --- */
#eems-shell-start { display: none; position: absolute; inset: 0; z-index: 70; overflow: auto; box-sizing: border-box; padding: 20px 24px 32px;
  background: var(--eems-bg); color: var(--eems-text); font: 400 14px/1.35 Roboto, "Helvetica Neue", sans-serif; }
html.eems-shell-admin.eems-shell-start tb-home .tb-main-content { position: relative; }
html.eems-shell-admin.eems-shell-start #eems-shell-start { display: block; }
#eems-shell-start h1 { margin: 0 0 6px; padding: 0; font: 600 22px/1.3 Roboto, "Helvetica Neue", sans-serif; letter-spacing: normal; color: var(--eems-brand-text); }
#eems-shell-start p { margin: 0 0 18px; padding: 0; font: 400 14px/1.45 Roboto, "Helvetica Neue", sans-serif; letter-spacing: normal; color: var(--eems-text2); max-width: 860px; }
.eems-shell-tiles { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 16px; }
.eems-shell-tile { background: #fff; border: 1px solid var(--eems-border); border-radius: var(--eems-radius); padding: 14px 14px 10px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); }
.eems-shell-tile h2 { display: flex; align-items: center; gap: 8px; margin: 0 0 8px; padding: 0; font: 600 15px/1.3 Roboto, "Helvetica Neue", sans-serif;
  letter-spacing: normal; color: var(--eems-brand-dark); }
.eems-shell-tile h2 .material-icons { font-size: 22px; width: 22px; height: 22px; }
.eems-shell-tile a { display: block; padding: 6px 8px; border-radius: 6px; border: none !important; color: var(--eems-text); font-size: 14px; font-weight: 400;
  text-decoration: none !important; cursor: pointer; }
.eems-shell-tile a:hover, .eems-shell-tile a:focus-visible { background: var(--eems-brand-wash); color: var(--eems-brand-text); }
@media (max-width: 599px) {
  #eems-shell-start { padding: 14px 12px 24px; }
  .eems-shell-tile a { padding: 10px 8px; }
}
