*{box-sizing:border-box}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;margin:0;background:#f3f5f7;color:#1f2933}.wrap{max-width:1120px;margin:28px auto;padding:0 18px}.card{background:#fff;border:1px solid #d9e2ec;border-radius:14px;box-shadow:0 8px 24px rgba(15,23,42,.06);padding:24px;margin-bottom:20px}h1,h2,h3{margin-top:0}.muted{color:#66788a}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}label{font-weight:650;display:block;margin-bottom:6px}input,select,textarea{width:100%;padding:11px 12px;border:1px solid #bcccdc;border-radius:10px;font:inherit;background:#fff}textarea{min-height:84px}.btn{display:inline-block;border:0;border-radius:7px;background:#0b83e6;color:#fff;padding:11px 18px;font-weight:700;text-decoration:none;cursor:pointer}.btn.secondary{background:#52606d}.btn.danger{background:#d64545}.btn.good{background:#14853d}.btn.light{background:#e4e7eb;color:#1f2933}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.notice{border-left:4px solid #0b83e6;background:#eef8ff;padding:12px 14px;border-radius:10px}.warning{border-left:4px solid #d64545;background:#fff5f5;padding:12px 14px}.success{border-left:4px solid #14853d;background:#f0fff4;padding:12px 14px;border-radius:10px}.topbar{background:#102a43;color:#fff;padding:16px 0}.topbar .wrap{margin:0 auto;display:flex;justify-content:space-between;align-items:center}.topbar a{color:#fff;text-decoration:none;margin-left:14px;font-weight:650}.block{border:1px solid #d9e2ec;border-radius:14px;padding:18px;margin:18px 0;background:#fbfdff}.block-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.block-title{font-size:1.05rem;font-weight:800}.small{font-size:.9rem}.danger-text{color:#9b1c1c}.summary{font-weight:800}table{width:100%;border-collapse:collapse;background:#fff}th,td{border-bottom:1px solid #e4e7eb;padding:10px;text-align:left;vertical-align:top}th{background:#f8fafc;font-weight:800}@media(max-width:760px){.grid,.grid3{grid-template-columns:1fr}.topbar .wrap{display:block}.topbar a{display:inline-block;margin:8px 12px 0 0}.card{padding:18px}.block-head{display:block}.block-head .actions{margin-top:10px}}

/* v2.1: összecsukható tevékenységblokkok és böngészős piszkozatmentés */
.block-head{align-items:flex-start}.block-toggle{border:0;background:#e4e7eb;color:#1f2933;border-radius:7px;width:38px;height:38px;font-size:15px;font-weight:800;cursor:pointer;flex:0 0 auto}.block-heading-main{flex:1;min-width:220px}.block-summary{margin-top:4px;line-height:1.35}.block[data-collapsed="true"]{background:#f8fafc}.block[data-collapsed="true"] .block-head{margin-bottom:0}.block-body[hidden]{display:none}.draft-status{margin:-4px 0 16px 0;padding:10px 12px;border-radius:10px;background:#f8fafc;border:1px solid #e4e7eb}.draft-status.success{border-color:#9ae6b4;background:#f0fff4;color:#22543d}.draft-status.error{border-color:#feb2b2;background:#fff5f5;color:#742a2a}.draft-status.info{border-color:#bee3f8;background:#ebf8ff;color:#2a4365}.draft-actions .muted{max-width:520px}.block-actions{justify-content:flex-end}@media(max-width:760px){.block-head{display:grid;grid-template-columns:38px 1fr;gap:10px}.block-actions{grid-column:1 / -1;justify-content:flex-start}.draft-actions .muted{display:block;width:100%}}

/* v2.2: fő blokkok, megszakítások, automatikus időösszesítés */
.daily-summary{margin:22px 0;padding:16px;border:1px solid #bee3f8;background:#f0f9ff;border-radius:12px}.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 18px;margin-top:12px}.interruptions-section{margin-top:22px;padding-top:18px;border-top:2px solid #e4e7eb}.interruptions-head{display:flex;justify-content:space-between;gap:16px;align-items:center}.interruption{margin-top:14px;padding:14px;border:1px dashed #9fb3c8;border-radius:12px;background:#f8fafc}.interruption-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.btn.compact{padding:7px 11px;font-size:.84rem}.warning ul{margin-bottom:0}.block select[data-name="work_mode"]{font-weight:650}@media(max-width:760px){.summary-grid{grid-template-columns:1fr}.interruptions-head{display:block}.interruptions-head .btn{margin-top:10px}}

/* v2.3: napi admin dashboard */
.admin-title-row{display:flex;justify-content:space-between;gap:20px;align-items:flex-end}.date-filter{display:flex;gap:8px;align-items:flex-end}.date-filter label{margin:0}.date-filter input{width:auto}.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:22px}.kpi{border:1px solid #d9e2ec;background:#f8fafc;border-radius:12px;padding:14px}.kpi span{display:block;color:#66788a;font-size:.85rem;margin-bottom:6px}.kpi strong{font-size:1.35rem}.kpi-alert{border-color:#feb2b2;background:#fff5f5}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px}.table-scroll{overflow-x:auto}.inline-form{display:flex;gap:8px;min-width:270px}.inline-form input{min-width:160px}.metric-list{list-style:none;padding:0;margin:0}.metric-list li{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #e4e7eb;padding:10px 0}.result-list{display:grid;gap:10px}.result-item{border-left:4px solid #0b83e6;background:#f8fafc;padding:12px 14px;border-radius:8px}.result-item p{margin:6px 0 0}.new-row{background:#f0fff4}table input[type="checkbox"]{width:20px;height:20px}@media(max-width:980px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1fr}}@media(max-width:760px){.admin-title-row{display:block}.date-filter{margin-top:16px;align-items:flex-end}.kpi-grid{grid-template-columns:repeat(2,1fr)}}

/* v2.4: hitelesítés és egységes, legfeljebb 7 px-es gombsarkok */
.btn,.block-toggle,button,input[type="button"],input[type="submit"]{border-radius:7px!important}.auth-wrap{max-width:520px}.auth-card{margin-top:8vh}.auth-card input{margin-top:4px}.topbar nav span{color:#d9e2ec;margin-right:12px}.user-row-form{display:grid;grid-template-columns:minmax(130px,1fr) 130px auto auto;gap:8px;align-items:center}.inline-reset-form{display:inline-block;margin-top:7px}.check-inline{display:flex;align-items:center;gap:6px;margin:0;white-space:nowrap}.check-inline input{width:18px;height:18px}.notice code{font-size:1.05rem;font-weight:800}@media(max-width:760px){.user-row-form{grid-template-columns:1fr}.topbar nav span{display:block;margin-top:8px}}

/* v2.5.1: adminfülek és helyben maradó mentés */
.admin-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px}.admin-tab{display:inline-flex;align-items:center;gap:7px;padding:10px 14px;border:1px solid #bcccdc;border-radius:7px;background:#fff;color:#243b53;text-decoration:none;font-weight:750}.admin-tab:hover{background:#f8fafc}.admin-tab.active{background:#102a43;color:#fff;border-color:#102a43}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:7px;background:#d64545;color:#fff;font-size:.78rem}.admin-panel{scroll-margin-top:18px}.sticky-save{position:sticky;bottom:0;display:flex;justify-content:flex-end;margin:18px -24px -24px;padding:14px 24px;background:rgba(255,255,255,.96);border-top:1px solid #d9e2ec;backdrop-filter:blur(4px)}.hidden-form{display:none}.admin-flash{transition:opacity .35s ease}.admin-flash.fade-out{opacity:.25}@media(max-width:760px){.admin-tabs{display:grid;grid-template-columns:1fr 1fr}.admin-tab{justify-content:center;text-align:center}.sticky-save{margin:18px -18px -18px;padding:12px 18px}}

/* v2.6: gyorsabb, pontosabb tevékenységrögzítés */
.field-help{display:block;margin-top:4px;color:#66788a;font-size:.82rem;font-weight:450;line-height:1.35}.choice-group{padding:14px;border:1px solid #d9e2ec;background:#f8fafc;border-radius:10px}.segmented{display:flex;gap:10px;flex-wrap:wrap}.segmented label{display:flex;align-items:center;gap:7px;margin:0;padding:10px 12px;border:1px solid #bcccdc;border-radius:7px;background:#fff;cursor:pointer}.segmented input{width:auto}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.check-card{display:flex;align-items:flex-start;gap:8px;padding:9px 10px;border:1px solid #d9e2ec;border-radius:7px;background:#f8fafc;font-weight:550}.check-card input{width:18px;margin-top:2px}.category-details,.results-section,.evidence-section,.interruptions-section{margin-top:22px;padding-top:18px;border-top:2px solid #e4e7eb}.section-head{display:flex;justify-content:space-between;gap:16px;align-items:center}.subitem{margin-top:12px;padding:14px;border:1px solid #cbd5e1;border-radius:9px;background:#fbfdff}.subitem-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.focus-prompt{position:fixed;inset:0;background:rgba(15,23,42,.58);z-index:999;display:flex;align-items:center;justify-content:center;padding:20px}.focus-prompt[hidden]{display:none}.focus-prompt-card{width:min(620px,100%);background:#fff;border-radius:12px;padding:22px;box-shadow:0 22px 60px rgba(0,0,0,.25)}.focus-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.focus-options button{border:1px solid #bcccdc;border-radius:7px;background:#f8fafc;padding:12px;text-align:left;font-weight:700;cursor:pointer}.focus-options button:hover{background:#eaf4fb}.long-warning{margin-top:8px}.narrow{max-width:680px}@media(max-width:920px){.grid4{grid-template-columns:1fr 1fr}}@media(max-width:760px){.check-grid,.focus-options,.grid4{grid-template-columns:1fr}.section-head{align-items:flex-start;display:block}.section-head .btn{margin-top:10px}}
/* v2.6.2 saját összesítő */
.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin:18px 0}.summary-card{background:#fff;border:1px solid #dbe4ef;border-radius:7px;padding:16px}.summary-card span{display:block;color:#607087;font-size:.88rem;margin-bottom:7px}.summary-card strong{font-size:1.25rem}.report-filter{max-width:300px;margin-top:18px}.report-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #e1e7ef;padding:10px 8px}th{font-size:.9rem;color:#46566c}@media(max-width:760px){.report-columns{grid-template-columns:1fr}.page-heading .actions{width:100%}}

/* v2.7.1 gyors űrlap */
[hidden]{display:none!important}
.optional-tag{font-size:.74rem;font-weight:600;color:#64748b;background:#eef2f7;border-radius:5px;padding:2px 6px;vertical-align:middle}
.microtask-row{display:grid;grid-template-columns:minmax(160px,.7fr) minmax(280px,1.8fr) auto;gap:10px;align-items:end;margin-top:10px;padding:12px;border:1px solid #d9e2ec;border-radius:7px;background:#fbfdff}
.microtask-remove{margin-bottom:0}
@media(max-width:760px){.microtask-row{grid-template-columns:1fr}.microtask-remove{justify-self:start}}


/* integrált szabadságmodul – első frissítés */
.leave-balance{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}.leave-balance>div{border:1px solid #d9e2ec;border-radius:8px;padding:14px;background:#f8fafc}.leave-balance span{display:block;color:#66788a;font-size:.85rem}.leave-balance strong{font-size:1.4rem}.leave-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:16px}.leave-card{border:1px solid #d9e2ec;border-radius:10px;padding:16px;background:#fff}.status-chip{display:inline-block;padding:5px 9px;border-radius:7px;font-weight:800;font-size:.82rem}.status-chip.good{background:#e3fcef;color:#0f6b2f}.status-chip.warn{background:#fff3cd;color:#7a5700}.status-chip.danger{background:#ffe3e3;color:#9b1c1c}.approval-row{display:flex;gap:10px;align-items:center;margin:10px 0}.approval-dot{width:30px;height:30px;border-radius:50%;border:2px solid #bcccdc;display:inline-flex;align-items:center;justify-content:center;font-weight:900}.approval-dot.ok{background:#14853d;border-color:#14853d;color:#fff}.approval-dot.no{background:#d64545;border-color:#d64545;color:#fff}@media(max-width:700px){.leave-balance{grid-template-columns:1fr}.leave-card-grid{display:block}.leave-card{margin-bottom:14px}}


/* v2.8 – közös navigáció és világos/sötét/automatikus megjelenés */
:root,
html[data-theme="light"]{
  color-scheme:light;
  --page-bg:#f3f6f9;
  --surface:#ffffff;
  --surface-soft:#f8fafc;
  --surface-raised:#ffffff;
  --text:#1f2933;
  --muted-theme:#66788a;
  --border-theme:#d9e2ec;
  --input-bg:#ffffff;
  --header-bg:#102a43;
  --header-text:#ffffff;
  --link-theme:#0b69a3;
  --shadow-theme:0 8px 24px rgba(15,23,42,.07);
}

html[data-theme="dark"]{
  color-scheme:dark;
  --page-bg:#0f1720;
  --surface:#17212b;
  --surface-soft:#1d2935;
  --surface-raised:#202d39;
  --text:#edf2f7;
  --muted-theme:#aebdca;
  --border-theme:#334657;
  --input-bg:#111b24;
  --header-bg:#09131d;
  --header-text:#f8fafc;
  --link-theme:#73c7ff;
  --shadow-theme:0 10px 28px rgba(0,0,0,.28);
}

html,body{background:var(--page-bg);color:var(--text)}
body{transition:background-color .15s ease,color .15s ease}
.card,.leave-card,.summary-card,.block,.subitem,.interruption,.request-card{
  background:var(--surface);
  color:var(--text);
  border-color:var(--border-theme);
  box-shadow:var(--shadow-theme);
}
.muted,.field-help,.small,.summary-card span,.leave-balance span{color:var(--muted-theme)}
input,select,textarea{
  background:var(--input-bg);
  color:var(--text);
  border-color:var(--border-theme);
}
table,th,td{border-color:var(--border-theme)}
th{color:var(--muted-theme)}
.notice,.choice-group,.check-card,.daily-summary,.leave-balance>div,.kpi,.result-item,.approval-step{
  background:var(--surface-soft);
  color:var(--text);
  border-color:var(--border-theme);
}
a{color:var(--link-theme)}
.topbar.app-header{background:var(--header-bg);color:var(--header-text)}
.app-header-inner{display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand-link{color:var(--header-text)!important;text-decoration:none}
.app-navigation{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.app-navigation .nav-link{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:var(--header-text);
  text-decoration:none;
  padding:8px 10px;
  border-radius:7px;
  font-weight:700;
}
.app-navigation .nav-link:hover,.app-navigation .nav-link.active{
  background:rgba(255,255,255,.14);
}
.nav-user{color:#d9e2ec;margin-right:5px;font-weight:650}
.nav-badge{
  min-width:21px;height:21px;padding:0 6px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:7px;background:#d64545;color:white;font-size:.75rem
}
.theme-control{margin:0}
.theme-control select{
  width:auto;min-height:36px;padding:6px 28px 6px 9px;
  border-radius:7px;background:rgba(255,255,255,.1);
  color:var(--header-text);border-color:rgba(255,255,255,.25)
}
.theme-control select option{color:#111;background:#fff}
.mobile-nav-toggle{
  display:none;border:1px solid rgba(255,255,255,.3);
  background:transparent;color:var(--header-text);
  padding:8px 11px;border-radius:7px;font-weight:800
}
.sr-only{
  position:absolute!important;width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;overflow:hidden!important;
  clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important
}

html[data-theme="dark"] .warning{background:#4a3512;color:#ffe2a8;border-color:#7d5a20}
html[data-theme="dark"] .success{background:#123824;color:#b9f6cf;border-color:#286746}
html[data-theme="dark"] .notice{background:#172f43;color:#cbe9ff;border-color:#315d7d}
html[data-theme="dark"] .btn.light{background:#253544;color:#edf2f7;border-color:#435769}
html[data-theme="dark"] .admin-tab{background:var(--surface);color:var(--text);border-color:var(--border-theme)}
html[data-theme="dark"] .admin-tab.active{background:#315f83;color:white}
html[data-theme="dark"] .topbar nav span{color:#c2d0dc}

@media(max-width:1050px){
  .app-header-inner{align-items:flex-start;flex-wrap:wrap}
  .mobile-nav-toggle{display:block}
  .app-navigation{
    display:none;width:100%;align-items:stretch;justify-content:flex-start;
    padding-top:9px
  }
  .app-navigation.open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .app-navigation .nav-link,.nav-user,.theme-control{width:100%}
  .theme-control select{width:100%}
  .nav-user{grid-column:1/-1;padding:5px 3px}
}
@media(max-width:560px){
  .app-navigation.open{grid-template-columns:1fr}
}


/* v2.8.1 – sötét mód táblázat- és státuszkontraszt javítás */
html[data-theme="dark"] table{
  background:var(--surface) !important;
  color:var(--text) !important;
}

html[data-theme="dark"] thead,
html[data-theme="dark"] th{
  background:#223140 !important;
  color:#dbe7f1 !important;
  border-color:var(--border-theme) !important;
}

html[data-theme="dark"] tbody,
html[data-theme="dark"] tr,
html[data-theme="dark"] td{
  background:var(--surface) !important;
  color:var(--text) !important;
  border-color:var(--border-theme) !important;
}

html[data-theme="dark"] tbody tr:nth-child(even) td{
  background:#1a2631 !important;
}

html[data-theme="dark"] tbody tr:hover td{
  background:#243443 !important;
}

html[data-theme="dark"] code{
  color:#d8e7f4;
  background:#111b24;
  border:1px solid var(--border-theme);
  border-radius:5px;
  padding:2px 5px;
}

html[data-theme="dark"] .status-chip.good{
  background:#173d29 !important;
  color:#b8f3cf !important;
  border:1px solid #2f6f4a;
}

html[data-theme="dark"] .status-chip.warn{
  background:#4a3512 !important;
  color:#ffe1a3 !important;
  border:1px solid #7f5c20;
}

html[data-theme="dark"] .status-chip.bad{
  background:#4a1e22 !important;
  color:#ffc4ca !important;
  border:1px solid #7b343b;
}

html[data-theme="dark"] .table-wrap{
  border:1px solid var(--border-theme);
  border-radius:8px;
  overflow:auto;
}


/* v3.0 – szabadságdokumentumok, értesítési napló */
.leave-documents{
  margin:14px 0;
  padding-top:12px;
  border-top:1px solid var(--border-theme,#d9e2ec);
}
.leave-document-row{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  padding:12px;
  margin-top:8px;
  border:1px solid var(--border-theme,#d9e2ec);
  border-radius:8px;
  background:var(--surface-soft,#f8fafc);
}
.leave-document-row .actions{
  margin:0;
  min-width:170px;
}
.notification-details{
  margin:12px 0;
  padding:10px;
  border:1px solid var(--border-theme,#d9e2ec);
  border-radius:8px;
}
.notification-details summary{
  cursor:pointer;
  font-weight:800;
}
.notification-details>div{
  margin-top:7px;
}
pre{
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
@media(max-width:680px){
  .leave-document-row{
    display:block;
  }
  .leave-document-row .actions{
    min-width:0;
    width:100%;
    margin-top:10px;
  }
}


/* v4.0 – saját profil, partner és szabadságkorrekció */
.profile-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.period-form{display:flex;gap:8px;flex-wrap:wrap}
.period-form select{width:auto}
.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.profile-data{display:grid;grid-template-columns:minmax(140px,1fr) 2fr;gap:10px 14px}
.profile-data dt{font-weight:800;color:var(--muted-theme)}
.profile-data dd{margin:0}
.profile-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.profile-kpis>div{background:var(--surface-soft);border:1px solid var(--border-theme);border-radius:8px;padding:12px}
.profile-kpis span{display:block;color:var(--muted-theme);font-size:.82rem;margin-bottom:5px}
.profile-kpis strong{font-size:1.25rem}
.compact-kpis{margin:14px 0}
.adjustment-form{margin-top:14px;padding-top:14px;border-top:1px solid var(--border-theme)}
.result-list{display:grid;gap:10px}
.result-item{padding:12px;border:1px solid var(--border-theme);border-radius:8px;background:var(--surface-soft)}
.result-item p{margin-bottom:0}
textarea[data-dictation="true"]{min-height:110px}
@media(max-width:780px){
  .profile-grid{grid-template-columns:1fr}
  .profile-hero{display:block}
  .period-form{margin-top:12px}
  .profile-data{grid-template-columns:1fr}
}


/* v4.1 – partner logika + sötét téma kontrasztjavítás */
.grid-2{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.stack-form{display:grid;gap:14px}
.small{font-size:.92rem}
.muted{color:var(--muted-theme)}
/* javítás a tevékenység-időrögzítési választókhoz és hasonló option chipekhez */
.choice-chip,
.choice-card,
.segmented-option,
label.option-card,
label.radio-card,
.mode-card,
.time-entry-mode label,
.time-mode label,
.recording-mode label,
input[type="radio"] + label,
input[type="checkbox"] + label.choice-card{
  color:var(--text-theme) !important;
}
.choice-chip *,
.choice-card *,
.segmented-option *,
label.option-card *,
label.radio-card *,
.mode-card *,
.time-entry-mode label *,
.time-mode label *,
.recording-mode label *{
  color:inherit !important;
}
.card input[type="radio"],
.card input[type="checkbox"]{
  accent-color: var(--accent-theme);
}
.theme-dark .choice-chip,
.theme-dark .choice-card,
.theme-dark .segmented-option,
.theme-dark label.option-card,
.theme-dark label.radio-card,
.theme-dark .mode-card,
.theme-dark .time-entry-mode label,
.theme-dark .time-mode label,
.theme-dark .recording-mode label{
  background:rgba(255,255,255,.06) !important;
  border-color:rgba(255,255,255,.18) !important;
  color:#f5f7fb !important;
}
.theme-dark .choice-chip.is-active,
.theme-dark .choice-card.is-active,
.theme-dark label.option-card.active,
.theme-dark label.radio-card.active,
.theme-dark .mode-card.active{
  background:rgba(93, 188, 255, .16) !important;
  border-color:rgba(93,188,255,.42) !important;
  color:#ffffff !important;
}
@media(max-width:780px){
  .grid-2{grid-template-columns:1fr}
}


/* v4.1.1 – célzott sötét téma javítás a .segmented időrögzítési választókhoz */
.choice-group > label{
  color:var(--text-theme);
  font-weight:800;
}
.segmented label{
  color:#243447;
  background:#ffffff;
  border:1px solid #bcccdc;
}
.segmented label *,
.segmented label input{
  color:inherit;
}
.theme-dark .choice-group{
  background:rgba(255,255,255,.04) !important;
  border-color:rgba(255,255,255,.12) !important;
}
.theme-dark .choice-group > label{
  color:#f8fafc !important;
}
.theme-dark .field-help{
  color:#c7d2de !important;
}
.theme-dark .segmented label{
  background:rgba(255,255,255,.08) !important;
  border-color:rgba(255,255,255,.18) !important;
  color:#f5f7fb !important;
  box-shadow:none !important;
}
.theme-dark .segmented label *{
  color:inherit !important;
}
.theme-dark .segmented label:hover{
  background:rgba(255,255,255,.11) !important;
  border-color:rgba(255,255,255,.26) !important;
}


/* v5.0 – Mediapartizan Workspace navigáció */
:root{
  --workspace-topbar-height:64px;
  --workspace-sidebar-width:270px;
}
body{
  margin:0;
}
.workspace-topbar{
  position:sticky;
  top:0;
  z-index:1100;
  height:var(--workspace-topbar-height);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:0 18px;
  background:var(--header-bg);
  color:var(--header-text);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.workspace-brand-row{
  display:flex;
  align-items:center;
  gap:12px;
}
.workspace-brand{
  display:flex;
  flex-direction:column;
  text-decoration:none;
  color:var(--header-text)!important;
  line-height:1.05;
}
.workspace-brand-main{
  font-weight:900;
  letter-spacing:.01em;
}
.workspace-brand-sub{
  font-size:.78rem;
  color:#aebdca;
}
.sidebar-toggle{
  display:none;
  width:40px;
  height:40px;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.18);
  border-radius:8px;
  background:rgba(255,255,255,.06);
  color:var(--header-text);
  font-size:1.2rem;
}
.workspace-top-actions{
  display:flex;
  align-items:center;
  gap:10px;
}
.top-search-placeholder{
  min-width:180px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:8px;
  background:rgba(255,255,255,.06);
  color:#aebdca;
  padding:9px 12px;
}
.notification-button{
  width:40px;
  height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:8px;
  color:var(--header-text)!important;
  text-decoration:none;
  background:rgba(255,255,255,.06);
}
.profile-menu{
  position:relative;
}
.profile-menu-toggle{
  display:flex;
  align-items:center;
  gap:8px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:8px;
  background:rgba(255,255,255,.06);
  color:var(--header-text);
  padding:6px 9px;
}
.profile-avatar{
  width:30px;
  height:30px;
  border-radius:8px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#315f83;
  color:white;
  font-weight:900;
}
.profile-menu-panel{
  position:absolute;
  right:0;
  top:calc(100% + 8px);
  width:220px;
  padding:8px;
  border-radius:10px;
  background:var(--surface);
  color:var(--text);
  border:1px solid var(--border-theme);
  box-shadow:0 18px 40px rgba(0,0,0,.25);
}
.profile-menu-panel a,
.profile-theme-field{
  display:block;
  width:100%;
  padding:9px 10px;
  border-radius:7px;
  text-decoration:none;
  color:var(--text)!important;
}
.profile-menu-panel a:hover{
  background:var(--surface-soft);
}
.profile-theme-field span{
  display:block;
  margin-bottom:6px;
  color:var(--muted-theme);
  font-size:.82rem;
}
.profile-theme-field select{
  width:100%;
}
.workspace-shell{
  display:grid;
  grid-template-columns:var(--workspace-sidebar-width) minmax(0,1fr);
  min-height:calc(100vh - var(--workspace-topbar-height));
}
.workspace-sidebar{
  position:sticky;
  top:var(--workspace-topbar-height);
  align-self:start;
  height:calc(100vh - var(--workspace-topbar-height));
  overflow-y:auto;
  background:var(--surface);
  border-right:1px solid var(--border-theme);
  padding:14px 10px 24px;
}
.workspace-content{
  min-width:0;
  padding:22px;
}
.workspace-content>.wrap,
.workspace-content>.wrap.narrow{
  max-width:none;
  margin:0;
  padding:0;
}
.sidebar-navigation{
  display:grid;
  gap:8px;
}
.sidebar-group{
  border-radius:8px;
  overflow:hidden;
}
.sidebar-group-toggle{
  width:100%;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  border:0;
  background:transparent;
  color:var(--text);
  padding:10px 11px;
  font-weight:850;
  text-align:left;
}
.sidebar-group-toggle:hover{
  background:var(--surface-soft);
}
.sidebar-group-chevron{
  transition:transform .15s ease;
}
.sidebar-group.open .sidebar-group-chevron{
  transform:rotate(180deg);
}
.sidebar-group-items{
  display:none;
  padding:2px 0 6px;
}
.sidebar-group.open .sidebar-group-items{
  display:grid;
  gap:2px;
}
.sidebar-link{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  padding:9px 11px 9px 20px;
  border-radius:7px;
  text-decoration:none;
  color:var(--text)!important;
}
.sidebar-link:hover{
  background:var(--surface-soft);
}
.sidebar-link.active{
  background:#315f83;
  color:#fff!important;
  font-weight:800;
}
.sidebar-link.disabled{
  opacity:.48;
  cursor:not-allowed;
}
.coming-soon{
  font-size:.68rem;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.sidebar-backdrop{
  display:none;
}
.workspace-page-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  margin-bottom:18px;
}
.dashboard-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-bottom:16px;
}
.dashboard-card{
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:16px;
  border:1px solid var(--border-theme);
  border-radius:10px;
  background:var(--surface);
  box-shadow:var(--shadow-theme);
}
.dashboard-card.primary{
  border-color:#315f83;
}
.dashboard-card>span{
  color:var(--muted-theme);
  font-size:.84rem;
}
.dashboard-card>strong{
  font-size:1.5rem;
}
.dashboard-card>small{
  color:var(--muted-theme);
}
.dashboard-card>a{
  margin-top:auto;
  font-weight:750;
}
.quick-actions{
  display:grid;
  gap:7px;
}
.quick-actions a{
  padding:8px 10px;
  border-radius:7px;
  background:var(--surface-soft);
  text-decoration:none;
}
html[data-theme="dark"] .workspace-sidebar{
  background:#131d27;
}
html[data-theme="dark"] .profile-menu-panel{
  background:#17212b;
}
@media(max-width:1180px){
  .dashboard-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:980px){
  .sidebar-toggle{
    display:inline-flex;
  }
  .top-search-placeholder{
    display:none;
  }
  .workspace-shell{
    display:block;
  }
  .workspace-sidebar{
    position:fixed;
    top:var(--workspace-topbar-height);
    left:0;
    bottom:0;
    width:min(86vw,var(--workspace-sidebar-width));
    height:auto;
    z-index:1200;
    transform:translateX(-105%);
    transition:transform .2s ease;
    box-shadow:18px 0 36px rgba(0,0,0,.28);
  }
  body.sidebar-mobile-open .workspace-sidebar{
    transform:translateX(0);
  }
  .sidebar-backdrop{
    position:fixed;
    inset:var(--workspace-topbar-height) 0 0 0;
    z-index:1150;
    background:rgba(0,0,0,.48);
    border:0;
  }
  body.sidebar-mobile-open .sidebar-backdrop{
    display:block;
  }
  .workspace-content{
    padding:16px;
  }
}
@media(max-width:640px){
  .profile-menu-name{
    display:none;
  }
  .workspace-brand-sub{
    display:none;
  }
  .dashboard-grid{
    grid-template-columns:1fr;
  }
  .workspace-topbar{
    padding:0 10px;
  }
}


/* v6.0 – közös diktálási komponens */
.dictation-component{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin-top:7px;
}
.dictation-button{
  min-height:36px;
  padding:7px 11px;
  border:1px solid var(--border-theme);
  border-radius:7px;
  background:var(--surface-soft);
  color:var(--text);
  font-weight:800;
  cursor:pointer;
}
.dictation-button:hover{
  border-color:#315f83;
}
.dictation-button.recording{
  background:#b4232c;
  border-color:#d64545;
  color:#fff;
}
.dictation-component.processing .dictation-button{
  opacity:.55;
  cursor:wait;
}
.dictation-language-label{
  display:flex;
  align-items:center;
  gap:6px;
  margin:0;
  color:var(--muted-theme);
  font-size:.8rem;
  font-weight:700;
}
.dictation-language{
  width:auto;
  min-height:36px;
  padding:6px 28px 6px 8px;
}
.dictation-status{
  min-height:20px;
  color:var(--muted-theme);
  font-size:.82rem;
}
.dictation-status[data-state="recording"]{
  color:#d64545;
  font-weight:800;
}
.dictation-status[data-state="processing"]{
  color:#b7791f;
}
.dictation-status[data-state="success"]{
  color:#16803d;
}
.dictation-status[data-state="error"]{
  color:#b4232c;
  font-weight:750;
}
html[data-theme="dark"] .dictation-button{
  background:#243443;
  border-color:#435769;
  color:#f5f7fb;
}
html[data-theme="dark"] .dictation-status[data-state="success"]{
  color:#80e6a3;
}
html[data-theme="dark"] .dictation-status[data-state="processing"]{
  color:#ffd28a;
}
html[data-theme="dark"] .dictation-status[data-state="error"]{
  color:#ff9ba4;
}
@media(max-width:560px){
  .dictation-component{
    display:grid;
    grid-template-columns:1fr auto;
  }
  .dictation-button{
    width:100%;
  }
  .dictation-status{
    grid-column:1/-1;
  }
}


/* v6.2 – döntési sor fülek elválasztása */
.decision-tabs{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin:0 0 20px;
}
.decision-tabs a{
  display:inline-flex;
  align-items:center;
  min-height:40px;
  padding:9px 14px;
  border:1px solid var(--border-theme);
  border-radius:8px;
  background:var(--surface-soft);
  color:var(--text) !important;
  text-decoration:none;
  font-weight:800;
  line-height:1.2;
}
.decision-tabs a:hover{
  border-color:#315f83;
  background:var(--surface);
}
.decision-tabs a.active{
  background:#315f83;
  border-color:#315f83;
  color:#ffffff !important;
}
html[data-theme="dark"] .decision-tabs a{
  background:#223140;
  border-color:#435769;
  color:#f5f7fb !important;
}
html[data-theme="dark"] .decision-tabs a:hover{
  background:#2a3d4e;
  border-color:#5f7c93;
}
html[data-theme="dark"] .decision-tabs a.active{
  background:#315f83;
  border-color:#4b85ad;
  color:#ffffff !important;
}
@media(max-width:560px){
  .decision-tabs{
    display:grid;
    grid-template-columns:1fr;
  }
  .decision-tabs a{
    width:100%;
    justify-content:center;
  }
}


/* v6.3 – teljes jogú adminok kezelése */
.admin-chip-list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:12px 0;
}
.admin-chip{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:7px 11px;
  border-radius:8px;
  border:1px solid #315f83;
  background:rgba(49,95,131,.12);
  color:var(--text);
  font-weight:800;
}
.admin-role-summary .warning{
  margin-top:12px;
}


/* v6.4 – saját szabadságkérelmek HTML- és PDF-előnézete */
.profile-leave-list{
  display:grid;
  gap:14px;
}
.profile-leave-request{
  border:1px solid var(--border-theme);
  border-radius:10px;
  background:var(--surface-soft);
  overflow:hidden;
}
.profile-leave-summary{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  padding:15px;
}
.profile-leave-summary h3{
  margin:9px 0 4px;
}
.profile-leave-summary p{
  margin:0;
}
.profile-leave-actions{
  display:flex;
  justify-content:flex-end;
  gap:7px;
  flex-wrap:wrap;
}
.leave-html-preview{
  border-top:1px solid var(--border-theme);
}
.leave-html-preview>summary{
  cursor:pointer;
  padding:12px 15px;
  font-weight:850;
  background:var(--surface);
}
.leave-html-preview>summary:hover{
  background:var(--surface-soft);
}
.leave-paper-preview{
  margin:14px;
  padding:22px;
  background:#ffffff;
  color:#18212a;
  border:1px solid #ccd5df;
  border-radius:8px;
  box-shadow:0 6px 18px rgba(15,23,42,.08);
}
.leave-paper-title{
  margin-bottom:22px;
  text-align:center;
  font-size:1.25rem;
  font-weight:900;
  letter-spacing:.04em;
}
.leave-paper-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-bottom:16px;
}
.leave-paper-grid>div{
  padding:11px;
  border:1px solid #d9e2ec;
  border-radius:7px;
  background:#f8fafc;
}
.leave-paper-grid span{
  display:block;
  margin-bottom:5px;
  color:#627386;
  font-size:.8rem;
}
.leave-preview-employments{
  margin:18px 0;
}
.leave-employment-row{
  display:flex;
  justify-content:space-between;
  gap:14px;
  padding:10px 0;
  border-bottom:1px solid #e4e7eb;
}
.leave-decision-preview{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:18px 0;
}
.leave-decision-box{
  padding:13px;
  border:1px solid #d9e2ec;
  border-radius:7px;
  background:#f8fafc;
}
.leave-decision-box h4{
  margin-top:0;
}
html[data-theme="dark"] .leave-paper-preview{
  background:#f7f9fb;
  color:#18212a;
}
html[data-theme="dark"] .leave-paper-preview .muted{
  color:#627386;
}
@media(max-width:700px){
  .profile-leave-summary{
    display:block;
  }
  .profile-leave-actions{
    justify-content:flex-start;
    margin-top:12px;
  }
  .leave-paper-preview{
    margin:10px;
    padding:14px;
  }
  .leave-paper-grid,
  .leave-decision-preview{
    grid-template-columns:1fr;
  }
  .leave-employment-row{
    display:block;
  }
}


/* v7.0 – stabilizációs modul */
.version-badge{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:7px 11px;
  border:1px solid var(--border-theme);
  border-radius:8px;
  background:var(--surface-soft);
  font-weight:850;
}
.system-summary-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-bottom:16px;
}
.status-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.status-card{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:15px;
  border:1px solid var(--border-theme);
  border-radius:9px;
  background:var(--surface);
}
.status-card h2{
  margin:0 0 5px;
  font-size:1rem;
}
.status-card p{
  margin:0;
  color:var(--muted-theme);
  overflow-wrap:anywhere;
}
.status-indicator{
  flex:0 0 auto;
  width:12px;
  height:12px;
  margin-top:4px;
  border-radius:50%;
  background:#8b99a7;
}
.status-card.good .status-indicator{background:#17934a}
.status-card.warn .status-indicator{background:#d18a00}
.status-card.bad .status-indicator{background:#c93737}
.filter-row{
  display:flex;
  align-items:end;
  gap:10px;
  flex-wrap:wrap;
}
.filter-row label{
  min-width:170px;
}
.audit-table pre,
.error-record pre{
  max-width:700px;
  max-height:320px;
  overflow:auto;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
.error-list{
  display:grid;
  gap:14px;
}
.error-record.resolved{
  opacity:.78;
}
.error-reference{
  display:inline-block;
  padding:12px 16px;
  border:1px solid #c93737;
  border-radius:8px;
  background:#fff3f3;
  color:#8b1111;
  font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-weight:900;
  letter-spacing:.04em;
}
.error-page-card{
  max-width:720px;
  margin:8vh auto;
}
@media(max-width:780px){
  .system-summary-grid,
  .status-grid{
    grid-template-columns:1fr;
  }
}


/* v7.1 – alkalmazásmentések */
.path-value{
  display:block;
  max-width:100%;
  overflow-wrap:anywhere;
  font-size:.9rem !important;
}
