:root{font-family:Inter,system-ui,-apple-system,sans-serif;color:#18312a;background:#f4f7f5}*{box-sizing:border-box}body{margin:0}header{background:white;border-bottom:1px solid #dce5e0;padding:14px max(20px,calc((100vw - 1120px)/2));display:flex;align-items:center;gap:20px;flex-wrap:wrap}header nav{display:flex;gap:14px;flex:1;flex-wrap:wrap}a{color:#116e59;text-decoration:none}a:hover{text-decoration:underline}.brand{font-size:20px;font-weight:800;color:#133f32}.who{color:#53675d}main{max-width:1120px;margin:34px auto;padding:0 20px 60px}h1{font-size:30px}h2{font-size:19px}.muted,small{color:#65796f}.panel,.tile{background:#fff;border:1px solid #dce5e0;border-radius:16px;padding:24px;margin:16px 0;box-shadow:0 3px 12px #16382a08}.narrow{max-width:460px}.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.tile{margin:0;min-height:195px;color:#18312a;display:block}.tile:hover{text-decoration:none;border-color:#7fb6a0}.tile-icon{font-size:32px}.tile h2{margin-bottom:5px}.tile p{color:#64786d}.tile small{color:#0e795b}.tile.disabled{background:#e9eeeb;color:#8c9b92;box-shadow:none}.tile.disabled p,.tile.disabled small{color:#8c9b92}.adminlinks{margin-top:28px}.notice{background:#e5f6ed;border:1px solid #b8dfc9;padding:14px;border-radius:10px;margin:12px 0}.warning{color:#a35300}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.stats>div{background:#f1f7f3;border-radius:12px;padding:18px}.stats small{display:block}.stats strong{display:block;font-size:27px;margin-top:6px}.status{background:#d7f1e3;color:#166844;border-radius:30px;padding:8px 14px;display:inline-block;font-weight:700}form{display:flex;gap:10px;flex-wrap:wrap;align-items:end;margin:10px 0}label{display:flex;flex-direction:column;gap:7px;font-weight:600;font-size:14px}input,select,textarea{font:inherit;padding:10px 12px;border:1px solid #c9d8ce;border-radius:8px;max-width:100%;background:white;color:#18312a}input[type=checkbox]{width:auto}textarea{width:100%;min-height:85px}form:has(textarea){display:block}form:has(textarea) label{margin-bottom:12px}button{cursor:pointer;font:inherit;background:#edf3ef;color:#19533e;border:1px solid #c5d8ce;border-radius:8px;padding:10px 15px}.primary,button.chosen{background:#0c755d;color:white;border-color:#0c755d}.danger{color:#a52e2e}.link{border:0;background:none}table{border-collapse:collapse;width:100%;font-size:14px;margin:15px 0}th,td{border-bottom:1px solid #e2e9e4;text-align:left;padding:11px 7px}td form{margin:0}.line{padding:14px 0;border-bottom:1px solid #e1e8e4;display:flex;align-items:center;justify-content:space-between;gap:12px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.pre{white-space:pre-wrap}.tabs{display:flex;gap:18px;margin:15px 0}details{padding:12px 0;border-bottom:1px solid #e4ece7}summary{cursor:pointer}.terminal{background:#0f201a;color:#e8fff1;min-height:100vh}.terminal main{max-width:720px}.terminal .panel{background:#19362b;border-color:#305846;color:#e8fff1}.terminal .modes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}.terminal #qrreader{width:100%;max-width:550px;margin:auto}.terminal #result{text-align:center;font-size:21px;font-weight:700;min-height:55px}.terminal #video{display:none}[hidden]{display:none!important}@media(max-width:700px){.tiles,.grid2{grid-template-columns:1fr}.stats{grid-template-columns:1fr}header{gap:12px}main{margin-top:20px}table{display:block;overflow:auto}}

/* Hub v1.1 */
header{border-bottom:3px solid #0b7567}header nav a{padding:8px 11px;border-radius:9px;font-weight:650}header nav a:hover{background:#e8f4ed;text-decoration:none}.time-dark{background:#111b1a;color:#e9f2ef}.time-dark header{background:#182724;border-color:#2e5245}.time-dark .brand,.time-dark header a{color:#c8e8da}.time-dark .panel,.time-dark .tile{background:#1d2d29;border-color:#345248;color:#e9f2ef}.time-dark .stats>div{background:#263d35}.time-dark .muted,.time-dark small{color:#abc1b6}.time-dark td,.time-dark th,.time-dark details{border-color:#3b534a}.time-dark .warning,.time-dark .error-row{color:#ff9797}.time-dark input,.time-dark select,.time-dark textarea{background:#20352d;color:#fff;border-color:#567465}.time-dark button{background:#2e5040;color:#fff}.time-dark button.primary{background:#0b7567}.error-row{background:#6c292933}.tabs a{padding:9px 13px;border-radius:8px;background:#e5f2ea}.time-dark .tabs a{background:#2a493c;color:#e9f2ef}.archive{opacity:.75}.note-item{display:flex;align-items:center;gap:12px;margin:8px 0}.note-item.done{text-decoration:line-through;opacity:.65}

/* v1.2: administrator jasny, ciemny tylko ekran pracownika Time */
body:not(.time-dark) .error-row{background:#fff0ed;color:#7f2720}
body:not(.time-dark) .tabs a{display:inline-block;background:#e8f4ed;color:#0a655a;border:1px solid #d2e6da;margin:3px 5px 3px 0}
body:not(.time-dark) .tabs a:hover{background:#d6ebe0}

/* v1.3 Tasks */
.task-urgent{border:2px solid #c93d42;background:#fff4f3}.task-urgent .task-title{color:#ad242d;font-weight:800;font-size:1.1rem}.task-title{font-weight:650}.urgent-check{display:flex;flex-direction:row;align-items:center;gap:8px}.task-urgent .muted{color:#965f60}

/* Tasks: zwarta lista produkcyjna */
.task-table-wrap{overflow-x:auto;background:#fff;border:1px solid #dce5e0;border-radius:12px;margin:12px 0 24px}.task-table{margin:0;table-layout:auto;font-size:14px;min-width:650px}.task-table th{background:#f4f8f5;color:#526b5d;font-size:12px;font-weight:700;padding:10px 12px}.task-table td{padding:10px 12px;vertical-align:middle}.task-table tr:last-child td{border-bottom:0}.task-content{width:62%}.task-body{font-size:16px;line-height:1.4;font-weight:600;overflow-wrap:anywhere}.task-row-urgent{background:#fff1f1}.task-row-urgent .task-body{color:#b2222a;font-weight:800}.task-urgent-tag{display:inline-block;color:#b2222a;font-size:11px;letter-spacing:.05em;margin-bottom:3px}.task-status{white-space:nowrap}.task-status small{display:block;font-size:11px;margin-top:4px}.task-state{font-size:12px;color:#667b70}.task-state-progress{color:#97620a;font-weight:750}.task-state-done{color:#14714e;font-weight:750}.task-date{white-space:nowrap}.task-actions{display:flex;align-items:center;gap:6px;white-space:nowrap}.task-actions form{display:inline-flex;flex-wrap:nowrap;margin:0}.task-small-btn{padding:6px 9px;border-radius:6px;font-size:12px;line-height:1.2;white-space:nowrap}.task-checklist{margin-top:6px}.task-item{display:flex!important;align-items:center;gap:5px;margin:2px 0!important;flex-wrap:nowrap}.task-item button{border:0;background:transparent;padding:2px 5px;font-size:17px;line-height:1}.task-item span{font-size:13px;font-weight:400}.task-item.done span{text-decoration:line-through;opacity:.6}.task-edit{margin-top:7px;padding:3px 0;border:0;font-size:12px}.task-edit summary{color:#61796b}.task-row-archive{opacity:.75}@media(max-width:700px){.task-table{display:table;min-width:620px}}

/* v1.3.3: responsive Hub navigation and Tasks */
.hub-menu-toggle{display:none}
.task-mobile-meta{display:none}
@media(max-width:700px){
 header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 16px}
 header .brand{font-size:18px;white-space:nowrap}
 header .hub-menu-toggle{display:block;grid-column:2;grid-row:1;padding:8px 12px;font-size:14px;font-weight:700;background:#edf6f1;border:1px solid #d2e6da}
 header nav{display:none;grid-column:1/-1;grid-row:2;flex-direction:column;gap:2px;width:100%;padding:8px 0;border-top:1px solid #e0eae4}
 header nav.is-open{display:flex}
 header nav a{display:block;padding:11px 12px}
 header .who{grid-column:1;grid-row:3;font-size:12px}
 header>form{grid-column:2;grid-row:3;margin:0;justify-self:end}
 header>form button{font-size:12px;padding:5px 8px}
 main{padding:0 14px 45px;margin:18px auto}
 .task-table-wrap{overflow:visible;border:0;background:transparent;margin:10px 0 24px}
 .task-table{display:block;min-width:0;width:100%;margin:0}
 .task-table thead{display:none}
 .task-table tbody{display:flex;flex-direction:column;gap:8px}
 .task-table tr{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:12px 14px;border:1px solid #dce5e0;border-radius:12px;background:#fff;min-width:0;width:100%}
 .task-table tr.task-row-urgent{background:#fff1f1;border-color:#e6a8a8}
 .task-table tr.task-row-archive{opacity:.82}
 .task-table td{display:block;border:0;padding:0;min-width:0}
 .task-table td.task-content{width:100%;flex:0 0 100%}
 .task-table td.task-status,.task-table td.task-date{display:none}
 .task-table td:last-child{width:100%}
 .task-body{font-size:17px;line-height:1.35}
 .task-mobile-meta{display:block;color:#698075;font-size:11px;margin-top:5px}
 .task-actions{display:flex;flex-wrap:nowrap;gap:7px;margin-top:5px}
 .task-actions form{flex:0 1 auto;min-width:0}
 .task-small-btn{padding:7px 11px;font-size:12px}
 .task-item{max-width:100%;white-space:normal}
 .task-item span{overflow-wrap:anywhere}
 .task-table tr:has(td[colspan]){display:block}
}

/* v1.4 CORE visual system */
:root{color:#0f1419;background:#f8faf9}header{border-bottom:1px solid #e1e6e7;background:#fff}a{color:#26736b}.brand{color:#0f1419;display:flex;align-items:center;gap:8px}.brand-mark{display:inline-grid;place-items:center;background:#0f1419;color:#fff;width:31px;height:31px;border-radius:8px;font-size:21px;font-weight:900}.panel,.tile{border:1px solid #e2e7e8;box-shadow:0 2px 10px #10182006}.primary,button.chosen{background:#2e7d73;border-color:#2e7d73}button{color:#244a47;border-color:#d5e1df;background:#f1f6f5}input,select,textarea{border-color:#d5e1df;color:#0f1419}header nav a{color:#2a3238}.tile-icon{color:#2e7d73;font-size:26px}.hub-list-row{display:flex;align-items:center;gap:12px;padding:13px 8px;border-bottom:1px solid #e9eeed;color:#17232a}.hub-list-row:hover{text-decoration:none;background:#f7faf9}.hub-list-row form{margin:0}.hub-list-body{flex:1;min-width:0;overflow-wrap:anywhere}.hub-list-body small{display:block;margin-top:4px}.prio{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:31px;height:31px;border-radius:50%;color:white;font-weight:800;font-size:11px;vertical-align:middle}.prio-1{background:#dc3545}.prio-2{background:#e99b30}.prio-3{background:#388ac9}.prio-4{background:#9299a1}.unread{background:#e5f2f0;color:#1d6960;padding:5px 9px;border-radius:20px;font-size:12px}.service-message{border-left:3px solid #bcd7d2;background:#f7faf9;padding:12px 15px;margin:10px 0;border-radius:5px}.service-message div{margin-top:8px;white-space:normal}.service-check{display:flex!important;align-items:center}.task-row-urgent{background:#fffafa}.task-row-urgent .task-body{color:inherit;font-weight:600}@media(max-width:700px){.hub-list-row{flex-wrap:wrap}.hub-list-row .hub-list-body{flex-basis:55%}}

/* v1.4 unified visual: geometric icon system, compact tasks */
:root{color:#11191e;background:#f8faf9}header{border-bottom:1px solid #e1e7e7}header .tile-icon{filter:none}.nav-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;border-radius:15px;background:#db4a49;color:#fff;font-size:10px;padding:3px 5px}.nav-count[hidden]{display:none}.tiles{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.tile{min-height:166px}.tile-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid #dce7e5;border-radius:10px;background:#f3f8f7;font-size:20px;color:#2e7d73}.task-table th,.task-table td{border-color:#edf1f0}.task-table-wrap{box-shadow:none}@media(max-width:700px){.panel{padding:17px}.tile{min-height:130px}}
.pairing-code{max-width:100%;overflow:auto;margin:20px 0}.pairing-code svg{max-width:100%;height:auto;display:block;background:#fff;padding:10px;border:1px solid #e3e8e7;border-radius:12px}.generated-secret{display:block;font-size:clamp(32px,8vw,48px);font-variant-numeric:tabular-nums;letter-spacing:.14em;margin:14px 0}@media print{header,.adminlinks,form,.panel:not(.warning),.grid2,.hub-menu-toggle{display:none!important}.panel.warning{border:0;box-shadow:none}.pairing-code svg{width:300px}}
.push-opt-in{border:1px solid #d9e5e3;background:#edf6f4;padding:7px 10px;font-size:12px;border-radius:10px;min-width:auto}.push-opt-in[hidden]{display:none}.nav-count{margin-left:4px}header{flex-wrap:wrap}@media(max-width:700px){.push-opt-in{margin:3px 0}.who{display:none}}
.brand-mark{background:none;border-radius:8px;overflow:hidden;width:32px;height:32px;padding:0}.brand-mark img{display:block;width:100%;height:100%;object-fit:cover}.tile-icon svg{height:26px;width:26px}nav svg{height:16px;width:16px;vertical-align:middle}.report-link{display:inline-flex;padding:12px 18px;border-radius:10px;color:#fff;text-decoration:none;background:#2e7d73}.production-new{margin:10px 0 14px}.production-new summary{color:#26736b;cursor:pointer}.prod-edit{flex-basis:100%;font-size:12px}.prod-edit summary{cursor:pointer;color:#607970}.prod-edit form{margin-top:10px}.prod-edit input,.prod-edit textarea{width:100%}
