:root{--navy:#35404f;--navy-light:#526178;--teal:#279994;--teal-hover:#218581;--gold:#d6972c;--canvas:#efefef;--text:#263444;--line:#d9dee4;--green:#45a973}
*{box-sizing:border-box}body{margin:0;font-family:Arial,"Segoe UI",sans-serif;color:var(--text);background:var(--canvas);font-size:14px}a{color:#218581;text-decoration:none}a:hover{text-decoration:underline}button,.button{border:0;border-radius:7px;cursor:pointer;font:inherit;font-weight:600;padding:13px 20px;display:inline-block;text-align:center;transition:background .15s,box-shadow .15s}button:disabled{opacity:.6;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #69bdb7;outline-offset:3px}.primary{background:var(--teal);color:white}.primary:hover{background:var(--teal-hover)}.gold,.checkout{background:var(--gold);color:white}.gold:hover{background:#c78923}.quiet{background:#e4e9ee;color:#35404f}.wide{width:100%}.big{font-size:17px;min-height:60px;padding:18px 24px}h1{font-size:29px;letter-spacing:-.5px;margin:8px 0 22px}h2{font-size:18px;margin:0 0 18px}p{line-height:1.6}.muted,small{color:#687584}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.6px;color:#71808d}.panel{background:white;padding:24px;border:1px solid #e1e4e8;border-radius:4px}.heading,.page-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.page-heading h1{margin-bottom:0}.page-heading{margin-bottom:22px}.actions{display:flex;align-items:center;gap:10px}.notice{padding:14px 18px;background:#dcefe5;color:#265a43;border-left:4px solid #35a476;border-radius:5px;margin-bottom:20px}.notice.error{background:#f8e0e0;color:#9a3030;border-color:#c55252}.errorlist{color:#ac3838;font-size:13px;padding-left:18px}label{display:block;font-size:13px;font-weight:600}input,select,textarea{display:block;width:100%;padding:12px;margin-top:7px;border:1px solid #c5cdd6;border-radius:5px;color:#263444;background:#fff;font:inherit}input[type=checkbox]{display:inline-block;width:auto}.helptext{display:block;margin-top:7px;font-size:12px;color:#71808d;font-weight:400;line-height:1.5}textarea{font-family:monospace;font-size:13px;min-height:280px}.settings{max-width:900px}.standard-header{background:var(--navy);color:white;display:flex;gap:24px;align-items:center;padding:15px 5vw;min-height:100px}.header-logo{width:170px;height:65px;object-fit:contain}.standard-header time{margin-left:auto;font-size:24px}.standard-layout main{max-width:1300px;margin:0 auto;padding:40px 24px}.login{width:min(450px,100%);margin:6vh auto;background:white;padding:36px}.login h1{font-size:30px}.login form p{margin-bottom:20px}footer{font-size:11px;letter-spacing:1px;text-align:center;color:#929ba5;padding:24px}
.sidebar{position:fixed;inset:0 auto 0 0;width:230px;background:var(--navy);color:#fff;display:flex;flex-direction:column;padding:16px 8px 10px;z-index:10;overflow:auto}.sidebar-brand{display:block;height:90px;text-align:center;margin-bottom:10px}.sidebar-brand img{width:190px;height:80px;object-fit:contain}.company-label{text-align:center;color:#c3cbd5;font-size:12px;padding:0 12px 20px;margin-bottom:20px;border-bottom:1px solid #c1c7cf;overflow-wrap:anywhere}.side-nav{display:grid;gap:10px}.side-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:var(--teal);border-radius:6px;color:#f4f8fa;font-size:12px;font-weight:bold;min-height:56px;padding:8px;text-align:center;line-height:1.3}.side-nav a:hover{background:var(--teal-hover);text-decoration:none}.side-nav a[aria-current=page]{box-shadow:inset 4px 0 var(--gold);background:#218a86}.side-nav span{font-size:15px;font-weight:normal}.sidebar-bottom{margin-top:auto;padding-top:30px;display:grid;gap:10px}.sidebar-bottom .quiet{background:#465365;color:#dbe0e8;font-size:12px}.admin-layout main{margin-left:230px;padding:22px;min-height:calc(100vh - 60px)}.admin-layout footer{margin-left:230px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0}.stats .panel{padding:18px 22px}.stats strong{display:block;font-size:30px;margin-top:7px;font-weight:600;font-variant-numeric:tabular-nums}.stats strong small{font-size:20px}.stats small{font-size:12px}.tiles{display:grid;grid-template-columns:1fr 1fr;gap:18px}.split{display:grid;grid-template-columns:340px minmax(0,1fr);gap:20px;margin-top:24px}.tabs{display:flex;gap:20px;flex-wrap:wrap;font-size:13px;margin:14px 0 20px}.filters{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;padding:20px;margin:20px 0}.filters label{flex:1;min-width:145px;max-width:240px}.filters input,.filters select{font-size:13px;padding:10px}.filters button,.filters .button{padding:11px 16px}.report-heading{margin:18px 0}.report-heading p{font-size:13px}.report-heading h2{margin:0}.table-wrap{padding:0;overflow:auto;min-width:0}table{width:100%;border-collapse:collapse;font-size:12px;background:white}td,th{padding:14px 15px;border-bottom:1px solid #e3e7ec;text-align:left;line-height:1.45}th{font-size:11px;font-weight:700;background:#e5e9ed;color:#3e495a;white-space:nowrap}td{vertical-align:middle}td a{font-weight:500}tbody tr:hover{background:#f6f8f9}tbody tr:last-child td{border-bottom:0}.badge{display:inline-block;background:#fbecd0;color:#96621b;border-radius:20px;font-size:10px;padding:3px 7px;white-space:nowrap}.monthly-table table{font-size:11px}.monthly-table td,.monthly-table th{padding:12px 8px;text-align:center;white-space:nowrap;border-right:1px solid #e3e7ec}.monthly-table td:first-child,.monthly-table th:first-child{position:sticky;left:0;background:#fff;text-align:left;min-width:155px;z-index:1}.monthly-table th:first-child{background:#e5e9ed}.monthly-table .weekend{background:#edf0f3}.monthly-table th small{display:block;font-weight:400;margin-top:5px}.identify-panel{max-width:650px}.identify-panel form{display:grid;gap:18px}.rf-result{background:#e5f3ef;padding:24px;margin:24px 0;text-align:center}.rf-result strong{display:block;font-size:40px;letter-spacing:8px;margin:14px}.live-label{display:flex;align-items:center;gap:8px;font-size:11px;color:#687584}.live-dot{height:7px;width:7px;background:#29967b;border-radius:50%}.chart-panel{margin-bottom:16px;padding:20px;min-width:0}.chart-panel h2{text-align:center;font-size:13px}.chart-note{text-align:center;font-size:11px;margin:0 0 8px}.work-chart{overflow:auto;min-height:260px}.work-chart svg{display:block;width:100%;max-height:350px;font-family:Arial,sans-serif}.chart-empty{min-height:240px;display:grid;place-items:center;color:#87929e}.chart-legend{display:flex;justify-content:center;flex-wrap:wrap;gap:18px;font-size:11px}.legend-item{display:flex;align-items:center;gap:6px}.legend-item i,.phase-key i{display:inline-block;width:10px;height:10px;border-radius:2px;flex-shrink:0}.dashboard-bottom{display:grid;grid-template-columns:1fr 1fr;gap:16px}.actual-panel{padding:20px;min-width:0;margin-bottom:16px}.actual-panel h2{text-align:center;font-size:14px}.actual-panel .table-wrap{max-height:350px}.actual-panel td{padding:10px;font-size:11px}.pie-layout{display:flex;align-items:center;justify-content:center;gap:28px;min-height:285px;padding:15px}.phase-pie{width:230px;height:230px;border-radius:50%;background:#e3e8eb;flex-shrink:0;border:1px solid #0001}.pie-legend{display:grid;gap:18px;font-size:11px}.phase-key{display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:6px 9px}.phase-key small{grid-column:2/4;font-size:10px}.phase-key strong{margin-left:8px;font-weight:600}
.kiosk-layout{background:#dadada}.kiosk-header{min-height:100px;padding:14px 3vw;background:var(--navy);color:#f5f6f8;display:grid;grid-template-columns:190px minmax(150px,1fr) 160px minmax(150px,1fr) 54px 24px;align-items:center;gap:28px}.kiosk-brand img{width:170px;height:68px;object-fit:contain}.header-action{font-size:17px;height:65px}.kiosk-header time{text-align:center;font-size:25px;font-weight:700;font-variant-numeric:tabular-nums}.fullscreen{color:white;background:none;font-size:30px;padding:8px}.kiosk-menu{position:relative;z-index:15}.kiosk-menu summary{cursor:pointer;font-size:28px;list-style:none}.kiosk-menu>div{position:absolute;right:0;top:45px;width:220px;display:grid;gap:16px;background:var(--navy);padding:20px;box-shadow:0 4px 30px #0003;border-radius:8px}.kiosk-menu span{color:#d4dde5;font-size:12px}.kiosk-menu a{color:#a1dcd8;font-size:13px}.kiosk-layout main{padding:22px 5vw;max-width:1800px;margin:0 auto}.kiosk-status{display:flex;justify-content:space-between;font-size:11px;color:#717b86;margin-bottom:30px}.worker-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:35px 6vw;max-width:1450px}.worker-card{background:var(--navy);color:#edf2f8;border:3px solid var(--green);min-height:66px;border-radius:17px;width:100%;max-width:420px;padding:18px 20px;font-size:17px}.worker-card:hover{background:#414d5f;box-shadow:0 3px 12px #0001}.worker-card.working{border-color:var(--gold)}.worker-card small{display:block;color:#c7d4dd;font-weight:normal;font-size:12px;line-height:1.5;margin-top:8px;overflow-wrap:anywhere}.kiosk-empty{grid-column:1/-1;text-align:center;padding:15vh 20px;color:#65707d}.kiosk-empty h2{font-size:22px;color:#526178}.kiosk-empty p{max-width:550px;margin:auto}.kiosk-layout .notice{margin-bottom:18px}dialog{background:var(--navy-light);color:#f3f6f9;border:0;border-radius:22px;padding:40px;width:min(560px,94vw);max-height:92vh;box-shadow:0 18px 65px #1a263844}dialog::backdrop{background:#26344425}dialog p{font-size:16px}dialog .eyebrow,dialog .muted,dialog small{color:#d0dbe4}dialog h2{font-size:24px;margin:14px 0 20px}dialog label{font-size:14px;margin:20px 0}dialog select{min-height:48px}dialog .helptext{color:#d0dbe4}.dialog-close{position:absolute;top:10px;right:14px;background:transparent;color:#e0e9ef;font-size:26px;padding:5px 10px}.confirmation{font-size:22px!important;line-height:1.5;text-align:center;margin:12px 0 38px}.confirmation small{display:block;font-size:13px;margin-top:14px}.confirm-dialog{padding:46px 55px 34px}.confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:40px}.confirm-actions button{width:100%;min-width:0}.confirm-actions form{margin:0}.pin-dialog{max-width:430px;padding:32px}.pin-dialog p{font-size:14px}.pin-input{font-size:30px;letter-spacing:8px;text-align:center;height:65px}.rf-hint{font-size:11px!important;text-align:center;color:#d4dfe9}.numpad{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0}.numpad button{height:54px;font-size:22px;background:#e5eaf1;color:#35404f}.numpad [data-clear]{font-size:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(min-width:1800px){.worker-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1250px){.kiosk-header{grid-template-columns:150px 1fr 125px 1fr 40px 20px;gap:20px}.kiosk-brand img{width:145px}.pie-layout{flex-direction:column;gap:18px}.pie-legend{display:flex;flex-wrap:wrap;gap:16px}.phase-key{max-width:220px}.split{grid-template-columns:300px minmax(0,1fr)}}
@media(max-width:900px){.sidebar{width:185px}.sidebar-brand img{width:160px}.admin-layout main,.admin-layout footer{margin-left:185px}.admin-layout main{padding:18px}.dashboard-bottom{grid-template-columns:1fr}.pie-layout{flex-direction:row}.split{grid-template-columns:1fr}.kiosk-header{grid-template-columns:110px 1fr 110px 1fr 30px 18px;gap:10px;padding:10px 18px}.kiosk-brand img{width:110px}.header-action{font-size:14px;height:60px;padding:12px}.kiosk-header time{font-size:20px}.worker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.worker-card{max-width:none}.stats .panel{padding:15px}.stats strong{font-size:27px}}
@media(max-width:600px){.sidebar{position:relative;width:100%;padding:8px}.sidebar-brand{height:55px;margin:0}.sidebar-brand img{height:50px;width:140px}.company-label{padding:0 0 8px;margin:0}.side-nav{display:flex;overflow:auto;gap:8px;padding-top:10px}.side-nav a{min-width:110px;font-size:10px;min-height:54px}.sidebar-bottom{display:flex;padding-top:10px}.sidebar-bottom>*{flex:1}.sidebar-bottom .button,.sidebar-bottom button{font-size:11px;padding:10px}.admin-layout main,.admin-layout footer{margin-left:0}.stats{gap:8px}.stats strong{font-size:23px}.stats small{font-size:10px}.page-heading{align-items:flex-start;gap:10px}.live-label{max-width:130px}.heading{flex-wrap:wrap}.pie-layout{flex-direction:column}.kiosk-header{grid-template-columns:1fr 1fr 1fr;gap:10px}.kiosk-brand{grid-column:1}.kiosk-header time{grid-column:2;grid-row:1}.fullscreen{grid-column:3;grid-row:1;justify-self:end;margin-right:22px}.kiosk-menu{position:absolute;right:15px;top:25px}.kiosk-header .header-action{grid-row:2;height:55px;grid-column:1}.kiosk-header .gold{grid-column:2/4}.kiosk-layout main{padding:18px}.kiosk-status{font-size:10px;gap:10px}.worker-grid{gap:16px;grid-template-columns:1fr}.worker-card{min-height:65px}.confirm-dialog{padding:42px 25px 28px}.confirm-actions{gap:24px}.confirmation{font-size:20px!important}.tabs{font-size:12px}h1{font-size:25px}.filters label{max-width:none}.report-heading .actions{width:100%}}

.entity-search{margin-bottom:14px}.inline-form{display:inline-block;margin-left:12px}.text-button{background:none;border:0;padding:0;color:#9c6521;font-size:11px}.text-button:hover{text-decoration:underline}

.statistics-section{margin-top:28px}

/* v2.1 — érintőképernyős munkafelvétel */
.kiosk-header{grid-template-columns:190px minmax(150px,1fr) 220px minmax(150px,1fr) 54px 24px}
.kiosk-clock{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;min-width:0}
.kiosk-clock #sync-status{font-size:15px;line-height:1.35;color:#d8e5ee;font-weight:400}
.kiosk-layout .worker-grid{margin-top:25px}
.choice-dialog{width:min(760px,94vw);padding:38px 40px 30px}
.choice-dialog h2{margin-bottom:14px}
.choice-prompt{font-size:22px!important;text-align:center;margin:18px 0 24px}
.choice-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;max-height:48vh;overflow-y:auto;overscroll-behavior:contain;padding:4px;scrollbar-width:auto}
.choice-button{min-height:78px;font-size:19px;line-height:1.4;padding:22px 24px;white-space:normal;overflow-wrap:anywhere;border-radius:12px;touch-action:manipulation}
.choice-back{margin-top:24px;min-height:58px;font-size:17px}
.chosen-work{background:#425165;border-left:4px solid var(--gold);padding:15px 20px;border-radius:6px;color:#fff;font-size:17px!important;overflow-wrap:anywhere}
.choice-empty{grid-column:1/-1;text-align:center;color:#e3eaf1;padding:20px}
dialog[aria-busy=true] .choice-list{pointer-events:none;opacity:.65}
@media(max-width:1250px){.kiosk-header{grid-template-columns:150px 1fr 180px 1fr 40px 20px}}
@media(max-width:900px){.kiosk-header{grid-template-columns:110px 1fr 150px 1fr 30px 18px}.kiosk-clock #sync-status{font-size:13px}}
@media(max-width:600px){.kiosk-header{grid-template-columns:1fr 1fr 1fr}.kiosk-clock{grid-column:2;grid-row:1;gap:5px}.kiosk-clock #sync-status{font-size:12px}.choice-dialog{padding:36px 20px 24px}.choice-list{grid-template-columns:1fr;max-height:45vh}.choice-button{min-height:72px;font-size:18px}.choice-prompt{font-size:20px!important}.kiosk-layout .worker-grid{margin-top:15px}}

/* v2.2 — fejléc, kapcsolható óra és nyugtázható visszajelzések */
[hidden]{display:none!important}
.sidebar-brand{padding-bottom:14px;margin-bottom:22px;border-bottom:1px solid #c1c7cf;height:110px}
.feedback-dialog{width:min(520px,94vw);padding:36px 40px;text-align:center}
.feedback-dialog h2{font-size:22px;margin:5px 0 24px}
.feedback-message{font-size:20px!important;line-height:1.5;margin:0 0 28px;overflow-wrap:anywhere;color:#f3f6f9}
.feedback-message.error{color:#ffe4d6}
.kiosk-header{grid-template-columns:170px minmax(175px,260px) minmax(100px,1fr) minmax(175px,260px) 230px;gap:24px}
.kiosk-clock{background:none;color:#f5f6f8;min-height:74px;padding:0;border-radius:8px;justify-self:center;min-width:100px;grid-column:auto;grid-row:auto}
.kiosk-clock:hover{background:#ffffff08}.kiosk-clock time{font-size:28px;line-height:1.2}
#analog-clock{height:76px;width:76px;display:block}
.clock-face{fill:#283341;stroke:#dbe7ed;stroke-width:2}.clock-center{fill:var(--gold)}
[data-clock-tick]{stroke:#dbe7ed;stroke-width:2;stroke-linecap:round}
#hour-hand{stroke:#f4f7fa;stroke-width:5;stroke-linecap:round}#minute-hand{stroke:#f4f7fa;stroke-width:3;stroke-linecap:round}#second-hand{stroke:var(--gold);stroke-width:1.5;stroke-linecap:round}
.kiosk-tools{justify-self:end;display:flex;flex-direction:column;align-items:flex-end;gap:7px;min-width:0}
.kiosk-controls{display:flex;align-items:center;justify-content:flex-end;gap:20px}
.kiosk-tools .fullscreen{margin:0;padding:4px 8px}
.kiosk-tools .kiosk-menu{position:relative;top:auto;right:auto}
.kiosk-tools #sync-status{color:#d8e5ee;font-size:15px;line-height:1.35;text-align:right}
.worker-card strong{font-size:21px}.worker-card small{font-size:15px;line-height:1.5}
@media(max-width:1250px){.kiosk-header{grid-template-columns:135px minmax(150px,220px) minmax(85px,1fr) minmax(150px,220px) 185px;gap:16px}.kiosk-brand img{width:130px}.kiosk-tools #sync-status{font-size:13px}.kiosk-clock time{font-size:25px}}
@media(max-width:900px){.kiosk-header{grid-template-columns:100px minmax(120px,175px) minmax(80px,1fr) minmax(120px,175px) 145px;gap:12px}.kiosk-brand img{width:100px}.header-action{font-size:14px;padding:12px 10px}.kiosk-tools #sync-status{font-size:12px}.kiosk-clock time{font-size:21px}.worker-card strong{font-size:20px}.worker-card small{font-size:14px}}
@media(max-width:700px){.kiosk-header{grid-template-columns:1fr 1fr 1fr;padding:10px 18px;gap:10px}.kiosk-brand{grid-column:1;grid-row:1}.kiosk-clock{grid-column:2;grid-row:1;min-width:0}.kiosk-tools{grid-column:3;grid-row:1}.kiosk-header .header-action{grid-column:1;grid-row:2;justify-self:end;width:90%;min-height:55px}.kiosk-header .header-action.gold{grid-column:2/4;justify-self:start;width:85%;max-width:240px}.kiosk-clock time{font-size:20px}.kiosk-tools #sync-status{font-size:11px;max-width:120px}.kiosk-controls{gap:10px}#analog-clock{width:68px;height:68px}.feedback-dialog{padding:30px 24px}.worker-card strong{font-size:21px}.worker-card small{font-size:15px}}
@media(max-width:700px){.kiosk-header{grid-template-columns:repeat(6,minmax(0,1fr))}.kiosk-brand{grid-column:1/3}.kiosk-clock{grid-column:3/5}.kiosk-tools{grid-column:5/7}.kiosk-header .header-action{grid-column:1/4;width:100%;justify-self:stretch;max-width:none}.kiosk-header .header-action.gold{grid-column:4/7;width:100%;justify-self:stretch;max-width:none}}

/* v2.3 — nagy listák, végig látható fejléc */
.kiosk-sticky-shell{position:sticky;top:0;z-index:30;background:var(--navy)}
.kiosk-sticky-shell.is-scrolled{box-shadow:0 5px 16px #14223430}
.kiosk-header{height:104px;min-height:104px;padding-block:0;grid-template-columns:170px minmax(175px,330px) minmax(104px,1fr) minmax(175px,330px) 230px}
.kiosk-header .header-action{height:70px;font-size:18px}
.kiosk-clock{height:104px;min-height:104px;align-self:stretch;display:flex;justify-content:center;align-items:center}
.kiosk-clock time{font-size:36px}
#analog-clock{height:102px;width:102px;flex-shrink:0}
.kiosk-menu summary{display:flex;align-items:center;justify-content:center;min-width:40px;min-height:36px}
.list-position{display:flex;align-items:center;gap:20px;min-height:39px;padding:5px 3vw;background:#e6ebee;color:#405166;border-bottom:1px solid #bec8d0;font-size:13px;font-variant-numeric:tabular-nums}
#list-range{min-width:310px}
.list-progress{height:6px;background:#c4cfd5;border-radius:10px;flex:1;overflow:hidden}
#list-progress-fill{display:block;height:100%;width:0;background:var(--teal);border-radius:10px}
#list-top{padding:6px 12px;background:#35404f;color:white;font-size:12px;min-height:29px;white-space:nowrap}
.worker-card{scroll-margin-top:calc(var(--kiosk-sticky-height,143px) + 12px)}
@media(max-width:1250px){.kiosk-header{grid-template-columns:135px minmax(150px,285px) minmax(104px,1fr) minmax(150px,285px) 185px}.kiosk-clock time{font-size:33px}}
@media(max-width:900px){.kiosk-header{grid-template-columns:100px minmax(120px,235px) minmax(104px,1fr) minmax(120px,235px) 145px}.kiosk-header .header-action{font-size:15px}.kiosk-clock time{font-size:26px}.list-position{font-size:12px;gap:10px}#list-range{min-width:270px}}
@media(max-width:700px){.kiosk-header{grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:98px 60px;height:auto;min-height:0;padding:2px 18px 10px;gap:8px 10px}.kiosk-clock{height:98px;min-height:98px}.kiosk-clock time{font-size:25px}#analog-clock{height:96px;width:96px}.kiosk-header .header-action{height:58px;font-size:15px}.list-position{padding:7px 14px;min-height:56px;display:grid;grid-template-columns:1fr auto;gap:5px 10px}#list-range{min-width:0;font-size:11px;grid-column:1}.list-progress{grid-column:1;height:5px}#list-top{grid-column:2;grid-row:1/3;font-size:10px;padding:8px}}

/* v2.5 — admin PIN-oszlop és egy képernyős dashboard */
.pin-value{display:inline-block;font-family:ui-monospace,Consolas,monospace;font-size:16px;font-weight:700;letter-spacing:2px;padding:5px 9px;border-radius:5px;background:#edf3f4;color:#244c55;white-space:nowrap}
.pin-unavailable{display:block;font-size:10px;margin-top:4px;white-space:nowrap}
@media(min-width:901px){
.dashboard-page main{height:100dvh;min-height:0;display:grid;grid-template-rows:50px 74px minmax(160px,240px) minmax(200px,1fr);gap:12px;padding:18px}
.dashboard-page .page-heading{margin:0}.dashboard-page .stats{margin:0;gap:12px}.dashboard-page .stats .panel{padding:12px 18px}.dashboard-page .stats strong{font-size:27px;margin-top:4px}
.dashboard-page .project-chart{margin:0;padding:12px 16px;display:flex;flex-direction:column;min-height:0;overflow:hidden}
.dashboard-page .project-chart h2{margin-bottom:8px}.dashboard-page .chart-note{margin-bottom:4px;font-size:10px}
.dashboard-page .work-chart{min-height:0;flex:1;overflow-x:auto;overflow-y:hidden}
.dashboard-page .work-chart svg{max-height:none}.dashboard-page .chart-empty{min-height:0;height:100%;margin:0;font-size:12px}
.dashboard-page .chart-legend{font-size:10px;gap:10px;margin-top:4px;flex-shrink:0;max-height:38px;overflow-y:auto}
.dashboard-page .dashboard-bottom{min-height:0;gap:12px;height:100%}
.dashboard-page .dashboard-bottom>.panel{height:100%;min-height:0;margin:0;padding:14px;display:flex;flex-direction:column;overflow:hidden}
.dashboard-page .dashboard-bottom h2{margin-bottom:12px;flex-shrink:0}
.dashboard-page .pie-layout{min-height:0;padding:8px;gap:18px;flex:1;flex-direction:row;overflow:hidden}
.dashboard-page .phase-pie{width:clamp(120px,21vh,190px);height:clamp(120px,21vh,190px)}
.dashboard-page .pie-legend{min-width:0;max-height:100%;overflow-y:auto;gap:10px}.dashboard-page .phase-key{min-width:0}.dashboard-page .phase-key>span{overflow-wrap:anywhere}
.dashboard-page .actual-panel .table-wrap{max-height:none;min-height:0;flex:1;overflow:auto}
.dashboard-page .actual-panel th{position:sticky;top:0;z-index:1}.dashboard-page .actual-panel td{padding:9px;font-size:11px}
}
@media(min-width:901px) and (max-height:550px){.dashboard-page main{height:auto;grid-template-rows:50px 74px 210px 250px}}
@media(max-width:900px){.dashboard-page .work-chart{min-height:175px}.dashboard-page .work-chart svg{max-height:220px}.dashboard-page .project-chart{padding:16px}.dashboard-page .chart-empty{min-height:170px}}

/* v2.8 — érintőképernyős, háromoszlopos munka- és munkamenetválasztó */
.choice-dialog{width:min(1260px,96vw);max-width:96vw;max-height:calc(100dvh - 24px);padding:24px 28px 20px;--choice-row-height:clamp(62px,calc((100dvh - 380px)/5),110px)}
.choice-dialog[open]{display:flex;flex-direction:column;height:min(920px,calc(100dvh - 24px))}
.choice-dialog h2{margin:8px 0;font-size:24px;flex-shrink:0}
.choice-dialog .eyebrow{flex-shrink:0;padding-right:26px}
.choice-dialog .choice-prompt{margin:10px 0 16px;flex-shrink:0}
.choice-dialog .chosen-work{margin:6px 0;padding:10px 16px;flex-shrink:0}
.choice-dialog form[data-job-start]{display:flex;flex-direction:column;flex:1;min-height:0;margin:0}
.choice-dialog .choice-list{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(5,var(--choice-row-height));grid-auto-rows:var(--choice-row-height);align-content:start;gap:12px;flex:1;min-height:0;max-height:none;overflow-y:auto;padding:3px;scrollbar-gutter:stable}
.choice-dialog .choice-button{height:100%;min-height:0;font-size:18px;padding:10px 16px;overflow-y:auto}
.choice-dialog .choice-back{margin-top:16px;min-height:52px;flex-shrink:0}
.feedback-message{white-space:pre-line}
@media(max-width:700px){.choice-dialog{padding:26px 16px 16px}.choice-dialog .choice-list{grid-template-columns:repeat(2,minmax(0,1fr))}.choice-dialog .choice-button{font-size:16px;padding:8px}.choice-dialog .chosen-work{max-height:90px;overflow-y:auto}}
@media(max-width:440px){.choice-dialog .choice-list{grid-template-columns:1fr}.choice-dialog h2{font-size:21px}.choice-dialog .choice-prompt{font-size:18px!important;margin:8px 0 12px}}
