:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#114fc0;--accent-bg:#114fc01a;--accent-border:#114fc073;--brand-blue-deep:#06256f;--brand-green:#169a10;--brand-green-bg:#169a101f;--brand-green-border:#169a1073;--social-bg:#f4f3ec80;--nav-bg:#eef3fc;--nav-text:#1146b8;--nav-hover:#114fc01a;--nav-active-bg:#114fc0;--nav-active-text:#fff;--stat-bg:#114fc012;--stat-bg-hover:#114fc026;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#4f8ef7;--accent-bg:#4f8ef726;--accent-border:#4f8ef780;--brand-blue-deep:#06256f;--brand-green:#43c61f;--brand-green-bg:#43c61f29;--brand-green-border:#43c61f80;--social-bg:#2f303a80;--nav-bg:#4f8ef71f;--nav-text:#9bbcff;--nav-hover:#4f8ef72e;--nav-active-bg:#2f63c4;--nav-active-text:#fff;--stat-bg:#4f8ef71f;--stat-bg-hover:#4f8ef738;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{box-sizing:border-box;flex-direction:column;min-height:100svh;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-.5px;margin:0 0 4px;font-size:28px}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:20px;line-height:118%}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.centered{flex:1;justify-content:center;align-items:center;padding:24px;display:flex}.muted{color:var(--text);font-size:15px}.card{background:var(--bg);border:1px solid var(--border);width:100%;max-width:380px;box-shadow:var(--shadow);box-sizing:border-box;border-radius:12px;padding:28px}.card h1{color:var(--text-h)}.auth-logo{border:1px solid var(--border);background:#fff;border-radius:12px;justify-content:center;margin-bottom:22px;padding:14px;display:flex}.auth-logo img{width:240px;max-width:100%;height:auto}.field{flex-direction:column;gap:6px;margin-top:16px;display:flex}.field label{color:var(--text);font-size:13px}.field input{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text-h);box-sizing:border-box;border-radius:8px;padding:10px 12px;font-size:15px}.field input:focus{border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-bg);outline:none}.btn{font:inherit;border:1px solid var(--accent-border);background:var(--accent);color:#fff;cursor:pointer;border-radius:8px;width:100%;margin-top:20px;padding:11px 14px;font-size:15px}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-link{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:none;padding:0;font-size:14px}.toggle-row{text-align:center;margin-top:16px;font-size:14px}.alert{border-radius:8px;margin-top:16px;padding:10px 12px;font-size:14px}.alert-error{color:#dc2626;background:#dc26261a;border:1px solid #dc262666}.alert-info{background:var(--accent-bg);border:1px solid var(--accent-border);color:var(--text-h)}.alert-warn{color:#a16207;background:#ca8a041a;border:1px solid #ca8a0466}.wd-checklist{flex-direction:column;gap:6px;margin:4px 0;display:flex}.topbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 24px;display:flex}.topbar .brand{align-items:center;text-decoration:none;display:inline-flex}.brand-logo{border:1px solid var(--border);background:#fff;border-radius:8px;width:auto;height:52px;padding:2px 12px;display:block}.topbar .who{align-items:center;gap:10px;display:flex}.menu-wrap{position:relative}.copill{font:inherit;color:var(--text-h);background:var(--social-bg);border:1px solid var(--border);cursor:pointer;border-radius:999px;align-items:center;gap:7px;max-width:240px;padding:6px 11px;font-size:13px;display:inline-flex}.copill:hover{border-color:var(--accent-border)}.copill-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.copill-b{color:var(--accent);flex-shrink:0}.copill-c{color:var(--text);flex-shrink:0}.iconbtn{border:1px solid var(--border);width:32px;height:32px;color:var(--accent);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.iconbtn:hover{background:var(--accent-bg);border-color:var(--accent-border)}.who-sep{background:var(--border);width:1px;height:22px}.avatar{background:var(--accent-bg);width:32px;height:32px;color:var(--accent);border:1px solid var(--accent-border);font:inherit;cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:inline-flex}.menu{z-index:200;background:var(--bg);border:1px solid var(--border);min-width:210px;box-shadow:var(--shadow);border-radius:10px;padding:6px;position:absolute;top:calc(100% + 6px);left:0}.menu-right{left:auto;right:0}.menu-item{box-sizing:border-box;width:100%;font:inherit;color:var(--text-h);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:7px;align-items:center;gap:8px;padding:8px 10px;font-size:14px;text-decoration:none;display:flex}.menu-item:hover{background:var(--social-bg)}.menu-item.between{justify-content:space-between}.menu-item .menu-item-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.menu-item svg{color:var(--text);flex-shrink:0}.menu-head{border-bottom:1px solid var(--border);margin-bottom:4px;padding:8px 10px}.menu-head-label{text-transform:uppercase;letter-spacing:.4px;color:var(--text);font-size:11px;display:block}.menu-head-email{color:var(--text-h);text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.content{box-sizing:border-box;flex:1;min-width:0;padding:28px 32px}.shell{flex-direction:column;flex:1;min-height:100svh;display:flex}.topnav{background:var(--nav-bg);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:4px;padding:8px 24px;display:flex}.nav-item{white-space:nowrap;color:var(--nav-text);border-radius:8px;align-items:center;gap:6px;padding:8px 13px;font-size:15px;text-decoration:none;display:inline-flex}.nav-item svg{width:16px;height:16px}.nav-item:hover{background:var(--nav-hover)}.nav-item.active{background:var(--nav-active-bg);color:var(--nav-active-text)}.nav-item.disabled{opacity:.4;cursor:default;pointer-events:none}.page-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.btn-inline{align-items:center;gap:6px;width:auto;margin-top:0;text-decoration:none;display:inline-flex}.page-title{align-items:center;gap:9px;margin:0;display:flex}.page-title svg{color:var(--accent);flex-shrink:0}.table-wrap{border:1px solid var(--border);border-radius:12px;overflow:hidden}.table{border-collapse:collapse;width:100%;font-size:14px}.table thead th{text-align:left;background:var(--nav-bg);color:var(--nav-text);text-transform:uppercase;letter-spacing:.3px;border-bottom:1px solid var(--border);padding:10px 14px;font-size:12px;font-weight:500}.table td{text-align:left;border-top:1px solid var(--border);padding:11px 14px}.te-toolbar{align-items:center;gap:12px;margin-bottom:12px;display:flex}.te-grid-wrap{overflow-x:auto}.te-grid th,.te-grid td{padding:8px 10px}.te-grid .te-day{text-align:center;width:56px}.te-grid .te-date{opacity:.85;font-weight:400}.te-grid .te-name{white-space:nowrap}.te-cell{text-align:center;border:1px solid var(--border);background:var(--surface,#fff);border-radius:6px;width:44px;padding:6px 4px;font-size:14px}.te-cell:focus{border-color:var(--accent-border);box-shadow:0 0 0 2px var(--accent-bg);outline:none}.te-class{min-width:140px;padding:6px 8px;font-size:14px}.te-cont{color:var(--text-muted,#888)}.te-grid .row-actions{white-space:nowrap;text-align:right}.te-trash{cursor:pointer;color:var(--text-muted,#888);vertical-align:middle;background:0 0;border:none;align-items:center;padding:4px;display:inline-flex}.te-trash:hover,.te-trash.armed{color:#dc2626}.te-confirm-del{vertical-align:middle;color:#dc2626;border-radius:var(--radius,8px);cursor:pointer;background:#dc26261a;border:1px solid #dc262680;margin-left:6px;padding:3px 10px;font-size:13px;font-weight:500}.te-confirm-del:hover{background:#dc26262e}.te-cont [aria-hidden]{color:var(--accent);margin-right:2px;font-weight:600}.te-total{font-weight:600}.te-grid tfoot td{border-top:2px solid var(--border)}.te-add{margin-top:16px}.table tbody tr:first-child td{border-top:none}.table tbody tr:hover td{background:var(--nav-hover)}.table td a{color:var(--accent);text-decoration:none}.table td a:hover{text-decoration:underline}.table .row-inactive td{opacity:.55}.row-actions{white-space:nowrap;gap:12px;display:flex}.badge{border-radius:999px;padding:2px 9px;font-size:12px;font-weight:500;display:inline-block}.badge-success{background:var(--brand-green-bg);color:var(--brand-green)}.badge-neutral{background:var(--social-bg);color:var(--text)}.badge-accent{background:var(--accent-bg);color:var(--accent)}.form-page{max-width:640px}.form-card{border:1px solid var(--border);border-top:3px solid var(--accent);border-radius:12px;padding:18px 22px 22px}.form-card>form>:first-child{margin-top:0}.field-row{gap:16px;display:flex}.field-row .field{flex:1}.field select{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text-h);border-radius:8px;padding:10px 12px;font-size:15px}.checkbox{color:var(--text-h);align-items:center;gap:8px;margin-top:16px;font-size:14px;display:flex}.form-actions{align-items:center;gap:16px;margin-top:24px;display:flex}.add-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.add-row select,.add-row input{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text-h);border-radius:8px;padding:8px 10px;font-size:14px}.add-row .btn{margin-top:0}.report-card{margin-bottom:24px}.report-card h2{margin-bottom:8px}.warnings{color:var(--text-h);background:#eab3081a;border:1px solid #eab30873;border-radius:8px;margin:12px 0 0;padding:12px 14px 12px 30px;font-size:13px;list-style:outside}.warnings li+li{margin-top:6px}.pay-editor{border-top:1px solid var(--border);margin-top:14px;padding-top:12px}.pay-editor-label{text-transform:uppercase;letter-spacing:.4px;color:var(--text);margin-bottom:4px;font-size:12px;display:block}.pay-editor .field{margin-top:8px}.pay-editor .field input{font-size:14px}.danger-zone{border:1px solid #dc262666;border-radius:12px;margin-top:36px;padding:18px 20px}.danger-zone h2{color:#dc2626;margin:0 0 4px;font-size:16px}.btn-danger{font:inherit;color:#fff;cursor:pointer;background:#dc2626;border:1px solid #dc2626;border-radius:8px;margin-top:12px;padding:10px 16px;font-size:15px}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{z-index:100;background:#00000080;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{background:var(--bg);border:1px solid var(--border);width:100%;max-width:440px;box-shadow:var(--shadow);border-radius:12px;padding:24px}.modal h2{color:var(--text-h);margin:0 0 8px}.company-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.company-header-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.company-id{align-items:center;gap:16px;display:flex}.company-id h1{margin:0}.role-badge{text-transform:capitalize;background:var(--brand-green-bg);border:1px solid var(--brand-green-border);color:var(--text-h);border-radius:999px;margin-top:6px;padding:2px 10px;font-size:12px;display:inline-block}.company-logo-empty{color:var(--accent);text-transform:uppercase;justify-content:center;align-items:center;width:96px;font-size:40px;font-weight:600;display:flex}.info-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.info-card{border:1px solid var(--border);border-top:3px solid var(--accent);border-radius:12px;padding:16px 20px 18px}.info-card h2{color:var(--text-h);align-items:center;gap:8px;margin:0 0 8px;font-size:15px;font-weight:500;display:flex}.info-card h2 svg{width:16px;height:16px;color:var(--accent);flex-shrink:0}.info-item{border-bottom:1px solid var(--border);padding:9px 0}.info-item:last-child{border-bottom:none;padding-bottom:0}.info-item .lbl{text-transform:uppercase;letter-spacing:.4px;color:var(--text);margin-bottom:2px;font-size:11px;display:block}.info-item .val{color:var(--text-h);font-size:15px}.info-item a.val{color:var(--accent);text-decoration:none}.info-item a.val:hover{text-decoration:underline}.info-item .val.muted{color:var(--text)}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:20px;display:grid}.stat-tile{background:var(--stat-bg);border:1px solid var(--accent-border);border-radius:12px;flex-direction:column;gap:2px;padding:16px 18px;text-decoration:none;transition:background .15s,border-color .15s;display:flex}.stat-tile:hover{background:var(--stat-bg-hover);border-color:var(--accent)}.stat-value{align-items:center;gap:7px;display:flex}.stat-blue{color:var(--accent)}.stat-green{color:var(--brand-green)}.stat-num{color:inherit;font-size:30px;font-weight:600;line-height:1.1}.stat-label{color:var(--text);font-size:13px}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start;gap:16px;display:grid}.dashboard-col{flex-direction:column;gap:16px;display:flex}.week-chart{width:100%;height:auto;max-height:170px;display:block}.week-chart .bar{fill:var(--accent)}.week-chart .bar-label{fill:var(--text);text-anchor:middle;font-size:11px}.week-chart .bar-value{fill:var(--text-h);text-anchor:middle;font-size:10px}.card-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.card-head h2{margin:0}.proj-list{flex-direction:column;max-height:380px;display:flex;overflow-y:auto}.proj-item{border-radius:8px;flex-direction:column;gap:2px;margin:0 -10px;padding:10px;text-decoration:none;display:flex}.proj-item:hover{background:var(--social-bg)}.proj-name{color:var(--accent);font-size:15px}.proj-meta{color:var(--text);font-size:13px}.company-logo{border:1px solid var(--border);object-fit:contain;background:#fff;border-radius:8px;width:auto;max-width:320px;height:96px;padding:8px 12px}.logo-edit{align-items:center;gap:16px;display:flex}.logo-preview{object-fit:contain;border:1px solid var(--border);background:#fff;border-radius:8px;width:160px;height:64px;padding:4px}.logo-empty{color:var(--text);justify-content:center;align-items:center;font-size:13px;display:flex}.wh347-actions{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.wh347-doc{border:1px solid var(--border);border-radius:10px;padding:24px}.wh347-head{text-align:center;margin-bottom:20px}.wh347-head h1{font-size:22px}.wh347-meta{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:2fr 1fr 1fr 2fr;gap:16px;margin-bottom:16px;padding:16px 0;display:grid}.wh347-meta>div{color:var(--text-h);flex-direction:column;gap:2px;font-size:14px;display:flex}.wh347-meta .lbl{text-transform:uppercase;letter-spacing:.4px;color:var(--text);font-size:11px}.wh347-table{border-collapse:collapse;width:100%;font-size:12px}.wh347-table th,.wh347-table td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:5px 7px}.wh347-table th{color:var(--text);background:var(--social-bg);font-weight:600}.wh347-table .day{text-align:center;width:38px}.wh347-table .day-ot{color:var(--accent);white-space:nowrap;font-size:11px}.wh347-table .os{text-align:center;width:22px;color:var(--text-secondary);font-weight:500}.wh347-compliance{margin-top:18px;font-size:13px}.wh347-compliance h2{font-size:16px}@media print{.topbar,.topnav,.wh347-actions{display:none!important}.content{padding:0}.wh347-doc{border:none;padding:0}.wh347-table th{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#eee}@page{size:landscape;margin:12mm}}.kv{border:1px solid var(--border);border-radius:10px;margin-top:16px;overflow:hidden}.kv div{justify-content:space-between;gap:16px;padding:10px 14px;font-size:14px;display:flex}.kv div+div{border-top:1px solid var(--border)}.kv span:first-child{color:var(--text)}.kv span:last-child{color:var(--text-h);font-family:var(--mono);font-size:13px}
